@instockng/storefront-ui 1.0.106 → 1.0.108

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 (298) hide show
  1. package/dist/components/AssistantDrawer.d.ts +22 -0
  2. package/dist/components/AssistantDrawer.d.ts.map +1 -0
  3. package/dist/components/ProductAssistantChips.d.ts +13 -0
  4. package/dist/components/ProductAssistantChips.d.ts.map +1 -0
  5. package/dist/contexts/AssistantContext.d.ts +19 -0
  6. package/dist/contexts/AssistantContext.d.ts.map +1 -0
  7. package/dist/index.d.ts +5 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.mjs +144 -138
  10. package/dist/index10.mjs +103 -73
  11. package/dist/index100.mjs +53 -68
  12. package/dist/index101.mjs +6 -37
  13. package/dist/index102.mjs +4 -42
  14. package/dist/index103.mjs +179 -2
  15. package/dist/index104.mjs +53 -6
  16. package/dist/index105.mjs +69 -1134
  17. package/dist/index106.mjs +2 -20
  18. package/dist/index107.mjs +5 -54
  19. package/dist/index108.mjs +1126 -25
  20. package/dist/index109.mjs +20 -2
  21. package/dist/index11.mjs +74 -190
  22. package/dist/index110.mjs +55 -2
  23. package/dist/index111.mjs +33 -2
  24. package/dist/index112.mjs +2 -28
  25. package/dist/index113.mjs +2 -18
  26. package/dist/index114.mjs +2 -215
  27. package/dist/index115.mjs +26 -178
  28. package/dist/index116.mjs +10 -14
  29. package/dist/index117.mjs +209 -17
  30. package/dist/index118.mjs +173 -26
  31. package/dist/index119.mjs +17 -151
  32. package/dist/index12.mjs +172 -107
  33. package/dist/index120.mjs +12 -9
  34. package/dist/index121.mjs +24 -22
  35. package/dist/index122.mjs +148 -76
  36. package/dist/index123.mjs +13 -31
  37. package/dist/index124.mjs +24 -138
  38. package/dist/index125.mjs +78 -49
  39. package/dist/index126.mjs +32 -17
  40. package/dist/index127.mjs +139 -21
  41. package/dist/index128.mjs +51 -19
  42. package/dist/index129.mjs +16 -18
  43. package/dist/index13.mjs +127 -98
  44. package/dist/index130.mjs +18 -12
  45. package/dist/index131.mjs +15 -14
  46. package/dist/index132.mjs +17 -13
  47. package/dist/index133.mjs +14 -58
  48. package/dist/index134.mjs +15 -11
  49. package/dist/index135.mjs +14 -32
  50. package/dist/index136.mjs +57 -16
  51. package/dist/index137.mjs +11 -27
  52. package/dist/index138.mjs +31 -19
  53. package/dist/index139.mjs +17 -12
  54. package/dist/index14.mjs +94 -90
  55. package/dist/index140.mjs +27 -14
  56. package/dist/index141.mjs +20 -40
  57. package/dist/index142.mjs +11 -15
  58. package/dist/index143.mjs +17 -264
  59. package/dist/index144.mjs +40 -63
  60. package/dist/index145.mjs +22 -7
  61. package/dist/index146.mjs +268 -2
  62. package/dist/index147.mjs +70 -2
  63. package/dist/index148.mjs +7 -32
  64. package/dist/index149.mjs +2 -2
  65. package/dist/index15.mjs +84 -149
  66. package/dist/index150.mjs +2 -21
  67. package/dist/index151.mjs +31 -54
  68. package/dist/index152.mjs +2 -29
  69. package/dist/index153.mjs +20 -6
  70. package/dist/index154.mjs +53 -49
  71. package/dist/index155.mjs +29 -6
  72. package/dist/index156.mjs +6 -11
  73. package/dist/index157.mjs +49 -4
  74. package/dist/index158.mjs +5 -27
  75. package/dist/index159.mjs +12 -2
  76. package/dist/index16.mjs +157 -203
  77. package/dist/index160.mjs +6 -69
  78. package/dist/index161.mjs +27 -166
  79. package/dist/index162.mjs +2 -2
  80. package/dist/index163.mjs +70 -2
  81. package/dist/index164.mjs +167 -2
  82. package/dist/index165.mjs +2 -2
  83. package/dist/index166.mjs +2 -18
  84. package/dist/index167.mjs +2 -32
  85. package/dist/index168.mjs +2 -38
  86. package/dist/index169.mjs +11 -11
  87. package/dist/index17.mjs +198 -107
  88. package/dist/index170.mjs +25 -11
  89. package/dist/index171.mjs +38 -2
  90. package/dist/index172.mjs +11 -13
  91. package/dist/index173.mjs +11 -39
  92. package/dist/index174.mjs +2 -2
  93. package/dist/index175.mjs +15 -25
  94. package/dist/index176.mjs +39 -11
  95. package/dist/index178.mjs +30 -2
  96. package/dist/index179.mjs +18 -2
  97. package/dist/index18.mjs +97 -130
  98. package/dist/index181.mjs +2 -72
  99. package/dist/index182.mjs +2 -2
  100. package/dist/index183.mjs +2 -53
  101. package/dist/index184.mjs +72 -2
  102. package/dist/index185.mjs +2 -36
  103. package/dist/index186.mjs +38 -137
  104. package/dist/index187.mjs +2 -2
  105. package/dist/index188.mjs +36 -2
  106. package/dist/index189.mjs +147 -14
  107. package/dist/index19.mjs +140 -87
  108. package/dist/index191.mjs +2 -2
  109. package/dist/index192.mjs +10 -17
  110. package/dist/index193.mjs +2 -2
  111. package/dist/index194.mjs +2 -2
  112. package/dist/index195.mjs +18 -16
  113. package/dist/index196.mjs +2 -23
  114. package/dist/index197.mjs +2 -2
  115. package/dist/index198.mjs +24 -2
  116. package/dist/index199.mjs +23 -2
  117. package/dist/index2.mjs +30 -16
  118. package/dist/index20.mjs +82 -708
  119. package/dist/index200.mjs +2 -23
  120. package/dist/index201.mjs +2 -2
  121. package/dist/index202.mjs +2 -23
  122. package/dist/index203.mjs +23 -2
  123. package/dist/index204.mjs +2 -2
  124. package/dist/index205.mjs +23 -2
  125. package/dist/index206.mjs +2 -23
  126. package/dist/index207.mjs +2 -2
  127. package/dist/index208.mjs +2 -23
  128. package/dist/index209.mjs +23 -2
  129. package/dist/index21.mjs +718 -54
  130. package/dist/index210.mjs +2 -2
  131. package/dist/index211.mjs +23 -2
  132. package/dist/index212.mjs +2 -2
  133. package/dist/index213.mjs +2 -2
  134. package/dist/index215.mjs +2 -2
  135. package/dist/index216.mjs +2 -2
  136. package/dist/index217.mjs +2 -127
  137. package/dist/index218.mjs +2 -2
  138. package/dist/index219.mjs +2 -74
  139. package/dist/index22.mjs +263 -62
  140. package/dist/index220.mjs +123 -70
  141. package/dist/index221.mjs +2 -13
  142. package/dist/index222.mjs +74 -7
  143. package/dist/index223.mjs +73 -30
  144. package/dist/index224.mjs +30 -10
  145. package/dist/index225.mjs +10 -3
  146. package/dist/index226.mjs +3 -3
  147. package/dist/index227.mjs +3 -11
  148. package/dist/index228.mjs +13 -5
  149. package/dist/index229.mjs +7 -33
  150. package/dist/index23.mjs +44 -23
  151. package/dist/index230.mjs +11 -30
  152. package/dist/index231.mjs +5 -28
  153. package/dist/index232.mjs +33 -61
  154. package/dist/index233.mjs +31 -2
  155. package/dist/index234.mjs +28 -2
  156. package/dist/index235.mjs +61 -2
  157. package/dist/index236.mjs +2 -2
  158. package/dist/index237.mjs +108 -2
  159. package/dist/index238.mjs +2 -2
  160. package/dist/index239.mjs +2 -2
  161. package/dist/index24.mjs +55 -104
  162. package/dist/index240.mjs +2 -2
  163. package/dist/index241.mjs +2 -108
  164. package/dist/index242.mjs +2 -2
  165. package/dist/index244.mjs +2 -37
  166. package/dist/index245.mjs +2 -2
  167. package/dist/index246.mjs +2 -244
  168. package/dist/index247.mjs +37 -2
  169. package/dist/index248.mjs +2 -33
  170. package/dist/index249.mjs +2 -65
  171. package/dist/index25.mjs +62 -42
  172. package/dist/index250.mjs +243 -24
  173. package/dist/index251.mjs +2 -2
  174. package/dist/index252.mjs +33 -2
  175. package/dist/index253.mjs +65 -2
  176. package/dist/index254.mjs +25 -2
  177. package/dist/index255.mjs +2 -2
  178. package/dist/index256.mjs +2 -2
  179. package/dist/index257.mjs +2 -2
  180. package/dist/index259.mjs +2 -2
  181. package/dist/index26.mjs +22 -40
  182. package/dist/index260.mjs +2 -2
  183. package/dist/index261.mjs +2 -4
  184. package/dist/index262.mjs +2 -2
  185. package/dist/index263.mjs +2 -2
  186. package/dist/index264.mjs +4 -3
  187. package/dist/index265.mjs +2 -2
  188. package/dist/index266.mjs +2 -2
  189. package/dist/index267.mjs +3 -17
  190. package/dist/index268.mjs +2 -13
  191. package/dist/index269.mjs +2 -6
  192. package/dist/index27.mjs +107 -87
  193. package/dist/index270.mjs +17 -30
  194. package/dist/index271.mjs +13 -2
  195. package/dist/index272.mjs +6 -2
  196. package/dist/index273.mjs +29 -17
  197. package/dist/index274.mjs +2 -47
  198. package/dist/index275.mjs +2 -2
  199. package/dist/index276.mjs +18 -2
  200. package/dist/index277.mjs +47 -2
  201. package/dist/index278.mjs +2 -2
  202. package/dist/index279.mjs +2 -91
  203. package/dist/index28.mjs +42 -32
  204. package/dist/index280.mjs +2 -2
  205. package/dist/index282.mjs +91 -2
  206. package/dist/index283.mjs +2 -2
  207. package/dist/index284.mjs +5 -0
  208. package/dist/index285.mjs +5 -0
  209. package/dist/index286.mjs +5 -0
  210. package/dist/index29.mjs +42 -9
  211. package/dist/index3.mjs +7 -7
  212. package/dist/index30.mjs +84 -17
  213. package/dist/index31.mjs +29 -35
  214. package/dist/index32.mjs +8 -39
  215. package/dist/index33.mjs +21 -125
  216. package/dist/index34.mjs +35 -46
  217. package/dist/index35.mjs +38 -9
  218. package/dist/index36.mjs +121 -6
  219. package/dist/index37.mjs +49 -123
  220. package/dist/index38.mjs +11 -28
  221. package/dist/index39.mjs +11 -91
  222. package/dist/index4.mjs +34 -101
  223. package/dist/index40.mjs +121 -123
  224. package/dist/index41.mjs +28 -11
  225. package/dist/index42.mjs +91 -35
  226. package/dist/index43.mjs +116 -37
  227. package/dist/index44.mjs +9 -9
  228. package/dist/index45.mjs +33 -121
  229. package/dist/index46.mjs +42 -385
  230. package/dist/index47.mjs +10 -24
  231. package/dist/index48.mjs +122 -31
  232. package/dist/index49.mjs +388 -27
  233. package/dist/index5.mjs +92 -102
  234. package/dist/index50.mjs +24 -6
  235. package/dist/index51.mjs +30 -1431
  236. package/dist/index52.mjs +26 -68
  237. package/dist/index53.mjs +7 -2
  238. package/dist/index54.mjs +1425 -52
  239. package/dist/index55.mjs +69 -50
  240. package/dist/index56.mjs +2 -33
  241. package/dist/index57.mjs +59 -14
  242. package/dist/index58.mjs +47 -2259
  243. package/dist/index59.mjs +33 -36
  244. package/dist/index6.mjs +111 -15
  245. package/dist/index60.mjs +14 -43
  246. package/dist/index61.mjs +2256 -96
  247. package/dist/index62.mjs +36 -81
  248. package/dist/index63.mjs +43 -18
  249. package/dist/index64.mjs +102 -128
  250. package/dist/index65.mjs +45 -89
  251. package/dist/index66.mjs +15 -75
  252. package/dist/index67.mjs +84 -130
  253. package/dist/index68.mjs +84 -66
  254. package/dist/index69.mjs +69 -26
  255. package/dist/index7.mjs +15 -195
  256. package/dist/index70.mjs +138 -58
  257. package/dist/index71.mjs +82 -56
  258. package/dist/index72.mjs +28 -55
  259. package/dist/index73.mjs +79 -46
  260. package/dist/index74.mjs +58 -112
  261. package/dist/index75.mjs +47 -54
  262. package/dist/index76.mjs +60 -22
  263. package/dist/index77.mjs +135 -2
  264. package/dist/index78.mjs +68 -21
  265. package/dist/index79.mjs +4 -152
  266. package/dist/index8.mjs +136 -190
  267. package/dist/index80.mjs +23 -4
  268. package/dist/index81.mjs +2 -75
  269. package/dist/index82.mjs +153 -15
  270. package/dist/index83.mjs +21 -61
  271. package/dist/index84.mjs +69 -229
  272. package/dist/index85.mjs +15 -6
  273. package/dist/index86.mjs +55 -126
  274. package/dist/index87.mjs +33 -64
  275. package/dist/index88.mjs +40 -84
  276. package/dist/index89.mjs +229 -23
  277. package/dist/index9.mjs +240 -99
  278. package/dist/index90.mjs +5 -8
  279. package/dist/index91.mjs +125 -66
  280. package/dist/index92.mjs +67 -3
  281. package/dist/index93.mjs +87 -2
  282. package/dist/index94.mjs +24 -78
  283. package/dist/index95.mjs +7 -52
  284. package/dist/index96.mjs +74 -5
  285. package/dist/index97.mjs +3 -4
  286. package/dist/index98.mjs +2 -179
  287. package/dist/index99.mjs +79 -49
  288. package/dist/providers/StorefrontProvider.d.ts +3 -1
  289. package/dist/providers/StorefrontProvider.d.ts.map +1 -1
  290. package/dist/styles.css +1 -1
  291. package/package.json +1 -1
  292. package/src/components/AssistantDrawer.stories.tsx +90 -0
  293. package/src/components/AssistantDrawer.tsx +426 -0
  294. package/src/components/ProductAssistantChips.stories.tsx +42 -0
  295. package/src/components/ProductAssistantChips.tsx +64 -0
  296. package/src/contexts/AssistantContext.tsx +62 -0
  297. package/src/index.ts +11 -0
  298. package/src/providers/StorefrontProvider.tsx +17 -2
