@instockng/storefront-ui 1.0.37 → 1.0.39

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 (251) hide show
  1. package/dist/components/RecommendedProducts.d.ts +8 -0
  2. package/dist/components/RecommendedProducts.d.ts.map +1 -0
  3. package/dist/components/ShoppingCart.d.ts.map +1 -1
  4. package/dist/contexts/CartContext.d.ts.map +1 -1
  5. package/dist/index.mjs +72 -70
  6. package/dist/index100.mjs +26 -16
  7. package/dist/index101.mjs +13 -210
  8. package/dist/index102.mjs +194 -159
  9. package/dist/index103.mjs +175 -17
  10. package/dist/index104.mjs +14 -15
  11. package/dist/index105.mjs +15 -25
  12. package/dist/index106.mjs +27 -150
  13. package/dist/index107.mjs +151 -15
  14. package/dist/index108.mjs +13 -24
  15. package/dist/index109.mjs +22 -75
  16. package/dist/index11.mjs +29 -27
  17. package/dist/index110.mjs +76 -30
  18. package/dist/index111.mjs +32 -139
  19. package/dist/index112.mjs +135 -45
  20. package/dist/index113.mjs +51 -19
  21. package/dist/index114.mjs +15 -19
  22. package/dist/index115.mjs +21 -17
  23. package/dist/index116.mjs +16 -18
  24. package/dist/index117.mjs +17 -13
  25. package/dist/index118.mjs +13 -14
  26. package/dist/index119.mjs +13 -12
  27. package/dist/index120.mjs +14 -58
  28. package/dist/index121.mjs +57 -10
  29. package/dist/index122.mjs +11 -32
  30. package/dist/index123.mjs +32 -17
  31. package/dist/index124.mjs +17 -27
  32. package/dist/index125.mjs +26 -19
  33. package/dist/index126.mjs +20 -12
  34. package/dist/index127.mjs +12 -14
  35. package/dist/index128.mjs +14 -40
  36. package/dist/index129.mjs +40 -16
  37. package/dist/index13.mjs +3 -3
  38. package/dist/index130.mjs +15 -260
  39. package/dist/index131.mjs +262 -64
  40. package/dist/index132.mjs +69 -7
  41. package/dist/index133.mjs +8 -2
  42. package/dist/index134.mjs +2 -2
  43. package/dist/index135.mjs +2 -33
  44. package/dist/index136.mjs +33 -2
  45. package/dist/index137.mjs +2 -21
  46. package/dist/index138.mjs +19 -54
  47. package/dist/index139.mjs +55 -28
  48. package/dist/index14.mjs +2 -2
  49. package/dist/index140.mjs +28 -6
  50. package/dist/index141.mjs +6 -51
  51. package/dist/index142.mjs +51 -5
  52. package/dist/index143.mjs +6 -12
  53. package/dist/index144.mjs +12 -7
  54. package/dist/index145.mjs +6 -27
  55. package/dist/index146.mjs +28 -2
  56. package/dist/index147.mjs +2 -70
  57. package/dist/index148.mjs +67 -164
  58. package/dist/index149.mjs +167 -2
  59. package/dist/index151.mjs +2 -2
  60. package/dist/index152.mjs +2 -18
  61. package/dist/index153.mjs +11 -25
  62. package/dist/index154.mjs +26 -32
  63. package/dist/index155.mjs +32 -12
  64. package/dist/index156.mjs +9 -9
  65. package/dist/index157.mjs +18 -2
  66. package/dist/index158.mjs +2 -20
  67. package/dist/index159.mjs +13 -39
  68. package/dist/index16.mjs +1 -1
  69. package/dist/index160.mjs +46 -2
  70. package/dist/index161.mjs +2 -30
  71. package/dist/index162.mjs +24 -12
  72. package/dist/index163.mjs +18 -2
  73. package/dist/index164.mjs +2 -2
  74. package/dist/index165.mjs +2 -2
  75. package/dist/index166.mjs +2 -2
  76. package/dist/index167.mjs +2 -72
  77. package/dist/index168.mjs +72 -2
  78. package/dist/index169.mjs +2 -53
  79. package/dist/index17.mjs +1 -1
  80. package/dist/index170.mjs +53 -2
  81. package/dist/index171.mjs +2 -36
  82. package/dist/index172.mjs +30 -146
  83. package/dist/index173.mjs +152 -2
  84. package/dist/index174.mjs +2 -2
  85. package/dist/index175.mjs +2 -19
  86. package/dist/index176.mjs +19 -2
  87. package/dist/index177.mjs +2 -2
  88. package/dist/index178.mjs +2 -26
  89. package/dist/index179.mjs +26 -2
  90. package/dist/index180.mjs +2 -2
  91. package/dist/index181.mjs +2 -24
  92. package/dist/index182.mjs +17 -16
  93. package/dist/index183.mjs +23 -2
  94. package/dist/index185.mjs +2 -2
  95. package/dist/index186.mjs +2 -23
  96. package/dist/index187.mjs +23 -2
  97. package/dist/index188.mjs +2 -23
  98. package/dist/index189.mjs +23 -2
  99. package/dist/index190.mjs +2 -2
  100. package/dist/index192.mjs +2 -23
  101. package/dist/index193.mjs +23 -2
  102. package/dist/index194.mjs +2 -23
  103. package/dist/index195.mjs +23 -2
  104. package/dist/index196.mjs +2 -2
  105. package/dist/index197.mjs +2 -2
  106. package/dist/index199.mjs +2 -2
  107. package/dist/index20.mjs +2 -2
  108. package/dist/index200.mjs +2 -2
  109. package/dist/index201.mjs +2 -2
  110. package/dist/index202.mjs +2 -2
  111. package/dist/index203.mjs +2 -127
  112. package/dist/index204.mjs +127 -2
  113. package/dist/index205.mjs +2 -74
  114. package/dist/index206.mjs +60 -60
  115. package/dist/index207.mjs +74 -2
  116. package/dist/index208.mjs +2 -31
  117. package/dist/index209.mjs +2 -11
  118. package/dist/index210.mjs +2 -4
  119. package/dist/index211.mjs +2 -4
  120. package/dist/index212.mjs +2 -13
  121. package/dist/index213.mjs +2 -7
  122. package/dist/index214.mjs +2 -12
  123. package/dist/index215.mjs +2 -5
  124. package/dist/index216.mjs +2 -33
  125. package/dist/index217.mjs +106 -29
  126. package/dist/index218.mjs +2 -28
  127. package/dist/index219.mjs +2 -61
  128. package/dist/index220.mjs +37 -2
  129. package/dist/index221.mjs +2 -2
  130. package/dist/index222.mjs +244 -2
  131. package/dist/index224.mjs +33 -2
  132. package/dist/index225.mjs +65 -2
  133. package/dist/index226.mjs +25 -2
  134. package/dist/index228.mjs +2 -108
  135. package/dist/index23.mjs +2 -2
  136. package/dist/index231.mjs +2 -37
  137. package/dist/index232.mjs +2 -2
  138. package/dist/index233.mjs +2 -244
  139. package/dist/index235.mjs +2 -33
  140. package/dist/index236.mjs +2 -65
  141. package/dist/index237.mjs +4 -25
  142. package/dist/index238.mjs +31 -2
  143. package/dist/index239.mjs +11 -2
  144. package/dist/index24.mjs +1 -1
  145. package/dist/index240.mjs +4 -2
  146. package/dist/index241.mjs +4 -2
  147. package/dist/index242.mjs +13 -2
  148. package/dist/index243.mjs +7 -2
  149. package/dist/index244.mjs +2 -2
  150. package/dist/index246.mjs +12 -2
  151. package/dist/index247.mjs +5 -2
  152. package/dist/index248.mjs +33 -4
  153. package/dist/index249.mjs +31 -2
  154. package/dist/index250.mjs +28 -2
  155. package/dist/index251.mjs +61 -2
  156. package/dist/index252.mjs +2 -2
  157. package/dist/index253.mjs +2 -18
  158. package/dist/index254.mjs +13 -42
  159. package/dist/index255.mjs +47 -2
  160. package/dist/index256.mjs +2 -2
  161. package/dist/index257.mjs +2 -2
  162. package/dist/index258.mjs +2 -2
  163. package/dist/index259.mjs +2 -91
  164. package/dist/index26.mjs +50 -39
  165. package/dist/index260.mjs +91 -2
  166. package/dist/index261.mjs +1 -2
  167. package/dist/index262.mjs +3 -2
  168. package/dist/index263.mjs +2 -2
  169. package/dist/index264.mjs +2 -17
  170. package/dist/index265.mjs +15 -11
  171. package/dist/index266.mjs +13 -6
  172. package/dist/index267.mjs +6 -30
  173. package/dist/index268.mjs +30 -2
  174. package/dist/index270.mjs +2 -2
  175. package/dist/index271.mjs +5 -0
  176. package/dist/index3.mjs +36 -28
  177. package/dist/index30.mjs +6 -5
  178. package/dist/index31.mjs +16 -15
  179. package/dist/index32.mjs +11 -11
  180. package/dist/index33.mjs +54 -45
  181. package/dist/index34.mjs +1 -1
  182. package/dist/index35.mjs +1 -1
  183. package/dist/index36.mjs +1 -1
  184. package/dist/index37.mjs +1 -1
  185. package/dist/index38.mjs +2 -2
  186. package/dist/index40.mjs +2 -2
  187. package/dist/index41.mjs +96 -6
  188. package/dist/index42.mjs +6 -1432
  189. package/dist/index43.mjs +1433 -2
  190. package/dist/index44.mjs +2 -60
  191. package/dist/index45.mjs +57 -48
  192. package/dist/index46.mjs +51 -33
  193. package/dist/index47.mjs +33 -15
  194. package/dist/index48.mjs +12 -2260
  195. package/dist/index49.mjs +2263 -36
  196. package/dist/index50.mjs +36 -44
  197. package/dist/index51.mjs +44 -99
  198. package/dist/index52.mjs +99 -113
  199. package/dist/index53.mjs +82 -50
  200. package/dist/index54.mjs +55 -51
  201. package/dist/index55.mjs +46 -64
  202. package/dist/index56.mjs +71 -57
  203. package/dist/index57.mjs +57 -55
  204. package/dist/index58.mjs +75 -15
  205. package/dist/index59.mjs +13 -12
  206. package/dist/index60.mjs +16 -59
  207. package/dist/index61.mjs +43 -105
  208. package/dist/index62.mjs +89 -93
  209. package/dist/index63.mjs +128 -23
  210. package/dist/index64.mjs +24 -2
  211. package/dist/index65.mjs +2 -153
  212. package/dist/index66.mjs +149 -19
  213. package/dist/index67.mjs +21 -73
  214. package/dist/index68.mjs +5 -15
  215. package/dist/index69.mjs +68 -56
  216. package/dist/index70.mjs +15 -5
  217. package/dist/index71.mjs +63 -2
  218. package/dist/index72.mjs +2 -6
  219. package/dist/index73.mjs +5 -1133
  220. package/dist/index74.mjs +1130 -16
  221. package/dist/index75.mjs +16 -51
  222. package/dist/index76.mjs +49 -27
  223. package/dist/index77.mjs +33 -2
  224. package/dist/index78.mjs +2 -235
  225. package/dist/index79.mjs +233 -4
  226. package/dist/index80.mjs +5 -133
  227. package/dist/index81.mjs +129 -63
  228. package/dist/index82.mjs +67 -86
  229. package/dist/index83.mjs +85 -27
  230. package/dist/index84.mjs +28 -8
  231. package/dist/index85.mjs +8 -74
  232. package/dist/index86.mjs +74 -3
  233. package/dist/index87.mjs +4 -2
  234. package/dist/index88.mjs +2 -83
  235. package/dist/index89.mjs +81 -52
  236. package/dist/index90.mjs +53 -5
  237. package/dist/index91.mjs +5 -4
  238. package/dist/index92.mjs +4 -178
  239. package/dist/index93.mjs +174 -48
  240. package/dist/index94.mjs +51 -67
  241. package/dist/index95.mjs +69 -34
  242. package/dist/index96.mjs +31 -40
  243. package/dist/index97.mjs +43 -2
  244. package/dist/index98.mjs +2 -2
  245. package/dist/index99.mjs +2 -28
  246. package/dist/styles.css +1 -1
  247. package/package.json +2 -2
  248. package/src/components/RecommendedProducts.stories.tsx +115 -0
  249. package/src/components/RecommendedProducts.tsx +184 -0
  250. package/src/components/ShoppingCart.tsx +9 -7
  251. package/src/contexts/CartContext.tsx +11 -2
