@instockng/storefront-ui 1.0.107 → 1.0.109

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 (228) hide show
  1. package/dist/components/AssistantDrawer.d.ts +1 -3
  2. package/dist/components/AssistantDrawer.d.ts.map +1 -1
  3. package/dist/components/ProductAssistantChips.d.ts +9 -8
  4. package/dist/components/ProductAssistantChips.d.ts.map +1 -1
  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 +1 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.mjs +56 -56
  10. package/dist/index10.mjs +103 -73
  11. package/dist/index100.mjs +28 -8
  12. package/dist/index101.mjs +8 -74
  13. package/dist/index102.mjs +74 -3
  14. package/dist/index103.mjs +4 -2
  15. package/dist/index104.mjs +2 -83
  16. package/dist/index105.mjs +81 -52
  17. package/dist/index106.mjs +53 -5
  18. package/dist/index107.mjs +5 -4
  19. package/dist/index108.mjs +4 -178
  20. package/dist/index109.mjs +174 -48
  21. package/dist/index11.mjs +73 -189
  22. package/dist/index110.mjs +51 -67
  23. package/dist/index111.mjs +69 -2
  24. package/dist/index112.mjs +2 -37
  25. package/dist/index113.mjs +25 -40
  26. package/dist/index114.mjs +18 -2
  27. package/dist/index115.mjs +213 -26
  28. package/dist/index116.mjs +175 -13
  29. package/dist/index117.mjs +17 -210
  30. package/dist/index118.mjs +17 -174
  31. package/dist/index119.mjs +25 -14
  32. package/dist/index12.mjs +171 -106
  33. package/dist/index120.mjs +150 -17
  34. package/dist/index121.mjs +13 -26
  35. package/dist/index122.mjs +24 -149
  36. package/dist/index123.mjs +77 -13
  37. package/dist/index124.mjs +27 -20
  38. package/dist/index125.mjs +137 -76
  39. package/dist/index126.mjs +50 -33
  40. package/dist/index127.mjs +19 -141
  41. package/dist/index128.mjs +22 -50
  42. package/dist/index129.mjs +14 -14
  43. package/dist/index13.mjs +127 -98
  44. package/dist/index130.mjs +18 -20
  45. package/dist/index131.mjs +14 -16
  46. package/dist/index132.mjs +14 -17
  47. package/dist/index133.mjs +12 -12
  48. package/dist/index134.mjs +58 -15
  49. package/dist/index135.mjs +11 -14
  50. package/dist/index136.mjs +30 -56
  51. package/dist/index137.mjs +15 -9
  52. package/dist/index138.mjs +26 -31
  53. package/dist/index139.mjs +16 -13
  54. package/dist/index14.mjs +94 -90
  55. package/dist/index140.mjs +11 -26
  56. package/dist/index141.mjs +12 -18
  57. package/dist/index142.mjs +40 -12
  58. package/dist/index143.mjs +16 -14
  59. package/dist/index144.mjs +263 -42
  60. package/dist/index145.mjs +62 -15
  61. package/dist/index146.mjs +7 -267
  62. package/dist/index147.mjs +2 -70
  63. package/dist/index148.mjs +2 -8
  64. package/dist/index149.mjs +33 -2
  65. package/dist/index15.mjs +84 -149
  66. package/dist/index150.mjs +2 -2
  67. package/dist/index151.mjs +37 -33
  68. package/dist/index152.mjs +43 -2
  69. package/dist/index153.mjs +2 -21
  70. package/dist/index154.mjs +19 -54
  71. package/dist/index155.mjs +55 -28
  72. package/dist/index156.mjs +28 -6
  73. package/dist/index157.mjs +6 -51
  74. package/dist/index158.mjs +51 -5
  75. package/dist/index159.mjs +6 -12
  76. package/dist/index16.mjs +157 -203
  77. package/dist/index160.mjs +12 -7
  78. package/dist/index161.mjs +6 -27
  79. package/dist/index162.mjs +28 -2
  80. package/dist/index163.mjs +2 -70
  81. package/dist/index164.mjs +67 -164
  82. package/dist/index165.mjs +167 -2
  83. package/dist/index167.mjs +2 -2
  84. package/dist/index168.mjs +2 -18
  85. package/dist/index169.mjs +11 -25
  86. package/dist/index17.mjs +197 -106
  87. package/dist/index170.mjs +26 -32
  88. package/dist/index171.mjs +32 -12
  89. package/dist/index172.mjs +9 -9
  90. package/dist/index173.mjs +18 -2
  91. package/dist/index174.mjs +2 -20
  92. package/dist/index175.mjs +13 -39
  93. package/dist/index176.mjs +46 -2
  94. package/dist/index177.mjs +2 -30
  95. package/dist/index178.mjs +24 -12
  96. package/dist/index179.mjs +18 -2
  97. package/dist/index18.mjs +96 -129
  98. package/dist/index180.mjs +2 -2
  99. package/dist/index181.mjs +2 -2
  100. package/dist/index182.mjs +2 -2
  101. package/dist/index183.mjs +2 -72
  102. package/dist/index184.mjs +72 -2
  103. package/dist/index185.mjs +2 -53
  104. package/dist/index186.mjs +53 -2
  105. package/dist/index187.mjs +2 -36
  106. package/dist/index188.mjs +30 -146
  107. package/dist/index189.mjs +152 -2
  108. package/dist/index19.mjs +140 -87
  109. package/dist/index190.mjs +2 -2
  110. package/dist/index191.mjs +2 -19
  111. package/dist/index192.mjs +19 -2
  112. package/dist/index193.mjs +2 -2
  113. package/dist/index194.mjs +2 -26
  114. package/dist/index195.mjs +26 -2
  115. package/dist/index196.mjs +2 -2
  116. package/dist/index197.mjs +2 -24
  117. package/dist/index198.mjs +17 -16
  118. package/dist/index199.mjs +23 -2
  119. package/dist/index2.mjs +29 -15
  120. package/dist/index20.mjs +82 -708
  121. package/dist/index201.mjs +2 -2
  122. package/dist/index202.mjs +2 -23
  123. package/dist/index203.mjs +23 -2
  124. package/dist/index204.mjs +2 -23
  125. package/dist/index205.mjs +23 -2
  126. package/dist/index206.mjs +2 -2
  127. package/dist/index208.mjs +2 -23
  128. package/dist/index209.mjs +23 -2
  129. package/dist/index21.mjs +688 -229
  130. package/dist/index210.mjs +2 -23
  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 -2
  137. package/dist/index218.mjs +2 -2
  138. package/dist/index219.mjs +2 -127
  139. package/dist/index22.mjs +260 -42
  140. package/dist/index220.mjs +127 -2
  141. package/dist/index221.mjs +2 -74
  142. package/dist/index222.mjs +59 -59
  143. package/dist/index223.mjs +74 -2
  144. package/dist/index224.mjs +2 -13
  145. package/dist/index225.mjs +108 -7
  146. package/dist/index226.mjs +2 -12
  147. package/dist/index227.mjs +2 -5
  148. package/dist/index228.mjs +2 -33
  149. package/dist/index229.mjs +2 -31
  150. package/dist/index23.mjs +44 -22
  151. package/dist/index230.mjs +2 -28
  152. package/dist/index231.mjs +2 -61
  153. package/dist/index232.mjs +2 -31
  154. package/dist/index233.mjs +2 -11
  155. package/dist/index234.mjs +2 -4
  156. package/dist/index235.mjs +36 -3
  157. package/dist/index236.mjs +2 -2
  158. package/dist/index237.mjs +244 -2
  159. package/dist/index238.mjs +2 -2
  160. package/dist/index239.mjs +33 -2
  161. package/dist/index240.mjs +65 -2
  162. package/dist/index241.mjs +25 -2
  163. package/dist/index242.mjs +2 -2
  164. package/dist/index244.mjs +2 -108
  165. package/dist/index245.mjs +2 -2
  166. package/dist/index246.mjs +2 -2
  167. package/dist/index247.mjs +2 -37
  168. package/dist/index248.mjs +2 -2
  169. package/dist/index249.mjs +2 -2
  170. package/dist/index250.mjs +2 -244
  171. package/dist/index251.mjs +13 -2
  172. package/dist/index252.mjs +7 -33
  173. package/dist/index253.mjs +30 -64
  174. package/dist/index254.mjs +10 -24
  175. package/dist/index255.mjs +4 -2
  176. package/dist/index256.mjs +4 -2
  177. package/dist/index257.mjs +2 -2
  178. package/dist/index258.mjs +4 -2
  179. package/dist/index259.mjs +12 -2
  180. package/dist/index260.mjs +5 -2
  181. package/dist/index261.mjs +33 -2
  182. package/dist/index262.mjs +31 -2
  183. package/dist/index263.mjs +28 -4
  184. package/dist/index264.mjs +61 -2
  185. package/dist/index265.mjs +2 -2
  186. package/dist/index266.mjs +2 -2
  187. package/dist/index277.mjs +1 -1
  188. package/dist/index282.mjs +1 -1
  189. package/dist/index283.mjs +2 -2
  190. package/dist/index3.mjs +3 -3
  191. package/dist/index4.mjs +34 -101
  192. package/dist/index5.mjs +92 -102
  193. package/dist/index50.mjs +1 -1
  194. package/dist/index58.mjs +1 -1
  195. package/dist/index6.mjs +111 -15
  196. package/dist/index63.mjs +17 -17
  197. package/dist/index64.mjs +2 -2
  198. package/dist/index7.mjs +15 -195
  199. package/dist/index8.mjs +135 -189
  200. package/dist/index81.mjs +19 -149
  201. package/dist/index82.mjs +149 -19
  202. package/dist/index85.mjs +1 -1
  203. package/dist/index89.mjs +35 -35
  204. package/dist/index9.mjs +240 -99
  205. package/dist/index90.mjs +1 -1
  206. package/dist/index91.mjs +2 -2
  207. package/dist/index92.mjs +2 -2
  208. package/dist/index94.mjs +2 -235
  209. package/dist/index95.mjs +233 -4
  210. package/dist/index96.mjs +5 -133
  211. package/dist/index97.mjs +129 -63
  212. package/dist/index98.mjs +67 -86
  213. package/dist/index99.mjs +85 -27
  214. package/dist/providers/StorefrontProvider.d.ts +3 -1
  215. package/dist/providers/StorefrontProvider.d.ts.map +1 -1
  216. package/dist/styles.css +1 -1
  217. package/package.json +2 -2
  218. package/src/components/AssistantDrawer.stories.tsx +20 -91
  219. package/src/components/AssistantDrawer.tsx +5 -9
  220. package/src/components/ProductAssistantChips.stories.tsx +11 -6
  221. package/src/components/ProductAssistantChips.tsx +13 -8
  222. package/src/contexts/AssistantContext.tsx +62 -0
  223. package/src/index.ts +3 -2
  224. package/src/providers/StorefrontProvider.tsx +17 -2
  225. package/dist/components/SearchAssistantTrigger.d.ts +0 -12
  226. package/dist/components/SearchAssistantTrigger.d.ts.map +0 -1
  227. package/src/components/SearchAssistantTrigger.stories.tsx +0 -35
  228. package/src/components/SearchAssistantTrigger.tsx +0 -41