package/dist/index178.mjs CHANGED
@@ -1,5 +1,33 @@
1
1
  'use client';
2
- var t = {};
2
+ import { __exports as e } from "./index236.mjs";
3
+ import { __require as f } from "./index237.mjs";
4
+ import { __require as _ } from "./index123.mjs";
5
+ var i;
6
+ function R() {
7
+ return i ? e : (i = 1, function(r) {
8
+ Object.defineProperty(r, "__esModule", {
9
+ value: !0
10
+ });
11
+ function n(c, o) {
12
+ for (var u in o) Object.defineProperty(c, u, {
13
+ enumerable: !0,
14
+ get: o[u]
15
+ });
16
+ }
17
+ n(r, {
18
+ getSortedRouteObjects: function() {
19
+ return t.getSortedRouteObjects;
20
+ },
21
+ getSortedRoutes: function() {
22
+ return t.getSortedRoutes;
23
+ },
24
+ isDynamicRoute: function() {
25
+ return s.isDynamicRoute;
26
+ }
27
+ });
28
+ const t = f(), s = _();
29
+ }(e), e);
30
+ }
3
31
  export {
4
- t as __exports
32
+ R as __require
5
33
  };
package/dist/index179.mjs CHANGED
@@ -1,5 +1,21 @@
1
1
  'use client';
