@spiffcommerce/core 21.15.3 → 21.15.5-0

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.
package/dist/index.js CHANGED
@@ -181,20 +181,20 @@ class $A {
181
181
  uri: `${$.getServerUrl()}/graphql`,
182
182
  fetch: tt
183
183
  }), t = OA(async (i, s) => {
184
- const { headers: o } = s, r = o || {}, g = await ZA(), B = s.bearer ?? g.bearer, l = s.partnerId ?? g.partnerId, d = s.activeIntegration ?? g.activeIntegration, w = s.transactionOwnerId, E = s.customerToken ?? g.customerToken, h = s.applicationKey ?? g.applicationKey, u = s.bundleOwnerId;
184
+ const { headers: o } = s, r = o || {}, g = await ZA(), B = s.bearer ?? g.bearer, l = s.partnerId ?? g.partnerId, d = s.activeIntegration ?? g.activeIntegration, w = s.transactionOwnerId, E = s.customerToken ?? g.customerToken, h = s.applicationKey ?? g.applicationKey, C = s.bundleOwnerId;
185
185
  try {
186
186
  if (window && window.__SENTRY__) {
187
- const C = window.__SENTRY__.hub;
188
- if (C) {
189
- const I = C.traceHeaders();
190
- Object.entries(I).forEach(([p, Q]) => {
191
- r[p] = Q;
187
+ const u = window.__SENTRY__.hub;
188
+ if (u) {
189
+ const f = u.traceHeaders();
190
+ Object.entries(f).forEach(([Q, p]) => {
191
+ r[Q] = p;
192
192
  });
193
193
  }
194
194
  }
195
195
  } catch {
196
196
  }
197
- return B && (r.Authorization = `Bearer ${B}`), l && (r.partnerId = l), d && (r.activeIntegration = d), w && (r.transactionOwnerId = w), E && (r.customerToken = E), h && (r["X-Application-Key"] = h), u && (r.bundleOwnerId = u), {
197
+ return B && (r.Authorization = `Bearer ${B}`), l && (r.partnerId = l), d && (r.activeIntegration = d), w && (r.transactionOwnerId = w), E && (r.customerToken = E), h && (r["X-Application-Key"] = h), C && (r.bundleOwnerId = C), {
198
198
  headers: r
199
199
  };
200
200
  }), A = zA(({ operation: i, graphQLErrors: s, networkError: o }) => {
@@ -1738,14 +1738,14 @@ class St {
1738
1738
  command: new T(d, n)
1739
1739
  };
1740
1740
  } else {
1741
- const l = this.configuration.type === M.SilentIllustration ? (B = this.configuration.data.asset) == null ? void 0 : B.fileLink : i, w = await Ut(await (async () => new Promise((h, u) => {
1741
+ const l = this.configuration.type === M.SilentIllustration ? (B = this.configuration.data.asset) == null ? void 0 : B.fileLink : i, w = await Ut(await (async () => new Promise((h, C) => {
1742
1742
  if (!l) {
1743
- u("Undefined vector silent step source");
1743
+ C("Undefined vector silent step source");
1744
1744
  return;
1745
1745
  }
1746
- _(l, !0).then((C) => {
1747
- h(C);
1748
- }).catch((C) => console.error(C));
1746
+ _(l, !0).then((u) => {
1747
+ h(u);
1748
+ }).catch((u) => console.error(u));
1749
1749
  }))()), E = {
1750
1750
  stepName: this.configuration.stepName,
1751
1751
  id: J(),
@@ -1854,29 +1854,29 @@ class xa {
1854
1854
  async regenerateQRCode(e, t, A, a, n, i, s, o, r) {
1855
1855
  if (!t && A !== "" && a === "") {
1856
1856
  const g = async () => {
1857
- var p, Q;
1858
- const C = (await qt([A]))[0], I = (Q = (p = C == null ? void 0 : C.versions) == null ? void 0 : p.find((m) => m.name === "mpeg4")) == null ? void 0 : Q.link;
1859
- return { asset: C, link: I };
1860
- }, B = await new Promise((C, I) => {
1857
+ var Q, p;
1858
+ const u = (await qt([A]))[0], f = (p = (Q = u == null ? void 0 : u.versions) == null ? void 0 : Q.find((m) => m.name === "mpeg4")) == null ? void 0 : p.link;
1859
+ return { asset: u, link: f };
1860
+ }, B = await new Promise((u, f) => {
1861
1861
  new aA(
1862
1862
  async () => !!(await g()).link,
1863
1863
  async () => {
1864
- const p = await g();
1865
- if (!p.link || !p.link)
1866
- throw new he(p.asset);
1867
- C({
1864
+ const Q = await g();
1865
+ if (!Q.link || !Q.link)
1866
+ throw new he(Q.asset);
1867
+ u({
1868
1868
  rel: "mpeg4",
1869
- href: p.link
1869
+ href: Q.link
1870
1870
  });
1871
1871
  },
1872
1872
  () => {
1873
- I("Poller timed out with 40 attempts @ 3 second interval");
1873
+ f("Poller timed out with 40 attempts @ 3 second interval");
1874
1874
  },
1875
1875
  3e3,
1876
1876
  40
1877
1877
  );
1878
1878
  });
1879
- e.forEach((C) => o(new ee(C.id)));
1879
+ e.forEach((u) => o(new ee(u.id)));
1880
1880
  const l = i.data.baseUrl.slice(0, 4) === "http" ? "" : "https://", d = new URL(l + i.data.baseUrl);
1881
1881
  d.searchParams.append("video", btoa(JSON.stringify([B]))), d.pathname = d.pathname + (d.pathname.slice(-1) === "/" ? "" : "/");
1882
1882
  const w = d.toString();
@@ -1885,8 +1885,8 @@ class xa {
1885
1885
  const E = await Pa(w);
1886
1886
  if (s(E), !i.data || !i.data.regions)
1887
1887
  throw new Re(i, "Missing regions.");
1888
- const h = await this.regionElements(i), u = await this.command(E, h, n, i.stepName);
1889
- u && (u.command && n.getCommandDispatcher()(u.command), u.followup && await u.followup()), await n.setSelectionsAndElements(i.stepName, [], h, async () => {
1888
+ const h = await this.regionElements(i), C = await this.command(E, h, n, i.stepName);
1889
+ C && (C.command && n.getCommandDispatcher()(C.command), C.followup && await C.followup()), await n.setSelectionsAndElements(i.stepName, [], h, async () => {
1890
1890
  n.updateStorage(i.stepName, {
1891
1891
  videoShortUrl: E,
1892
1892
  videoUrl: a
@@ -1986,18 +1986,18 @@ class Ha {
1986
1986
  frameOffsetsList: l,
1987
1987
  framePatternSrc: B
1988
1988
  }), B) {
1989
- const u = (E = t.getStepSpecificServices(e.stepName)) == null ? void 0 : E.frameService;
1990
- if (!u)
1989
+ const C = (E = t.getStepSpecificServices(e.stepName)) == null ? void 0 : E.frameService;
1990
+ if (!C)
1991
1991
  throw new Error("Frame service unavailable, cannot load pattern!");
1992
- await this.loadPatternFromString(B, u, !0), t.updateMetadata(e.stepName, { image: B }), t.updateStorage(e.stepName, {
1992
+ await this.loadPatternFromString(B, C, !0), t.updateMetadata(e.stepName, { image: B }), t.updateStorage(e.stepName, {
1993
1993
  framePatternSrc: B
1994
1994
  });
1995
1995
  }
1996
- if (l != null && l.some((u) => u.zoom)) {
1997
- const u = (h = t.getStepSpecificServices(e.stepName)) == null ? void 0 : h.frameService;
1998
- if (!u)
1996
+ if (l != null && l.some((C) => C.zoom)) {
1997
+ const C = (h = t.getStepSpecificServices(e.stepName)) == null ? void 0 : h.frameService;
1998
+ if (!C)
1999
1999
  throw new Error("Frame service unavailable, cannot load pattern!");
2000
- u.updateOffsets(l);
2000
+ C.updateOffsets(l);
2001
2001
  }
2002
2002
  t.setMandatoryFulfilled(e.stepName, !0);
2003
2003
  };
@@ -2115,23 +2115,23 @@ class Ha {
2115
2115
  n && n(!0);
2116
2116
  const r = await Promise.all(
2117
2117
  e.data.regions.map(async (d, w) => {
2118
- const E = await At(o[w]), h = s.getImageData(), u = A.map((f) => new ee(f.id)), C = h ? at(h, E) : void 0, I = h ? {
2118
+ const E = await At(o[w]), h = s.getImageData(), C = A.map((I) => new ee(I.id)), u = h ? at(h, E) : void 0, f = h ? {
2119
2119
  id: J(),
2120
2120
  src: h.src,
2121
- x: (C == null ? void 0 : C.x) || 0,
2122
- y: (C == null ? void 0 : C.y) || 0,
2121
+ x: (u == null ? void 0 : u.x) || 0,
2122
+ y: (u == null ? void 0 : u.y) || 0,
2123
2123
  width: h.width,
2124
2124
  height: h.height,
2125
- scaleX: (C == null ? void 0 : C.zoom) || 1,
2126
- scaleY: (C == null ? void 0 : C.zoom) || 1,
2125
+ scaleX: (u == null ? void 0 : u.zoom) || 1,
2126
+ scaleY: (u == null ? void 0 : u.zoom) || 1,
2127
2127
  rotation: 0
2128
- } : void 0, p = J(), m = a.getLayouts().find((f) => f.panelId === d.panelId);
2128
+ } : void 0, Q = J(), m = a.getLayouts().find((I) => I.panelId === d.panelId);
2129
2129
  if (!m)
2130
2130
  throw new z(d);
2131
2131
  return {
2132
- command: this.getCreateElementCommand(p, d, m, {
2132
+ command: this.getCreateElementCommand(Q, d, m, {
2133
2133
  frameData: E,
2134
- pattern: I,
2134
+ pattern: f,
2135
2135
  disablePlaceholder: e.data.disablePlaceholder,
2136
2136
  focalBlur: e.data.focalBlur,
2137
2137
  focalBlurStrength: e.data.focalBlurStrength,
@@ -2139,10 +2139,10 @@ class Ha {
2139
2139
  stepName: e.stepName
2140
2140
  }),
2141
2141
  regionEl: {
2142
- id: p,
2142
+ id: Q,
2143
2143
  region: d
2144
2144
  },
2145
- removeExistingCommands: u
2145
+ removeExistingCommands: C
2146
2146
  };
2147
2147
  })
2148
2148
  ), g = r.map((d) => d.command), B = r.map((d) => d.removeExistingCommands).flat();
@@ -2246,7 +2246,7 @@ class Ra {
2246
2246
  const n = V.getDefaultVariant(a);
2247
2247
  if (n)
2248
2248
  return await this.selectVariantCommand(e, n, [], () => {
2249
- }, t, !0);
2249
+ }, t);
2250
2250
  }
2251
2251
  return null;
2252
2252
  }
@@ -2310,8 +2310,8 @@ class Ra {
2310
2310
  a().map((E) => E.layoutState)
2311
2311
  ), s = { ...i.colors }, o = {};
2312
2312
  Object.entries(s).forEach(([E, h]) => {
2313
- const u = { browserValue: h.browserValue }, C = h.spotColor;
2314
- C && (u.spotColor = { profileName: C.profileName, namedColor: C.namedColor }), o[E] = u;
2313
+ const C = { browserValue: h.browserValue }, u = h.spotColor;
2314
+ u && (C.spotColor = { profileName: u.profileName, namedColor: u.namedColor }), o[E] = C;
2315
2315
  });
2316
2316
  for (const [E, h] of n.entries())
2317
2317
  s[E] = { browserValue: h, spotColor: (d = s[E]) == null ? void 0 : d.spotColor }, o[E] = { browserValue: h };
@@ -2319,8 +2319,8 @@ class Ra {
2319
2319
  const g = e.data.colorOption;
2320
2320
  g && ((w = g.variants) == null || w.forEach((E) => {
2321
2321
  r = r.map((h) => {
2322
- var u;
2323
- return h.toLowerCase() === ((u = E.color) == null ? void 0 : u.toLowerCase()) ? E.name : h;
2322
+ var C;
2323
+ return h.toLowerCase() === ((C = E.color) == null ? void 0 : C.toLowerCase()) ? E.name : h;
2324
2324
  });
2325
2325
  })), A.updateMetadata(e.stepName, { colors: r });
2326
2326
  const B = /* @__PURE__ */ new Map();
@@ -2343,61 +2343,61 @@ class Ra {
2343
2343
  const i = await this.selectVariantCommand(e, t, A, a, n);
2344
2344
  i && (i.command && n.getCommandDispatcher()(i.command), i.followup && await i.followup());
2345
2345
  }
2346
- async selectVariantCommand(e, t, A, a, n, i) {
2346
+ async selectVariantCommand(e, t, A, a, n) {
2347
2347
  var C;
2348
2348
  if (!e.data || !e.data.regions)
2349
2349
  throw new Re(e, "Missing regions.");
2350
2350
  a(!0);
2351
- const s = A.map((I) => new ee(I.id));
2351
+ const i = A.map((u) => new ee(u.id));
2352
2352
  e.mandatory && n.setMandatoryFulfilled(e.stepName, !1);
2353
- const o = t.asset;
2354
- if (!o)
2353
+ const s = t.asset;
2354
+ if (!s)
2355
2355
  throw new te(t);
2356
- const r = o.fileLink;
2357
- if (!r)
2358
- throw new he(o);
2359
- const g = await Ut(await this.getIllustrationBody(r)), B = await Pe(g.svg), l = (I) => {
2360
- const p = n.getLayouts().find((m) => m.panelId === I.panelId);
2361
- if (!p)
2362
- throw new z(I);
2356
+ const o = s.fileLink;
2357
+ if (!o)
2358
+ throw new he(s);
2359
+ const r = await Ut(await this.getIllustrationBody(o)), g = await Pe(r.svg), B = (u) => {
2360
+ const f = n.getLayouts().find((p) => p.panelId === u.panelId);
2361
+ if (!f)
2362
+ throw new z(u);
2363
2363
  const Q = J();
2364
2364
  return {
2365
- regionElement: { id: Q, region: I },
2366
- command: this.getCreateElementCommand(Q, I, p, {
2365
+ regionElement: { id: Q, region: u },
2366
+ command: this.getCreateElementCommand(Q, u, f, {
2367
2367
  stepName: e.stepName,
2368
- src: r,
2369
- objectURL: B,
2370
- svg: g
2368
+ src: o,
2369
+ objectURL: g,
2370
+ svg: r
2371
2371
  })
2372
2372
  };
2373
- }, d = e.data.regions.map(l), E = [...d.map((I) => I.command), ...s];
2374
- let h = Array.from(Object.values(g.colors)).map((I) => I.browserValue);
2375
- const u = e.data.colorOption;
2376
- return u && ((C = u.variants) == null || C.forEach((I) => {
2377
- h = h.map((p) => {
2373
+ }, l = e.data.regions.map(B), w = [...l.map((u) => u.command), ...i];
2374
+ let E = Array.from(Object.values(r.colors)).map((u) => u.browserValue);
2375
+ const h = e.data.colorOption;
2376
+ return h && ((C = h.variants) == null || C.forEach((u) => {
2377
+ E = E.map((f) => {
2378
2378
  var Q;
2379
- return p.toLowerCase() === ((Q = I.color) == null ? void 0 : Q.toLowerCase()) ? I.name : p;
2379
+ return f.toLowerCase() === ((Q = u.color) == null ? void 0 : Q.toLowerCase()) ? u.name : f;
2380
2380
  });
2381
- })), n.updateMetadata(e.stepName, { colors: h }), {
2382
- command: new G(E),
2381
+ })), n.updateMetadata(e.stepName, { colors: E }), {
2382
+ command: new G(w),
2383
2383
  followup: async () => {
2384
2384
  await n.setSelectionsAndElements(
2385
2385
  e.stepName,
2386
2386
  [t],
2387
- d.map((Q) => Q.regionElement),
2387
+ l.map((Q) => Q.regionElement),
2388
2388
  async () => {
2389
- i || n.setMandatoryFulfilled(e.stepName, !0), a(!1);
2389
+ n.setMandatoryFulfilled(e.stepName, !0), a(!1);
2390
2390
  }
2391
2391
  );
2392
- const I = await this.availableColors(e, n) || [], p = Object.keys(g.colors);
2393
- if (e.data.colorPickerEnabled && I.length === 1 && p.length === 1) {
2394
- const Q = I[0], m = p[0];
2392
+ const u = await this.availableColors(e, n) || [], f = Object.keys(r.colors);
2393
+ if (e.data.colorPickerEnabled && u.length === 1 && f.length === 1) {
2394
+ const Q = u[0], p = f[0];
2395
2395
  await this.changeColors(
2396
2396
  e,
2397
- d.map((f) => f.regionElement),
2397
+ l.map((m) => m.regionElement),
2398
2398
  n,
2399
2399
  () => n.getCommandContext().getAllLayouts(),
2400
- /* @__PURE__ */ new Map([[m, Q.variant.color]])
2400
+ /* @__PURE__ */ new Map([[p, Q.variant.color]])
2401
2401
  );
2402
2402
  }
2403
2403
  }
@@ -2416,7 +2416,7 @@ class Ua {
2416
2416
  const n = V.getDefaultVariant(a);
2417
2417
  if (n)
2418
2418
  return await this.selectVariantLambda(e, n, t, () => {
2419
- }, !0);
2419
+ });
2420
2420
  }
2421
2421
  return null;
2422
2422
  }
@@ -2441,7 +2441,11 @@ class Ua {
2441
2441
  async () => {
2442
2442
  const w = t.getModelContainer();
2443
2443
  if (w) {
2444
- const E = e.data.targetMaterials.map((h) => w.applyMaterialVariant(h, o.id || "", l || {}));
2444
+ const E = e.data.targetMaterials.map((h) => w.applyMaterialVariant(
2445
+ h,
2446
+ o.id || "",
2447
+ l || {}
2448
+ ));
2445
2449
  Promise.all(E).then(
2446
2450
  () => t.setMandatoryFulfilled(e.stepName, !0)
2447
2451
  );
@@ -2456,20 +2460,20 @@ class Ua {
2456
2460
  const n = await this.selectVariantLambda(e, t, A, a);
2457
2461
  n && (n.command && A.getCommandDispatcher()(n.command), n.followup && await n.followup());
2458
2462
  }
2459
- async selectVariantLambda(e, t, A, a, n) {
2460
- const i = A.getModelContainer();
2463
+ async selectVariantLambda(e, t, A, a) {
2464
+ const n = A.getModelContainer();
2461
2465
  a(!0);
2462
- const s = t.material;
2463
- if (!s)
2466
+ const i = t.material;
2467
+ if (!i)
2464
2468
  throw a(!1), new te(t);
2465
2469
  return {
2466
2470
  command: void 0,
2467
2471
  followup: async () => {
2468
2472
  await A.setSelectionsAndElements(e.stepName, [t], [], async () => {
2469
2473
  try {
2470
- i && e.data.targetMaterials.forEach((o) => {
2471
- e.option && i.applyMaterialVariant(o, e.option.id || "", s);
2472
- }), n || A.setMandatoryFulfilled(e.stepName, !0);
2474
+ n && e.data.targetMaterials.forEach((s) => {
2475
+ e.option && n.applyMaterialVariant(s, e.option.id || "", i);
2476
+ }), A.setMandatoryFulfilled(e.stepName, !0);
2473
2477
  } finally {
2474
2478
  a(!1);
2475
2479
  }
@@ -2490,7 +2494,7 @@ class va {
2490
2494
  const n = V.getDefaultVariant(a);
2491
2495
  if (n)
2492
2496
  return await this.selectVariantLambda(e, n, t, () => {
2493
- }, !0);
2497
+ });
2494
2498
  }
2495
2499
  return null;
2496
2500
  }
@@ -2536,26 +2540,26 @@ class va {
2536
2540
  const n = await this.selectVariantLambda(e, t, A, a);
2537
2541
  n && (n.command && A.getCommandDispatcher()(n.command), n.followup && await n.followup());
2538
2542
  }
2539
- async selectVariantLambda(e, t, A, a, n) {
2540
- var s;
2543
+ async selectVariantLambda(e, t, A, a) {
2544
+ var i;
2541
2545
  a(!0);
2542
- const i = (s = t.asset) == null ? void 0 : s.fileLink;
2543
- if (!i)
2546
+ const n = (i = t.asset) == null ? void 0 : i.fileLink;
2547
+ if (!n)
2544
2548
  throw new te(t);
2545
2549
  return {
2546
2550
  command: void 0,
2547
2551
  followup: async () => {
2548
2552
  await A.setSelectionsAndElements(e.stepName, [t], [], async () => {
2549
2553
  try {
2550
- const o = A.getModelContainer();
2551
- o && await o.applyModelVariant(
2554
+ const s = A.getModelContainer();
2555
+ s && await s.applyModelVariant(
2552
2556
  e.stepName,
2553
2557
  {
2554
- model: i,
2558
+ model: n,
2555
2559
  contextService: A.getLayoutPreviewService()
2556
2560
  },
2557
2561
  e.data.replaceProductModel || !1
2558
- ), n || A.setMandatoryFulfilled(e.stepName, !0);
2562
+ ), A.setMandatoryFulfilled(e.stepName, !0);
2559
2563
  } finally {
2560
2564
  a(!1);
2561
2565
  }
@@ -2600,11 +2604,11 @@ class Ga {
2600
2604
  return console.error("Missing configuration."), null;
2601
2605
  A.updateStorage(e.stepName, { text: t });
2602
2606
  const r = (B, l, d) => {
2603
- const w = d || J(), h = A.getLayouts().find((C) => C.panelId === l.panelId);
2607
+ const w = d || J(), h = A.getLayouts().find((u) => u.panelId === l.panelId);
2604
2608
  if (!h)
2605
2609
  return console.error(`Can not find layout for region: ${l.panelId}`), null;
2606
- const u = [];
2607
- return d && u.push(new ee(w)), u.push(
2610
+ const C = [];
2611
+ return d && C.push(new ee(w)), C.push(
2608
2612
  new T(
2609
2613
  {
2610
2614
  stepRegion: l,
@@ -2627,7 +2631,7 @@ class Ga {
2627
2631
  ), {
2628
2632
  id: w,
2629
2633
  region: l,
2630
- command: new G(u)
2634
+ command: new G(C)
2631
2635
  };
2632
2636
  };
2633
2637
  if (i.length > 0) {
@@ -2687,7 +2691,7 @@ class ba {
2687
2691
  await this.reload(e, t, A);
2688
2692
  else if (a.defaultVariant)
2689
2693
  return t.markStepsAsInitialised([e.stepName]), this.selectVariantCommand(e, a.defaultVariant, t, () => {
2690
- }, !0);
2694
+ });
2691
2695
  return t.markStepsAsInitialised([e.stepName]), null;
2692
2696
  }
2693
2697
  async reload(e, t, A) {
@@ -2718,51 +2722,51 @@ class ba {
2718
2722
  const n = await this.selectVariantCommand(e, t, A, a);
2719
2723
  n && (n.command && A.getCommandDispatcher()(n.command), n.followup && await n.followup());
2720
2724
  }
2721
- async selectVariantCommand(e, t, A, a, n) {
2722
- const i = t.asset;
2723
- if (!i)
2725
+ async selectVariantCommand(e, t, A, a) {
2726
+ const n = t.asset;
2727
+ if (!n)
2724
2728
  throw new te(t);
2725
- const s = i == null ? void 0 : i.fileLink;
2726
- if (!s)
2729
+ const i = n == null ? void 0 : n.fileLink;
2730
+ if (!i)
2727
2731
  return console.error("No URL for picture!"), null;
2728
2732
  a(!0), e.mandatory && A.setMandatoryFulfilled(e.stepName, !1);
2729
- const r = A.getRegionElements(e.stepName).map((l) => new ee(l.id)), g = (l) => {
2730
- const w = A.getLayouts().find((h) => h.panelId === l.panelId);
2731
- if (!w)
2732
- throw new z(l);
2733
- const E = J();
2733
+ const o = A.getRegionElements(e.stepName).map((B) => new ee(B.id)), r = (B) => {
2734
+ const d = A.getLayouts().find((E) => E.panelId === B.panelId);
2735
+ if (!d)
2736
+ throw new z(B);
2737
+ const w = J();
2734
2738
  return {
2735
- regionElement: { id: E, region: l },
2739
+ regionElement: { id: w, region: B },
2736
2740
  command: new T(
2737
2741
  {
2738
2742
  stepName: e.stepName,
2739
- stepRegion: l,
2740
- id: E,
2741
- src: s,
2743
+ stepRegion: B,
2744
+ id: w,
2745
+ src: i,
2742
2746
  type: k.Image,
2743
- y: l.top,
2744
- x: l.left,
2745
- rotation: l.rotation,
2746
- width: l.width,
2747
- height: l.height,
2748
- layer: l.layer,
2749
- layerIndex: l.layerIndex,
2750
- immutable: l.immutable,
2747
+ y: B.top,
2748
+ x: B.left,
2749
+ rotation: B.rotation,
2750
+ width: B.width,
2751
+ height: B.height,
2752
+ layer: B.layer,
2753
+ layerIndex: B.layerIndex,
2754
+ immutable: B.immutable,
2751
2755
  preserveAspectRatio: "none"
2752
2756
  },
2753
- w
2757
+ d
2754
2758
  )
2755
2759
  };
2756
- }, B = e.data.regions.map(g);
2760
+ }, g = e.data.regions.map(r);
2757
2761
  return {
2758
- command: new G([...r, ...B.map((l) => l.command)]),
2762
+ command: new G([...o, ...g.map((B) => B.command)]),
2759
2763
  followup: async () => {
2760
2764
  await A.setSelectionsAndElements(
2761
2765
  e.stepName,
2762
2766
  [t],
2763
- B.map((l) => l.regionElement),
2767
+ g.map((B) => B.regionElement),
2764
2768
  async () => {
2765
- n || A.setMandatoryFulfilled(e.stepName, !0), a(!1);
2769
+ A.setMandatoryFulfilled(e.stepName, !0), a(!1);
2766
2770
  }
2767
2771
  );
2768
2772
  }
@@ -2784,7 +2788,7 @@ class Ja {
2784
2788
  var r;
2785
2789
  return o.id === ((r = a.defaultVariant) == null ? void 0 : r.id);
2786
2790
  });
2787
- return this.selectVariantLambda(e, (s == null ? void 0 : s.id) || "", t, !0);
2791
+ return this.selectVariantLambda(e, (s == null ? void 0 : s.id) || "", t);
2788
2792
  }
2789
2793
  }
2790
2794
  return null;
@@ -2808,21 +2812,21 @@ class Ja {
2808
2812
  const a = await this.selectVariantLambda(e, t, A);
2809
2813
  a && (a.command && A.getCommandDispatcher()(a.command), a.followup && await a.followup());
2810
2814
  }
2811
- async selectVariantLambda(e, t, A, a) {
2812
- const n = e.option;
2815
+ async selectVariantLambda(e, t, A) {
2816
+ const a = e.option;
2817
+ if (!a)
2818
+ return null;
2819
+ const n = a.variants;
2813
2820
  if (!n)
2814
2821
  return null;
2815
- const i = n.variants;
2822
+ const i = n.length > 1 ? n.find((s) => s.id === t) : n[0];
2816
2823
  if (!i)
2817
- return null;
2818
- const s = i.length > 1 ? i.find((o) => o.id === t) : i[0];
2819
- if (!s)
2820
2824
  throw new Error("Failed to find selected variant in step variants, this should never happen!");
2821
2825
  return {
2822
2826
  command: void 0,
2823
2827
  followup: async () => {
2824
- await A.setSelectionsAndElements(e.stepName, [s], [], async () => {
2825
- a || A.setMandatoryFulfilled(e.stepName, !0);
2828
+ await A.setSelectionsAndElements(e.stepName, [i], [], async () => {
2829
+ A.setMandatoryFulfilled(e.stepName, !0);
2826
2830
  });
2827
2831
  }
2828
2832
  };
@@ -2934,7 +2938,7 @@ class La {
2934
2938
  };
2935
2939
  } else {
2936
2940
  const r = (d) => {
2937
- const w = n.find((I) => I.panelId === d.panelId);
2941
+ const w = n.find((f) => f.panelId === d.panelId);
2938
2942
  if (!w)
2939
2943
  throw new z(d);
2940
2944
  const E = s(), h = `
@@ -2957,18 +2961,18 @@ class La {
2957
2961
  fill="${E}"
2958
2962
  />
2959
2963
  </svg>
2960
- `, u = {};
2961
- u[this.shapeFillId] = { browserValue: E };
2962
- const C = J();
2964
+ `, C = {};
2965
+ C[this.shapeFillId] = { browserValue: E };
2966
+ const u = J();
2963
2967
  return {
2964
- id: C,
2968
+ id: u,
2965
2969
  region: d,
2966
2970
  command: new T(
2967
2971
  {
2968
2972
  stepRegion: d,
2969
2973
  stepName: e.stepName,
2970
- colors: u,
2971
- id: C,
2974
+ colors: C,
2975
+ id: u,
2972
2976
  svg: h,
2973
2977
  type: k.Illustration,
2974
2978
  y: d.top,
@@ -3275,24 +3279,24 @@ class Ka {
3275
3279
  if (o && l) {
3276
3280
  const d = (r = o.variants) == null ? void 0 : r.find((w) => w.id === l);
3277
3281
  if (d) {
3278
- const w = await this.fontDataFromVariant(d), E = s.map((I) => ({ id: I.id, region: I.stepRegion })), h = (g = a.storage) == null ? void 0 : g.color, u = (B = a.storage) == null ? void 0 : B.text;
3282
+ const w = await this.fontDataFromVariant(d), E = s.map((f) => ({ id: f.id, region: f.stepRegion })), h = (g = a.storage) == null ? void 0 : g.color, C = (B = a.storage) == null ? void 0 : B.text;
3279
3283
  await t.setSelectionsAndElements(
3280
3284
  e.stepName,
3281
3285
  [d],
3282
3286
  E,
3283
3287
  async () => {
3284
- t.updateMetadata(e.stepName, { color: h, text: u }), t.updateStorage(e.stepName, { text: u, inputText: u });
3285
- const I = s.map((Q) => new mt(Q.id, w)), p = new G(I);
3286
- t.getCommandDispatcher()(p), t.setMandatoryFulfilled(e.stepName, !0);
3288
+ t.updateMetadata(e.stepName, { color: h, text: C }), t.updateStorage(e.stepName, { text: C, inputText: C });
3289
+ const f = s.map((p) => new mt(p.id, w)), Q = new G(f);
3290
+ t.getCommandDispatcher()(Q);
3287
3291
  }
3288
3292
  );
3289
- const { command: C } = j.updateInputText(
3290
- u || "",
3293
+ const { command: u } = j.updateInputText(
3294
+ C || "",
3291
3295
  s,
3292
3296
  e,
3293
3297
  t
3294
3298
  );
3295
- C && t.getCommandDispatcher()(C);
3299
+ u && t.getCommandDispatcher()(u);
3296
3300
  }
3297
3301
  }
3298
3302
  }
@@ -3374,7 +3378,7 @@ class Ka {
3374
3378
  ), w = l.flatMap((h) => h.commands);
3375
3379
  if (o) {
3376
3380
  const h = l.map(
3377
- (u) => new Oe(u.regionElement.id, o)
3381
+ (C) => new Oe(C.regionElement.id, o)
3378
3382
  );
3379
3383
  w.push(...h);
3380
3384
  }
@@ -3404,21 +3408,21 @@ class Ka {
3404
3408
  if (!d)
3405
3409
  throw new Ge("Failed to find layout for region: " + B.panelId);
3406
3410
  const h = A.colorOption;
3407
- let u;
3411
+ let C;
3408
3412
  if (h && h.variants) {
3409
3413
  const N = h.variants.find((H) => {
3410
3414
  var O;
3411
3415
  return H.id === ((O = h.defaultVariant) == null ? void 0 : O.id);
3412
3416
  }) || h.variants[0];
3413
- u = this.createTextFillSpotColor(h, N), i.updateStorage(e, {
3417
+ C = this.createTextFillSpotColor(h, N), i.updateStorage(e, {
3414
3418
  colorProfileAssetKey: (E = h.colorProfile) == null ? void 0 : E.key
3415
3419
  });
3416
3420
  }
3417
- const C = await this.getDefaultColor(A), I = C || "#000000", p = {
3421
+ const u = await this.getDefaultColor(A), f = u || "#000000", Q = {
3418
3422
  stepRegion: B,
3419
3423
  stepName: e,
3420
3424
  align: this.textAlign(A),
3421
- fill: n.color ? n.color : I,
3425
+ fill: n.color ? n.color : f,
3422
3426
  fontSize: A.size || ze,
3423
3427
  fontData: a,
3424
3428
  id: w,
@@ -3437,35 +3441,35 @@ class Ka {
3437
3441
  verticalAlign: A.verticalAlign || "middle",
3438
3442
  curved: A.curved,
3439
3443
  paths: A.paths,
3440
- fillSpotColorDefinition: u
3441
- }, Q = [], m = /* @__PURE__ */ new Map(), f = /* @__PURE__ */ new Map();
3442
- if (!p.fontData)
3444
+ fillSpotColorDefinition: C
3445
+ }, p = [], m = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map();
3446
+ if (!Q.fontData)
3443
3447
  throw new b("Failed to resolve font data for text.");
3444
3448
  const [F, y] = Me(
3445
- p.fontSize,
3446
- p.fontData,
3449
+ Q.fontSize,
3450
+ Q.fontData,
3447
3451
  {
3448
- left: p.x,
3449
- top: p.y,
3450
- width: p.width,
3451
- height: p.height,
3452
- rotation: p.rotation,
3452
+ left: Q.x,
3453
+ top: Q.y,
3454
+ width: Q.width,
3455
+ height: Q.height,
3456
+ rotation: Q.rotation,
3453
3457
  panelId: ""
3454
3458
  },
3455
3459
  [o],
3456
3460
  { size: A.size, minSize: A.minSize, maxSize: A.maxSize }
3457
3461
  );
3458
- m.set(p.id, F), f.set(p.id, y);
3462
+ m.set(Q.id, F), I.set(Q.id, y);
3459
3463
  const Y = A.curved || A.vertical ? o : (y || []).join(`
3460
3464
  `);
3461
- Q.push(
3462
- this.generateTextChangeCommandsForRegion(F, A, p.id, Y)
3465
+ p.push(
3466
+ this.generateTextChangeCommandsForRegion(F, A, Q.id, Y)
3463
3467
  );
3464
- const S = new T(p, d);
3468
+ const S = new T(Q, d);
3465
3469
  return {
3466
3470
  regionElement: { id: w, region: B },
3467
- commands: [S, ...Q],
3468
- newElement: p,
3471
+ commands: [S, ...p],
3472
+ newElement: Q,
3469
3473
  fontData: a
3470
3474
  };
3471
3475
  } catch (h) {
@@ -3500,53 +3504,53 @@ class Ka {
3500
3504
  */
3501
3505
  async changeInputTextWithRegion(e, t, A, a, n, i, s, o, r, g) {
3502
3506
  const B = (a || "").replace(/^(?![\u000A\u000D])[\u0000-\u001F\u007F-\u009F]/g, ""), l = this.getProcessedInput(B, e.data, s), d = i.getRegionElements(e.stepName), w = /* @__PURE__ */ new Map(), E = /* @__PURE__ */ new Map();
3503
- for (const p of d)
3504
- if (p.region) {
3505
- const [Q, m] = Me(
3507
+ for (const Q of d)
3508
+ if (Q.region) {
3509
+ const [p, m] = Me(
3506
3510
  t,
3507
3511
  A,
3508
- p.region,
3512
+ Q.region,
3509
3513
  [l],
3510
3514
  { size: e.data.size, minSize: e.data.minSize, maxSize: e.data.maxSize }
3511
3515
  );
3512
- w.set(p.id, Q), E.set(p.id, m);
3516
+ w.set(Q.id, p), E.set(Q.id, m);
3513
3517
  }
3514
- const u = (() => {
3518
+ const C = (() => {
3515
3519
  if (e.data && e.data.maxLength && l.length > e.data.maxLength)
3516
3520
  return g && g(!0), { info: "0" };
3517
- const p = i.getProfanities(), Q = $e(l.toLowerCase());
3518
- for (const m of Q)
3519
- for (const f in p) {
3520
- const F = p[f].toLowerCase().replace(/\s/g, "");
3521
+ const Q = i.getProfanities(), p = $e(l.toLowerCase());
3522
+ for (const m of p)
3523
+ for (const I in Q) {
3524
+ const F = Q[I].toLowerCase().replace(/\s/g, "");
3521
3525
  if (m === F)
3522
3526
  return o(!0), { error: "Blocked profanity." };
3523
3527
  }
3524
3528
  return !e.data.vertical && !e.data.allowNewlines && (l.includes(`
3525
- `) || l.includes("\r")) ? (o(!0), { error: "Cannot span multiple lines." }) : !e.data.curved && !Array.from(E.values()).every((f) => f) ? (o(!0), { error: "Does not fit." }) : (o(!1), { info: (e.data.maxLength - l.length).toString() });
3529
+ `) || l.includes("\r")) ? (o(!0), { error: "Cannot span multiple lines." }) : !e.data.curved && !Array.from(E.values()).every((I) => I) ? (o(!0), { error: "Does not fit." }) : (o(!1), { info: (e.data.maxLength - l.length).toString() });
3526
3530
  })();
3527
- if (u.error) {
3528
- r(u.error);
3531
+ if (C.error) {
3532
+ r(C.error);
3529
3533
  return;
3530
3534
  }
3531
- if (r(`${u.info} characters remaining` || ""), g)
3535
+ if (r(`${C.info} characters remaining` || ""), g)
3532
3536
  return;
3533
3537
  i.updateStorage(e.stepName, { text: B }), i.updateMetadata(e.stepName, {
3534
3538
  text: this.injectReplaceableText(B, e.data)
3535
3539
  }), n.defaultCleared && i.setMandatoryFulfilled(e.stepName, !0);
3536
- const C = [];
3537
- for (const p of d) {
3538
- const Q = e.data.curved ? l : (E.get(p.id) || []).join(`
3540
+ const u = [];
3541
+ for (const Q of d) {
3542
+ const p = e.data.curved ? l : (E.get(Q.id) || []).join(`
3539
3543
  `);
3540
- C.push(
3544
+ u.push(
3541
3545
  this.generateTextChangeCommandsForRegion(
3542
- w.get(p.id) || 1,
3546
+ w.get(Q.id) || 1,
3543
3547
  e.data,
3544
- p.id,
3545
- Q
3548
+ Q.id,
3549
+ p
3546
3550
  )
3547
3551
  );
3548
3552
  }
3549
- return new G(C);
3553
+ return new G(u);
3550
3554
  }
3551
3555
  }
3552
3556
  const j = new Ka();
@@ -4990,16 +4994,16 @@ class $a extends gt {
4990
4994
  }
4991
4995
  brandSvg(e, t) {
4992
4996
  const A = e.toSVG(2), a = e.getBoundingBox(), n = a.x2 - a.x1, i = e.toPathData(3), s = () => {
4993
- const Q = R("g"), m = R("defs");
4994
- Q.appendChild(m), m.appendChild(gA(3, 7, 4, "shadow"));
4995
- const f = R("g");
4996
- Q.appendChild(f), f.setAttribute("filter", "url(#shadow)"), f.innerHTML = A;
4997
+ const p = R("g"), m = R("defs");
4998
+ p.appendChild(m), m.appendChild(gA(3, 7, 4, "shadow"));
4999
+ const I = R("g");
5000
+ p.appendChild(I), I.setAttribute("filter", "url(#shadow)"), I.innerHTML = A;
4997
5001
  const F = R("g");
4998
- Q.appendChild(F), F.setAttribute("fill", "red"), F.setAttribute("stroke", "red"), F.setAttribute("stroke-width", "9"), F.innerHTML = A;
5002
+ p.appendChild(F), F.setAttribute("fill", "red"), F.setAttribute("stroke", "red"), F.setAttribute("stroke-width", "9"), F.innerHTML = A;
4999
5003
  const y = R("g");
5000
- Q.appendChild(y), y.setAttribute("fill", "#9d2621"), y.setAttribute("transform", "translate(1,1)"), y.innerHTML = A;
5004
+ p.appendChild(y), y.setAttribute("fill", "#9d2621"), y.setAttribute("transform", "translate(1,1)"), y.innerHTML = A;
5001
5005
  const Y = R("g");
5002
- return Q.appendChild(Y), Y.setAttribute("fill", "yellow"), Y.innerHTML = A, new dt(Q).transform(([N, H]) => [N, H + (n / 2 - N) ** 2 / (n * 2.9)]), Q;
5006
+ return p.appendChild(Y), Y.setAttribute("fill", "yellow"), Y.innerHTML = A, new dt(p).transform(([N, H]) => [N, H + (n / 2 - N) ** 2 / (n * 2.9)]), p;
5003
5007
  }, [o, r, g] = rA(t);
5004
5008
  if (!o)
5005
5009
  return "";
@@ -5007,14 +5011,14 @@ class $a extends gt {
5007
5011
  o.appendChild(B), cA(o, B, t);
5008
5012
  const l = r * 0.23, d = g * 0.94, w = g * 0.04, E = r * 0.53, h = R("g");
5009
5013
  o.appendChild(h), h.setAttribute("transform", `translate(${w} ${E}) rotate(-21)`);
5010
- const u = lt(l, d);
5011
- u.setAttribute("opacity", "0"), h.appendChild(u);
5012
- const C = R("g");
5013
- h.appendChild(C);
5014
- const I = s();
5015
- C.appendChild(I);
5016
- const p = st(i);
5017
- return Bt(C, p, l, d), lA(o.outerHTML);
5014
+ const C = lt(l, d);
5015
+ C.setAttribute("opacity", "0"), h.appendChild(C);
5016
+ const u = R("g");
5017
+ h.appendChild(u);
5018
+ const f = s();
5019
+ u.appendChild(f);
5020
+ const Q = st(i);
5021
+ return Bt(u, Q, l, d), lA(o.outerHTML);
5018
5022
  }
5019
5023
  }
5020
5024
  const _a = "data:application/octet-stream;base64,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ZWxmIE1ha2VyIDIuMy41AABNAGEAbAB0AGUAcwBlAHIAcwBSAGUAZwB1AGwAYQByAABNYWx0ZXNlcnNSZWd1bGFyAABNAGEAbAB0AGUAcwBlAHIAcwAATWFsdGVzZXJzAABSAGUAZwB1AGwAYQByAABSZWd1bGFyAAAAAAACAAAAAAAA/4MAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAKwAAAABAAIBAgEDAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQCsAQQBBQEGAQcBCAEJAQoBCwEMAQ0BDgEPARABEQESARMBFAEVARYBFwEYARkBGgEbARwBHQEeAR8BIAEhASIBIwEkASUBJgEnASgBKQEqASsBLAEtAS4BLwEwATEBMgEzATQBNQE2ATcBOAE5AToBOwE8AT0BPgE/AUABQQFCAUMBRAFFAUYBRwFIAUkBSgFLAUwBTQFOAU8BUAFRAVIBUwFUAVUBVgFXAVgBWQFaAVsBXAFdAV4BXwFgAWEBYgFjAWQBZQFmAWcBaAFpAWoBawFsAW0BbgFvAXABcQFyAXMBdAljb250cm9sTEYJY29udHJvbENSB0FwLmxpZ2EHQWoubGlnYQdFdC5saWdhB0VmLmxpZ2EHRWoubGlnYQdFay5saWdhB0VsLmxpZ2EHRWIubGlnYQdGdC5saWdhB0ZoLmxpZ2EHRmsubGlnYQdGbC5saWdhB0ZiLmxpZ2EHSHQubGlnYQdIZi5saWdhB0l0LmxpZ2EHSXAubGlnYQdJZi5saWdhB0lqLmxpZ2EHSWwubGlnYQdJYi5saWdhB0p0LmxpZ2EHSmYubGlnYQdKaC5saWdhB0prLmxpZ2EHSmwubGlnYQdKYi5saWdhB0t0LmxpZ2EHS3AubGlnYQdLeS5saWdhB0xqLmxpZ2EHTWoubGlnYQdNaC5saWdhB01mLmxpZ2EHTnQubGlnYQdOZi5saWdhB09mLmxpZ2EHT3oubGlnYQdQcS5saWdhB1B3LmxpZ2EHUHIubGlnYQdQdC5saWdhB1B5LmxpZ2EHUHUubGlnYQdQaS5saWdhB1BmLmxpZ2EHUGgubGlnYQdQai5saWdhB1BrLmxpZ2EHUGwubGlnYQdQei5saWdhB1B4LmxpZ2EHUHYubGlnYQdQYi5saWdhB1BuLmxpZ2EHUG0ubGlnYQdScC5saWdhB1JmLmxpZ2EHUmoubGlnYQdUdC5saWdhB1RmLmxpZ2EHVGgubGlnYQdUay5saWdhB1RsLmxpZ2EHVGIubGlnYQdVdC5saWdhB1VzLmxpZ2EHVWYubGlnYQdWdC5saWdhB1ZzLmxpZ2EHVmYubGlnYQdWbC5saWdhB1d0LmxpZ2EHV2YubGlnYQdYcC5saWdhB1l0LmxpZ2EHWWkubGlnYQdZZi5saWdhB1loLmxpZ2EHWWwubGlnYQdZay5saWdhB1liLmxpZ2EHQWYubGlnYQdDeS5saWdhB0VoLmxpZ2EHR3IubGlnYQdPcC5saWdhB2J0LmxpZ2EHYnIubGlnYQdiZi5saWdhB2JqLmxpZ2EHYnoubGlnYQdkdC5saWdhB2VmLmxpZ2EHZnQubGlnYQdmaC5saWdhB2ZiLmxpZ2EHZmsubGlnYQdnai5saWdhB2pqLmxpZ2EHeWoubGlnYQd0dC5saWdhB3RmLmxpZ2EHdGgubGlnYQd0aS5saWdhB3RrLmxpZ2EHdGwubGlnYQh0dGgubGlnYQhlZmYubGlnYQhlZmIubGlnYQdmZi5saWdhB2ZpLmxpZ2EHZmwubGlnYQAAAAAAAAH//wACAAEAAAAMAAAAHAAAAAIAAgADADoAAQA7AKsAAgAEAAAAAgAAAAEAAAAKAB4ALAABbGF0bgAIAAQAAAAA//8AAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQQIAB0AQABaAGQAngDIANIA5AEWAUgBYgFsAYYBmAGyAkQCXgKQAqoCzALeAugDIgNMA1YDdAOuA7gDwgP+AAMACAAOABQAjQACACUAPAACACkAOwACAC8AAQAEAI4AAgA4AAcAEAAWABwAIgAoAC4ANACPAAIAJwBCAAIAIQBBAAIAKwBAAAIAKgA/AAIAKQA+AAIAJQA9AAIAMwAFAAwAEgAYAB4AJABHAAIAIQBGAAIAKwBFAAIAKgBEAAIAJwBDAAIAMwABAAQAkAACADEAAgAGAAwASQACACUASAACADMABgAOABQAGgAgACYALABPAAIAIQBOAAIAKwBNAAIAKQBMAAIAJQBLAAIALwBKAAIAMwAGAA4AFAAaACAAJgAsAFUAAgAhAFQAAgArAFMAAgAqAFIAAgAnAFEAAgAlAFAAAgAzAAMACAAOABQAWAACADgAVwACAC8AVgACADMAAQAEAFkAAgApAAMACAAOABQAXAACACUAWwACACcAWgACACkAAgAGAAwAXgACACUAXQACADMAAwAIAA4AFACRAAIALwBgAAIAOQBfAAIAJQASACYALAAyADgAPgBEAEoAUABWAFwAYgBoAG4AdAB6AIAAhgCMAHIAAgAsAHEAAgAtAHAAAgAhAG8AAgA1AG4AAgA3AG0AAgA5AGwAAgArAGsAAgAqAGoAAgApAGkAAgAnAGgAAgAlAGcAAgAoAGYAAgA0AGUAAgA4AGQAAgAzAGMAAgAxAGIAAgA2AGEAAgAwAAMACAAOABQAdQACACkAdAACACUAcwACAC8ABgAOABQAGgAgACYALAB7AAIAIQB6AAIAKwB5AAIAKgB4AAIAJwB3AAIAJQB2AAIAMwADAAgADgAUAH4AAgAlAH0AAgAyAHwAAgAzAAQACgAQABYAHACCAAIAKwCBAAIAJQCAAAIAMgB/AAIAMwACAAYADACEAAIAJQCDAAIAMwABAAQAhQACAC8ABwAQABYAHAAiACgALgA0AIwAAgAhAIsAAgAqAIoAAgArAIkAAgAnAIgAAgAlAIcAAgAoAIYAAgAzAAUADAASABgAHgAkAJYAAgA5AJUAAgApAJQAAgAlAJMAAgAxAJIAAgAzAAEABACXAAIAMwADAAgAEAAYAKgAAwAlACEApwADACUAJQCYAAIAJQAHABAAFgAcACIAKAAuADQAqwACACsAqgACACgAqQACACUAnAACACoAmwACACEAmgACACcAmQACADMAAQAEAJ0AAgApAAEABACeAAIAKQAHABAAGAAeACQAKgAwADYApgADADMAJwClAAIAKwCkAAIAKgCjAAIAKACiAAIAJwChAAIAJQCgAAIAMwABAAQAnwACACkAAQAdAAYACAAKAAsADAANAA4ADwAQABEAEgATABQAFQAXABkAGgAbABwAHQAeACEAIwAkACUAJgApADMAOAAAAAEAAAAKAB4ALAABbGF0bgAIAAQAAAAA//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQPGAAQAAABEAJIAnADSAOABIgEoATYBPAFKAVABXgFkAW4BfAGKAawBsgHAAcYB1AHiAewB/gIIAhYCSAJiAnAChgKcAqoCvALKAtAC6gL0AvoDAAMKAxADGgMgAyYDLAMyAzgDOAMyAz4DRANOAz4DVANaA2ADIANmA2wDcgN4A34DiAOOA5gDngOkA7IDvAACAC7//AA3//IADQAl/+oAKP/8ACn/9AAq//AAK//6ACz//gAt//4AMf/qADP//AA0//wANf/+ADb/+AA5//QAAwAt//wALv/8ADb//AAQACT//AAl/+wAJv/6ACf//AAp/+wAKv/0ACv/+gAs//gALf/8AC//7gAx//gAMv/0ADT/9gA3/+oAOP/6ADn/5AABADf/+gADADX//AA3/+gAOf/6AAEALv/2AAMAKP/8ACn/6AAy/+QAAQAu//IAAwAo/+4AL//2ADX/5gABACT/8AACABgAAgAoAAQAAwAo//4ALv/wADL/+AADACf/9gAv/+4Ao//sAAgAKf/qACv/9AAu//wAL//uADH/7gAy//IAN//mAJX/9AABADYADgADACAABAAjAAQAM//4AAEAMv/8AAMAJv/+ACr/+AA3//4AAwAo//gALv/0AJn/7AACACMAAgAl/+wABAAk//wAL//8ADT/9AA4//4AAgAt//IAq//iAAMAJf/sACb/+AA3//wADAAk//wAJv/+ACj/+gAp/+AAK//+ACz/9gAt//wAL//qADH/7AAy//IAN//cAKP/4gAGACQAAgAl/9oAK//yAC//4gAx/+gAMv/8AAMAKQB+ADL/7ACeAIgABQAg//wAIv/4ACb//AAu//YANQAEAAUAKf/0ACr/+AAv//QAM//mAKP/3gADACEAHAAkAAIALv/4AAQAJf/0AC3//gAv//wAmf/8AAMAJP/wACf/+AAp/+4AAQAk//oABgAg//QAIf/wACj/9gAu/+wAL//0ADP/9AACACH//gA3//IAAQApAEIAAQAnACgAAgAzADQAqgAoAAEAMwA0AAIAMwAyAKEARgABADL/6gABADMALAABACkANAABAJoAGAABADMAMgABACkAOAABADMAMAACACUAEgAzAC4AAQApAHgAAQApADYAAQAzAC4AAQAzADgAAQAzAEIAAQAzAEwAAQAz//IAAQAnAEgAAgAl/+4Amv/oAAEAKQBiAAIAKQBaAJ4AUAABACkAVgABAKEARAADADMANgCaABIAogBKAAIAJwAsAKEARgACAC3/8gA3/+oAAQBEAAYABwAIAAkACgAMABEAFAAVABgAHQAgACEAIgAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOQA8AD0APgBIAEkASwBMAE0AUABRAFkAWgBcAF4AXwBhAGgAagB+AIEAhACIAI0AkQCYAJoAnQCeAJ8AoAChAKkAqgAAAAAAAQAAAADUGBYRAAAAANfpcqUAAAAA1+lypQ==";
@@ -5034,34 +5038,34 @@ class en extends gt {
5034
5038
  }
5035
5039
  brandSvg(e, t, A) {
5036
5040
  const a = e.toSVG(2), n = e.getBoundingBox(), i = n.y2 - n.y1, s = n.x2 - n.x1, o = e.toPathData(3), r = () => {
5037
- const f = R("g"), F = R("g");
5038
- f.appendChild(F), F.setAttribute("stroke", "#5C1A0D"), F.setAttribute("stroke-width", "4"), F.setAttribute("transform", "translate(1,1)"), F.innerHTML = a;
5041
+ const I = R("g"), F = R("g");
5042
+ I.appendChild(F), F.setAttribute("stroke", "#5C1A0D"), F.setAttribute("stroke-width", "4"), F.setAttribute("transform", "translate(1,1)"), F.innerHTML = a;
5039
5043
  const y = R("g");
5040
- f.appendChild(y), y.setAttribute("fill", "#FFE386"), y.setAttribute("transform", "translate(1,1)"), y.innerHTML = a;
5044
+ I.appendChild(y), y.setAttribute("fill", "#FFE386"), y.setAttribute("transform", "translate(1,1)"), y.innerHTML = a;
5041
5045
  const Y = R("g");
5042
- f.appendChild(Y), Y.setAttribute("fill", "white"), Y.innerHTML = a;
5043
- const S = new dt(f);
5046
+ I.appendChild(Y), Y.setAttribute("fill", "white"), Y.innerHTML = a;
5047
+ const S = new dt(I);
5044
5048
  return S.transform(([N, H]) => [N, H + ((s - N) * H) ** 2 / (s * 5e4)]), S.transform(([N, H]) => [
5045
5049
  N,
5046
5050
  H + (s / 3 - N) ** 2 / s * this.indicator(N < s / 3)
5047
- ]), S.transform(([N, H]) => [N - (i - H) * (s - N) / 800, H]), f;
5051
+ ]), S.transform(([N, H]) => [N - (i - H) * (s - N) / 800, H]), I;
5048
5052
  }, [g, B, l] = rA(t);
5049
5053
  if (!g)
5050
5054
  return "";
5051
5055
  const d = R("defs");
5052
5056
  g.appendChild(d), cA(g, d, t);
5053
- let w, E, h, u;
5054
- A ? (w = B * 0.25 * (1 + 0.1), E = l / 2 * (1 + 0.1), h = l * 0.22, u = B * 0.32) : (w = B * 0.22 * (1 + 0.1), E = l * 0.8, h = l * 0.067, u = B * 0.33);
5055
- const C = R("g");
5056
- g.appendChild(C), C.setAttribute("transform", `translate(${h} ${u}) rotate(-10)`);
5057
- const I = lt(w, E);
5058
- I.setAttribute("opacity", "0"), C.appendChild(I);
5059
- const p = R("g");
5060
- C.appendChild(p);
5061
- const Q = r();
5062
- p.appendChild(Q);
5057
+ let w, E, h, C;
5058
+ A ? (w = B * 0.25 * (1 + 0.1), E = l / 2 * (1 + 0.1), h = l * 0.22, C = B * 0.32) : (w = B * 0.22 * (1 + 0.1), E = l * 0.8, h = l * 0.067, C = B * 0.33);
5059
+ const u = R("g");
5060
+ g.appendChild(u), u.setAttribute("transform", `translate(${h} ${C}) rotate(-10)`);
5061
+ const f = lt(w, E);
5062
+ f.setAttribute("opacity", "0"), u.appendChild(f);
5063
+ const Q = R("g");
5064
+ u.appendChild(Q);
5065
+ const p = r();
5066
+ Q.appendChild(p);
5063
5067
  const m = st(o);
5064
- return Bt(p, m, w, E), g.outerHTML;
5068
+ return Bt(Q, m, w, E), g.outerHTML;
5065
5069
  }
5066
5070
  // 1 if true, 0 if false.
5067
5071
  }
@@ -5077,21 +5081,21 @@ class An extends gt {
5077
5081
  return this.svgElement(e, t);
5078
5082
  }
5079
5083
  svgElement(e, t) {
5080
- const A = it(tn), n = e !== "" ? ((I) => I.charAt(0).toUpperCase() + I.substr(1).toLowerCase())(e) : "", i = A.getPath(n, 0, 72, 72), s = i.toSVG(2), o = i.getBoundingBox(), r = o.x2 - o.x1, g = i.toPathData(3), B = () => {
5081
- const I = R("g");
5082
- I.classList.add("module-text-group");
5083
- const p = R("defs");
5084
- I.appendChild(p), p.appendChild(gA(0, 2, 2, "shadow"));
5085
- const Q = R("path");
5086
- Q.setAttribute("d", g), Q.setAttribute("stroke", "black"), Q.setAttribute("stroke-width", "3"), p.appendChild(Q);
5087
- const m = R("g");
5088
- m.classList.add("module-layer0"), I.appendChild(m), m.setAttribute("filter", "url(#shadow)"), m.innerHTML = Q.outerHTML;
5084
+ const A = it(tn), n = e !== "" ? ((f) => f.charAt(0).toUpperCase() + f.substr(1).toLowerCase())(e) : "", i = A.getPath(n, 0, 72, 72), s = i.toSVG(2), o = i.getBoundingBox(), r = o.x2 - o.x1, g = i.toPathData(3), B = () => {
5089
5085
  const f = R("g");
5090
- f.classList.add("module-layer1"), I.appendChild(f), f.setAttribute("stroke-width", "3"), f.setAttribute("stroke", "rgb(45,41,38)"), f.setAttribute("fill", "rgb(45,41,38)"), f.setAttribute("transform", "translate(0.5,0)"), f.innerHTML = s;
5086
+ f.classList.add("module-text-group");
5087
+ const Q = R("defs");
5088
+ f.appendChild(Q), Q.appendChild(gA(0, 2, 2, "shadow"));
5089
+ const p = R("path");
5090
+ p.setAttribute("d", g), p.setAttribute("stroke", "black"), p.setAttribute("stroke-width", "3"), Q.appendChild(p);
5091
+ const m = R("g");
5092
+ m.classList.add("module-layer0"), f.appendChild(m), m.setAttribute("filter", "url(#shadow)"), m.innerHTML = p.outerHTML;
5093
+ const I = R("g");
5094
+ I.classList.add("module-layer1"), f.appendChild(I), I.setAttribute("stroke-width", "3"), I.setAttribute("stroke", "rgb(45,41,38)"), I.setAttribute("fill", "rgb(45,41,38)"), I.setAttribute("transform", "translate(0.5,0)"), I.innerHTML = s;
5091
5095
  const F = R("g");
5092
- F.classList.add("module-layer2"), I.appendChild(F), F.setAttribute("fill", "rgb(255,209,0)"), F.setAttribute("transform", "translate(1,-0.1)"), F.innerHTML = s;
5096
+ F.classList.add("module-layer2"), f.appendChild(F), F.setAttribute("fill", "rgb(255,209,0)"), F.setAttribute("transform", "translate(1,-0.1)"), F.innerHTML = s;
5093
5097
  const y = R("g");
5094
- return y.classList.add("module-layer3"), I.appendChild(y), y.setAttribute("fill", "white"), y.innerHTML = s, new dt(I).transform(([S, N]) => [S, N + (r / 2 - S) ** 2 / (r * 6)]), I;
5098
+ return y.classList.add("module-layer3"), f.appendChild(y), y.setAttribute("fill", "white"), y.innerHTML = s, new dt(f).transform(([S, N]) => [S, N + (r / 2 - S) ** 2 / (r * 6)]), f;
5095
5099
  }, l = R("g");
5096
5100
  l.classList.add("module-root");
5097
5101
  const d = R("defs");
@@ -5102,10 +5106,10 @@ class An extends gt {
5102
5106
  E.setAttribute("opacity", "0"), w.appendChild(E);
5103
5107
  const h = R("g");
5104
5108
  h.classList.add("module-text-enclosure"), l.appendChild(h);
5105
- const u = B();
5106
- h.appendChild(u);
5107
- const C = st(g);
5108
- return Bt(h, C, t.height, t.width, 0.35, 0.65), lA(l.outerHTML);
5109
+ const C = B();
5110
+ h.appendChild(C);
5111
+ const u = st(g);
5112
+ return Bt(h, u, t.height, t.width, 0.35, 0.65), lA(l.outerHTML);
5109
5113
  }
5110
5114
  }
5111
5115
  async function BA(c) {
@@ -5136,17 +5140,17 @@ class Pt extends tA {
5136
5140
  class nn {
5137
5141
  constructor(e, t, A, a, n, i, s, o, r, g, B, l = !1, d, w = !1, E = !1, h = !1) {
5138
5142
  this.workflowStatePromiseQueue = new AA(1), this.initialized = !1, this.readOnly = !1, this.isReloadedTransaction = !1, this.singleVariantsRenderable = !1, this.renderLayouts = () => {
5139
- var I;
5143
+ var f;
5140
5144
  if (!this.previewService)
5141
5145
  return;
5142
- const u = this.getCommandContext().getAllLayouts(), C = (I = this.getLayoutPreviewService()) == null ? void 0 : I.getAll();
5143
- if (C)
5144
- for (const [, p] of C)
5145
- p.render(this.getWorkflow(), u, this.getProduct().overlayImageUrl);
5146
+ const C = this.getCommandContext().getAllLayouts(), u = (f = this.getLayoutPreviewService()) == null ? void 0 : f.getAll();
5147
+ if (u)
5148
+ for (const [, Q] of u)
5149
+ Q.render(this.getWorkflow(), C, this.getProduct().overlayImageUrl);
5146
5150
  }, this.client = e, this.updateTransaction = i, this.commandContext = n, this.reloadedState = B, this.transaction = s, this.readOnly = l, this.singleVariantsRenderable = E, this.confirmedDesign = !1, this.editedSteps = {}, this.informationResults = [], this.mandatorySteps = {}, this.pendingUpdates = [], this.selectionCost = 0, this.workflow = t, this.stepSpecificServices = {}, this.profanityFilter = A, this.pollers = [], this.allScenes = [], this.layouts = a, this.product = o, this.previewService = r, this.modelContainer = d, this.stepElements = {}, this.stepInitialised = {}, this.stepMetadata = {}, this.stepSelections = {}, this.storage = {}, this.confirmCallbacks = [], this.editedCallbacks = [], this.elementsCallbacks = [], this.informationResultCallbacks = [], this.initCallbacks = [], this.mandatoryCallbacks = [], this.makingAdjustmentsCallback = [], this.metadataCallbacks = [], this.selectionCallbacks = [], this.stepSpecificStorageCallbacks = {}, this.storageCallbacks = [], this.currentAdjustingStepId = "", this.renderableContextService = g, this.isReloadedTransaction = w, h && (this.workflowStatePromiseQueue.enabled = !1), this.initializationPromise = this.initializeDefaultWorkflowState(t), this.initializationPromise.then(() => {
5147
5151
  this.initialized = !0;
5148
- }), this.initializationPromise.catch((u) => {
5149
- throw console.error(u), this.initialized = !1, new Error("Workflow initialization failed due to an error. See console.");
5152
+ }), this.initializationPromise.catch((C) => {
5153
+ throw console.error(C), this.initialized = !1, new Error("Workflow initialization failed due to an error. See console.");
5150
5154
  }), this.initializationPromise.finally(
5151
5155
  () => this.getCommandContext().registerStateCallback(() => {
5152
5156
  this.updateStateWithServer(), this.renderLayouts();
@@ -5340,50 +5344,44 @@ class nn {
5340
5344
  },
5341
5345
  { refocusCamera: t }
5342
5346
  );
5343
- this.setModelContainer(A), ie(this.allScenes, this.stepSelections).filter((i) => i).map((i) => i.renderableSteps).flat().filter((i) => i.type === M.Model || i.type === M.Material).forEach((i) => {
5344
- var r, g, B;
5345
- if (!((r = i.option) != null && r.id)) {
5346
- console.error(`Failed to read option id from step: ${i.stepName}`);
5347
- return;
5348
- }
5349
- const s = ((g = this.stepSelections[i.stepName]) == null ? void 0 : g.selectedVariants) || [];
5350
- if (s.length === 0)
5351
- return;
5352
- const o = s[0];
5353
- if (i.type === M.Model) {
5347
+ this.setModelContainer(A);
5348
+ const i = ie(this.allScenes, this.stepSelections).filter((s) => s).map((s) => s.renderableSteps).flat().filter((s) => s.type === M.Model || s.type === M.Material).map((s) => {
5349
+ var g, B, l;
5350
+ if (!((g = s.option) != null && g.id))
5351
+ return console.error(`Failed to read option id from step: ${s.stepName}`), [];
5352
+ const o = ((B = this.stepSelections[s.stepName]) == null ? void 0 : B.selectedVariants) || [];
5353
+ if (o.length === 0)
5354
+ return [];
5355
+ const r = o[0];
5356
+ if (s.type === M.Model) {
5354
5357
  if (!this.modelContainer)
5355
5358
  throw new b(
5356
5359
  "We should always have a model container when injecting a preview!"
5357
5360
  );
5358
- const l = (B = o.asset) == null ? void 0 : B.fileLink;
5359
- if (!l) {
5360
- console.error(`Failed to read model url from variant: ${o.id} for step: ${i.stepName}`);
5361
- return;
5362
- }
5363
- const d = i.data;
5364
- this.modelContainer.applyModelVariant(
5365
- i.stepName,
5361
+ const d = (l = r.asset) == null ? void 0 : l.fileLink;
5362
+ if (!d)
5363
+ return console.error(`Failed to read model url from variant: ${r.id} for step: ${s.stepName}`), [];
5364
+ const w = s.data;
5365
+ return this.modelContainer.applyModelVariant(
5366
+ s.stepName,
5366
5367
  {
5367
- model: l,
5368
+ model: d,
5368
5369
  contextService: this.getLayoutPreviewService()
5369
5370
  },
5370
- d.replaceProductModel || !1
5371
+ w.replaceProductModel || !1
5371
5372
  );
5372
5373
  } else {
5373
- const l = o.material;
5374
- if (!l) {
5375
- console.error(`Failed to read material from variant: ${o.id} for step: ${i.stepName}`);
5376
- return;
5377
- }
5378
- i.data.targetMaterials.forEach((w) => {
5374
+ const d = r.material;
5375
+ return d ? s.data.targetMaterials.map((h) => {
5379
5376
  if (!this.modelContainer)
5380
5377
  throw new b(
5381
5378
  "We should always have a model container when injecting a preview!"
5382
5379
  );
5383
- this.modelContainer.applyMaterialVariant(w, i.option.id, l);
5384
- });
5380
+ return this.modelContainer.applyMaterialVariant(h, s.option.id, d);
5381
+ }) : (console.error(`Failed to read material from variant: ${r.id} for step: ${s.stepName}`), []);
5385
5382
  }
5386
- }), await A.getInitializationPromise(), this.renderLayouts();
5383
+ });
5384
+ await A.getInitializationPromise(), await Promise.all(i), this.renderLayouts();
5387
5385
  }
5388
5386
  ejectFromPreviewService() {
5389
5387
  if (this.modelContainer) {
@@ -5539,16 +5537,16 @@ class nn {
5539
5537
  ), this.stepElements = {}, this.stepInitialised = {}, this.stepMetadata = {}, this.stepSelections = {}, this.storage = {}, await this.ensureStepsAreLoaded();
5540
5538
  }
5541
5539
  async setSelectionsAndElements(e, t, A, a) {
5542
- var Q;
5540
+ var p;
5543
5541
  const n = this.stepSelections;
5544
5542
  this.stepSelections = {
5545
5543
  ...this.stepSelections,
5546
5544
  [e]: { selectedVariants: t }
5547
- }, this.selectionCost = Object.values(this.stepSelections).reduce((m, f) => m + f.selectedVariants.map((F) => F.priceModifier || 0).reduce((F, y) => F + y, 0), 0), this.workflow.steps.forEach((m) => {
5545
+ }, this.selectionCost = Object.values(this.stepSelections).reduce((m, I) => m + I.selectedVariants.map((F) => F.priceModifier || 0).reduce((F, y) => F + y, 0), 0), this.workflow.steps.forEach((m) => {
5548
5546
  se(m, this.stepSelections) || (this.stepInitialised[m.stepName] = !1, delete this.stepMetadata[m.stepName], delete this.stepSelections[m.stepName], delete this.storage[m.stepName]);
5549
5547
  });
5550
5548
  const i = this.allScenes, s = ie(i, n), o = ie(i, this.stepSelections), r = s.map((m) => m.silentSteps).flat(), B = o.map((m) => m.silentSteps).flat().filter(
5551
- (m) => !r.some((f) => f.stepName === m.stepName)
5549
+ (m) => !r.some((I) => I.stepName === m.stepName)
5552
5550
  );
5553
5551
  r.forEach((m) => {
5554
5552
  se(m, this.stepSelections) || (this.stepInitialised[m.stepName] = !1);
@@ -5562,15 +5560,15 @@ class nn {
5562
5560
  const E = this.workflow.steps.find((m) => m.stepName === e);
5563
5561
  if ((E == null ? void 0 : E.type) === M.Frame) {
5564
5562
  const m = this.getStepSpecificServices(e);
5565
- (Q = m == null ? void 0 : m.frameService) == null || Q.setTargetElements(A.map((f) => f.id));
5566
- }
5567
- const h = l.map((m) => new ee(m.id)), u = new pt(this.constructSerializableWorkflow()), C = [...w, ...h, u];
5568
- C.length > 0 && this.commandContext.apply(new G(C), !0), await this.ensureStepsAreLoaded(), this.onElementsChange();
5569
- const I = this.getInvalidModelVariants(), p = this.modelContainer;
5570
- if (p) {
5571
- const m = I.map(
5572
- (f) => p.applyModelVariant(
5573
- f,
5563
+ (p = m == null ? void 0 : m.frameService) == null || p.setTargetElements(A.map((I) => I.id));
5564
+ }
5565
+ const h = l.map((m) => new ee(m.id)), C = new pt(this.constructSerializableWorkflow()), u = [...w, ...h, C];
5566
+ u.length > 0 && this.commandContext.apply(new G(u), !0), await this.ensureStepsAreLoaded(), this.onElementsChange();
5567
+ const f = this.getInvalidModelVariants(), Q = this.modelContainer;
5568
+ if (Q) {
5569
+ const m = f.map(
5570
+ (I) => Q.applyModelVariant(
5571
+ I,
5574
5572
  {
5575
5573
  contextService: this.getLayoutPreviewService()
5576
5574
  },
@@ -6528,7 +6526,7 @@ const En = async (c) => {
6528
6526
  N.errors && console.log("Server Error:", L.message);
6529
6527
  }), null) : H ?? null;
6530
6528
  })() || (console.warn("State mismatch detected. Uploading known state explicitly"), console.warn("State Object:", JSON.stringify(A())), await c.updateStateWithServerImmediate(A), console.log("Server state is undefined @ Workflow completion"));
6531
- const l = c.getPreviewService(), d = (F = e == null ? void 0 : e.finalizeStepConfig) == null ? void 0 : F.lookAtAnimation, w = l && e.showModelOnFinishStep && !!d, E = o && et(o, e, !0), h = o && et(o, e, !1), u = async (y) => {
6529
+ const l = c.getPreviewService(), d = (F = e == null ? void 0 : e.finalizeStepConfig) == null ? void 0 : F.lookAtAnimation, w = l && e.showModelOnFinishStep && !!d, E = o && et(o, e, !0), h = o && et(o, e, !1), C = async (y) => {
6532
6530
  const Y = {};
6533
6531
  let S = 0;
6534
6532
  if (Object.keys(n).length > 0)
@@ -6554,12 +6552,12 @@ const En = async (c) => {
6554
6552
  }
6555
6553
  }
6556
6554
  return [Y, S];
6557
- }, [C] = await u(!0), I = Object.fromEntries(
6558
- Object.keys(C).map((y) => [y, C[y].map((Y) => Y.id)])
6559
- ), [p] = await u(!1), Q = Object.fromEntries(
6560
- Object.keys(p).map((y) => [
6555
+ }, [u] = await C(!0), f = Object.fromEntries(
6556
+ Object.keys(u).map((y) => [y, u[y].map((Y) => Y.id)])
6557
+ ), [Q] = await C(!1), p = Object.fromEntries(
6558
+ Object.keys(Q).map((y) => [
6561
6559
  y,
6562
- p[y].map((Y) => Y.id)
6560
+ Q[y].map((Y) => Y.id)
6563
6561
  ])
6564
6562
  );
6565
6563
  let m = await s(w, a.id);
@@ -6591,19 +6589,19 @@ const En = async (c) => {
6591
6589
  Y.push({ key: S, value: N });
6592
6590
  y.metadata = Y;
6593
6591
  }
6594
- if (I) {
6592
+ if (f) {
6595
6593
  const Y = [];
6596
- for (const [S, N] of Object.entries(Q))
6594
+ for (const [S, N] of Object.entries(p))
6597
6595
  Y.push({ key: S, ids: N });
6598
6596
  y.selectedVariants = Y;
6599
6597
  }
6600
6598
  return y;
6601
6599
  })(),
6602
- cartSelectionsWithPrices: C,
6600
+ cartSelectionsWithPrices: u,
6603
6601
  cartMetadata: E
6604
6602
  };
6605
6603
  }, Qn = async (c, e, t, A, a, n, i, s, o, r, g) => {
6606
- var u, C;
6604
+ var C, u;
6607
6605
  o("workflow.steps.finish.finalize.buildingLayouts");
6608
6606
  const { designDetails: B, cartSelectionsWithPrices: l, cartMetadata: d } = await EA(
6609
6607
  c,
@@ -6617,7 +6615,7 @@ const En = async (c) => {
6617
6615
  g
6618
6616
  );
6619
6617
  o("workflow.steps.finish.finalize.creatingDesign");
6620
- const w = await En(B), E = (u = w == null ? void 0 : w.transaction) == null ? void 0 : u.previewImageLink;
6618
+ const w = await En(B), E = (C = w == null ? void 0 : w.transaction) == null ? void 0 : C.previewImageLink;
6621
6619
  if (!(w != null && w.transaction))
6622
6620
  throw new Error("Failed to create design");
6623
6621
  o("workflow.steps.finish.finalize.updatingTransaction");
@@ -6630,7 +6628,7 @@ const En = async (c) => {
6630
6628
  w == null ? void 0 : w.sku,
6631
6629
  d,
6632
6630
  E,
6633
- (C = w == null ? void 0 : w.processExecution) == null ? void 0 : C.id
6631
+ (u = w == null ? void 0 : w.processExecution) == null ? void 0 : u.id
6634
6632
  );
6635
6633
  }, mn = async (c, e, t) => {
6636
6634
  e("workflow.steps.finish.finalize.buildingLayouts"), await Promise.all(
@@ -6844,18 +6842,18 @@ class fe {
6844
6842
  return this.workflowManager;
6845
6843
  }
6846
6844
  async createPreviewImage(e, t) {
6847
- var C, I;
6848
- const A = this.workflowManager.getWorkflow(), a = (C = A == null ? void 0 : A.finalizeStepConfig) == null ? void 0 : C.lookAtAnimation;
6845
+ var u, f;
6846
+ const A = this.workflowManager.getWorkflow(), a = (u = A == null ? void 0 : A.finalizeStepConfig) == null ? void 0 : u.lookAtAnimation;
6849
6847
  if (e) {
6850
6848
  if (!a)
6851
6849
  throw new Error("Failed to generate cart preview image!");
6852
- return await ((I = this.workflowManager.getPreviewService()) == null ? void 0 : I.renderSceneScreenshot(t ?? 512, a)) || "";
6850
+ return await ((f = this.workflowManager.getPreviewService()) == null ? void 0 : f.renderSceneScreenshot(t ?? 512, a)) || "";
6853
6851
  }
6854
6852
  let n = 2048;
6855
6853
  t && t <= 2048 && (n = t);
6856
- const i = Ne(n, n), s = this.commandContext.getAllLayouts(), o = A.defaultPreviewPanelIndex || 0, r = A.panels[o], g = s.find((p) => {
6857
- var Q;
6858
- return ((Q = p.layoutState) == null ? void 0 : Q.layout.panelId) === (r == null ? void 0 : r.name);
6854
+ const i = Ne(n, n), s = this.commandContext.getAllLayouts(), o = A.defaultPreviewPanelIndex || 0, r = A.panels[o], g = s.find((Q) => {
6855
+ var p;
6856
+ return ((p = Q.layoutState) == null ? void 0 : p.layout.panelId) === (r == null ? void 0 : r.name);
6859
6857
  }) || s[0], B = g.layoutState.layout.previewRegion ? {
6860
6858
  x: g.layoutState.layout.previewRegion.left,
6861
6859
  y: g.layoutState.layout.previewRegion.top,
@@ -6883,8 +6881,8 @@ class fe {
6883
6881
  DOMParser: Jt(),
6884
6882
  fetch: tt
6885
6883
  })).render();
6886
- const u = await this.getCanvasObjectURLAsync(i);
6887
- return i.toDataURL(u);
6884
+ const C = await this.getCanvasObjectURLAsync(i);
6885
+ return i.toDataURL(C);
6888
6886
  }
6889
6887
  getStepById(e) {
6890
6888
  const t = this.getWorkflowManager().getWorkflow().steps.find((n) => n.stepName === e);
@@ -6975,13 +6973,13 @@ class fe {
6975
6973
  d !== void 0 && d.forEach((w) => {
6976
6974
  const E = o(w), h = g.has(JSON.stringify(w));
6977
6975
  if (h && (E == null ? void 0 : E.getType()) === "Option") {
6978
- const u = l.getCurrentVariant();
6979
- if (!u)
6976
+ const C = l.getCurrentVariant();
6977
+ if (!C)
6980
6978
  return;
6981
- r.selectVariant(u), g.delete(JSON.stringify(w));
6979
+ r.selectVariant(C), g.delete(JSON.stringify(w));
6982
6980
  } else if (h && (E == null ? void 0 : E.getType()) === "Text") {
6983
- const u = l.getText();
6984
- r.setText(u), g.delete(JSON.stringify(w));
6981
+ const C = l.getText();
6982
+ r.setText(C), g.delete(JSON.stringify(w));
6985
6983
  }
6986
6984
  });
6987
6985
  }));
@@ -7241,11 +7239,11 @@ const Dn = [
7241
7239
  return console.error(s), [];
7242
7240
  }
7243
7241
  }, Mn = async (c, e, t, A) => {
7244
- var Q, m;
7242
+ var p, m;
7245
7243
  const a = t.data, n = A.option;
7246
7244
  if (!n)
7247
7245
  return console.error(`No option for step ${A.stepName}.`), [];
7248
- const i = ((Q = n.variants) == null ? void 0 : Q.find((f) => f.id === a.illustrationVariantId)) || be(n);
7246
+ const i = ((p = n.variants) == null ? void 0 : p.find((I) => I.id === a.illustrationVariantId)) || be(n);
7249
7247
  if (!i)
7250
7248
  return console.error(`No variant with ID: ${a.illustrationVariantId}`), [];
7251
7249
  if (!i.asset)
@@ -7259,55 +7257,55 @@ const Dn = [
7259
7257
  return console.error("Failed to read SVG."), [];
7260
7258
  Tt(w);
7261
7259
  const E = {};
7262
- LA(w, (f) => {
7263
- Dn.includes(f.tagName) && !f.attributes.getNamedItem("fill") && f.setAttribute("fill", "#000000");
7264
- const F = f.attributes.getNamedItem("fill");
7260
+ LA(w, (I) => {
7261
+ Dn.includes(I.tagName) && !I.attributes.getNamedItem("fill") && I.setAttribute("fill", "#000000");
7262
+ const F = I.attributes.getNamedItem("fill");
7265
7263
  if (F && F.value !== "none") {
7266
7264
  const Y = F.value, N = `spiff-fill-${Y.replace(/\W/g, "")}`;
7267
- f.classList.add(N), E[N] = { browserValue: Y };
7265
+ I.classList.add(N), E[N] = { browserValue: Y };
7268
7266
  }
7269
- const y = f.attributes.getNamedItem("stroke");
7267
+ const y = I.attributes.getNamedItem("stroke");
7270
7268
  if (y && y.value !== "none") {
7271
7269
  const Y = y.value, N = `spiff-stroke-${Y.replace(/\W/g, "")}`;
7272
- f.classList.add(N), E[N] = { browserValue: Y };
7270
+ I.classList.add(N), E[N] = { browserValue: Y };
7273
7271
  }
7274
7272
  });
7275
- const u = Ot().serializeToString(w), C = a.colors;
7276
- if (C) {
7277
- for (const [f, F] of Object.entries(E))
7278
- for (const y of Object.keys(C))
7273
+ const C = Ot().serializeToString(w), u = a.colors;
7274
+ if (u) {
7275
+ for (const [I, F] of Object.entries(E))
7276
+ for (const y of Object.keys(u))
7279
7277
  if (F.browserValue === y) {
7280
- E[f] = { browserValue: C[y] };
7278
+ E[I] = { browserValue: u[y] };
7281
7279
  break;
7282
7280
  }
7283
7281
  }
7284
- const I = (f) => {
7285
- const F = c.find((Y) => Y.panelId === f.panelId);
7282
+ const f = (I) => {
7283
+ const F = c.find((Y) => Y.panelId === I.panelId);
7286
7284
  if (!F)
7287
- throw new z(f);
7285
+ throw new z(I);
7288
7286
  const y = J();
7289
7287
  return new T(
7290
7288
  {
7291
7289
  colors: E,
7292
7290
  id: y,
7293
- svg: u,
7291
+ svg: C,
7294
7292
  type: k.Illustration,
7295
- y: f.top,
7296
- x: f.left,
7297
- rotation: f.rotation,
7298
- width: f.width,
7299
- height: f.height,
7300
- layer: f.layer,
7301
- layerIndex: f.layerIndex,
7302
- immutable: f.immutable
7293
+ y: I.top,
7294
+ x: I.left,
7295
+ rotation: I.rotation,
7296
+ width: I.width,
7297
+ height: I.height,
7298
+ layer: I.layer,
7299
+ layerIndex: I.layerIndex,
7300
+ immutable: I.immutable
7303
7301
  },
7304
7302
  F
7305
7303
  );
7306
- }, p = A.data.regions;
7304
+ }, Q = A.data.regions;
7307
7305
  try {
7308
- return p.map(I);
7309
- } catch (f) {
7310
- return console.error(f), [];
7306
+ return Q.map(f);
7307
+ } catch (I) {
7308
+ return console.error(I), [];
7311
7309
  }
7312
7310
  }, Sn = async (c, e, t) => {
7313
7311
  const A = await BA(t.data.module), a = e.data, n = (s, o) => {
@@ -7473,10 +7471,10 @@ const Dn = [
7473
7471
  }
7474
7472
  else {
7475
7473
  const r = await _(n, !0), g = (B) => {
7476
- const l = /<svg.*?<\/svg>/s, d = B.match(l) || [], w = (d == null ? void 0 : d.length) > 0 ? d[0] : "", u = Lt().parseFromString(w, "image/svg+xml").firstElementChild;
7477
- if (!u)
7474
+ const l = /<svg.*?<\/svg>/s, d = B.match(l) || [], w = (d == null ? void 0 : d.length) > 0 ? d[0] : "", C = Lt().parseFromString(w, "image/svg+xml").firstElementChild;
7475
+ if (!C)
7478
7476
  throw new ge("Failed to read SVG.");
7479
- return Tt(u), Ot().serializeToString(u);
7477
+ return Tt(C), Ot().serializeToString(C);
7480
7478
  };
7481
7479
  o.forEach((B) => {
7482
7480
  const l = c.find((w) => w.panelId === B.panelId);
@@ -7507,41 +7505,41 @@ const Dn = [
7507
7505
  return A;
7508
7506
  }, Nn = async (c, e, t, A) => {
7509
7507
  const a = [], n = t.data, i = 30, s = (h) => h.vertical ? "center" : h.textAlign || "center", o = () => {
7510
- var I;
7508
+ var f;
7511
7509
  const h = A.option;
7512
7510
  if (!h)
7513
7511
  return;
7514
- const u = ((I = h.variants) == null ? void 0 : I.find((p) => p.id === n.fontVariantId)) || be(h);
7515
- if (!u || !u.asset)
7512
+ const C = ((f = h.variants) == null ? void 0 : f.find((Q) => Q.id === n.fontVariantId)) || be(h);
7513
+ if (!C || !C.asset)
7516
7514
  return;
7517
- e[A.stepName] = { selectedVariants: [u] };
7518
- const C = u.asset.fileLink;
7519
- if (C)
7520
- return C;
7515
+ e[A.stepName] = { selectedVariants: [C] };
7516
+ const u = C.asset.fileLink;
7517
+ if (u)
7518
+ return u;
7521
7519
  }, g = await (async () => {
7522
7520
  const h = o();
7523
7521
  if (!h)
7524
7522
  return;
7525
- const u = await nt(h);
7523
+ const C = await nt(h);
7526
7524
  return {
7527
7525
  assetUrl: h,
7528
- name: u.names.fullName.en
7526
+ name: C.names.fullName.en
7529
7527
  };
7530
7528
  })(), B = (A.data.replaceableText ? A.data.replaceableText.replace("{{}}", n.text) : n.text) || "", l = Ze(B, {
7531
7529
  vertical: A.data.vertical,
7532
7530
  uppercase: A.data.uppercase
7533
7531
  }), d = async (h) => {
7534
- const u = h.colorOption;
7535
- if (!u)
7532
+ const C = h.colorOption;
7533
+ if (!C)
7536
7534
  return;
7537
- const C = V.getDefaultVariant(u);
7538
- return C == null ? void 0 : C.color;
7535
+ const u = V.getDefaultVariant(C);
7536
+ return u == null ? void 0 : u.color;
7539
7537
  }, w = n.color || await d(A.data), E = A.data.regions;
7540
7538
  for (const h of E) {
7541
- const u = c.find((I) => I.panelId === h.panelId);
7542
- if (!u)
7539
+ const C = c.find((f) => f.panelId === h.panelId);
7540
+ if (!C)
7543
7541
  continue;
7544
- const C = {
7542
+ const u = {
7545
7543
  stepName: t.name,
7546
7544
  id: J(),
7547
7545
  align: s(A.data),
@@ -7563,7 +7561,7 @@ const Dn = [
7563
7561
  y: h.top
7564
7562
  };
7565
7563
  if (g) {
7566
- const [I, p] = Me(
7564
+ const [f, Q] = Me(
7567
7565
  A.data.size || i,
7568
7566
  g,
7569
7567
  h,
@@ -7582,16 +7580,16 @@ const Dn = [
7582
7580
  a.push(
7583
7581
  new T(
7584
7582
  {
7585
- ...C,
7586
- fontSize: I,
7587
- text: C.curved ? C.text : (p || []).join(`
7583
+ ...u,
7584
+ fontSize: f,
7585
+ text: u.curved ? u.text : (Q || []).join(`
7588
7586
  `)
7589
7587
  },
7590
- u
7588
+ C
7591
7589
  )
7592
7590
  );
7593
7591
  } else
7594
- a.push(new T(C, u));
7592
+ a.push(new T(u, C));
7595
7593
  }
7596
7594
  return a;
7597
7595
  }, Hn = (c, e) => c.conditions ? c.conditions.every((t) => {
@@ -10491,21 +10489,21 @@ class Ni {
10491
10489
  if (s != null && s.has(e)) {
10492
10490
  const h = s.get(e);
10493
10491
  if (h && await this.authenticateCustomerId(h)) {
10494
- const C = ((d = (l = this.customer) == null ? void 0 : l.bundleStakeholders) == null ? void 0 : d.find(
10495
- (I) => {
10496
- var p, Q;
10497
- return (Q = (p = I.bundle) == null ? void 0 : p.transactions) == null ? void 0 : Q.some((m) => m.id === e);
10492
+ const u = ((d = (l = this.customer) == null ? void 0 : l.bundleStakeholders) == null ? void 0 : d.find(
10493
+ (f) => {
10494
+ var Q, p;
10495
+ return (p = (Q = f.bundle) == null ? void 0 : Q.transactions) == null ? void 0 : p.some((m) => m.id === e);
10498
10496
  }
10499
10497
  )) || ((E = (w = this.customer) == null ? void 0 : w.stakeholders) == null ? void 0 : E.find(
10500
- (I) => {
10501
- var p;
10502
- return ((p = I.transaction) == null ? void 0 : p.id) === e;
10498
+ (f) => {
10499
+ var Q;
10500
+ return ((Q = f.transaction) == null ? void 0 : Q.id) === e;
10503
10501
  }
10504
10502
  ));
10505
- if (C)
10503
+ if (u)
10506
10504
  return Promise.resolve({
10507
10505
  success: !0,
10508
- stakeholderType: C.type
10506
+ stakeholderType: u.type
10509
10507
  });
10510
10508
  }
10511
10509
  }
@@ -10665,15 +10663,15 @@ class Ni {
10665
10663
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
10666
10664
  */
10667
10665
  async getExistingBundle(e, t, A, a) {
10668
- var h, u, C, I, p, Q, m, f, F;
10666
+ var h, C, u, f, Q, p, m, I, F;
10669
10667
  const n = P.getMap("bundleOwnerIds"), i = n == null ? void 0 : n.get(e), o = ((h = Object.entries(localStorage).find(([y, Y]) => y.startsWith("CognitoIdentityServiceProvider") && y.endsWith("idToken"))) == null ? void 0 : h[0]) || "", r = localStorage.getItem(o), g = {};
10670
10668
  r && !wt(r) && (g.Authorization = `Bearer ${r}`);
10671
10669
  const B = {
10672
10670
  bundleOwnerId: i,
10673
10671
  ...g,
10674
- ...(u = a == null ? void 0 : a.graphql) == null ? void 0 : u.additionalHeaders
10672
+ ...(C = a == null ? void 0 : a.graphql) == null ? void 0 : C.additionalHeaders
10675
10673
  }, l = await x.getShadowGraphqlClient().query({
10676
- query: Jn(((I = (C = a == null ? void 0 : a.graphql) == null ? void 0 : C.productCollection) == null ? void 0 : I.eagerFetchProducts) || !1),
10674
+ query: Jn(((f = (u = a == null ? void 0 : a.graphql) == null ? void 0 : u.productCollection) == null ? void 0 : f.eagerFetchProducts) || !1),
10677
10675
  variables: {
10678
10676
  id: e
10679
10677
  },
@@ -10682,9 +10680,9 @@ class Ni {
10682
10680
  headers: B
10683
10681
  }
10684
10682
  });
10685
- if (!((p = l.data) != null && p.bundles) || ((Q = l.data) == null ? void 0 : Q.bundles.length) === 0 || !((m = l.data) != null && m.bundles[0]))
10683
+ if (!((Q = l.data) != null && Q.bundles) || ((p = l.data) == null ? void 0 : p.bundles.length) === 0 || !((m = l.data) != null && m.bundles[0]))
10686
10684
  throw new Error(`Unable to find bundle: ${e}`);
10687
- const d = (f = l.data) == null ? void 0 : f.bundles[0], w = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
10685
+ const d = (I = l.data) == null ? void 0 : I.bundles[0], w = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
10688
10686
  w.set(d.id, d.partner.id), P.setMap("bundlePartnerIds", w);
10689
10687
  const E = new xt(this, d, t, A, i, {
10690
10688
  additionalHeaders: (F = a == null ? void 0 : a.graphql) == null ? void 0 : F.additionalHeaders
@@ -10727,36 +10725,36 @@ class Ni {
10727
10725
  if (!a)
10728
10726
  return await this.getWorkflowExperienceDeprecated(e, t, A);
10729
10727
  const n = async () => {
10730
- var u, C;
10728
+ var C, u;
10731
10729
  const h = x.getShadowGraphqlClient();
10732
10730
  if (a.type === "transaction") {
10733
- const { transactionId: I, readOnly: p } = a, Q = await h.query({
10731
+ const { transactionId: f, readOnly: Q } = a, p = await h.query({
10734
10732
  query: me,
10735
10733
  variables: {
10736
- ids: [I]
10734
+ ids: [f]
10737
10735
  },
10738
10736
  errorPolicy: "all",
10739
10737
  fetchPolicy: "no-cache"
10740
10738
  });
10741
- if (!((u = Q.data) != null && u.transactions) || Q.data.transactions.length === 0)
10739
+ if (!((C = p.data) != null && C.transactions) || p.data.transactions.length === 0)
10742
10740
  throw new U("Existing transaction not found.");
10743
- const m = (C = Q.data) == null ? void 0 : C.transactions[0];
10741
+ const m = (u = p.data) == null ? void 0 : u.transactions[0];
10744
10742
  if (!m.workflowId)
10745
10743
  throw new U("Existing transaction has no workflow ID.");
10746
- const f = await ye(m.workflowId);
10744
+ const I = await ye(m.workflowId);
10747
10745
  if (!m.product)
10748
10746
  throw new U("Failed to load transaction, product not available.");
10749
- return { transaction: m, workflow: f, readOnly: p };
10747
+ return { transaction: m, workflow: I, readOnly: Q };
10750
10748
  }
10751
10749
  if (a.type === "integration" || a.type === "external") {
10752
- const I = async () => {
10753
- const f = a.type === "integration" ? { integrationProductId: a.integrationProductId } : {
10750
+ const f = async () => {
10751
+ const I = a.type === "integration" ? { integrationProductId: a.integrationProductId } : {
10754
10752
  externalIntegrationId: a.externalIntegrationId,
10755
10753
  externalProductId: a.externalProductId
10756
10754
  }, F = await h.mutate({
10757
10755
  mutation: Mt,
10758
10756
  variables: {
10759
- ...f,
10757
+ ...I,
10760
10758
  workflowId: a.workflowId,
10761
10759
  claim: !0
10762
10760
  },
@@ -10771,8 +10769,8 @@ class Ni {
10771
10769
  if (!y.product)
10772
10770
  throw new U("Failed to create transaction, product not available.");
10773
10771
  return y;
10774
- }, p = ye(a.workflowId, a == null ? void 0 : a.graphql), [Q, m] = await Promise.all([I(), p]);
10775
- return { transaction: Q, workflow: m };
10772
+ }, Q = ye(a.workflowId, a == null ? void 0 : a.graphql), [p, m] = await Promise.all([f(), Q]);
10773
+ return { transaction: p, workflow: m };
10776
10774
  }
10777
10775
  throw new U("No workflow ID provided.");
10778
10776
  }, { transaction: i, workflow: s, readOnly: o } = await n();
@@ -10785,18 +10783,18 @@ class Ni {
10785
10783
  stateMutationFunc: o ? async () => {
10786
10784
  throw new b("State mutation is forbidden in read only mode!");
10787
10785
  } : async (h) => {
10788
- const C = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(i.id) || void 0;
10789
- return this.updateTransactionState({ ...h, context: { transactionOwnerId: C } });
10786
+ const u = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(i.id) || void 0;
10787
+ return this.updateTransactionState({ ...h, context: { transactionOwnerId: u } });
10790
10788
  },
10791
10789
  readOnly: o,
10792
10790
  workflow: s
10793
10791
  };
10794
10792
  if (a.type === "transaction" && i.workflowState) {
10795
10793
  const h = JSON.parse(i.workflowState);
10796
- r.layouts = Object.values(h.layouts).map((u) => u.layout), await Ae(h), await ne(h), r.reloadedState = h;
10794
+ r.layouts = Object.values(h.layouts).map((C) => C.layout), await Ae(h), await ne(h), r.reloadedState = h;
10797
10795
  } else if (!o && a.workflowState) {
10798
10796
  const h = JSON.parse(a.workflowState);
10799
- r.layouts = Object.values(h.layouts).map((u) => u.layout), await Ae(h), await ne(h), r.reloadedState = h;
10797
+ r.layouts = Object.values(h.layouts).map((C) => C.layout), await Ae(h), await ne(h), r.reloadedState = h;
10800
10798
  } else
10801
10799
  r.layouts = Ve(
10802
10800
  r.transaction,
@@ -10829,20 +10827,20 @@ class Ni {
10829
10827
  async getWorkflowExperiences(e, t) {
10830
10828
  if (e.length === 0)
10831
10829
  throw new U("No options provided!");
10832
- const A = x.getShadowGraphqlClient(), a = async (Q) => {
10830
+ const A = x.getShadowGraphqlClient(), a = async (p) => {
10833
10831
  var y, Y;
10834
- if (Q.length === 0)
10832
+ if (p.length === 0)
10835
10833
  return [];
10836
- const m = Q.map((S) => S.option.transactionId), f = await A.query({
10834
+ const m = p.map((S) => S.option.transactionId), I = await A.query({
10837
10835
  query: me,
10838
10836
  variables: {
10839
10837
  ids: m
10840
10838
  },
10841
10839
  errorPolicy: "all",
10842
10840
  fetchPolicy: "no-cache"
10843
- }), F = f.data.transactions;
10844
- if (F.length !== Q.length) {
10845
- const S = ((Y = (y = f.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
10841
+ }), F = I.data.transactions;
10842
+ if (F.length !== p.length) {
10843
+ const S = ((Y = (y = I.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
10846
10844
  throw new U(`Not all transactions were found: ${S}`);
10847
10845
  }
10848
10846
  return F.map((S, N) => {
@@ -10850,18 +10848,18 @@ class Ni {
10850
10848
  return {
10851
10849
  transaction: S,
10852
10850
  workflowId: S.workflowId,
10853
- readOnly: ((H = Q.find((O) => O.option.transactionId === S.id)) == null ? void 0 : H.option.readOnly) ?? !1,
10854
- index: Q[N].index
10851
+ readOnly: ((H = p.find((O) => O.option.transactionId === S.id)) == null ? void 0 : H.option.readOnly) ?? !1,
10852
+ index: p[N].index
10855
10853
  };
10856
10854
  });
10857
- }, n = async (Q) => {
10855
+ }, n = async (p) => {
10858
10856
  var F, y, Y;
10859
- if (Q.length === 0)
10857
+ if (p.length === 0)
10860
10858
  return [];
10861
10859
  const m = await A.mutate({
10862
10860
  mutation: ua,
10863
10861
  variables: {
10864
- inputs: Q.map((S) => ({
10862
+ inputs: p.map((S) => ({
10865
10863
  integrationProductId: S.option.type === "integration" ? S.option.integrationProductId : void 0,
10866
10864
  externalIntegrationId: S.option.type === "external" ? S.option.externalIntegrationId : void 0,
10867
10865
  externalProductId: S.option.type === "external" ? S.option.externalProductId : void 0,
@@ -10871,25 +10869,25 @@ class Ni {
10871
10869
  },
10872
10870
  errorPolicy: "all",
10873
10871
  fetchPolicy: "no-cache"
10874
- }), f = (F = m.data) == null ? void 0 : F.transactionCreateMany;
10875
- if (!f || f.length === 0) {
10872
+ }), I = (F = m.data) == null ? void 0 : F.transactionCreateMany;
10873
+ if (!I || I.length === 0) {
10876
10874
  const S = ((Y = (y = m.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
10877
10875
  throw new U(`Failed to create transactions: ${S}`);
10878
10876
  }
10879
- return f.map((S, N) => ({
10877
+ return I.map((S, N) => ({
10880
10878
  transaction: S,
10881
10879
  workflowId: S.workflowId,
10882
10880
  readOnly: !1,
10883
- index: Q[N].index
10881
+ index: p[N].index
10884
10882
  }));
10885
- }, i = e.map((Q, m) => ({ option: Q, index: m })), s = i.filter((Q) => Q.option.type === "transaction"), o = i.filter(
10886
- (Q) => Q.option.type === "integration" || Q.option.type === "external"
10883
+ }, i = e.map((p, m) => ({ option: p, index: m })), s = i.filter((p) => p.option.type === "transaction"), o = i.filter(
10884
+ (p) => p.option.type === "integration" || p.option.type === "external"
10887
10885
  ), r = ft(s, 10), g = ft(o, 10), B = (await Promise.all([
10888
10886
  ...r.map(a),
10889
10887
  ...g.map(n)
10890
- ])).flat(), l = [...new Set(B.map((Q) => Q.workflowId))], d = await pA(l, t), w = new Map(d.map((Q) => [Q.id, Q])), E = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), h = B.map(async (Q) => {
10888
+ ])).flat(), l = [...new Set(B.map((p) => p.workflowId))], d = await pA(l, t), w = new Map(d.map((p) => [p.id, p])), E = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), h = B.map(async (p) => {
10891
10889
  var O;
10892
- const { transaction: m, workflowId: f, readOnly: F, index: y } = Q, Y = w.get(f), S = e[y];
10890
+ const { transaction: m, workflowId: I, readOnly: F, index: y } = p, Y = w.get(I), S = e[y];
10893
10891
  !E.get(m.id) && m.transactionOwnerId && E.set(m.id, m.transactionOwnerId);
10894
10892
  const N = E.get(m.id) || void 0, H = {
10895
10893
  product: m.product,
@@ -10919,11 +10917,11 @@ class Ni {
10919
10917
  ), H.delayWorkflowStateSync = !0, this.initialized = !0, this.experienceOptions = H, { experienceOptions: H, index: y, options: S };
10920
10918
  });
10921
10919
  P.setMap("transactionOwnerIds", E);
10922
- const I = (await Promise.all(h)).sort((Q, m) => Q.index - m.index).map(async (Q) => {
10923
- const { experienceOptions: m, options: f } = Q, F = new fe(this, m);
10924
- return await F.getWorkflowManager().getInitializationPromise(), f.type !== "transaction" && this.customer && await F.attachCustomerDetails({ email: this.customer.emailAddress }), F;
10925
- }), p = await Promise.all(I);
10926
- return p.forEach((Q) => Q.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), p;
10920
+ const f = (await Promise.all(h)).sort((p, m) => p.index - m.index).map(async (p) => {
10921
+ const { experienceOptions: m, options: I } = p, F = new fe(this, m);
10922
+ return await F.getWorkflowManager().getInitializationPromise(), I.type !== "transaction" && this.customer && await F.attachCustomerDetails({ email: this.customer.emailAddress }), F;
10923
+ }), Q = await Promise.all(f);
10924
+ return Q.forEach((p) => p.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), Q;
10927
10925
  }
10928
10926
  /**
10929
10927
  * Initialize the client from an integration product.