@instockng/storefront-ui 1.0.55 → 1.0.57

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 (283) hide show
  1. package/dist/components/ProductAddOns.d.ts +21 -0
  2. package/dist/components/ProductAddOns.d.ts.map +1 -0
  3. package/dist/components/ui/switch.d.ts +8 -0
  4. package/dist/components/ui/switch.d.ts.map +1 -0
  5. package/dist/index.d.ts +4 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.mjs +109 -103
  8. package/dist/index10.mjs +147 -91
  9. package/dist/index100.mjs +53 -2
  10. package/dist/index101.mjs +69 -28
  11. package/dist/index102.mjs +2 -18
  12. package/dist/index103.mjs +26 -213
  13. package/dist/index104.mjs +13 -175
  14. package/dist/index105.mjs +210 -17
  15. package/dist/index106.mjs +174 -17
  16. package/dist/index107.mjs +14 -25
  17. package/dist/index108.mjs +17 -150
  18. package/dist/index109.mjs +26 -13
  19. package/dist/index11.mjs +95 -171
  20. package/dist/index110.mjs +149 -24
  21. package/dist/index111.mjs +13 -77
  22. package/dist/index112.mjs +20 -27
  23. package/dist/index113.mjs +76 -137
  24. package/dist/index114.mjs +33 -50
  25. package/dist/index115.mjs +141 -19
  26. package/dist/index116.mjs +50 -22
  27. package/dist/index117.mjs +14 -14
  28. package/dist/index118.mjs +20 -18
  29. package/dist/index119.mjs +16 -14
  30. package/dist/index12.mjs +90 -90
  31. package/dist/index120.mjs +17 -14
  32. package/dist/index121.mjs +12 -12
  33. package/dist/index122.mjs +15 -58
  34. package/dist/index123.mjs +14 -11
  35. package/dist/index124.mjs +56 -30
  36. package/dist/index125.mjs +9 -15
  37. package/dist/index126.mjs +31 -26
  38. package/dist/index127.mjs +13 -16
  39. package/dist/index128.mjs +26 -11
  40. package/dist/index129.mjs +18 -12
  41. package/dist/index13.mjs +162 -717
  42. package/dist/index130.mjs +12 -40
  43. package/dist/index131.mjs +14 -16
  44. package/dist/index132.mjs +42 -263
  45. package/dist/index133.mjs +15 -62
  46. package/dist/index134.mjs +267 -7
  47. package/dist/index135.mjs +70 -2
  48. package/dist/index136.mjs +8 -2
  49. package/dist/index137.mjs +2 -33
  50. package/dist/index138.mjs +2 -2
  51. package/dist/index139.mjs +33 -2
  52. package/dist/index14.mjs +94 -56
  53. package/dist/index140.mjs +2 -2
  54. package/dist/index141.mjs +21 -2
  55. package/dist/index142.mjs +56 -2
  56. package/dist/index143.mjs +28 -17
  57. package/dist/index144.mjs +6 -31
  58. package/dist/index145.mjs +50 -36
  59. package/dist/index146.mjs +6 -18
  60. package/dist/index147.mjs +11 -17
  61. package/dist/index148.mjs +7 -2
  62. package/dist/index149.mjs +28 -20
  63. package/dist/index15.mjs +734 -62
  64. package/dist/index150.mjs +2 -46
  65. package/dist/index151.mjs +70 -2
  66. package/dist/index152.mjs +164 -27
  67. package/dist/index153.mjs +2 -18
  68. package/dist/index154.mjs +2 -2
  69. package/dist/index155.mjs +2 -2
  70. package/dist/index156.mjs +18 -2
  71. package/dist/index157.mjs +32 -2
  72. package/dist/index158.mjs +28 -62
  73. package/dist/index159.mjs +18 -2
  74. package/dist/index16.mjs +50 -14
  75. package/dist/index160.mjs +13 -48
  76. package/dist/index161.mjs +2 -2
  77. package/dist/index162.mjs +14 -30
  78. package/dist/index163.mjs +39 -145
  79. package/dist/index164.mjs +2 -2
  80. package/dist/index165.mjs +30 -2
  81. package/dist/index166.mjs +11 -12
  82. package/dist/index167.mjs +2 -2
  83. package/dist/index168.mjs +2 -2
  84. package/dist/index169.mjs +2 -26
  85. package/dist/index17.mjs +62 -109
  86. package/dist/index171.mjs +72 -2
  87. package/dist/index172.mjs +2 -24
  88. package/dist/index173.mjs +48 -18
  89. package/dist/index174.mjs +2 -2
  90. package/dist/index175.mjs +36 -2
  91. package/dist/index176.mjs +152 -2
  92. package/dist/index177.mjs +2 -23
  93. package/dist/index178.mjs +2 -2
  94. package/dist/index179.mjs +11 -15
  95. package/dist/index18.mjs +23 -41
  96. package/dist/index180.mjs +2 -2
  97. package/dist/index181.mjs +2 -2
  98. package/dist/index182.mjs +26 -2
  99. package/dist/index183.mjs +2 -23
  100. package/dist/index184.mjs +2 -2
  101. package/dist/index185.mjs +18 -17
  102. package/dist/index186.mjs +23 -2
  103. package/dist/index187.mjs +2 -2
  104. package/dist/index188.mjs +2 -2
  105. package/dist/index189.mjs +2 -2
  106. package/dist/index19.mjs +109 -42
  107. package/dist/index190.mjs +23 -2
  108. package/dist/index191.mjs +2 -2
  109. package/dist/index192.mjs +23 -2
  110. package/dist/index193.mjs +2 -2
  111. package/dist/index194.mjs +2 -127
  112. package/dist/index195.mjs +2 -2
  113. package/dist/index196.mjs +20 -71
  114. package/dist/index197.mjs +2 -74
  115. package/dist/index198.mjs +22 -20
  116. package/dist/index199.mjs +2 -56
  117. package/dist/index2.mjs +2 -2
  118. package/dist/index20.mjs +42 -65
  119. package/dist/index200.mjs +2 -29
  120. package/dist/index201.mjs +2 -7
  121. package/dist/index202.mjs +2 -52
  122. package/dist/index203.mjs +2 -6
  123. package/dist/index204.mjs +2 -12
  124. package/dist/index205.mjs +2 -7
  125. package/dist/index206.mjs +2 -28
  126. package/dist/index207.mjs +127 -2
  127. package/dist/index208.mjs +2 -70
  128. package/dist/index209.mjs +72 -165
  129. package/dist/index21.mjs +41 -31
  130. package/dist/index210.mjs +74 -2
  131. package/dist/index211.mjs +2 -2
  132. package/dist/index212.mjs +2 -2
  133. package/dist/index213.mjs +2 -2
  134. package/dist/index214.mjs +2 -2
  135. package/dist/index215.mjs +2 -2
  136. package/dist/index216.mjs +2 -108
  137. package/dist/index217.mjs +2 -2
  138. package/dist/index219.mjs +2 -37
  139. package/dist/index22.mjs +64 -6
  140. package/dist/index220.mjs +108 -2
  141. package/dist/index221.mjs +2 -244
  142. package/dist/index223.mjs +32 -28
  143. package/dist/index224.mjs +2 -65
  144. package/dist/index225.mjs +2 -25
  145. package/dist/index226.mjs +244 -2
  146. package/dist/index228.mjs +33 -2
  147. package/dist/index229.mjs +65 -2
  148. package/dist/index23.mjs +27 -17
  149. package/dist/index230.mjs +25 -2
  150. package/dist/index232.mjs +2 -2
  151. package/dist/index233.mjs +2 -2
  152. package/dist/index235.mjs +2 -2
  153. package/dist/index237.mjs +2 -2
  154. package/dist/index238.mjs +2 -4
  155. package/dist/index239.mjs +2 -2
  156. package/dist/index24.mjs +6 -30
  157. package/dist/index240.mjs +4 -2
  158. package/dist/index241.mjs +2 -31
  159. package/dist/index242.mjs +2 -11
  160. package/dist/index243.mjs +30 -3
  161. package/dist/index244.mjs +10 -3
  162. package/dist/index245.mjs +4 -13
  163. package/dist/index246.mjs +4 -7
  164. package/dist/index247.mjs +13 -12
  165. package/dist/index248.mjs +7 -5
  166. package/dist/index249.mjs +12 -33
  167. package/dist/index25.mjs +20 -18
  168. package/dist/index250.mjs +5 -31
  169. package/dist/index251.mjs +32 -27
  170. package/dist/index252.mjs +28 -58
  171. package/dist/index253.mjs +28 -2
  172. package/dist/index254.mjs +61 -2
  173. package/dist/index255.mjs +2 -18
  174. package/dist/index256.mjs +2 -47
  175. package/dist/index257.mjs +18 -2
  176. package/dist/index258.mjs +47 -2
  177. package/dist/index26.mjs +34 -103
  178. package/dist/index260.mjs +2 -2
  179. package/dist/index261.mjs +2 -91
  180. package/dist/index262.mjs +2 -2
  181. package/dist/index263.mjs +91 -3
  182. package/dist/index264.mjs +2 -2
  183. package/dist/index265.mjs +3 -2
  184. package/dist/index266.mjs +2 -17
  185. package/dist/index267.mjs +2 -13
  186. package/dist/index268.mjs +17 -6
  187. package/dist/index269.mjs +13 -30
  188. package/dist/index27.mjs +20 -21
  189. package/dist/index270.mjs +6 -2
  190. package/dist/index271.mjs +30 -2
  191. package/dist/index272.mjs +2 -2
  192. package/dist/index273.mjs +5 -0
  193. package/dist/index274.mjs +5 -0
  194. package/dist/index28.mjs +101 -8
  195. package/dist/index29.mjs +27 -7
  196. package/dist/index3.mjs +5 -5
  197. package/dist/index30.mjs +11 -103
  198. package/dist/index31.mjs +11 -22
  199. package/dist/index32.mjs +105 -66
  200. package/dist/index33.mjs +23 -105
  201. package/dist/index34.mjs +68 -28
  202. package/dist/index35.mjs +100 -14
  203. package/dist/index36.mjs +26 -9
  204. package/dist/index37.mjs +25 -9
  205. package/dist/index38.mjs +10 -122
  206. package/dist/index39.mjs +9 -387
  207. package/dist/index4.mjs +1 -1
  208. package/dist/index40.mjs +116 -18
  209. package/dist/index41.mjs +385 -99
  210. package/dist/index42.mjs +24 -6
  211. package/dist/index43.mjs +30 -1431
  212. package/dist/index44.mjs +6 -69
  213. package/dist/index45.mjs +1433 -2
  214. package/dist/index46.mjs +68 -58
  215. package/dist/index47.mjs +2 -51
  216. package/dist/index48.mjs +60 -33
  217. package/dist/index49.mjs +49 -13
  218. package/dist/index5.mjs +1 -1
  219. package/dist/index50.mjs +32 -2262
  220. package/dist/index51.mjs +15 -36
  221. package/dist/index52.mjs +2261 -42
  222. package/dist/index53.mjs +36 -99
  223. package/dist/index54.mjs +43 -112
  224. package/dist/index55.mjs +99 -81
  225. package/dist/index56.mjs +93 -57
  226. package/dist/index57.mjs +54 -68
  227. package/dist/index58.mjs +82 -56
  228. package/dist/index59.mjs +74 -58
  229. package/dist/index6.mjs +1 -1
  230. package/dist/index60.mjs +77 -15
  231. package/dist/index61.mjs +74 -15
  232. package/dist/index62.mjs +15 -59
  233. package/dist/index63.mjs +14 -119
  234. package/dist/index64.mjs +46 -112
  235. package/dist/index65.mjs +124 -23
  236. package/dist/index66.mjs +129 -2
  237. package/dist/index67.mjs +21 -150
  238. package/dist/index68.mjs +149 -19
  239. package/dist/index69.mjs +2 -75
  240. package/dist/index7.mjs +6 -6
  241. package/dist/index70.mjs +23 -15
  242. package/dist/index71.mjs +68 -56
  243. package/dist/index72.mjs +15 -5
  244. package/dist/index73.mjs +63 -2
  245. package/dist/index74.mjs +4 -5
  246. package/dist/index75.mjs +2 -1134
  247. package/dist/index76.mjs +5 -19
  248. package/dist/index77.mjs +1119 -40
  249. package/dist/index78.mjs +14 -27
  250. package/dist/index79.mjs +55 -2
  251. package/dist/index8.mjs +4 -4
  252. package/dist/index80.mjs +33 -2
  253. package/dist/index81.mjs +2 -34
  254. package/dist/index82.mjs +31 -40
  255. package/dist/index83.mjs +38 -230
  256. package/dist/index84.mjs +2 -6
  257. package/dist/index85.mjs +228 -127
  258. package/dist/index86.mjs +4 -66
  259. package/dist/index87.mjs +124 -77
  260. package/dist/index88.mjs +65 -26
  261. package/dist/index89.mjs +84 -6
  262. package/dist/index9.mjs +3 -3
  263. package/dist/index90.mjs +26 -72
  264. package/dist/index91.mjs +8 -3
  265. package/dist/index92.mjs +75 -2
  266. package/dist/index93.mjs +3 -82
  267. package/dist/index94.mjs +2 -54
  268. package/dist/index95.mjs +82 -5
  269. package/dist/index96.mjs +53 -4
  270. package/dist/index97.mjs +5 -178
  271. package/dist/index98.mjs +5 -53
  272. package/dist/index99.mjs +178 -68
  273. package/dist/lib/utils.d.ts.map +1 -1
  274. package/dist/styles.css +1 -1
  275. package/package.json +8 -9
  276. package/src/components/Checkout.stories.tsx +9 -4
  277. package/src/components/ProductAddOns.stories.tsx +109 -0
  278. package/src/components/ProductAddOns.tsx +242 -0
  279. package/src/components/ShoppingCart.stories.tsx +4 -1
  280. package/src/components/ui/switch.tsx +37 -0
  281. package/src/index.ts +6 -0
  282. package/src/lib/utils.ts +3 -1
  283. package/src/test-utils/MockCartProvider.tsx +14 -7