package/dist/index41.mjs CHANGED
@@ -1,10 +1,100 @@
1
1
  'use client';
2
- import { useEffect as o } from "react";
3
- function f(e) {
4
- o(() => (e ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
5
- document.body.style.overflow = "";
6
- }), [e]);
2
+ import { jsx as t, jsxs as n, Fragment as g } from "react/jsx-runtime";
3
+ import "./index21.mjs";
4
+ import { useGetCartRecommendations as j } from "./index33.mjs";
5
+ import "@tanstack/react-query";
6
+ import { useCart as A } from "./index3.mjs";
7
+ import { cn as w, formatCurrency as F } from "./index20.mjs";
8
+ import { Button as H } from "./index14.mjs";
9
+ import { Loader2 as x, Package as R, ShoppingCart as T } from "lucide-react";
10
+ import { useState as r, useEffect as L } from "react";
11
+ function M({
12
+ limit: v,
13
+ className: N
14
+ }) {
15
+ const { cart: l, addItem: b } = A(), { data: i, isLoading: p, error: y } = j(l == null ? void 0 : l.id, v), [S, c] = r(/* @__PURE__ */ new Set()), [P, m] = r(/* @__PURE__ */ new Set()), [C, o] = r(/* @__PURE__ */ new Set()), [h, f] = r(/* @__PURE__ */ new Set());
16
+ if (L(() => {
17
+ f(/* @__PURE__ */ new Set()), m(/* @__PURE__ */ new Set()), o(/* @__PURE__ */ new Set());
18
+ }, [i]), !l)
19
+ return null;
20
+ if (p)
21
+ return /* @__PURE__ */ t("div", { className: "py-6", children: /* @__PURE__ */ t("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ t(x, { className: "h-6 w-6 animate-spin text-accent-500" }) }) });
22
+ const u = i == null ? void 0 : i.filter(
23
+ (e) => !h.has(e.id)
24
+ );
25
+ if (y || !u || u.length === 0)
26
+ return null;
27
+ const I = async (e, a) => {
28
+ c((s) => new Set(s).add(e.id));
29
+ try {
30
+ await b(e.slug, e.name, a.price, a.sku, 1), m((s) => new Set(s).add(e.id)), setTimeout(() => {
31
+ o((s) => new Set(s).add(e.id));
32
+ }, 500), setTimeout(() => {
33
+ f((s) => new Set(s).add(e.id));
34
+ }, 1e3);
35
+ } finally {
36
+ c((s) => {
37
+ const d = new Set(s);
38
+ return d.delete(e.id), d;
39
+ });
40
+ }
41
+ };
42
+ return /* @__PURE__ */ n("div", { className: w("pt-2", N), children: [
43
+ /* @__PURE__ */ t("div", { className: "mb-2 px-4", children: /* @__PURE__ */ t("h3", { className: "text-lg font-semibold text-gray-900", children: "Customers also bought" }) }),
44
+ /* @__PURE__ */ t("div", { className: "overflow-x-auto", children: /* @__PURE__ */ n("div", { className: "flex gap-4 pb-2 transition-all duration-500", children: [
45
+ /* @__PURE__ */ t("div", { className: "flex-shrink-0 w-1" }),
46
+ i == null ? void 0 : i.map((e) => {
47
+ const a = e.variants[0];
48
+ if (!a) return null;
49
+ const s = S.has(e.id), d = P.has(e.id), k = C.has(e.id);
50
+ return h.has(e.id) ? null : /* @__PURE__ */ n(
51
+ "div",
52
+ {
53
+ className: w(
54
+ "flex flex-col flex-shrink-0 w-40 bg-white border border-gray-300 rounded-lg overflow-hidden hover:border-gray-400 transition-all duration-500",
55
+ d && "opacity-0 blur-sm scale-95 pointer-events-none",
56
+ k && "w-0 mr-[-1rem] overflow-hidden"
57
+ ),
58
+ children: [
59
+ /* @__PURE__ */ t("div", { className: "relative aspect-square bg-gray-100", children: e.thumbnailUrl ? /* @__PURE__ */ t(
60
+ "img",
61
+ {
62
+ src: e.thumbnailUrl,
63
+ alt: e.name,
64
+ className: "w-full h-full object-cover"
65
+ }
66
+ ) : /* @__PURE__ */ t("div", { className: "w-full h-full flex items-center justify-center", children: /* @__PURE__ */ t(R, { className: "h-12 w-12 text-gray-300" }) }) }),
67
+ /* @__PURE__ */ n("div", { className: "p-3 flex flex-col flex-1", children: [
68
+ /* @__PURE__ */ n("div", { className: "flex-1", children: [
69
+ /* @__PURE__ */ t("h4", { className: "text-sm font-medium text-gray-900 line-clamp-2 leading-tight", children: e.name }),
70
+ /* @__PURE__ */ t("p", { className: "text-sm font-semibold text-accent-600 mt-1", children: F(a.price) })
71
+ ] }),
72
+ /* @__PURE__ */ t(
73
+ H,
74
+ {
75
+ size: "sm",
76
+ onClick: () => I(e, a),
77
+ disabled: s,
78
+ className: "w-full bg-accent-500 hover:bg-accent-600 text-white text-xs h-8 mt-2",
79
+ children: s ? /* @__PURE__ */ n(g, { children: [
80
+ /* @__PURE__ */ t(x, { className: "h-3 w-3 animate-spin" }),
81
+ "Adding..."
82
+ ] }) : /* @__PURE__ */ n(g, { children: [
83
+ /* @__PURE__ */ t(T, { className: "h-3 w-3" }),
84
+ "Add"
85
+ ] })
86
+ }
87
+ )
88
+ ] })
89
+ ]
90
+ },
91
+ e.id
92
+ );
93
+ }),
94
+ /* @__PURE__ */ t("div", { className: "flex-shrink-0 w-1" })
95
+ ] }) })
96
+ ] });
7
97
  }
8
98
  export {
9
- f as useHideBodyOverflow
99
+ M as RecommendedProducts
10
100
  };