2
- var r = {};
2
+ import { __exports as e } from "./index238.mjs";
3
+ var t;
4
+ function u() {
5
+ return t ? e : (t = 1, function(r) {
6
+ Object.defineProperty(r, "__esModule", {
7
+ value: !0
8
+ }), Object.defineProperty(r, "normalizePathSep", {
9
+ enumerable: !0,
10
+ get: function() {
11
+ return n;
12
+ }
13
+ });
14
+ function n(a) {
15
+ return a.replace(/\\/g, "/");
16
+ }
17
+ }(e), e);
18
+ }
3
19
  export {
4
- r as __exports
20
+ u as __require
5
21
  };
package/dist/index18.mjs CHANGED
@@ -1,154 +1,121 @@
1
1
  'use client';
2
- import { jsx as s, jsxs as l, Fragment as x } from "react/jsx-runtime";
3
- import { useRef as T, useState as c } from "react";
4
- import "./index28.mjs";
5
- import { useGetCartUpsellAddons as z } from "./index40.mjs";
2
+ import { jsx as t, jsxs as s, Fragment as c } from "react/jsx-runtime";
3
+ import { useState as r } from "react";
4
+ import "./index31.mjs";
5
+ import { useGetCartRecommendations as M } from "./index43.mjs";
6
6
  import "@tanstack/react-query";