@@ -0,0 +1,21 @@
1
+ import { ProductCardProduct } from './ProductCard';
2
+ export interface AddOnProduct extends ProductCardProduct {
3
+ slug: string;
4
+ compareAtPrice?: number | null;
5
+ addonDescription?: string | null;
6
+ }
7
+ export interface ProductAddOnsProps {
8
+ /** Product slug to fetch add-ons for */
9
+ slug?: string;
10
+ /** Manual product list (overrides slug fetching) */
11
+ products?: AddOnProduct[];
12
+ /** Manual toggle handler */
13
+ onToggle?: (product: AddOnProduct, isSelected: boolean) => void;
14
+ /** Manual selection list (list of product IDs) */
15
+ selectedProductIds?: string[];
16
+ className?: string;
17
+ title?: string;
18
+ limit?: number;
19
+ }
20
+ export declare function ProductAddOns({ slug, products: manualProducts, onToggle: manualOnToggle, selectedProductIds: manualSelectedIds, className, title, limit, }: ProductAddOnsProps): import("react/jsx-runtime").JSX.Element | null;
21
+ //# sourceMappingURL=ProductAddOns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductAddOns.d.ts","sourceRoot":"","sources":["../../src/components/ProductAddOns.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAKnD,MAAM,WAAW,YAAa,SAAQ,kBAAkB;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IAC/B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAChE,kDAAkD;IAClD,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,aAAa,CAAC,EAC1B,IAAI,EACJ,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,cAAc,EACxB,kBAAkB,EAAE,iBAAiB,EACrC,SAAS,EACT,KAAyB,EACzB,KAAS,GACZ,EAAE,kBAAkB,kDAwMpB"}
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ interface SwitchProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
+ checked?: boolean;
4
+ onCheckedChange?: (checked: boolean) => void;
5
+ }
6
+ declare const Switch: React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLInputElement>>;
7
+ export { Switch };
8
+ //# sourceMappingURL=switch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/ui/switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,UAAU,WAAY,SAAQ,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD;AAED,QAAA,MAAM,MAAM,sFAuBX,CAAC;AAGF,OAAO,EAAE,MAAM,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -16,6 +16,10 @@ export { ProductCard } from './components/ProductCard';
16
16
  export type { ProductCardProps, ProductCardProduct } from './components/ProductCard';
