@bikdotai/bik-component-library 0.0.852-beta.9 → 0.0.852

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 (33) hide show
  1. package/dist/cjs/components/feature-announcements/FeatureAnnouncementProvider.js +2 -2
  2. package/dist/cjs/components/feature-announcements/FeatureAnnouncementProvider.js.map +1 -1
  3. package/dist/cjs/components/feature-announcements/MajorUpdatePopup.js +2 -2
  4. package/dist/cjs/components/feature-announcements/MajorUpdatePopup.js.map +1 -1
  5. package/dist/cjs/components/feature-announcements/MinorUpdatePopup.js +1 -1
  6. package/dist/cjs/components/feature-announcements/MinorUpdatePopup.js.map +1 -1
  7. package/dist/cjs/components/product-picker-v2/constants.js +1 -1
  8. package/dist/cjs/components/product-picker-v2/constants.js.map +1 -1
  9. package/dist/cjs/icons/Informational/Identity/PuzzlePiece.js +2 -0
  10. package/dist/cjs/icons/Informational/Identity/PuzzlePiece.js.map +1 -0
  11. package/dist/cjs/icons/index.js +1 -1
  12. package/dist/cjs/index.js +1 -1
  13. package/dist/esm/components/feature-announcements/FeatureAnnouncementProvider.js +342 -419
  14. package/dist/esm/components/feature-announcements/FeatureAnnouncementProvider.js.map +1 -1
  15. package/dist/esm/components/feature-announcements/MajorUpdatePopup.js +35 -33
  16. package/dist/esm/components/feature-announcements/MajorUpdatePopup.js.map +1 -1
  17. package/dist/esm/components/feature-announcements/MinorUpdatePopup.js +48 -47
  18. package/dist/esm/components/feature-announcements/MinorUpdatePopup.js.map +1 -1
  19. package/dist/esm/components/feature-announcements/types/props.types.d.ts +1 -1
  20. package/dist/esm/components/product-picker-v2/constants.d.ts +32 -0
  21. package/dist/esm/components/product-picker-v2/constants.js +33 -1
  22. package/dist/esm/components/product-picker-v2/constants.js.map +1 -1
  23. package/dist/esm/components/product-picker-v2/index.d.ts +1 -0
  24. package/dist/esm/icons/Informational/Identity/PuzzlePiece.d.ts +7 -0
  25. package/dist/esm/icons/Informational/Identity/PuzzlePiece.js +36 -0
  26. package/dist/esm/icons/Informational/Identity/PuzzlePiece.js.map +1 -0
  27. package/dist/esm/icons/Informational/Identity/index.d.ts +1 -0
  28. package/dist/esm/icons/index.d.ts +1 -1
  29. package/dist/esm/icons/index.js +202 -200
  30. package/dist/esm/icons/index.js.map +1 -1
  31. package/dist/esm/index.js +386 -384
  32. package/dist/esm/index.js.map +1 -1
  33. package/package.json +1 -1