7
- import { useCart as G } from "./index3.mjs";
8
- import { cn as b, formatCurrency as w } from "./index27.mjs";
9
- import { FreeShippingProgress as R } from "./index49.mjs";
10
- import { Button as A } from "./index21.mjs";
11
- import { Loader2 as C, Package as q, Check as B } from "lucide-react";
12
- import { VariantPickerModal as D } from "./index13.mjs";
13
- function ee({
14
- onSkip: k,
15
- className: P,
16
- checkoutButtonClassName: F
7
+ import { useCart as U } from "./index3.mjs";
8
+ import { cn as m, formatCurrency as z } from "./index30.mjs";
9
+ import { Button as b } from "./index24.mjs";
10
+ import { Loader2 as N, Package as R, Check as S } from "lucide-react";
11
+ import { VariantPickerModal as T } from "./index14.mjs";
12
+ function K({
13
+ onSkip: w,
14
+ limit: y = 100,
15
+ className: p,
16
+ checkoutButtonClassName: k
17
17
  }) {
18
- const { cart: o, addItem: I } = G(), { data: m, isLoading: M } = z(o == null ? void 0 : o.id), u = T(null);
19
- m && !u.current && (u.current = m);
20
- const f = u.current ?? m, [V, N] = c([]), [h, j] = c([]), [r, g] = c(null), [U, y] = c(!1), v = async (t, e, n) => {
21
- N((i) => [...i, t.id]);
18
+ const { cart: d, addItem: C } = U(), { data: h, isLoading: A } = M(d == null ? void 0 : d.id, y), [P, f] = r([]), [I, V] = r([]), [g, o] = r(null), [j, u] = r(!1), x = h ? [...h].reverse() : [], v = async (e, a) => {
19
+ f((i) => [...i, e.id]);
22
20
  try {
23
- const i = Math.round(e.price * (1 - n / 100));
24
- await I(t.slug, t.name, i, e.sku, 1, !0, n), j((a) => [...a, t.id]);
21
+ await C(e.slug, e.name, a.price, a.sku, 1), V((i) => [...i, e.id]);
25
22
  } finally {
26
- N((i) => i.filter((a) => a !== t.id));
23
+ f((i) => i.filter((n) => n !== e.id));
27
24
  }
28
- }, L = (t, e) => {
29
- if (t.variants.length > 1) {
30
- g({ product: t, discountPercent: e });
25
+ }, F = (e) => {
26
+ if (e.variants.length > 1) {
27
+ o(e);
31
28
  return;
32
29
  }
33
- const n = t.variants[0];
34
- n && v(t, n, e);
35
- }, O = async (t, e) => {
36
- if (r) {
37
- y(!0);
38
- try {
39
- let n = null, i = null;
40
- for (const a of f || []) {
41
- const d = a.addons.find((p) => p.id === t.id);
42
- if (d) {
43
- n = d, i = d.variants.find((p) => p.id === e.id);
44
- break;
45
- }
46
- }
47
- n && i && await v(n, i, r.discountPercent), g(null);
48
- } finally {
49
- y(!1);
50
- }
30
+ const a = e.variants[0];
31
+ a && v(e, a);
32
+ }, L = async (e, a) => {
33
+ u(!0);
34
+ try {
35
+ const i = x.find((l) => l.id === e.id), n = i == null ? void 0 : i.variants.find((l) => l.id === a.id);
36
+ i && n && await v(i, n), o(null);
37
+ } finally {
38
+ u(!1);
51
39
  }
52
40
  };
53
- if (M)
54
- return /* @__PURE__ */ s("div", { className: "flex flex-1 items-center justify-center", children: /* @__PURE__ */ s(C, { className: "h-8 w-8 animate-spin text-accent-500" }) });
55
- const S = [];
56
- for (const t of f || [])
57
- for (const e of t.addons)
58
- h.includes(e.id) || S.push({
59
- product: t,
60
- addon: e,
61
- parentName: t.productName,
62
- parentThumbnail: t.productThumbnailUrl
63
- });
64
- return /* @__PURE__ */ l(x, { children: [
65
- /* @__PURE__ */ l("div", { className: b("flex flex-1 min-h-0 flex-col", P), children: [
66
- /* @__PURE__ */ s(R, {}),
67
- /* @__PURE__ */ l("div", { className: "flex-1 min-h-0 overflow-y-auto p-4", children: [
68
- /* @__PURE__ */ l("div", { className: "text-center mb-4", children: [
69
- /* @__PURE__ */ s("h3", { className: "text-lg font-semibold text-gray-900", children: "Exclusive deals for you" }),
70
- /* @__PURE__ */ s("p", { className: "text-sm text-gray-500 mt-1", children: "Get these items at a special discount before checkout" })
41
+ return A ? /* @__PURE__ */ t("div", { className: "flex flex-1 items-center justify-center", children: /* @__PURE__ */ t(N, { className: "h-8 w-8 animate-spin text-accent-500" }) }) : /* @__PURE__ */ s(c, { children: [
42
+ /* @__PURE__ */ s("div", { className: m("flex flex-1 min-h-0 flex-col", p), children: [
43
+ /* @__PURE__ */ s("div", { className: "flex-1 min-h-0 overflow-y-auto p-4", children: [
44
+ /* @__PURE__ */ s("div", { className: "text-center mb-4", children: [
45
+ /* @__PURE__ */ t("h3", { className: "text-lg font-semibold text-gray-900", children: "Would you like to add something else?" }),
46
+ /* @__PURE__ */ t("p", { className: "text-sm text-gray-500 mt-1", children: "These go great with your order" })
71
47
  ] }),
72
- /* @__PURE__ */ s("div", { className: "grid grid-cols-2 gap-3", children: (f || []).flatMap(
73
- (t) => t.addons.map((e) => {
74
- const n = e.variants[0];
75
- if (!n) return null;
76
- const i = V.includes(e.id), a = h.includes(e.id), d = Math.round(n.price * (1 - e.discountPercent / 100));
77
- return /* @__PURE__ */ l(
78
- "div",
79
- {
80
- className: "flex flex-col bg-white border border-gray-200 rounded-lg overflow-hidden",
81
- children: [
82
- /* @__PURE__ */ l("div", { className: "relative aspect-square bg-gray-100 overflow-hidden", children: [
83
- e.thumbnailUrl ? /* @__PURE__ */ s(
84
- "img",
85
- {
86
- src: e.thumbnailUrl,
87
- alt: e.name,
88
- className: "absolute inset-0 w-full h-full object-cover"
89
- }
90
- ) : /* @__PURE__ */ s("div", { className: "absolute inset-0 w-full h-full flex items-center justify-center", children: /* @__PURE__ */ s(q, { className: "h-8 w-8 text-gray-300" }) }),
91
- /* @__PURE__ */ l("div", { className: "absolute top-1 left-1 bg-red-500 text-white text-xs font-bold px-1.5 py-0.5 rounded", children: [
92
- e.discountPercent,
93
- "% OFF"
94
- ] })
95
- ] }),
96
- /* @__PURE__ */ l("div", { className: "p-2 flex flex-col flex-1", children: [
97
- /* @__PURE__ */ s("h4", { className: "text-xs font-medium text-gray-900 line-clamp-2 leading-tight min-h-[2.5em]", children: e.name }),
98
- /* @__PURE__ */ l("div", { className: "mt-1", children: [
99
- /* @__PURE__ */ s("span", { className: "text-xs text-gray-400 line-through mr-1", children: w(n.price) }),
100
- /* @__PURE__ */ s("span", { className: "text-sm font-bold text-red-600", children: w(d) })
101
- ] }),
102
- /* @__PURE__ */ s(
103
- A,
104
- {
105
- size: "sm",
106
- onClick: () => L(e, e.discountPercent),
107
- disabled: i || a,
108
- className: b(
109
- "w-full text-xs h-7 mt-2",
110
- a ? "bg-green-500 hover:bg-green-500 text-white !opacity-100" : "bg-red-500 hover:bg-red-600 text-white"
111
- ),
112
- children: i ? /* @__PURE__ */ l(x, { children: [
113
- /* @__PURE__ */ s(C, { className: "h-3 w-3 animate-spin" }),
114
- "Adding..."
115
- ] }) : a ? /* @__PURE__ */ l(x, { children: [
116
- /* @__PURE__ */ s(B, { className: "h-3 w-3" }),
117
- "Added"
118
- ] }) : "Add"
119
- }
120
- )
121
- ] })
122
- ]
123
- },
124
- e.id
125
- );
126
- })
127
- ) })
48
+ /* @__PURE__ */ t("div", { className: "grid grid-cols-3 gap-3", children: x.map((e) => {
49
+ const a = e.variants[0];
50
+ if (!a) return null;
51
+ const i = P.includes(e.id), n = I.includes(e.id);
52
+ return /* @__PURE__ */ s(
53
+ "a",
54
+ {
55
+ href: `/product/${e.slug}`,
56
+ className: "flex flex-col bg-white border border-gray-200 rounded-lg overflow-hidden hover:shadow-md transition-shadow",
57
+ children: [
58
+ /* @__PURE__ */ t("div", { className: "relative aspect-square bg-gray-100 overflow-hidden", children: e.thumbnailUrl ? /* @__PURE__ */ t(
59
+ "img",
60
+ {
61
+ src: e.thumbnailUrl,
62
+ alt: e.name,
63
+ className: "absolute inset-0 w-full h-full object-cover"
64
+ }
65
+ ) : /* @__PURE__ */ t("div", { className: "absolute inset-0 w-full h-full flex items-center justify-center", children: /* @__PURE__ */ t(R, { className: "h-8 w-8 text-gray-300" }) }) }),
66
+ /* @__PURE__ */ s("div", { className: "p-2 flex flex-col flex-1", children: [
67
+ /* @__PURE__ */ t("h4", { className: "text-sm font-medium text-gray-900 line-clamp-2 leading-tight min-h-[2.5em]", children: e.name }),
68
+ /* @__PURE__ */ t("p", { className: "text-sm font-bold text-accent-600 mt-1", children: z(a.price) }),
69
+ /* @__PURE__ */ t(
70
+ b,
71
+ {
72
+ size: "sm",
73
+ onClick: (l) => {
74
+ l.preventDefault(), l.stopPropagation(), F(e);
75
+ },
76
+ disabled: i || n,
77
+ className: m(
78
+ "w-full text-xs h-8 mt-2",
79
+ n ? "bg-green-500 hover:bg-green-500 text-white !opacity-100" : "bg-accent-500 hover:bg-accent-600 text-white"
80
+ ),
81
+ children: i ? /* @__PURE__ */ s(c, { children: [
82
+ /* @__PURE__ */ t(N, { className: "h-3 w-3 animate-spin" }),
83
+ "Adding..."
84
+ ] }) : n ? /* @__PURE__ */ s(c, { children: [
85
+ /* @__PURE__ */ t(S, { className: "h-3 w-3" }),
86
+ "Added"
87
+ ] }) : "Add"
88
+ }
89
+ )
90
+ ] })
91
+ ]
92
+ },
93
+ e.id
94
+ );
95
+ }) })
128
96
  ] }),
129
- /* @__PURE__ */ s("div", { className: "border-t border-gray-300 bg-white px-4 py-3", children: /* @__PURE__ */ s(
130
- A,
97
+ /* @__PURE__ */ t("div", { className: "border-t border-gray-300 bg-white px-4 py-3", children: /* @__PURE__ */ t(
98
+ b,
131
99
  {
132
- onClick: k,
133
- className: b("w-full bg-accent-500 text-white hover:bg-accent-600", F),
100
+ onClick: w,
101
+ className: m("w-full bg-accent-500 text-white hover:bg-accent-600", k),
134
102
  size: "lg",
135
- children: h.length > 0 ? "Continue to checkout" : "No thanks, continue to checkout"
103
+ children: "No thanks, continue to checkout"
136
104
  }
137
105
  ) })
138
106
  ] }),
139
- /* @__PURE__ */ s(
140
- D,
107
+ /* @__PURE__ */ t(
108
+ T,
141
109
  {
142
- isOpen: !!r,
143
- onClose: () => g(null),
144
- product: (r == null ? void 0 : r.product) || null,
145
- onConfirm: O,
146
- isLoading: U,
147
- discountPercent: r == null ? void 0 : r.discountPercent
110
+ isOpen: !!g,
111
+ onClose: () => o(null),
112
+ product: g,
113
+ onConfirm: L,
114
+ isLoading: j
148
115
  }
149
116
  )
150
117
  ] });
151
118
  }
152
119
  export {
153
- ee as AddOnsDiscountScreen
120
+ K as CartUpsellScreen
154
121
  };
package/dist/index181.mjs CHANGED
@@ -1,75 +1,5 @@
1
1
  'use client';
2
- import { __exports as u } from "./index243.mjs";
3
- import { __require as d } from "./index244.mjs";
4
- var a;
5
- function h() {
6
- return a ? u : (a = 1, function(c) {
7
- Object.defineProperty(c, "__esModule", {
8
- value: !0
9
- });
10
- function s(n, e) {
11
- for (var r in e) Object.defineProperty(n, r, {
12
- enumerable: !0,
13
- get: e[r]
14
- });
15
- }
16
- s(c, {
17
- INTERCEPTION_ROUTE_MARKERS: function() {
18
- return i;
19
- },
20
- extractInterceptionRouteInformation: function() {
21
- return l;
22
- },
23
- isInterceptionRouteAppPath: function() {
24
- return f;
25
- }
26
- });
27
- const p = d(), i = [
28
- "(..)(..)",
29
- "(.)",
30
- "(..)",
31
- "(...)"
32
- ];
33
- function f(n) {
34
- return n.split("/").find((e) => i.find((r) => e.startsWith(r))) !== void 0;
35
- }
36
- function l(n) {
37
- let e, r, t;
38
- for (const o of n.split("/"))
39
- if (r = i.find((R) => o.startsWith(R)), r) {
40
- [e, t] = n.split(r, 2);
41
- break;
42
- }
43
- if (!e || !r || !t)
44
- throw new Error(`Invalid interception route: ${n}. Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>`);
45
- switch (e = (0, p.normalizeAppPath)(e), r) {
46
- case "(.)":
47
- e === "/" ? t = `/${t}` : t = e + "/" + t;
48
- break;
49
- case "(..)":
50
- if (e === "/")
51
- throw new Error(`Invalid interception route: ${n}. Cannot use (..) marker at the root level, use (.) instead.`);
52
- t = e.split("/").slice(0, -1).concat(t).join("/");
53
- break;
54
- case "(...)":
55
- t = "/" + t;
56
- break;
57
- case "(..)(..)":
58
- const o = e.split("/");
59
- if (o.length <= 2)
60
- throw new Error(`Invalid interception route: ${n}. Cannot use (..)(..) marker at the root level or one level up.`);
61
- t = o.slice(0, -2).concat(t).join("/");
62
- break;
63
- default:
64
- throw new Error("Invariant: unexpected marker");
65
- }
66
- return {
67
- interceptingRoute: e,
68
- interceptedRoute: t
69
- };
70
- }
71
- }(u), u);
72
- }
2
+ var t = {};
73
3
  export {
74
- h as __require
4
+ t as __exports
75
5
  };
package/dist/index182.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- var e = {};
2
+ var r = {};
3
3
  export {
4
- e as __exports
4
+ r as __exports
5
5
  };
package/dist/index183.mjs CHANGED
@@ -1,56 +1,5 @@
1
1
  'use client';
2
- import { __exports as i } from "./index251.mjs";
3
- var a;
4
- function d() {
5
- return a ? i : (a = 1, function(f) {
6
- Object.defineProperty(f, "__esModule", {
7
- value: !0
8
- });
9
- function c(e, r) {
10
- for (var t in r) Object.defineProperty(e, t, {
11
- enumerable: !0,
12
- get: r[t]
13
- });
14
- }
15
- c(f, {
16
- assign: function() {
17
- return l;
18
- },
19
- searchParamsToUrlQuery: function() {
20
- return y;
21
- },
22
- urlQueryToSearchParams: function() {
23
- return h;
24
- }
25
- });
26
- function y(e) {
27
- const r = {};
28
- return e.forEach((t, n) => {
29
- typeof r[n] > "u" ? r[n] = t : Array.isArray(r[n]) ? r[n].push(t) : r[n] = [
30
- r[n],
31
- t
32
- ];
33
- }), r;
34
- }
35
- function s(e) {
36
- return typeof e == "string" || typeof e == "number" && !isNaN(e) || typeof e == "boolean" ? String(e) : "";
37
- }
38
- function h(e) {
39
- const r = new URLSearchParams();
40
- return Object.entries(e).forEach((t) => {
41
- let [n, u] = t;
42
- Array.isArray(u) ? u.forEach((o) => r.append(n, s(o))) : r.set(n, s(u));
43
- }), r;
44
- }
45
- function l(e) {
46
- for (var r = arguments.length, t = new Array(r > 1 ? r - 1 : 0), n = 1; n < r; n++)
47
- t[n - 1] = arguments[n];
48
- return t.forEach((u) => {
49
- Array.from(u.keys()).forEach((o) => e.delete(o)), u.forEach((o, g) => e.append(g, o));
50
- }), e;
51
- }
52
- }(i), i);
53
- }
2
+ var a = {};
54
3
  export {
55
- d as __require
4
+ a as __exports
56
5
  };
package/dist/index184.mjs CHANGED
@@ -1,5 +1,75 @@
1
1
  'use client';
2
- var e = {};
2
+ import { __exports as u } from "./index246.mjs";
3
+ import { __require as d } from "./index247.mjs";
4
+ var a;
5
+ function h() {
6
+ return a ? u : (a = 1, function(c) {
7
+ Object.defineProperty(c, "__esModule", {
8
+ value: !0
9
+ });
10
+ function s(n, e) {
11
+ for (var r in e) Object.defineProperty(n, r, {
12
+ enumerable: !0,
13
+ get: e[r]
14
+ });
15
+ }
16
+ s(c, {
17
+ INTERCEPTION_ROUTE_MARKERS: function() {
18
+ return i;
19
+ },
20
+ extractInterceptionRouteInformation: function() {
21
+ return l;
22
+ },
23
+ isInterceptionRouteAppPath: function() {
24
+ return f;
25
+ }
26
+ });
27
+ const p = d(), i = [
28
+ "(..)(..)",
29
+ "(.)",
30
+ "(..)",
31
+ "(...)"
32
+ ];
33
+ function f(n) {
34
+ return n.split("/").find((e) => i.find((r) => e.startsWith(r))) !== void 0;
35
+ }
36
+ function l(n) {
37
+ let e, r, t;
38
+ for (const o of n.split("/"))
39
+ if (r = i.find((R) => o.startsWith(R)), r) {
40
+ [e, t] = n.split(r, 2);
41
+ break;
42
+ }
43
+ if (!e || !r || !t)
44
+ throw new Error(`Invalid interception route: ${n}. Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>`);
45
+ switch (e = (0, p.normalizeAppPath)(e), r) {
46
+ case "(.)":
47
+ e === "/" ? t = `/${t}` : t = e + "/" + t;
48
+ break;
49
+ case "(..)":
50
+ if (e === "/")
51
+ throw new Error(`Invalid interception route: ${n}. Cannot use (..) marker at the root level, use (.) instead.`);
52
+ t = e.split("/").slice(0, -1).concat(t).join("/");
53
+ break;
54
+ case "(...)":
55
+ t = "/" + t;
56
+ break;
57
+ case "(..)(..)":
58
+ const o = e.split("/");
59
+ if (o.length <= 2)
60
+ throw new Error(`Invalid interception route: ${n}. Cannot use (..)(..) marker at the root level or one level up.`);
61
+ t = o.slice(0, -2).concat(t).join("/");
62
+ break;
63
+ default:
64
+ throw new Error("Invariant: unexpected marker");
65
+ }
66
+ return {
67
+ interceptingRoute: e,
68
+ interceptedRoute: t
69
+ };
70
+ }
71
+ }(u), u);
72
+ }
3
73
  export {
4
- e as __exports
74
+ h as __require
5
75
  };
package/dist/index185.mjs CHANGED
@@ -1,39 +1,5 @@
1
1
  'use client';
2
- import { __exports as n } from "./index245.mjs";
3
- import { __require as d } from "./index246.mjs";
4
- var o;
5
- function p() {
6
- return o ? n : (o = 1, function(i) {
7
- Object.defineProperty(i, "__esModule", {
8
- value: !0
9
- }), Object.defineProperty(i, "getPathMatch", {
10
- enumerable: !0,
11
- get: function() {
12
- return s;
13
- }
14
- });
15
- const u = d();
16
- function s(l, e) {
17
- const r = [], t = (0, u.pathToRegexp)(l, r, {
18
- delimiter: "/",
19
- sensitive: typeof (e == null ? void 0 : e.sensitive) == "boolean" ? e.sensitive : !1,
20
- strict: e == null ? void 0 : e.strict
21
- }), h = (0, u.regexpToFunction)(e != null && e.regexModifier ? new RegExp(e.regexModifier(t.source), t.flags) : t, r);
22
- return (f, m) => {
23
- if (typeof f != "string") return !1;
24
- const a = h(f);
25
- if (!a) return !1;
26
- if (e != null && e.removeUnnamedParams)
27
- for (const c of r)
28
- typeof c.name == "number" && delete a.params[c.name];
29
- return {
30
- ...m,
31
- ...a.params
32
- };
33
- };
34
- }
35
- }(n), n);
36
- }
2
+ var e = {};
37
3
  export {
38
- p as __require
4
+ e as __exports
39
5
  };