17
17
  export { ProductGrid } from './components/ProductGrid';
18
18
  export type { ProductGridProps } from './components/ProductGrid';
19
+ export { ProductAddOns } from './components/ProductAddOns';
20
+ export type { ProductAddOnsProps, AddOnProduct } from './components/ProductAddOns';
21
+ export { RecommendedProducts } from './components/RecommendedProducts';
22
+ export type { RecommendedProductsProps } from './components/RecommendedProducts';
19
23
  export { CartItem } from './components/CartItem';
20
24
  export type { CartItemProps } from './components/CartItem';
21
25
  export { ShoppingCart } from './components/ShoppingCart';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAChF,YAAY,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG1F,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG7E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI7F,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAChF,YAAY,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG1F,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG7E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI7F,cAAc,uBAAuB,CAAC"}
package/dist/index.mjs CHANGED
@@ -1,116 +1,122 @@
1
1
  'use client';
2
2
  import { StorefrontProvider as m } from "./index2.mjs";
3
- import { CartProvider as p, useCart as i } from "./index3.mjs";
4
- import { MetaPixelProvider as d, useMetaPixel as u } from "./index4.mjs";
5
- import { TikTokPixelProvider as s, useTikTokPixel as C } from "./index5.mjs";
6
- import { usePageTracking as c } from "./index6.mjs";
3
+ import { CartProvider as p, useCart as d } from "./index3.mjs";
4
+ import { MetaPixelProvider as f, useMetaPixel as u } from "./index4.mjs";
5
+ import { TikTokPixelProvider as n, useTikTokPixel as c } from "./index5.mjs";
6
+ import { usePageTracking as C } from "./index6.mjs";
7
7
  import { OrderConfirmation as P } from "./index7.mjs";