package/dist/index127.mjs CHANGED
@@ -1,148 +1,26 @@
1
1
  'use client';
2
- import { __exports as p } from "./index190.mjs";
3
- import { __require as I } from "./index146.mjs";
4
- import { __require as q } from "./index183.mjs";
5
- import { __require as v } from "./index191.mjs";
6
- import { __require as O } from "./index116.mjs";
7
- var N;
8
- function w() {
9
- return N ? p : (N = 1, function(d) {
10
- Object.defineProperty(d, "__esModule", {
2
+ import { __module as u } from "./index194.mjs";
3
+ import { __require as c } from "./index195.mjs";
4
+ var a;
5
+ function d() {
6
+ return a ? u.exports : (a = 1, function(o, e) {
7
+ Object.defineProperty(e, "__esModule", {
11
8
  value: !0
12
- });
13
- function T(e, t) {
14
- for (var r in t) Object.defineProperty(e, r, {
15
- enumerable: !0,
16
- get: t[r]
17
- });
18
- }
19
- T(d, {
20
- getNamedMiddlewareRegex: function() {
21
- return A;
22
- },
23
- getNamedRouteRegex: function() {
24
- return k;
25
- },
26
- getRouteRegex: function() {
27
- return E;
28
- },
29
- parseParameter: function() {
30
- return S;
9
+ }), Object.defineProperty(e, "detectDomainLocale", {
10
+ enumerable: !0,
11
+ get: function() {
12
+ return i;
31
13
  }
32
14
  });
33
- const m = I(), _ = q(), l = v(), h = O(), x = /\[((?:\[.*\])|.+)\]/;
34
- function S(e) {
35
- const t = e.match(x);
36
- return R(t ? t[1] : e);
37
- }
38
- function R(e) {
39
- const t = e.startsWith("[") && e.endsWith("]");
40
- t && (e = e.slice(1, -1));
41
- const r = e.startsWith("...");
42
- return r && (e = e.slice(3)), {
43
- key: e,
44
- repeat: r,
45
- optional: t
46
- };
47
- }
48
- function P(e) {
49
- const t = (0, h.removeTrailingSlash)(e).slice(1).split("/"), r = {};
50
- let u = 1;
51
- return {
52
- parameterizedRoute: t.map((s) => {
53
- const o = _.INTERCEPTION_ROUTE_MARKERS.find((i) => s.startsWith(i)), a = s.match(x);
54
- if (o && a) {
55
- const { key: i, optional: c, repeat: n } = R(a[1]);
56
- return r[i] = {
57
- pos: u++,
58
- repeat: n,
59
- optional: c
60
- }, "/" + (0, l.escapeStringRegexp)(o) + "([^/]+?)";
61
- } else if (a) {
62
- const { key: i, repeat: c, optional: n } = R(a[1]);
63
- return r[i] = {
64
- pos: u++,
65
- repeat: c,
66
- optional: n
67
- }, c ? n ? "(?:/(.+?))?" : "/(.+?)" : "/([^/]+?)";
68
- } else
69
- return "/" + (0, l.escapeStringRegexp)(s);
70
- }).join(""),
71
- groups: r
72
- };
73
- }
74
- function E(e) {
75
- const { parameterizedRoute: t, groups: r } = P(e);
76
- return {
77
- re: new RegExp("^" + t + "(?:/)?$"),
78
- groups: r
79
- };
80
- }
81
- function K() {
82
- let e = 0;
83
- return () => {
84
- let t = "", r = ++e;
85
- for (; r > 0; )
86
- t += String.fromCharCode(97 + (r - 1) % 26), r = Math.floor((r - 1) / 26);
87
- return t;
88
- };
89
- }
90
- function y(e) {
91
- let { interceptionMarker: t, getSafeRouteKey: r, segment: u, routeKeys: s, keyPrefix: o } = e;
92
- const { key: a, optional: i, repeat: c } = R(u);
93
- let n = a.replace(/\W/g, "");
94
- o && (n = "" + o + n);
95
- let f = !1;
96
- (n.length === 0 || n.length > 30) && (f = !0), isNaN(parseInt(n.slice(0, 1))) || (f = !0), f && (n = r()), o ? s[n] = "" + o + a : s[n] = a;
97
- const g = t ? (0, l.escapeStringRegexp)(t) : "";
98
- return c ? i ? "(?:/" + g + "(?<" + n + ">.+?))?" : "/" + g + "(?<" + n + ">.+?)" : "/" + g + "(?<" + n + ">[^/]+?)";
99
- }
100
- function M(e, t) {
101
- const r = (0, h.removeTrailingSlash)(e).slice(1).split("/"), u = K(), s = {};
102
- return {
103
- namedParameterizedRoute: r.map((o) => {
104
- const a = _.INTERCEPTION_ROUTE_MARKERS.some((c) => o.startsWith(c)), i = o.match(/\[((?:\[.*\])|.+)\]/);
105
- if (a && i) {
106
- const [c] = o.split(i[0]);
107
- return y({
108
- getSafeRouteKey: u,
109
- interceptionMarker: c,
110
- segment: i[1],
111
- routeKeys: s,
112
- keyPrefix: t ? m.NEXT_INTERCEPTION_MARKER_PREFIX : void 0
113
- });
114
- } else return i ? y({
115
- getSafeRouteKey: u,
116
- segment: i[1],
117
- routeKeys: s,
118
- keyPrefix: t ? m.NEXT_QUERY_PARAM_PREFIX : void 0
119
- }) : "/" + (0, l.escapeStringRegexp)(o);
120
- }).join(""),
121
- routeKeys: s
122
- };
123
- }
124
- function k(e, t) {
125
- const r = M(e, t);
126
- return {
127
- ...E(e),
128
- namedRegex: "^" + r.namedParameterizedRoute + "(?:/)?$",
129
- routeKeys: r.routeKeys
130
- };
131
- }
132
- function A(e, t) {
133
- const { parameterizedRoute: r } = P(e), { catchAll: u = !0 } = t;
134
- if (r === "/")
135
- return {
136
- namedRegex: "^/" + (u ? ".*" : "") + "$"
137
- };
138
- const { namedParameterizedRoute: s } = M(e, !1);
139
- let o = u ? "(?:(/.*)?)" : "";
140
- return {
141
- namedRegex: "^" + s + o + "$"
142
- };
143
- }
144
- }(p), p);
15
+ const i = function() {
16
+ for (var n = arguments.length, r = new Array(n), t = 0; t < n; t++)
17
+ r[t] = arguments[t];
18
+ if (process.env.__NEXT_I18N_SUPPORT)
19
+ return c().detectDomainLocale(...r);
20
+ };
21
+ (typeof e.default == "function" || typeof e.default == "object" && e.default !== null) && typeof e.default.__esModule > "u" && (Object.defineProperty(e.default, "__esModule", { value: !0 }), Object.assign(e.default, e), o.exports = e.default);
22
+ }(u, u.exports), u.exports);
145
23
  }
146
24
  export {
147
- w as __require
25
+ d as __require
148
26
  };
package/dist/index128.mjs CHANGED
@@ -1,58 +1,30 @@
1
1
  'use client';
2
- import { __exports as c } from "./index192.mjs";
3
- import { __require as y } from "./index115.mjs";
4
- import { __require as U } from "./index185.mjs";
5
- var l;
6
- function x() {
7
- return l ? c : (l = 1, function(h) {
8
- Object.defineProperty(h, "__esModule", {
2
+ import { __exports as u } from "./index196.mjs";
3
+ var a;
4
+ function f() {
5
+ return a ? u : (a = 1, function(s) {
6
+ Object.defineProperty(s, "__esModule", {
9
7
  value: !0
10
- });
11
- function m(e, t) {
12
- for (var o in t) Object.defineProperty(e, o, {
13
- enumerable: !0,
14
- get: t[o]
15
- });
16
- }
17
- m(h, {
18
- formatUrl: function() {
19
- return p;
20
- },
21
- formatWithValidation: function() {
22
- return q;
23
- },
24
- urlObjectKeys: function() {
25
- return u;
8
+ }), Object.defineProperty(s, "parsePath", {
9
+ enumerable: !0,
10
+ get: function() {
11
+ return i;
26
12
  }
27
13
  });
28
- const _ = /* @__PURE__ */ y()._(U()), d = /https?|ftp|gopher|file/;
29
- function p(e) {
30
- let { auth: t, hostname: o } = e, a = e.protocol || "", n = e.pathname || "", f = e.hash || "", s = e.query || "", r = !1;
31
- t = t ? encodeURIComponent(t).replace(/%3A/i, ":") + "@" : "", e.host ? r = t + e.host : o && (r = t + (~o.indexOf(":") ? "[" + o + "]" : o), e.port && (r += ":" + e.port)), s && typeof s == "object" && (s = String(_.urlQueryToSearchParams(s)));
32
- let i = e.search || s && "?" + s || "";
33
- return a && !a.endsWith(":") && (a += ":"), e.slashes || (!a || d.test(a)) && r !== !1 ? (r = "//" + (r || ""), n && n[0] !== "/" && (n = "/" + n)) : r || (r = ""), f && f[0] !== "#" && (f = "#" + f), i && i[0] !== "?" && (i = "?" + i), n = n.replace(/[?#]/g, encodeURIComponent), i = i.replace("#", "%23"), "" + a + r + n + i + f;
34
- }
35
- const u = [
36
- "auth",
37
- "hash",
38
- "host",
39
- "hostname",
40
- "href",
41
- "path",
42
- "pathname",
43
- "port",
44
- "protocol",
45
- "query",
46
- "search",
47
- "slashes"
48
- ];
49
- function q(e) {
50
- return process.env.NODE_ENV === "development" && e !== null && typeof e == "object" && Object.keys(e).forEach((t) => {
51
- u.includes(t) || console.warn("Unknown key passed via urlObject into url.format: " + t);
52
- }), p(e);
14
+ function i(r) {
15
+ const e = r.indexOf("#"), n = r.indexOf("?"), t = n > -1 && (e < 0 || n < e);
16
+ return t || e > -1 ? {
17
+ pathname: r.substring(0, t ? n : e),
18
+ query: t ? r.substring(n, e > -1 ? e : void 0) : "",
19
+ hash: e > -1 ? r.slice(e) : ""
20
+ } : {
21
+ pathname: r,
22
+ query: "",
23
+ hash: ""
24
+ };
53
25
  }
54
- }(c), c);
26
+ }(u), u);
55
27
  }
56
28
  export {
57
- x as __require
29
+ f as __require
58
30
  };
package/dist/index129.mjs CHANGED
@@ -1,26 +1,26 @@
1
1
  'use client';
2
- import { __module as u } from "./index193.mjs";
3
- import { __require as c } from "./index194.mjs";
4
- var a;
5
- function d() {
6
- return a ? u.exports : (a = 1, function(o, e) {
2
+ import { __module as a } from "./index197.mjs";
3
+ import { __require as f } from "./index198.mjs";
4
+ import { __require as c } from "./index199.mjs";
5
+ var i;
6
+ function g() {
7
+ return i ? a.exports : (i = 1, function(o, e) {
7
8
  Object.defineProperty(e, "__esModule", {
8
9
  value: !0
9
- }), Object.defineProperty(e, "detectDomainLocale", {
10
+ }), Object.defineProperty(e, "addLocale", {
10
11
  enumerable: !0,
11
12
  get: function() {
12
- return i;
13
+ return l;
13
14
  }
14
15
  });
15
- const i = function() {
16
- for (var n = arguments.length, r = new Array(n), t = 0; t < n; t++)
17
- r[t] = arguments[t];
18
- if (process.env.__NEXT_I18N_SUPPORT)
19
- return c().detectDomainLocale(...r);
16
+ const d = f(), l = function(t) {
17
+ for (var u = arguments.length, n = new Array(u > 1 ? u - 1 : 0), r = 1; r < u; r++)
18
+ n[r - 1] = arguments[r];
19
+ return process.env.__NEXT_I18N_SUPPORT ? (0, d.normalizePathTrailingSlash)(c().addLocale(t, ...n)) : t;
20
20
  };
21
21
  (typeof e.default == "function" || typeof e.default == "object" && e.default !== null) && typeof e.default.__esModule > "u" && (Object.defineProperty(e.default, "__esModule", { value: !0 }), Object.assign(e.default, e), o.exports = e.default);
22
- }(u, u.exports), u.exports);
22
+ }(a, a.exports), a.exports);
23
23
  }
24
24
  export {
25
- d as __require
25
+ g as __require
26
26
  };
package/dist/index13.mjs CHANGED
@@ -1,105 +1,134 @@
1
1
  'use client';
2
- import { jsx as i, jsxs as n, Fragment as d } from "react/jsx-runtime";
3
- import { useState as u } from "react";
4
- import { Modal as k } from "./index27.mjs";
5
- import { Button as C } from "./index24.mjs";
6
- import { formatCurrency as s, cn as S } from "./index30.mjs";
7
- import { Package as U, Loader2 as j, ShoppingCart as I } from "lucide-react";
8
- function F({
9
- isOpen: b,
10
- onClose: g,
11
- product: e,
12
- onConfirm: y,
13
- isLoading: m = !1,
14
- discountPercent: r
2
+ import { jsx as i, jsxs as s, Fragment as f } from "react/jsx-runtime";
3
+ import "./index31.mjs";
4
+ import { useGetCartRecommendations as U } from "./index43.mjs";
5
+ import "@tanstack/react-query";
6
+ import { useCart as q } from "./index3.mjs";
7
+ import { cn as p, formatCurrency as z } from "./index30.mjs";
8
+ import { Button as B } from "./index24.mjs";
9
+ import { Loader2 as b, Package as D, ShoppingCart as E } from "lucide-react";
10
+ import { useState as r, useEffect as G } from "react";
11
+ import { VariantPickerModal as H } from "./index14.mjs";
12
+ function _({
13
+ limit: P,
14
+ className: C
15
15
  }) {
16
- var h, o;
17
- const [x, N] = u(null), v = ((h = e == null ? void 0 : e.variants.find((l) => !l.availability || l.availability.available)) == null ? void 0 : h.id) || ((o = e == null ? void 0 : e.variants[0]) == null ? void 0 : o.id) || null, c = x || v, a = e == null ? void 0 : e.variants.find((l) => l.id === c), p = () => {
18
- e && a && y(e, a);
16
+ const { cart: o, addItem: k } = q(), { data: c, isLoading: I, error: A } = U(o == null ? void 0 : o.id, P), [j, h] = r([]), [F, u] = r([]), [V, g] = r([]), [L, x] = r([]), [v, m] = r(null), [M, w] = r(!1);
17
+ if (G(() => {
18
+ x([]), u([]), g([]);
19
+ }, [c]), !o)
20
+ return null;
21
+ if (I)
22
+ return /* @__PURE__ */ i("div", { className: "py-6", children: /* @__PURE__ */ i("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ i(b, { className: "h-6 w-6 animate-spin text-accent-500" }) }) });
23
+ const a = c == null ? void 0 : c.filter(
24
+ (e) => !L.includes(e.id)
25
+ );
26
+ if (A || !a || a.length === 0)
27
+ return null;
28
+ const N = async (e, t) => {
29
+ h((n) => [...n, e.id]);
30
+ try {
31
+ await k(e.slug, e.name, t.price, t.sku, 1), u((n) => [...n, e.id]), setTimeout(() => {
32
+ g((n) => [...n, e.id]);
33
+ }, 500), setTimeout(() => {
34
+ x((n) => [...n, e.id]);
35
+ }, 1e3);
36
+ } finally {
37
+ h((n) => n.filter((l) => l !== e.id));
38
+ }
39
+ }, T = (e) => {
40
+ if (e.variants.length > 1) {
41
+ m(e);
42
+ return;
43
+ }
44
+ const t = e.variants[0];
45
+ t && N(e, t);
46
+ }, S = async (e, t) => {
47
+ w(!0);
48
+ try {
49
+ const n = a.find((d) => d.id === e.id), l = n == null ? void 0 : n.variants.find((d) => d.id === t.id);
50
+ n && l && await N(n, l), m(null);
51
+ } finally {
52
+ w(!1);
53
+ }
19
54
  };
20
- return e ? /* @__PURE__ */ i(
21
- k,
22
- {
23
- isOpen: b,
24
- onClose: g,
25
- title: "Select Option",
26
- size: "sm",
27
- footer: /* @__PURE__ */ i(
28
- C,
29
- {
30
- onClick: p,
31
- disabled: !a || m || (a == null ? void 0 : a.availability) && !a.availability.available,
32
- className: "w-full bg-accent-500 hover:bg-accent-600 text-white",
33
- size: "lg",
34
- children: m ? /* @__PURE__ */ n(d, { children: [
35
- /* @__PURE__ */ i(j, { className: "h-4 w-4 animate-spin mr-2" }),
36
- "Adding..."
37
- ] }) : /* @__PURE__ */ n(d, { children: [
38
- /* @__PURE__ */ i(I, { className: "h-4 w-4 mr-2" }),
39
- "Add to Cart - ",
40
- a && (r ? /* @__PURE__ */ n("span", { children: [
41
- /* @__PURE__ */ i("span", { className: "line-through opacity-60 mr-1", children: s(a.price) }),
42
- s(Math.round(a.price * (1 - r / 100)))
43
- ] }) : s(a.price))
44
- ] })
45
- }
46
- ),
47
- children: /* @__PURE__ */ n("div", { className: "space-y-4", children: [
48
- /* @__PURE__ */ n("div", { className: "flex gap-4", children: [
49
- /* @__PURE__ */ i("div", { className: "w-20 h-20 flex-shrink-0 rounded-lg overflow-hidden bg-gray-100", children: a != null && a.thumbnailUrl || e.thumbnailUrl ? /* @__PURE__ */ i(
50
- "img",
55
+ return /* @__PURE__ */ s(f, { children: [
56
+ /* @__PURE__ */ s("div", { className: p("pt-2", C), children: [
57
+ /* @__PURE__ */ i("div", { className: "mb-2 px-4", children: /* @__PURE__ */ i("h3", { className: "text-lg font-semibold text-gray-900", children: "Frequently bought together" }) }),
58
+ /* @__PURE__ */ i("div", { className: "overflow-x-auto", children: /* @__PURE__ */ s("div", { className: "flex gap-4 pb-2 transition-all duration-500", children: [
59
+ /* @__PURE__ */ i("div", { className: "flex-shrink-0 w-1" }),
60
+ a == null ? void 0 : a.map((e) => {
61
+ const t = e.variants[0];
62
+ if (!t) return null;
63
+ const n = j.includes(e.id), l = F.includes(e.id), d = V.includes(e.id);
64
+ return /* @__PURE__ */ i(
65
+ "div",
51
66
  {
52
- src: (a == null ? void 0 : a.thumbnailUrl) || e.thumbnailUrl || "",
53
- alt: (a == null ? void 0 : a.name) || e.name,
54
- className: "w-full h-full object-cover"
55
- }
56
- ) : /* @__PURE__ */ i("div", { className: "w-full h-full flex items-center justify-center", children: /* @__PURE__ */ i(U, { className: "h-8 w-8 text-gray-300" }) }) }),
57
- /* @__PURE__ */ n("div", { className: "flex-1", children: [
58
- /* @__PURE__ */ i("h3", { className: "font-semibold text-gray-900", children: e.name }),
59
- /* @__PURE__ */ n("p", { className: "text-sm text-gray-500 mt-1", children: [
60
- e.variants.length,
61
- " options available"
62
- ] })
63
- ] })
64
- ] }),
65
- /* @__PURE__ */ n("div", { className: "space-y-2", children: [
66
- /* @__PURE__ */ i("p", { className: "text-sm font-medium text-gray-700", children: "Choose an option:" }),
67
- /* @__PURE__ */ i("div", { className: "flex flex-wrap gap-2", children: e.variants.map((l) => {
68
- const w = l.id === c, t = l.availability && !l.availability.available, f = l.thumbnailUrl || e.thumbnailUrl;
69
- return /* @__PURE__ */ n(
70
- "button",
71
- {
72
- onClick: () => !t && N(l.id),
73
- disabled: !!t,
74
- className: S(
75
- "flex items-center gap-2 px-3 py-2 rounded-full text-sm font-medium border-2 transition-all",
76
- t ? "border-gray-200 bg-gray-50 text-gray-400 cursor-not-allowed opacity-60" : w ? "border-accent-500 bg-accent-50 text-accent-700" : "border-gray-200 bg-white text-gray-700 hover:border-gray-300"
77
- ),
78
- children: [
79
- f && /* @__PURE__ */ i(
80
- "img",
81
- {
82
- src: f,
83
- alt: l.name || "Variant",
84
- className: "w-6 h-6 rounded-full object-cover flex-shrink-0"
85
- }
86
- ),
87
- l.name || "Default",
88
- " - ",
89
- t ? /* @__PURE__ */ i("span", { className: "text-gray-400", children: "Sold out" }) : r ? /* @__PURE__ */ n("span", { children: [
90
- /* @__PURE__ */ i("span", { className: "line-through opacity-60 mr-1", children: s(l.price) }),
91
- s(Math.round(l.price * (1 - r / 100)))
92
- ] }) : s(l.price)
93
- ]
94
- },
95
- l.id
96
- );
97
- }) })
98
- ] })
99
- ] })
100
- }
101
- ) : null;
67
+ className: p(
68
+ "flex flex-row flex-shrink-0 w-64 h-24 bg-white border border-gray-300 rounded-lg overflow-hidden transition-all duration-500",
69
+ l && "opacity-0 blur-sm scale-95 pointer-events-none",
70
+ d && "w-0 h-0 mr-[-1rem] overflow-hidden"
71
+ ),
72
+ children: /* @__PURE__ */ s(
73
+ "a",
74
+ {
75
+ href: `/product/${e.slug}`,
76
+ className: "flex flex-row flex-1 hover:bg-gray-50 transition-colors",
77
+ children: [
78
+ /* @__PURE__ */ i("div", { className: "relative w-20 h-full flex-shrink-0 bg-gray-100", children: e.thumbnailUrl ? /* @__PURE__ */ i(
79
+ "img",
80
+ {
81
+ src: e.thumbnailUrl,
82
+ alt: e.name,
83
+ className: "w-full h-full object-cover"
84
+ }
85
+ ) : /* @__PURE__ */ i("div", { className: "w-full h-full flex items-center justify-center", children: /* @__PURE__ */ i(D, { className: "h-8 w-8 text-gray-300" }) }) }),
86
+ /* @__PURE__ */ s("div", { className: "p-2 flex flex-col flex-1 justify-between", children: [
87
+ /* @__PURE__ */ s("div", { children: [
88
+ /* @__PURE__ */ i("h4", { className: "text-xs font-medium text-gray-900 line-clamp-2 leading-tight", children: e.name }),
89
+ /* @__PURE__ */ i("p", { className: "text-xs font-semibold text-accent-600 mt-0.5", children: z(t.price) })
90
+ ] }),
91
+ /* @__PURE__ */ i(
92
+ B,
93
+ {
94
+ size: "sm",
95
+ onClick: (y) => {
96
+ y.preventDefault(), y.stopPropagation(), T(e);
97
+ },
98
+ disabled: n,
99
+ className: "w-full bg-accent-500 hover:bg-accent-600 text-white text-xs h-6 mt-1",
100
+ children: n ? /* @__PURE__ */ s(f, { children: [
101
+ /* @__PURE__ */ i(b, { className: "h-3 w-3 animate-spin" }),
102
+ "Adding..."
103
+ ] }) : /* @__PURE__ */ s(f, { children: [
104
+ /* @__PURE__ */ i(E, { className: "h-3 w-3" }),
105
+ "Add"
106
+ ] })
107
+ }
108
+ )
109
+ ] })
110
+ ]
111
+ }
112
+ )
113
+ },
114
+ e.id
115
+ );
116
+ }),
117
+ /* @__PURE__ */ i("div", { className: "flex-shrink-0 w-1" })
118
+ ] }) })
119
+ ] }),
120
+ /* @__PURE__ */ i(
121
+ H,
122
+ {
123
+ isOpen: !!v,
124
+ onClose: () => m(null),
125
+ product: v,
126
+ onConfirm: S,
127
+ isLoading: M
128
+ }
129
+ )
130
+ ] });
102
131
  }
103
132
  export {
104
- F as VariantPickerModal
133
+ _ as RecommendedProducts
105
134
  };
package/dist/index130.mjs CHANGED
@@ -1,30 +1,28 @@
1
1
  'use client';
2
- import { __exports as u } from "./index195.mjs";
3
- var a;
4
- function f() {
5
- return a ? u : (a = 1, function(s) {
6
- Object.defineProperty(s, "__esModule", {
2
+ import { __module as o } from "./index200.mjs";
3
+ import { __require as d } from "./index128.mjs";
4
+ var f;
5
+ function m() {
6
+ return f ? o.exports : (f = 1, function(i, e) {
7
+ Object.defineProperty(e, "__esModule", {
7
8
  value: !0
8
- }), Object.defineProperty(s, "parsePath", {
9
+ }), Object.defineProperty(e, "removeLocale", {
9
10
  enumerable: !0,
10
11
  get: function() {
11
- return i;
12
+ return c;
12
13
  }
13
14
  });
14
- function i(r) {
15
- const e = r.indexOf("#"), n = r.indexOf("?"), t = n > -1 && (e < 0 || n < e);
16
- return t || e > -1 ? {
17
- pathname: r.substring(0, t ? n : e),
18
- query: t ? r.substring(n, e > -1 ? e : void 0) : "",
19
- hash: e > -1 ? r.slice(e) : ""
20
- } : {
21
- pathname: r,
22
- query: "",
23
- hash: ""
24
- };
15
+ const l = d();
16
+ function c(r, t) {
17
+ if (process.env.__NEXT_I18N_SUPPORT) {
18
+ const { pathname: u } = (0, l.parsePath)(r), n = u.toLowerCase(), a = t == null ? void 0 : t.toLowerCase();
19
+ return t && (n.startsWith("/" + a + "/") || n === "/" + a) ? (u.length === t.length + 1 ? "/" : "") + r.slice(t.length + 1) : r;
20
+ }
21
+ return r;
25
22
  }
26
- }(u), u);
23
+ (typeof e.default == "function" || typeof e.default == "object" && e.default !== null) && typeof e.default.__esModule > "u" && (Object.defineProperty(e.default, "__esModule", { value: !0 }), Object.assign(e.default, e), i.exports = e.default);
24
+ }(o, o.exports), o.exports);
27
25
  }
28
26
  export {
29
- f as __require
27
+ m as __require
30
28
  };
package/dist/index131.mjs CHANGED
@@ -1,26 +1,24 @@
1
1
  'use client';
2
- import { __module as a } from "./index196.mjs";
3
- import { __require as f } from "./index197.mjs";
4
- import { __require as c } from "./index198.mjs";
5
- var i;
6
- function g() {
7
- return i ? a.exports : (i = 1, function(o, e) {
2
+ import { __module as r } from "./index201.mjs";
3
+ import { __require as o } from "./index133.mjs";
4
+ var a;
5
+ function l() {
6
+ return a ? r.exports : (a = 1, function(n, e) {
8
7
  Object.defineProperty(e, "__esModule", {
9
8
  value: !0
10
- }), Object.defineProperty(e, "addLocale", {
9
+ }), Object.defineProperty(e, "removeBasePath", {
11
10
  enumerable: !0,
12
11
  get: function() {
13
- return l;
12
+ return i;
14
13
  }
15
14
  });
16
- const d = f(), l = function(t) {
17
- for (var u = arguments.length, n = new Array(u > 1 ? u - 1 : 0), r = 1; r < u; r++)
18
- n[r - 1] = arguments[r];
19
- return process.env.__NEXT_I18N_SUPPORT ? (0, d.normalizePathTrailingSlash)(c().addLocale(t, ...n)) : t;
20
- };
21
- (typeof e.default == "function" || typeof e.default == "object" && e.default !== null) && typeof e.default.__esModule > "u" && (Object.defineProperty(e.default, "__esModule", { value: !0 }), Object.assign(e.default, e), o.exports = e.default);
22
- }(a, a.exports), a.exports);
15
+ const f = o(), u = process.env.__NEXT_ROUTER_BASEPATH || "";
16
+ function i(t) {
17
+ return process.env.__NEXT_MANUAL_CLIENT_BASE_PATH && !(0, f.hasBasePath)(t) || u.length === 0 || (t = t.slice(u.length), t.startsWith("/") || (t = "/" + t)), t;
18
+ }
19
+ (typeof e.default == "function" || typeof e.default == "object" && e.default !== null) && typeof e.default.__esModule > "u" && (Object.defineProperty(e.default, "__esModule", { value: !0 }), Object.assign(e.default, e), n.exports = e.default);
20
+ }(r, r.exports), r.exports);
23
21
  }
24
22
  export {
25
- g as __require
23
+ l as __require
26
24
  };