@@ -1,44 +1,44 @@
1
- import { jsxs as Et, Fragment as Pt, jsx as B } from "react/jsx-runtime";
2
- import { useState as p, useEffect as O, useCallback as x } from "react";
3
- import mt, { ACTIONS as ft } from "react-joyride";
4
- import it from "./MajorUpdatePopup.js";
5
- import rt from "./MinorUpdatePopup.js";
6
- import { VideoModal as Vt } from "./VideoModal.js";
7
- import { useFeatureAnnouncements as Wt } from "./hooks/useFeatureAnnouncements.js";
8
- import { SELECTORS as Ot } from "./constants/selectors.js";
9
- const Kt = ({
10
- children: gt,
11
- fetchVisibleFeatures: yt,
12
- getStoreFeatureProgress: bt,
13
- fetchFeatureById: ht,
14
- markFeatureAsViewedForStore: xt,
15
- isFeatureApplicableToCurrentPage: St,
16
- module: kt,
17
- router: L,
18
- storeId: m,
19
- onAnnouncementShown: at,
20
- onAnnouncementInteracted: y
1
+ import { jsxs as je, Fragment as Ee, jsx as C } from "react/jsx-runtime";
2
+ import { useState as u, useEffect as P, useCallback as S } from "react";
3
+ import ce, { ACTIONS as pe } from "react-joyride";
4
+ import oe from "./MajorUpdatePopup.js";
5
+ import ne from "./MinorUpdatePopup.js";
6
+ import { VideoModal as Ne } from "./VideoModal.js";
7
+ import { useFeatureAnnouncements as Pe } from "./hooks/useFeatureAnnouncements.js";
8
+ import { SELECTORS as We } from "./constants/selectors.js";
9
+ const $e = ({
10
+ children: fe,
11
+ fetchVisibleFeatures: me,
12
+ getStoreFeatureProgress: ge,
13
+ fetchFeatureById: he,
14
+ markFeatureAsViewedForStore: be,
15
+ isFeatureApplicableToCurrentPage: ye,
16
+ module: xe,
17
+ router: W,
18
+ storeId: E,
19
+ onAnnouncementShown: re,
20
+ onAnnouncementInteracted: L
21
21
  }) => {
22
22
  const {
23
- majorUpdateFeatures: a,
24
- minorUpdateFeatures: P,
25
- isLoading: F,
26
- markFeatureAsViewed: u
27
- } = Wt({
28
- fetchVisibleFeatures: yt,
29
- getStoreFeatureProgress: bt,
30
- fetchFeatureById: ht,
31
- markFeatureAsViewedForStore: xt,
32
- isFeatureApplicableToCurrentPage: St,
33
- module: kt,
34
- router: L
35
- }), [b, v] = p(null), [s, S] = p(null), [J, I] = p(!1), [st, k] = p([]), [wt, V] = p(!1), [lt, j] = p([]), [dt, w] = p(!1), [C, h] = p(!1), [l, $] = p([]), [T, U] = p(!1), [M, N] = p(!1), [Ct, q] = p(!1), [Tt, R] = p(""), [A, _] = p(!1), [Mt, z] = p(!1), [ct, K] = p(!1), [Ut, Bt] = p(0), [Ft, vt] = p(0), [E, Q] = p(
23
+ majorUpdateFeatures: s,
24
+ minorUpdateFeatures: I,
25
+ isLoading: T,
26
+ markFeatureAsViewed: p
27
+ } = Pe({
28
+ fetchVisibleFeatures: me,
29
+ getStoreFeatureProgress: ge,
30
+ fetchFeatureById: he,
31
+ markFeatureAsViewedForStore: be,
32
+ isFeatureApplicableToCurrentPage: ye,
33
+ module: xe,
34
+ router: W
35
+ }), [m, B] = u(null), [l, w] = u(null), [O, v] = u(!1), [ae, k] = u([]), [Se, J] = u(!1), [se, U] = u([]), [ie, M] = u(!1), [h, b] = u(!1), [d, q] = u([]), [y, F] = u(!1), [x, j] = u(!1), [we, $] = u(!1), [ke, z] = u(""), [R, K] = u(!1), [Ce, _] = u(!1), [le, A] = u(!1), [Te, Me] = u(0), [Fe, Ie] = u(0), [N, Q] = u(
36
36
  /* @__PURE__ */ new Set()
37
37
  );
38
- O(() => {
39
- const t = "minor-spotlight-cutout-style";
40
- let o = document.getElementById(t);
41
- return o || (o = document.createElement("style"), o.id = t, document.head.appendChild(o)), o.textContent = `
38
+ P(() => {
39
+ const e = "minor-spotlight-cutout-style";
40
+ let o = document.getElementById(e);
41
+ return o || (o = document.createElement("style"), o.id = e, document.head.appendChild(o)), o.textContent = `
42
42
  .react-joyride__spotlight {
43
43
  transition: box-shadow 0.3s ease-in-out !important;
44
44
  will-change: box-shadow, transform;
@@ -53,132 +53,131 @@ const Kt = ({
53
53
  left: auto !important;
54
54
  }
55
55
  `, () => {
56
- const n = document.getElementById(t);
56
+ const n = document.getElementById(e);
57
57
  n && n.remove();
58
58
  };
59
- }, []), O(() => {
60
- Bt((t) => t + 1), vt((t) => t + 1), z(!1), K(!1), Q(/* @__PURE__ */ new Set());
61
- }, [L?.pathname]), O(() => {
62
- if (a.length > 0 && !b && !F && !dt && !A) {
63
- N(!1), U(!1), I(!1), k([]), S(null), $([]);
64
- let t = 0;
59
+ }, []), P(() => {
60
+ Me((e) => e + 1), Ie((e) => e + 1), _(!1), A(!1), Q(/* @__PURE__ */ new Set());
61
+ }, [W?.pathname]), P(() => {
62
+ if (s.length > 0 && !m && !T && !ie && !R) {
63
+ j(!1), F(!1), v(!1), k([]), w(null), q([]);
64
+ let e = 0;
65
65
  const o = 10, n = () => {
66
- t++, document.querySelector(
66
+ e++, document.querySelector(
67
67
  '[data-testid="whats-new-button"]'
68
- ) ? ut(a[0]) : t < o ? setTimeout(n, 1e3) : N(!0);
68
+ ) ? de(s[0]) : e < o ? setTimeout(n, 1e3) : j(!0);
69
69
  };
70
70
  n();
71
- } else a.length === 0 && !F && N(!0);
71
+ } else s.length === 0 && !T && j(!0);
72
72
  }, [
73
- a,
74
- b,
75
- F,
76
- dt,
77
- A
78
- ]), O(() => {
79
- const t = L?.query?.featureId;
80
- if (!t || F || P.length === 0)
73
+ s,
74
+ m,
75
+ T,
76
+ ie,
77
+ R
78
+ ]), P(() => {
79
+ const e = W?.query?.featureId;
80
+ if (!e || T || I.length === 0)
81
81
  return;
82
- const o = P.find(
83
- (r) => r.id === t
82
+ const o = I.find(
83
+ (a) => a.id === e
84
84
  );
85
85
  if (!o || !o.featureTag)
86
86
  return;
87
- U(!0), h(!0);
87
+ F(!0), b(!0);
88
88
  let n = 0;
89
- const e = 25, i = setInterval(() => {
89
+ const t = 25, r = setInterval(() => {
90
90
  n++;
91
- const r = o.featureTag.startsWith("#") || o.featureTag.startsWith(".") || o.featureTag.startsWith("[") ? o.featureTag : `#${o.featureTag}`;
92
- if (document.querySelector(r)) {
91
+ const a = o.featureTag.startsWith("#") || o.featureTag.startsWith(".") || o.featureTag.startsWith("[") ? o.featureTag : `#${o.featureTag}`;
92
+ if (document.querySelector(a)) {
93
93
  const c = [o];
94
- $(c), W(o, c), clearInterval(i);
95
- } else n >= e && (h(!1), clearInterval(i));
94
+ q(c), V(o, c), clearInterval(r);
95
+ } else n >= t && (b(!1), clearInterval(r));
96
96
  }, 200);
97
97
  return () => {
98
- clearInterval(i);
98
+ clearInterval(r);
99
99
  };
100
- }, [P, L?.query?.featureId, F]), O(() => {
101
- if (P.length > 0 && !F && !J && !C && !s && !T && M && !A) {
102
- let t = null, o = null, n = null, e = !1;
103
- const i = () => {
104
- if (e || C || s || T || !M)
100
+ }, [I, W?.query?.featureId, T]), P(() => {
101
+ if (I.length > 0 && !T && !O && !h && !l && !y && x && !R) {
102
+ let e = null, o = null, n = null, t = !1;
103
+ const r = () => {
104
+ if (t || h || l || y || !x)
105
105
  return;
106
- const r = P.filter((d) => {
107
- if (!d.featureTag || d.featureTag.trim() === "" || E.has(d.id))
106
+ const a = I.filter((i) => {
107
+ if (!i.featureTag || i.featureTag.trim() === "" || N.has(i.id))
108
108
  return !1;
109
- const c = d.featureTag.startsWith("#") || d.featureTag.startsWith(".") || d.featureTag.startsWith("[") ? d.featureTag : `#${d.featureTag}`;
109
+ const c = i.featureTag.startsWith("#") || i.featureTag.startsWith(".") || i.featureTag.startsWith("[") ? i.featureTag : `#${i.featureTag}`;
110
110
  return document.querySelector(c) !== null;
111
111
  });
112
- r.length > 0 && ($(r), W(r[0], r), t && (t.disconnect(), t = null), o && (window.removeEventListener("scroll", o), o = null), n && (clearTimeout(n), n = null));
112
+ a.length > 0 && (q(a), V(a[0], a), e && (e.disconnect(), e = null), o && (window.removeEventListener("scroll", o), o = null), n && (clearTimeout(n), n = null));
113
113
  };
114
- return t = new MutationObserver((r) => {
115
- let d = !1;
116
- for (const c of r) {
114
+ return e = new MutationObserver((a) => {
115
+ let i = !1;
116
+ for (const c of a) {
117
117
  if (c.type === "childList" && c.addedNodes.length > 0)
118
- for (let g = 0; g < c.addedNodes.length; g++) {
119
- const f = c.addedNodes[g];
120
- if (f.nodeType === Node.ELEMENT_NODE) {
121
- const pt = f;
122
- if (pt.id || pt.querySelector("[id]")) {
123
- d = !0;
118
+ for (let f = 0; f < c.addedNodes.length; f++) {
119
+ const g = c.addedNodes[f];
120
+ if (g.nodeType === Node.ELEMENT_NODE) {
121
+ const ue = g;
122
+ if (ue.id || ue.querySelector("[id]")) {
123
+ i = !0;
124
124
  break;
125
125
  }
126
126
  }
127
127
  }
128
- if (d) break;
128
+ if (i) break;
129
129
  }
130
- !J && !e && !C && !s && !T && M && d && (n && clearTimeout(n), n = setTimeout(() => {
131
- !e && !C && !s && !T && M && i();
130
+ !O && !t && !h && !l && !y && x && i && (n && clearTimeout(n), n = setTimeout(() => {
131
+ !t && !h && !l && !y && x && r();
132
132
  }, 200));
133
133
  }), o = () => {
134
- !J && !e && !C && !s && !T && M && (n && clearTimeout(n), requestAnimationFrame(() => {
134
+ !O && !t && !h && !l && !y && x && (n && clearTimeout(n), requestAnimationFrame(() => {
135
135
  n = setTimeout(() => {
136
- !e && !C && !s && !T && M && i();
136
+ !t && !h && !l && !y && x && r();
137
137
  }, 300);
138
138
  }));
139
- }, t && t.observe(document.body, {
139
+ }, e && e.observe(document.body, {
140
140
  childList: !0,
141
141
  subtree: !0
142
- }), o && window.addEventListener("scroll", o, { passive: !0 }), i(), setTimeout(() => {
143
- !e && !C && !s && !T && M && i();
142
+ }), o && window.addEventListener("scroll", o, { passive: !0 }), r(), setTimeout(() => {
143
+ !t && !h && !l && !y && x && r();
144
144
  }, 100), setTimeout(() => {
145
- !e && !C && !s && !T && M && i();
145
+ !t && !h && !l && !y && x && r();
146
146
  }, 1e3), setTimeout(() => {
147
- !e && !C && !s && !T && M && i();
147
+ !t && !h && !l && !y && x && r();
148
148
  }, 500), () => {
149
- e = !0, t && t.disconnect(), o && window.removeEventListener("scroll", o), n && clearTimeout(n);
149
+ t = !0, e && e.disconnect(), o && window.removeEventListener("scroll", o), n && clearTimeout(n);
150
150
  };
151
- } else (P.length === 0 || F) && (L?.query?.featureId && s || (I(!1), k([]), S(null), $([]), U(!1)));
151
+ } else (I.length === 0 || T) && (W?.query?.featureId && l || (v(!1), k([]), w(null), q([]), F(!1)));
152
152
  }, [
153
- P,
154
- F,
155
- J,
156
- C,
157
- s,
153
+ I,
158
154
  T,
159
- M,
160
- u,
161
- A
155
+ O,
156
+ h,
157
+ l,
158
+ y,
159
+ x,
160
+ p,
161
+ R
162
162
  ]);
163
- const ut = (t) => {
164
- v(t);
165
- const o = a.findIndex(
166
- (i) => i.id === t.id
167
- ), n = a.length, e = [
163
+ const de = (e) => {
164
+ B(e);
165
+ const o = s.findIndex(
166
+ (r) => r.id === e.id
167
+ ), n = s.length, t = [
168
168
  {
169
- target: Ot.WHATS_NEW_BUTTON,
170
- content: /* @__PURE__ */ B(
171
- it,
169
+ target: We.WHATS_NEW_BUTTON,
170
+ content: /* @__PURE__ */ C(
171
+ oe,
172
172
  {
173
- feature: t,
173
+ feature: e,
174
174
  currentIndex: o,
175
175
  totalFeatures: n,
176
- onSkip: () => Z(t),
177
- onExplore: (i) => D(t, i),
178
- onSecondaryAction: (i) => H(t, i),
179
- onPrevious: () => X(t),
180
- onNext: () => G(t),
181
- setIsClosing: z
176
+ onSkip: () => Z(e),
177
+ onExplore: (r) => D(e, r),
178
+ onPrevious: () => H(e),
179
+ onNext: () => X(e),
180
+ setIsClosing: _
182
181
  }
183
182
  ),
184
183
  placement: "bottom-start",
@@ -188,7 +187,7 @@ const Kt = ({
188
187
  hideSkipButton: !0,
189
188
  hideFooter: !0,
190
189
  offset: 0,
191
- data: { feature: t, isMajor: !0 },
190
+ data: { feature: e, isMajor: !0 },
192
191
  styles: {
193
192
  tooltip: {
194
193
  padding: 0,
@@ -216,22 +215,22 @@ const Kt = ({
216
215
  }
217
216
  }
218
217
  ];
219
- j(e), V(!0), at && m && at({
220
- storeId: m,
221
- announcementId: t.id,
222
- announcementTitle: t.title,
223
- imageUrl: t.displayImage || t.image,
224
- videoUrl: t.productVideo
218
+ U(t), J(!0), re && E && re({
219
+ storeId: E,
220
+ announcementId: e.id,
221
+ announcementTitle: e.title,
222
+ imageUrl: e.displayImage || e.image,
223
+ videoUrl: e.productVideo
225
224
  });
226
- }, Z = x(
227
- async (t) => {
228
- const o = t || b;
229
- o && (w(!0), await Promise.all(
230
- a.map(
231
- (n) => u(n.id)
225
+ }, Z = S(
226
+ async (e) => {
227
+ const o = e || m;
228
+ o && (M(!0), await Promise.all(
229
+ s.map(
230
+ (n) => p(n.id)
232
231
  )
233
- ), V(!1), v(null), j([]), N(!0), y && m && y({
234
- storeId: m,
232
+ ), J(!1), B(null), U([]), j(!0), L && E && L({
233
+ storeId: E,
235
234
  announcementId: o.id,
236
235
  announcementTitle: o.title,
237
236
  imageUrl: o.displayImage || o.image,
@@ -240,81 +239,60 @@ const Kt = ({
240
239
  buttonName: "Skip",
241
240
  buttonUrl: void 0
242
241
  }), setTimeout(() => {
243
- w(!1);
242
+ M(!1);
244
243
  }, 500));
245
244
  },
246
- [b, a, u]
247
- ), D = x(
248
- async (t, o) => {
249
- w(!0), await u(t.id);
250
- const n = o ?? t.primaryButton?.action;
251
- if (n === "Play Video" && t.productVideo && (R(t.productVideo), q(!0), _(!0)), n === "Open link") {
252
- const r = t.primaryButton?.redirectionUrl || t.redirectUrl;
253
- r && !r.startsWith("http") && (window.location.href = r);
245
+ [m, s, p]
246
+ ), D = S(
247
+ async (e, o) => {
248
+ M(!0), await p(e.id);
249
+ const n = o ?? e.primaryButton?.action;
250
+ if (n === "Play Video" && e.productVideo && (z(e.productVideo), $(!0), K(!0)), n === "Open link") {
251
+ const a = e.primaryButton?.redirectionUrl || e.redirectUrl;
252
+ a && !a.startsWith("http") && (window.location.href = a);
254
253
  }
255
- V(!1), v(null), j([]), a.findIndex(
256
- (r) => r.id === t.id
257
- ) === a.length - 1 && N(!0), y && m && y({
258
- storeId: m,
259
- announcementId: t.id,
260
- announcementTitle: t.title,
261
- imageUrl: t.displayImage || t.image,
262
- videoUrl: t.productVideo,
254
+ J(!1), B(null), U([]), s.findIndex(
255
+ (a) => a.id === e.id
256
+ ) === s.length - 1 && j(!0), L && E && L({
257
+ storeId: E,
258
+ announcementId: e.id,
259
+ announcementTitle: e.title,
260
+ imageUrl: e.displayImage || e.image,
261
+ videoUrl: e.productVideo,
263
262
  buttonClicked: "Primary",
264
- // Mirrors the rendered button and the navigation target, which both
265
- // prefer primaryButton over the legacy top-level fields.
266
- buttonName: t.primaryButton?.text || t.buttonText || "Explore",
267
- buttonUrl: t.primaryButton?.redirectionUrl || t.redirectUrl || t.productVideo
263
+ buttonName: e.buttonText || "Explore",
264
+ buttonUrl: e.redirectUrl || e.productVideo
268
265
  }), setTimeout(() => {
269
- w(!1);
266
+ M(!1);
270
267
  }, 500);
271
268
  },
272
- [a, u]
273
- ), H = x(
274
- async (t, o) => {
275
- w(!0), await u(t.id), (o ?? t.secondaryButton?.action) === "Play Video" && t.productVideo && (R(t.productVideo), q(!0), _(!0)), V(!1), v(null), j([]), a.findIndex(
276
- (r) => r.id === t.id
277
- ) === a.length - 1 && N(!0), y && m && y({
278
- storeId: m,
279
- announcementId: t.id,
280
- announcementTitle: t.title,
281
- imageUrl: t.displayImage || t.image,
282
- videoUrl: t.productVideo,
283
- buttonClicked: "Secondary",
284
- buttonName: t.secondaryButton?.text || "Secondary",
285
- buttonUrl: t.secondaryButton?.redirectionUrl
286
- }), setTimeout(() => {
287
- w(!1);
288
- }, 500);
289
- },
290
- [a, u]
291
- ), X = x(
292
- (t) => {
293
- const o = t || b;
269
+ [s, p]
270
+ ), H = S(
271
+ (e) => {
272
+ const o = e || m;
294
273
  if (!o)
295
274
  return;
296
- const n = a.findIndex(
297
- (e) => e.id === o.id
275
+ const n = s.findIndex(
276
+ (t) => t.id === o.id
298
277
  );
299
278
  if (n > 0) {
300
- const e = a[n - 1];
301
- v(e);
302
- const i = n - 1, r = a.length;
303
- j([
279
+ const t = s[n - 1];
280
+ B(t);
281
+ const r = n - 1, a = s.length;
282
+ U([
304
283
  {
305
284
  target: '[data-testid="whats-new-button"]',
306
- content: /* @__PURE__ */ B(
307
- it,
285
+ content: /* @__PURE__ */ C(
286
+ oe,
308
287
  {
309
- feature: e,
310
- currentIndex: i,
311
- totalFeatures: r,
312
- onSkip: () => Z(e),
313
- onExplore: (c) => D(e, c),
314
- onSecondaryAction: (c) => H(e, c),
315
- onPrevious: () => X(e),
316
- onNext: () => G(e),
317
- setIsClosing: z
288
+ feature: t,
289
+ currentIndex: r,
290
+ totalFeatures: a,
291
+ onSkip: () => Z(t),
292
+ onExplore: (c) => D(t, c),
293
+ onPrevious: () => H(t),
294
+ onNext: () => X(t),
295
+ setIsClosing: _
318
296
  }
319
297
  ),
320
298
  placement: "bottom-start",
@@ -324,7 +302,7 @@ const Kt = ({
324
302
  hideSkipButton: !0,
325
303
  hideFooter: !0,
326
304
  offset: 0,
327
- data: { feature: e, isMajor: !0 },
305
+ data: { feature: t, isMajor: !0 },
328
306
  styles: {
329
307
  tooltip: {
330
308
  padding: 0,
@@ -354,34 +332,33 @@ const Kt = ({
354
332
  ]);
355
333
  }
356
334
  },
357
- [b, a]
358
- ), G = x(
359
- (t) => {
360
- const o = t || b;
335
+ [m, s]
336
+ ), X = S(
337
+ (e) => {
338
+ const o = e || m;
361
339
  if (!o)
362
340
  return;
363
- const n = a.findIndex(
364
- (e) => e.id === o.id
341
+ const n = s.findIndex(
342
+ (t) => t.id === o.id
365
343
  );
366
- if (n < a.length - 1) {
367
- const e = a[n + 1];
368
- v(e);
369
- const i = n + 1, r = a.length;
370
- j([
344
+ if (n < s.length - 1) {
345
+ const t = s[n + 1];
346
+ B(t);
347
+ const r = n + 1, a = s.length;
348
+ U([
371
349
  {
372
350
  target: '[data-testid="whats-new-button"]',
373
- content: /* @__PURE__ */ B(
374
- it,
351
+ content: /* @__PURE__ */ C(
352
+ oe,
375
353
  {
376
- feature: e,
377
- currentIndex: i,
378
- totalFeatures: r,
379
- onSkip: () => Z(e),
380
- onExplore: (c) => D(e, c),
381
- onSecondaryAction: (c) => H(e, c),
382
- onPrevious: () => X(e),
383
- onNext: () => G(e),
384
- setIsClosing: z
354
+ feature: t,
355
+ currentIndex: r,
356
+ totalFeatures: a,
357
+ onSkip: () => Z(t),
358
+ onExplore: (c) => D(t, c),
359
+ onPrevious: () => H(t),
360
+ onNext: () => X(t),
361
+ setIsClosing: _
385
362
  }
386
363
  ),
387
364
  placement: "bottom-start",
@@ -391,7 +368,7 @@ const Kt = ({
391
368
  hideSkipButton: !0,
392
369
  hideFooter: !0,
393
370
  offset: 0,
394
- data: { feature: e, isMajor: !0 },
371
+ data: { feature: t, isMajor: !0 },
395
372
  styles: {
396
373
  tooltip: {
397
374
  padding: 0,
@@ -420,72 +397,62 @@ const Kt = ({
420
397
  }
421
398
  ]);
422
399
  } else
423
- w(!0), u(o.id), V(!1), v(null), j([]), N(!0), setTimeout(() => {
424
- w(!1);
400
+ M(!0), p(o.id), J(!1), B(null), U([]), j(!0), setTimeout(() => {
401
+ M(!1);
425
402
  }, 500);
426
403
  },
427
- [b, a, u]
428
- ), It = () => {
429
- a.length > 0 && !b && document.querySelector(
404
+ [m, s, p]
405
+ ), Be = () => {
406
+ s.length > 0 && !m && document.querySelector(
430
407
  '[data-testid="whats-new-button"]'
431
- ) && ut(a[0]);
408
+ ) && de(s[0]);
432
409
  };
433
- O(() => (window.showMajorUpdatePopup = It, () => {
410
+ P(() => (window.showMajorUpdatePopup = Be, () => {
434
411
  delete window.showMajorUpdatePopup;
435
- }), [a, b]);
436
- const jt = x(
437
- (t) => {
438
- const { action: o } = t;
439
- o === ft.CLOSE && (b && (w(!0), a.forEach((n) => {
440
- u(n.id);
441
- }), N(!0), setTimeout(() => {
442
- w(!1);
443
- }, 500)), V(!1), v(null), j([]));
412
+ }), [s, m]);
413
+ const ve = S(
414
+ (e) => {
415
+ const { action: o } = e;
416
+ o === pe.CLOSE && (m && (M(!0), s.forEach((n) => {
417
+ p(n.id);
418
+ }), j(!0), setTimeout(() => {
419
+ M(!1);
420
+ }, 500)), J(!1), B(null), U([]));
444
421
  },
445
- [b, a, u]
446
- ), Nt = x(
447
- (t) => {
448
- const { action: o } = t;
449
- o === ft.CLOSE && (s && (h(!0), u(s.id), l.findIndex(
450
- (i) => i.id === s.id
451
- ) === l.length - 1 && U(!0), y && m && y({
452
- storeId: m,
453
- announcementId: s.id,
454
- announcementTitle: s.title,
455
- imageUrl: s.displayImage || s.image,
456
- videoUrl: s.productVideo,
457
- buttonClicked: "Skip",
458
- buttonName: "Skip",
459
- buttonUrl: void 0
460
- }), setTimeout(() => {
461
- h(!1);
462
- }, 500)), I(!1), S(null), k([]));
422
+ [m, s, p]
423
+ ), Ue = S(
424
+ (e) => {
425
+ const { action: o } = e;
426
+ o === pe.CLOSE && (l && (b(!0), p(l.id), d.findIndex(
427
+ (r) => r.id === l.id
428
+ ) === d.length - 1 && F(!0), setTimeout(() => {
429
+ b(!1);
430
+ }, 500)), v(!1), w(null), k([]));
463
431
  },
464
- [s, l, u]
465
- ), W = async (t, o) => {
466
- S(t);
467
- const n = o || l, e = n.findIndex((g) => g.id === t.id), i = n.length, r = t.featureTag.startsWith("#") || t.featureTag.startsWith(".") || t.featureTag.startsWith("[") ? t.featureTag : `#${t.featureTag}`, d = document.querySelector(r);
468
- if (d)
432
+ [l, d, p]
433
+ ), V = async (e, o) => {
434
+ w(e);
435
+ const n = o || d, t = n.findIndex((f) => f.id === e.id), r = n.length, a = e.featureTag.startsWith("#") || e.featureTag.startsWith(".") || e.featureTag.startsWith("[") ? e.featureTag : `#${e.featureTag}`, i = document.querySelector(a);
436
+ if (i)
469
437
  try {
470
- const { scrollToElementSmooth: g } = await import("./utils/elementHelpers.js");
471
- await g(d, 120);
438
+ const { scrollToElementSmooth: f } = await import("./utils/elementHelpers.js");
439
+ await f(i, 120);
472
440
  } catch {
473
441
  }
474
442
  k([
475
443
  {
476
- target: r,
477
- content: /* @__PURE__ */ B(
478
- rt,
444
+ target: a,
445
+ content: /* @__PURE__ */ C(
446
+ ne,
479
447
  {
480
- feature: t,
481
- currentIndex: e,
482
- totalFeatures: i,
483
- onSkip: () => Y(t),
484
- onExplore: (g) => tt(t, g),
485
- onSecondaryAction: (g) => et(t, g),
486
- onPrevious: () => ot(t),
487
- onNext: () => nt(t),
488
- setIsClosing: K
448
+ feature: e,
449
+ currentIndex: t,
450
+ totalFeatures: r,
451
+ onSkip: () => G(e),
452
+ onExplore: (f) => Y(e, f),
453
+ onPrevious: () => ee(e),
454
+ onNext: () => te(e),
455
+ setIsClosing: A
489
456
  }
490
457
  ),
491
458
  placement: "bottom",
@@ -495,7 +462,7 @@ const Kt = ({
495
462
  hideSkipButton: !0,
496
463
  hideFooter: !0,
497
464
  offset: 0,
498
- data: { feature: t, isMinor: !0 },
465
+ data: { feature: e, isMinor: !0 },
499
466
  styles: {
500
467
  tooltip: {
501
468
  padding: 0,
@@ -522,119 +489,76 @@ const Kt = ({
522
489
  }
523
490
  }
524
491
  }
525
- ]), I(!0);
526
- }, Y = x(
527
- async (t) => {
528
- const o = t || s;
492
+ ]), v(!0);
493
+ }, G = S(
494
+ async (e) => {
495
+ const o = e || l;
529
496
  if (o) {
530
- h(!0), await u(o.id), Q((e) => new Set(e).add(o.id)), I(!1), S(null), k([]);
531
- const n = l.find(
532
- (e) => e.id !== o.id && !E.has(e.id)
497
+ b(!0), await p(o.id), Q((t) => new Set(t).add(o.id)), v(!1), w(null), k([]);
498
+ const n = d.find(
499
+ (t) => t.id !== o.id && !N.has(t.id)
533
500
  );
534
- y && m && y({
535
- storeId: m,
536
- announcementId: o.id,
537
- announcementTitle: o.title,
538
- imageUrl: o.displayImage || o.image,
539
- videoUrl: o.productVideo,
540
- buttonClicked: "Skip",
541
- buttonName: "Skip",
542
- buttonUrl: void 0
543
- }), setTimeout(() => {
544
- h(!1), n ? W(n, l) : U(!0);
501
+ setTimeout(() => {
502
+ b(!1), n ? V(n, d) : F(!0);
545
503
  }, 500);
546
504
  }
547
505
  },
548
506
  [
549
- s,
550
507
  l,
551
- u,
552
- E
508
+ d,
509
+ p,
510
+ N
553
511
  ]
554
- ), tt = x(
555
- async (t, o) => {
556
- h(!0), await u(t.id), Q((i) => new Set(i).add(t.id));
557
- const n = o ?? t.primaryButton?.action;
558
- if (n === "Play Video" && t.productVideo && (R(t.productVideo), q(!0), _(!0)), n === "Open link") {
559
- const i = t.primaryButton?.redirectionUrl || t.redirectUrl;
560
- i && !i.startsWith("http") && (window.location.href = i);
512
+ ), Y = S(
513
+ async (e, o) => {
514
+ b(!0), await p(e.id), Q((r) => new Set(r).add(e.id));
515
+ const n = o ?? e.primaryButton?.action;
516
+ if (n === "Play Video" && e.productVideo && (z(e.productVideo), $(!0), K(!0)), n === "Open link") {
517
+ const r = e.primaryButton?.redirectionUrl || e.redirectUrl;
518
+ r && !r.startsWith("http") && (window.location.href = r);
561
519
  }
562
- I(!1), S(null), k([]);
563
- const e = l.find(
564
- (i) => i.id !== t.id && !E.has(i.id)
520
+ v(!1), w(null), k([]);
521
+ const t = d.find(
522
+ (r) => r.id !== e.id && !N.has(r.id)
565
523
  );
566
- y && m && y({
567
- storeId: m,
568
- announcementId: t.id,
569
- announcementTitle: t.title,
570
- imageUrl: t.displayImage || t.image,
571
- videoUrl: t.productVideo,
572
- buttonClicked: "Primary",
573
- // Mirrors the rendered button and the navigation target, which both
574
- // prefer primaryButton over the legacy top-level fields.
575
- buttonName: t.primaryButton?.text || t.buttonText || "Explore",
576
- buttonUrl: t.primaryButton?.redirectionUrl || t.redirectUrl || t.productVideo
577
- }), setTimeout(() => {
578
- h(!1), e && n !== "Play Video" ? W(e, l) : e || U(!0);
524
+ setTimeout(() => {
525
+ b(!1), t && n !== "Play Video" ? V(t, d) : t || F(!0);
579
526
  }, 500);
580
527
  },
581
- [l, u, E]
582
- ), et = x(
583
- async (t, o) => {
584
- h(!0), await u(t.id), Q((i) => new Set(i).add(t.id));
585
- const n = o ?? t.secondaryButton?.action;
586
- n === "Play Video" && t.productVideo && (R(t.productVideo), q(!0), _(!0)), I(!1), S(null), k([]);
587
- const e = l.find(
588
- (i) => i.id !== t.id && !E.has(i.id)
589
- );
590
- y && m && y({
591
- storeId: m,
592
- announcementId: t.id,
593
- announcementTitle: t.title,
594
- imageUrl: t.displayImage || t.image,
595
- videoUrl: t.productVideo,
596
- buttonClicked: "Secondary",
597
- buttonName: t.secondaryButton?.text || "Secondary",
598
- buttonUrl: t.secondaryButton?.redirectionUrl
599
- }), setTimeout(() => {
600
- h(!1), e && n !== "Play Video" ? W(e, l) : e || U(!0);
601
- }, 500);
602
- },
603
- [l, u, E]
604
- ), ot = x(
605
- async (t) => {
606
- const o = t || s;
528
+ [d, p, N]
529
+ ), ee = S(
530
+ async (e) => {
531
+ const o = e || l;
607
532
  if (!o)
608
533
  return;
609
- const n = l.findIndex(
610
- (e) => e.id === o.id
534
+ const n = d.findIndex(
535
+ (t) => t.id === o.id
611
536
  );
612
537
  if (n > 0) {
613
- const e = l[n - 1];
614
- S(e);
615
- const i = e.featureTag.startsWith("#") || e.featureTag.startsWith(".") || e.featureTag.startsWith("[") ? e.featureTag : `#${e.featureTag}`, r = document.querySelector(i);
616
- if (r)
538
+ const t = d[n - 1];
539
+ w(t);
540
+ const r = t.featureTag.startsWith("#") || t.featureTag.startsWith(".") || t.featureTag.startsWith("[") ? t.featureTag : `#${t.featureTag}`, a = document.querySelector(r);
541
+ if (a)
617
542
  try {
618
- const { scrollToElementSmooth: f } = await import("./utils/elementHelpers.js");
619
- await f(r, 120);
543
+ const { scrollToElementSmooth: g } = await import("./utils/elementHelpers.js");
544
+ await g(a, 120);
620
545
  } catch {
621
546
  }
622
- const d = n - 1, c = l.length;
547
+ const i = n - 1, c = d.length;
623
548
  k([
624
549
  {
625
- target: i,
626
- content: /* @__PURE__ */ B(
627
- rt,
550
+ target: r,
551
+ content: /* @__PURE__ */ C(
552
+ ne,
628
553
  {
629
- feature: e,
630
- currentIndex: d,
554
+ feature: t,
555
+ currentIndex: i,
631
556
  totalFeatures: c,
632
- onSkip: () => Y(e),
633
- onExplore: (f) => tt(e, f),
634
- onSecondaryAction: (f) => et(e, f),
635
- onPrevious: () => ot(e),
636
- onNext: () => nt(e),
637
- setIsClosing: K
557
+ onSkip: () => G(t),
558
+ onExplore: (g) => Y(t, g),
559
+ onPrevious: () => ee(t),
560
+ onNext: () => te(t),
561
+ setIsClosing: A
638
562
  }
639
563
  ),
640
564
  placement: "bottom",
@@ -644,7 +568,7 @@ const Kt = ({
644
568
  hideSkipButton: !0,
645
569
  hideFooter: !0,
646
570
  offset: 0,
647
- data: { feature: e, isMinor: !0 },
571
+ data: { feature: t, isMinor: !0 },
648
572
  styles: {
649
573
  tooltip: {
650
574
  padding: 0,
@@ -674,41 +598,40 @@ const Kt = ({
674
598
  ]);
675
599
  }
676
600
  },
677
- [s, l]
678
- ), nt = x(
679
- async (t) => {
680
- const o = t || s;
601
+ [l, d]
602
+ ), te = S(
603
+ async (e) => {
604
+ const o = e || l;
681
605
  if (!o)
682
606
  return;
683
- const n = l.findIndex(
684
- (e) => e.id === o.id
607
+ const n = d.findIndex(
608
+ (t) => t.id === o.id
685
609
  );
686
- if (n < l.length - 1) {
687
- const e = l[n + 1];
688
- S(e);
689
- const i = e.featureTag.startsWith("#") || e.featureTag.startsWith(".") || e.featureTag.startsWith("[") ? e.featureTag : `#${e.featureTag}`, r = document.querySelector(i);
690
- if (r)
610
+ if (n < d.length - 1) {
611
+ const t = d[n + 1];
612
+ w(t);
613
+ const r = t.featureTag.startsWith("#") || t.featureTag.startsWith(".") || t.featureTag.startsWith("[") ? t.featureTag : `#${t.featureTag}`, a = document.querySelector(r);
614
+ if (a)
691
615
  try {
692
- const { scrollToElementSmooth: f } = await import("./utils/elementHelpers.js");
693
- await f(r, 120);
616
+ const { scrollToElementSmooth: g } = await import("./utils/elementHelpers.js");
617
+ await g(a, 120);
694
618
  } catch {
695
619
  }
696
- const d = n + 1, c = l.length;
620
+ const i = n + 1, c = d.length;
697
621
  k([
698
622
  {
699
- target: i,
700
- content: /* @__PURE__ */ B(
701
- rt,
623
+ target: r,
624
+ content: /* @__PURE__ */ C(
625
+ ne,
702
626
  {
703
- feature: e,
704
- currentIndex: d,
627
+ feature: t,
628
+ currentIndex: i,
705
629
  totalFeatures: c,
706
- onSkip: () => Y(e),
707
- onExplore: (f) => tt(e, f),
708
- onSecondaryAction: (f) => et(e, f),
709
- onPrevious: () => ot(e),
710
- onNext: () => nt(e),
711
- setIsClosing: K
630
+ onSkip: () => G(t),
631
+ onExplore: (g) => Y(t, g),
632
+ onPrevious: () => ee(t),
633
+ onNext: () => te(t),
634
+ setIsClosing: A
712
635
  }
713
636
  ),
714
637
  placement: "bottom",
@@ -718,7 +641,7 @@ const Kt = ({
718
641
  hideSkipButton: !0,
719
642
  hideFooter: !0,
720
643
  offset: 0,
721
- data: { feature: e, isMinor: !0 },
644
+ data: { feature: t, isMinor: !0 },
722
645
  styles: {
723
646
  tooltip: {
724
647
  padding: 0,
@@ -747,23 +670,23 @@ const Kt = ({
747
670
  }
748
671
  ]);
749
672
  } else
750
- h(!0), U(!0), u(o.id), I(!1), S(null), k([]), setTimeout(() => {
751
- h(!1);
673
+ b(!0), F(!0), p(o.id), v(!1), w(null), k([]), setTimeout(() => {
674
+ b(!1);
752
675
  }, 500);
753
676
  },
754
- [s, l, u]
677
+ [l, d, p]
755
678
  );
756
- return /* @__PURE__ */ Et(Pt, { children: [
757
- gt,
758
- lt.length > 0 && /* @__PURE__ */ B(
759
- mt,
679
+ return /* @__PURE__ */ je(Ee, { children: [
680
+ fe,
681
+ se.length > 0 && /* @__PURE__ */ C(
682
+ ce,
760
683
  {
761
- steps: lt,
762
- run: wt,
684
+ steps: se,
685
+ run: Se,
763
686
  continuous: !1,
764
687
  showProgress: !1,
765
688
  showSkipButton: !1,
766
- callback: jt,
689
+ callback: ve,
767
690
  disableOverlayClose: !1,
768
691
  disableCloseOnEsc: !1,
769
692
  disableOverlay: !1,
@@ -773,7 +696,7 @@ const Kt = ({
773
696
  primaryColor: "#007bff",
774
697
  zIndex: 1e4,
775
698
  width: "auto",
776
- arrowColor: Mt ? "transparent" : "#212121"
699
+ arrowColor: Ce ? "transparent" : "#212121"
777
700
  },
778
701
  overlay: {
779
702
  backgroundColor: "transparent"
@@ -816,17 +739,17 @@ const Kt = ({
816
739
  skip: "Skip"
817
740
  }
818
741
  },
819
- `major-joyride-${Ut}`
742
+ `major-joyride-${Te}`
820
743
  ),
821
- st.length > 0 && /* @__PURE__ */ B(
822
- mt,
744
+ ae.length > 0 && /* @__PURE__ */ C(
745
+ ce,
823
746
  {
824
- steps: st,
825
- run: J,
747
+ steps: ae,
748
+ run: O,
826
749
  continuous: !1,
827
750
  showProgress: !1,
828
751
  showSkipButton: !1,
829
- callback: Nt,
752
+ callback: Ue,
830
753
  disableOverlayClose: !1,
831
754
  disableCloseOnEsc: !1,
832
755
  disableOverlay: !1,
@@ -838,7 +761,7 @@ const Kt = ({
838
761
  primaryColor: "#007bff",
839
762
  zIndex: 1e4,
840
763
  width: "auto",
841
- arrowColor: ct ? "transparent" : "#ffffff"
764
+ arrowColor: le ? "transparent" : "#ffffff"
842
765
  },
843
766
  overlay: {
844
767
  backgroundColor: "transparent"
@@ -846,7 +769,7 @@ const Kt = ({
846
769
  spotlight: {
847
770
  backgroundColor: "transparent",
848
771
  borderRadius: "8px",
849
- boxShadow: ct ? "none" : "0 0 0 9999px rgba(0, 0, 0, 0.4), 0 0 0 3px rgba(255, 255, 255, 0.8), 0 0 20px 8px rgba(255, 255, 255, 0.4)"
772
+ boxShadow: le ? "none" : "0 0 0 9999px rgba(0, 0, 0, 0.4), 0 0 0 3px rgba(255, 255, 255, 0.8), 0 0 20px 8px rgba(255, 255, 255, 0.4)"
850
773
  },
851
774
  tooltip: {
852
775
  borderRadius: "4px",
@@ -881,27 +804,27 @@ const Kt = ({
881
804
  skip: "Skip"
882
805
  }
883
806
  },
884
- `minor-joyride-${Ft}`
807
+ `minor-joyride-${Fe}`
885
808
  ),
886
- /* @__PURE__ */ B(
887
- Vt,
809
+ /* @__PURE__ */ C(
810
+ Ne,
888
811
  {
889
- isOpen: Ct,
890
- videoUrl: Tt,
812
+ isOpen: we,
813
+ videoUrl: ke,
891
814
  onClose: () => {
892
- q(!1), R(""), _(!1);
893
- const t = l.find(
894
- (o) => !E.has(o.id)
815
+ $(!1), z(""), K(!1);
816
+ const e = d.find(
817
+ (o) => !N.has(o.id)
895
818
  );
896
- t ? setTimeout(() => {
897
- W(t, l);
898
- }, 300) : U(!0);
819
+ e ? setTimeout(() => {
820
+ V(e, d);
821
+ }, 300) : F(!0);
899
822
  }
900
823
  }
901
824
  )
902
825
  ] });
903
826
  };
904
827
  export {
905
- Kt as default
828
+ $e as default
906
829
  };
907
830
  //# sourceMappingURL=FeatureAnnouncementProvider.js.map