8
- import { ProductCard as v } from "./index8.mjs";
8
+ import { ProductCard as A } from "./index8.mjs";
9
9
  import { ProductGrid as y } from "./index9.mjs";
10
- import { CartItem as g } from "./index10.mjs";
11
- import { ShoppingCart as I } from "./index11.mjs";
12
- import { DiscountCodeInput as B } from "./index12.mjs";
13
- import { Checkout as O } from "./index13.mjs";
14
- import { Button as S } from "./index14.mjs";
15
- import { Card as M, CardContent as H, CardDescription as U, CardFooter as Z, CardHeader as b, CardTitle as q } from "./index15.mjs";
16
- import { Badge as K } from "./index16.mjs";
17
- import { Modal as j } from "./index17.mjs";
18
- import { FormInput as E } from "./index18.mjs";
19
- import { FormSelect as L } from "./index19.mjs";
20
- import { cn as Q, formatCurrency as V, formatDate as W, formatDateTime as X, getStatusColor as Y } from "./index20.mjs";
21
- import { ApiClientProvider as ee, useApiClientContext as re } from "./index21.mjs";
22
- import { useApiConfig as oe } from "./index22.mjs";
23
- import { getApiClient as ae, initializeApiClient as pe, resetApiClient as ie } from "./index23.mjs";
24
- import { authHeaders as de, createAdminRpcClients as ue, createRpcClients as ne } from "./index24.mjs";
25
- import { fetchProductBySlug as Ce, fetchProductsByBrand as xe } from "./index25.mjs";
26
- import { addCartItem as le, applyDiscount as Pe, checkoutCart as he, createCart as ve, fetchCart as Ae, fetchCartRecommendations as ye, removeCartItem as De, removeDiscount as ge, updateCart as Ge, updateCartItem as Ie } from "./index26.mjs";
27
- import { confirmOrder as Be, fetchOrder as Re, fetchOrderRecommendations as Oe } from "./index27.mjs";
28
- import { fetchDeliveryZones as Se } from "./index28.mjs";
29
- import { fetchBrandBySlug as Me } from "./index29.mjs";
30
- import { queryKeys as Ue } from "./index30.mjs";
31
- import * as e from "./index31.mjs";
32
- import * as r from "./index32.mjs";
33
- import { useAddCartItem as be, useApplyDiscount as qe, useCheckoutCart as ze, useCreateCart as Ke, useGetCart as $e, useGetCartRecommendations as je, useRemoveCartItem as we, useRemoveDiscount as Ee, useUpdateCart as Je, useUpdateCartItem as Le } from "./index33.mjs";
34
- import { useConfirmOrder as Qe, useGetOrder as Ve, useGetOrderRecommendations as We } from "./index34.mjs";
35
- import { useGetProduct as Ye, useGetProducts as _e } from "./index35.mjs";
36
- import { useGetDeliveryZones as rr } from "./index36.mjs";
37
- import { useGetBrand as or } from "./index37.mjs";
10
+ import { ProductAddOns as G } from "./index10.mjs";
11
+ import { RecommendedProducts as I } from "./index11.mjs";
12
+ import { CartItem as R } from "./index12.mjs";
13
+ import { ShoppingCart as B } from "./index13.mjs";
14
+ import { DiscountCodeInput as S } from "./index14.mjs";
15
+ import { Checkout as M } from "./index15.mjs";
16
+ import { Button as U } from "./index16.mjs";
17
+ import { Card as b, CardContent as q, CardDescription as z, CardFooter as K, CardHeader as $, CardTitle as j } from "./index17.mjs";
18
+ import { Badge as E } from "./index18.mjs";
19
+ import { Modal as L } from "./index19.mjs";
20
+ import { FormInput as Q } from "./index20.mjs";
21
+ import { FormSelect as W } from "./index21.mjs";
22
+ import { cn as Y, formatCurrency as _, formatDate as ee, formatDateTime as re, getStatusColor as te } from "./index22.mjs";
23
+ import { ApiClientProvider as me, useApiClientContext as ae } from "./index23.mjs";
24
+ import { useApiConfig as de } from "./index24.mjs";
25
+ import { getApiClient as fe, initializeApiClient as ue, resetApiClient as se } from "./index25.mjs";
26
+ import { authHeaders as ce, createAdminRpcClients as xe, createRpcClients as Ce } from "./index26.mjs";
27
+ import { fetchProductAddons as Pe, fetchProductBySlug as he, fetchProductsByBrand as Ae } from "./index27.mjs";
28
+ import { addCartItem as ye, applyDiscount as De, checkoutCart as Ge, createCart as ge, fetchCart as Ie, fetchCartRecommendations as Oe, removeCartItem as Re, removeDiscount as ke, updateCart as Be, updateCartItem as Te } from "./index28.mjs";
29
+ import { confirmOrder as Fe, fetchOrder as Me, fetchOrderRecommendations as He } from "./index29.mjs";
30
+ import { fetchDeliveryZones as Ze } from "./index30.mjs";
31
+ import { fetchBrandBySlug as qe } from "./index31.mjs";
32
+ import { queryKeys as Ke } from "./index32.mjs";
33
+ import * as e from "./index33.mjs";
34
+ import * as r from "./index34.mjs";
35
+ import { useAddCartItem as je, useApplyDiscount as we, useCheckoutCart as Ee, useCreateCart as Je, useGetCart as Le, useGetCartRecommendations as Ne, useRemoveCartItem as Qe, useRemoveDiscount as Ve, useUpdateCart as We, useUpdateCartItem as Xe } from "./index35.mjs";
36
+ import { useConfirmOrder as _e, useGetOrder as er, useGetOrderRecommendations as rr } from "./index36.mjs";
37
+ import { useGetProduct as or, useGetProductAddOns as mr, useGetProducts as ar } from "./index37.mjs";
38
+ import { useGetDeliveryZones as dr } from "./index38.mjs";
39
+ import { useGetBrand as fr } from "./index39.mjs";
38
40
  export {
39
- ee as ApiClientProvider,
40
- K as Badge,
41
- S as Button,
42
- M as Card,
43
- H as CardContent,
44
- U as CardDescription,
45
- Z as CardFooter,
46
- b as CardHeader,
47
- q as CardTitle,
48
- g as CartItem,
41
+ me as ApiClientProvider,
42
+ E as Badge,
43
+ U as Button,
44
+ b as Card,
45
+ q as CardContent,
46
+ z as CardDescription,
47
+ K as CardFooter,
48
+ $ as CardHeader,
49
+ j as CardTitle,
50
+ R as CartItem,
49
51
  p as CartProvider,
50
- O as Checkout,
51
- B as DiscountCodeInput,
52
- E as FormInput,
53
- L as FormSelect,
54
- d as MetaPixelProvider,
55
- j as Modal,
52
+ M as Checkout,
53
+ S as DiscountCodeInput,
54
+ Q as FormInput,
55
+ W as FormSelect,
56
+ f as MetaPixelProvider,
57
+ L as Modal,
56
58
  P as OrderConfirmation,
57
- v as ProductCard,
59
+ G as ProductAddOns,
60
+ A as ProductCard,
58
61
  y as ProductGrid,
59
- I as ShoppingCart,
62
+ I as RecommendedProducts,
63
+ B as ShoppingCart,
60
64
  m as StorefrontProvider,
61
- s as TikTokPixelProvider,
62
- le as addCartItem,
65
+ n as TikTokPixelProvider,
66
+ ye as addCartItem,
63
67
  r as adminApi,
64
- Pe as applyDiscount,
65
- de as authHeaders,
66
- he as checkoutCart,
67
- Q as cn,
68
- Be as confirmOrder,
69
- ue as createAdminRpcClients,
70
- ve as createCart,
71
- ne as createRpcClients,
72
- Me as fetchBrandBySlug,
73
- Ae as fetchCart,
74
- ye as fetchCartRecommendations,
75
- Se as fetchDeliveryZones,
76
- Re as fetchOrder,
77
- Oe as fetchOrderRecommendations,
78
- Ce as fetchProductBySlug,
79
- xe as fetchProductsByBrand,
80
- V as formatCurrency,
81
- W as formatDate,
82
- X as formatDateTime,
83
- ae as getApiClient,
84
- Y as getStatusColor,
85
- pe as initializeApiClient,
68
+ De as applyDiscount,
69
+ ce as authHeaders,
70
+ Ge as checkoutCart,
71
+ Y as cn,
72
+ Fe as confirmOrder,
73
+ xe as createAdminRpcClients,
74
+ ge as createCart,
75
+ Ce as createRpcClients,
76
+ qe as fetchBrandBySlug,
77
+ Ie as fetchCart,
78
+ Oe as fetchCartRecommendations,
79
+ Ze as fetchDeliveryZones,
80
+ Me as fetchOrder,
81
+ He as fetchOrderRecommendations,
82
+ Pe as fetchProductAddons,
83
+ he as fetchProductBySlug,
84
+ Ae as fetchProductsByBrand,
85
+ _ as formatCurrency,
86
+ ee as formatDate,
87
+ re as formatDateTime,
88
+ fe as getApiClient,
89
+ te as getStatusColor,
90
+ ue as initializeApiClient,
86
91
  e as publicApi,
87
- Ue as queryKeys,
88
- De as removeCartItem,
89
- ge as removeDiscount,
90
- ie as resetApiClient,
91
- Ge as updateCart,
92
- Ie as updateCartItem,
93
- be as useAddCartItem,
94
- re as useApiClientContext,
95
- oe as useApiConfig,
96
- qe as useApplyDiscount,
97
- i as useCart,
98
- ze as useCheckoutCart,
99
- Qe as useConfirmOrder,
100
- Ke as useCreateCart,
101
- or as useGetBrand,
102
- $e as useGetCart,
103
- je as useGetCartRecommendations,
104
- rr as useGetDeliveryZones,
105
- Ve as useGetOrder,
106
- We as useGetOrderRecommendations,
107
- Ye as useGetProduct,
108
- _e as useGetProducts,
92
+ Ke as queryKeys,
93
+ Re as removeCartItem,
94
+ ke as removeDiscount,
95
+ se as resetApiClient,
96
+ Be as updateCart,
97
+ Te as updateCartItem,
98
+ je as useAddCartItem,
99
+ ae as useApiClientContext,
100
+ de as useApiConfig,
101
+ we as useApplyDiscount,
102
+ d as useCart,
103
+ Ee as useCheckoutCart,
104
+ _e as useConfirmOrder,
105
+ Je as useCreateCart,
106
+ fr as useGetBrand,
107
+ Le as useGetCart,
108
+ Ne as useGetCartRecommendations,
109
+ dr as useGetDeliveryZones,
110
+ er as useGetOrder,
111
+ rr as useGetOrderRecommendations,
112
+ or as useGetProduct,
113
+ mr as useGetProductAddOns,
114
+ ar as useGetProducts,
109
115
  u as useMetaPixel,
110
- c as usePageTracking,
111
- we as useRemoveCartItem,
112
- Ee as useRemoveDiscount,
113
- C as useTikTokPixel,
114
- Je as useUpdateCart,
115
- Le as useUpdateCartItem
116
+ C as usePageTracking,
117
+ Qe as useRemoveCartItem,
118
+ Ve as useRemoveDiscount,
119
+ c as useTikTokPixel,
120
+ We as useUpdateCart,
121
+ Xe as useUpdateCartItem
116
122
  };
package/dist/index10.mjs CHANGED
@@ -1,101 +1,157 @@
1
1
  'use client';
2
- import { jsxs as t, jsx as a } from "react/jsx-runtime";
3
- import { Package as g, Trash2 as p } from "lucide-react";
4
- import { cn as N, formatCurrency as h } from "./index20.mjs";
5
- import { useCart as w } from "./index3.mjs";
6
- import { useState as f, useCallback as y } from "react";
7
- function U({
8
- item: e,
9
- className: b,
10
- disabled: r = !1
2
+ import { jsxs as l, jsx as t, Fragment as M } from "react/jsx-runtime";
3
+ import { useRef as W, useState as E } from "react";
4
+ import { ChevronLeft as F, ChevronRight as L } from "lucide-react";
5
+ import { Switch as O } from "./index43.mjs";
6
+ import { Badge as R } from "./index18.mjs";
7
+ import { cn as d, formatCurrency as v } from "./index22.mjs";
8
+ import "./index23.mjs";
9
+ import "@tanstack/react-query";
10
+ import { useGetProductAddOns as U } from "./index37.mjs";
11
+ import { useCart as G } from "./index3.mjs";
12
+ function Y({
13
+ slug: m,
14
+ products: h,
15
+ onToggle: f,
16
+ selectedProductIds: N,
17
+ className: x,
18
+ title: b = "Popular add-ons",
19
+ limit: y = 6
11
20
  }) {
12
- const [i, n] = f(!1), [s, c] = f(!1), { removeItem: o, updateItem: d } = w(), m = y(async (l) => {
13
- if (!(l <= 0)) {
14
- c(!0);
15
- try {
16
- await d(e.id, l);
17
- } catch (v) {
18
- console.error("Failed to update item quantity:", v);
21
+ const { cart: i, addItem: w, removeItem: C } = G(), { data: P, isLoading: g } = U(m || "", y, {
22
+ enabled: !!m && !h
23
+ }), c = h || P || [], k = N || c.filter((e) => i == null ? void 0 : i.items.some((n) => {
24
+ var r;
25
+ return n.variant.id === ((r = e.variants[0]) == null ? void 0 : r.id);
26
+ })).map((e) => e.id), A = async (e, n) => {
27
+ if (f) {
28
+ f(e, n);
29
+ return;
30
+ }
31
+ const r = e.variants[0];
32
+ if (r)
33
+ if (n)
34
+ await w(
35
+ e.slug,
36
+ e.name,
37
+ r.price,
38
+ r.sku,
39
+ 1
40
+ );
41
+ else {
42
+ const s = i == null ? void 0 : i.items.find((a) => a.variant.id === r.id);
43
+ s && await C(s.id);
19
44
  }
20
- c(!1);
45
+ }, o = W(null), [j, D] = E(0), I = () => {
46
+ if (o.current) {
47
+ const { scrollLeft: e, scrollWidth: n, clientWidth: r } = o.current, s = e / (n - r);
48
+ D(s || 0);
21
49
  }
22
- }, [e.id, d]), x = y(async () => {
23
- n(!0);
24
- try {
25
- await o(e.id);
26
- } catch (l) {
27
- console.error("Failed to remove item:", l);
50
+ }, p = (e) => {
51
+ if (o.current) {
52
+ const { clientWidth: n } = o.current, r = n * 0.9;
53
+ o.current.scrollBy({
54
+ left: e === "left" ? -r : r,
55
+ behavior: "smooth"
56
+ });
28
57
  }
29
- n(!1);
30
- }, [e.id, o]), u = e.variant.thumbnailUrl ?? e.variant.product.thumbnailUrl;
31
- return /* @__PURE__ */ t(
32
- "div",
33
- {
34
- className: N(
35
- "flex gap-3 transition-opacity",
36
- (r || i || s) && "opacity-50",
37
- b
38
- ),
39
- children: [
40
- /* @__PURE__ */ a("div", { className: "h-20 w-20 flex-shrink-0 overflow-hidden rounded-lg bg-gray-100", children: u ? /* @__PURE__ */ a(
41
- "img",
58
+ };
59
+ return (!c || c.length === 0) && !g ? null : g ? /* @__PURE__ */ l("div", { className: d("w-full py-8 space-y-4 animate-pulse", x), children: [
60
+ /* @__PURE__ */ t("div", { className: "h-4 w-32 bg-gray-200 rounded px-1 mb-6" }),
61
+ /* @__PURE__ */ l("div", { className: "flex gap-4 overflow-x-hidden", children: [
62
+ /* @__PURE__ */ t("div", { className: "min-w-[340px] h-[148px] bg-gray-100 rounded-[2rem]" }),
63
+ /* @__PURE__ */ t("div", { className: "min-w-[340px] h-[148px] bg-gray-100 rounded-[2rem]" })
64
+ ] })
65
+ ] }) : /* @__PURE__ */ l("div", { className: d("w-full py-8", x), children: [
66
+ /* @__PURE__ */ t("div", { className: "px-1 mb-3", children: /* @__PURE__ */ t("h3", { className: "text-lg font-bold tracking-tight text-gray-900", children: b }) }),
67
+ /* @__PURE__ */ t("div", { className: "relative", children: /* @__PURE__ */ t(
68
+ "div",
69
+ {
70
+ ref: o,
71
+ onScroll: I,
72
+ className: "flex gap-4 overflow-x-auto scrollbar-hide snap-x snap-mandatory px-1",
73
+ style: { scrollbarWidth: "none", msOverflowStyle: "none" },
74
+ children: c.map((e) => {
75
+ const n = k.includes(e.id), r = e.variants[0], s = (r == null ? void 0 : r.price) || 0, a = e.compareAtPrice || r.compareAtPrice, u = a && a > s, S = u ? Math.round((a - s) / a * 100) : 0;
76
+ return /* @__PURE__ */ l(
77
+ "div",
78
+ {
79
+ className: "relative flex min-w-[280px] md:min-w-[420px] snap-start items-center gap-4 rounded-xl bg-[#EBEBEB] p-3 transition-all",
80
+ children: [
81
+ /* @__PURE__ */ t("div", { className: "h-20 w-20 flex-shrink-0 overflow-hidden rounded-xl bg-white/40 flex items-center justify-center", children: e.imageUrl ? /* @__PURE__ */ t(
82
+ "img",
83
+ {
84
+ src: e.imageUrl,
85
+ alt: e.name,
86
+ className: "h-full w-full object-cover"
87
+ }
88
+ ) : /* @__PURE__ */ t("div", { className: "flex h-full w-full items-center justify-center text-[10px] text-gray-400", children: "No Img" }) }),
89
+ /* @__PURE__ */ l("div", { className: "flex flex-1 flex-col justify-center min-w-0", children: [
90
+ /* @__PURE__ */ t("h4", { className: "text-md font-bold text-[#333] truncate pr-2", title: e.name, children: e.name }),
91
+ e.addonDescription && /* @__PURE__ */ t("p", { className: "text-[11px] text-gray-500 line-clamp-2 italic mb-1", children: e.addonDescription }),
92
+ /* @__PURE__ */ l("div", { className: "flex items-center gap-2 mt-1", children: [
93
+ /* @__PURE__ */ t("span", { className: "text-md font-bold text-[#333]", children: v(s) }),
94
+ u && /* @__PURE__ */ l(M, { children: [
95
+ /* @__PURE__ */ t("span", { className: "text-sm text-[#DC143C] line-through", children: v(a) }),
96
+ /* @__PURE__ */ l(R, { className: "bg-[#DC143C]/10 hover:bg-[#DC143C]/20 text-[#DC143C] border-none text-[10px] font-bold px-2 py-0.5 rounded-lg uppercase tracking-tight", children: [
97
+ S,
98
+ "% OFF"
99
+ ] })
100
+ ] })
101
+ ] })
102
+ ] }),
103
+ /* @__PURE__ */ t("div", { className: "pl-2", children: /* @__PURE__ */ t(
104
+ O,
105
+ {
106
+ checked: n,
107
+ onCheckedChange: (B) => A(e, B),
108
+ className: "scale-125"
109
+ }
110
+ ) })
111
+ ]
112
+ },
113
+ e.id
114
+ );
115
+ })
116
+ }
117
+ ) }),
118
+ /* @__PURE__ */ l("div", { className: "flex items-center justify-between px-2 mt-2", children: [
119
+ /* @__PURE__ */ t("div", { className: "flex gap-1.5 focus:outline-none", children: Array.from({ length: Math.min(c.length, 6) }).map((e, n) => {
120
+ const r = Math.round(j * (Math.min(c.length, 6) - 1)) === n;
121
+ return /* @__PURE__ */ t(
122
+ "div",
42
123
  {
43
- src: u,
44
- alt: e.variant.product.name,
45
- className: "h-full w-full object-cover"
46
- }
47
- ) : /* @__PURE__ */ a("div", { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ a(g, { className: "h-6 w-6 text-gray-400" }) }) }),
48
- /* @__PURE__ */ t("div", { className: "flex flex-1 flex-col justify-between py-1", children: [
49
- /* @__PURE__ */ a("div", { children: /* @__PURE__ */ t("div", { className: "flex items-start justify-between gap-2", children: [
50
- /* @__PURE__ */ t("div", { className: "flex-1", children: [
51
- /* @__PURE__ */ a("h3", { className: "text-base font-semibold leading-tight", children: e.variant.product.name }),
52
- e.variant.name && /* @__PURE__ */ a("p", { className: "mt-0.5 text-sm text-gray-600", children: e.variant.name })
53
- ] }),
54
- /* @__PURE__ */ a(
55
- "button",
56
- {
57
- onClick: x,
58
- disabled: r || i,
59
- className: "text-gray-400 hover:text-red-600 disabled:cursor-not-allowed disabled:opacity-50",
60
- "aria-label": "Remove item",
61
- children: /* @__PURE__ */ a(p, { className: "h-5 w-5" })
62
- }
124
+ className: d(
125
+ "h-2 w-2 rounded-full transition-all duration-300",
126
+ r ? "bg-gray-600 scale-110" : "bg-gray-300"
63
127
  )
64
- ] }) }),
65
- /* @__PURE__ */ t("div", { className: "flex items-center justify-between mt-2", children: [
66
- /* @__PURE__ */ t("div", { className: "inline-flex items-center overflow-hidden rounded-full bg-gray-200 text-gray-700", children: [
67
- /* @__PURE__ */ a(
68
- "button",
69
- {
70
- "aria-label": "Decrease quantity",
71
- onClick: () => m(e.quantity - 1),
72
- disabled: r || e.quantity <= 1 || s,
73
- className: "flex h-8 w-8 items-center justify-center transition-colors hover:bg-gray-300 disabled:cursor-not-allowed disabled:opacity-50",
74
- children: ""
75
- }
76
- ),
77
- /* @__PURE__ */ a("span", { className: "px-3 text-base font-medium select-none", children: e.quantity }),
78
- /* @__PURE__ */ a(
79
- "button",
80
- {
81
- "aria-label": "Increase quantity",
82
- onClick: () => m(e.quantity + 1),
83
- disabled: r || s,
84
- className: "flex h-8 w-8 items-center justify-center transition-colors hover:bg-gray-300 disabled:cursor-not-allowed disabled:opacity-50",
85
- children: "+"
86
- }
87
- )
88
- ] }),
89
- /* @__PURE__ */ t("div", { className: "text-right", children: [
90
- /* @__PURE__ */ a("p", { className: "text-base font-medium", children: h(e.subtotal) }),
91
- e.basePrice !== e.finalPrice && /* @__PURE__ */ a("p", { className: "text-xs text-[#DC143C] line-through", children: h(e.basePrice * e.quantity) })
92
- ] })
93
- ] })
94
- ] })
95
- ]
96
- }
97
- );
128
+ },
129
+ n
130
+ );
131
+ }) }),
132
+ /* @__PURE__ */ l("div", { className: "flex gap-4", children: [
133
+ /* @__PURE__ */ t(
134
+ "button",
135
+ {
136
+ onClick: () => p("left"),
137
+ className: "text-gray-400 hover:text-gray-900 transition-colors",
138
+ "aria-label": "Previous",
139
+ children: /* @__PURE__ */ t(F, { className: "h-6 w-6 stroke-[2.5px]" })
140
+ }
141
+ ),
142
+ /* @__PURE__ */ t(
143
+ "button",
144
+ {
145
+ onClick: () => p("right"),
146
+ className: "text-gray-400 hover:text-gray-900 transition-colors",
147
+ "aria-label": "Next",
148
+ children: /* @__PURE__ */ t(L, { className: "h-6 w-6 stroke-[2.5px]" })
149
+ }
150
+ )
151
+ ] })
152
+ ] })
153
+ ] });
98
154
  }
99
155
  export {
100
- U as CartItem
156
+ Y as ProductAddOns
101
157
  };
package/dist/index100.mjs CHANGED
@@ -1,5 +1,56 @@
1
1
  'use client';
2
- var r = {};
2
+ import s from "./index85.mjs";
3
+ import m from "./index150.mjs";
4
+ import u from "./index151.mjs";
5
+ import { getFetch as b } from "./index152.mjs";
6
+ import d from "./index96.mjs";
7
+ const p = {
8
+ http: m,
9
+ xhr: u,
10
+ fetch: {
11
+ get: b
12
+ }
13
+ };
14
+ s.forEach(p, (e, o) => {
15
+ if (e) {
16
+ try {
17
+ Object.defineProperty(e, "name", { value: o });
18
+ } catch {
19
+ }
20
+ Object.defineProperty(e, "adapterName", { value: o });
21
+ }
22
+ });
23
+ const f = (e) => `- ${e}`, g = (e) => s.isFunction(e) || e === null || e === !1, y = {
24
+ getAdapter: (e, o) => {
25
+ e = s.isArray(e) ? e : [e];
26
+ const { length: a } = e;
27
+ let i, t;
28
+ const c = {};
29
+ for (let r = 0; r < a; r++) {
30
+ i = e[r];
31
+ let n;
32
+ if (t = i, !g(i) && (t = p[(n = String(i)).toLowerCase()], t === void 0))
33
+ throw new d(`Unknown adapter '${n}'`);
34
+ if (t && (s.isFunction(t) || (t = t.get(o))))
35
+ break;
36
+ c[n || "#" + r] = t;
37
+ }
38
+ if (!t) {
39
+ const r = Object.entries(c).map(
40
+ ([l, h]) => `adapter ${l} ` + (h === !1 ? "is not supported by the environment" : "is not available in the build")
41
+ );
42
+ let n = a ? r.length > 1 ? `since :
43
+ ` + r.map(f).join(`
44
+ `) : " " + f(r[0]) : "as no adapter specified";
45
+ throw new d(
46
+ "There is no suitable adapter to dispatch the request " + n,
47
+ "ERR_NOT_SUPPORT"
48
+ );
49
+ }
50
+ return t;
51
+ },
52
+ adapters: p
53
+ };
3
54
  export {
4
- r as __exports
55
+ y as default
5
56
  };