@spiffcommerce/core 22.8.0 → 22.9.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
@@ -1,12 +1,12 @@
1
1
  import { createHttpLink as RA, InMemoryCache as HA, ApolloClient as kA, from as UA, gql as f } from "@apollo/client/core";
2
- import { fetch as gt, getAttributesFromArrayBuffer as Ot, AssetType as At, StepType as M, getFrameData as lt, frameDataCache as GA, modifySVGColors as bA, svgToDataUrl as JA, GroupCommand as k, UpdateFramePattern as Lt, UpdateFrameThresholdSettingsCommand as TA, calculateOffsets as Bt, LayoutElementType as G, generate as J, CreateElementCommand as L, generateSVGWithUnknownColors as ze, svgObjectURL as Re, fetchAsString as _, DeleteElementCommand as ne, generateDefaultRectangleFrameSvg as yt, GetSVGDimensions as OA, patternImageDataCache as Mt, fetchAsArrayBuffer as LA, findElement as He, modifySVGWithElementProperties as zA, IllustrationColorCommand as at, IllustrationCacheCommand as KA, getFontMetrics as jA, getPatternImageData as nt, FontAlignmentCommand as VA, FontColorCommand as WA, FontImageFillCommand as Xe, applyTextTransformations as it, determineCorrectFontSizeAndLines as Ne, FontSourceCommand as St, loadFont as dt, TextChangeCommand as XA, FontSizeCommand as qA, createElementNS as ZA, createElement as fe, _loadFontExternalDataURL as Ct, UpdateWorkflowStateCommand as Yt, CommandContext as $A, createCanvas as ke, getSvgElement as zt, LayoutRenderingPurpose as Kt, renderPapyrusComponentAsString as jt, loadImage as Vt, getDomParser as Wt, toBase64 as Pt, getVariant as _A, generateFrameSVG as ea, getDefaultVariant as Ke, domParser as Xt, sanitizeSvgTree as qt, traverse as ta, xmlSerializer as Zt, CreateLayoutCommand as Aa, AspectType as $, rehydrateSerializedLayout as se } from "@spiffcommerce/papyrus";
3
- import { AspectType as Ps, AssetType as xs, BringForwardCommand as Ns, BringToBackCommand as vs, BringToFrontCommand as Rs, CanvasCommand as Hs, CommandContext as ks, CreateElementCommand as Us, CreateLayoutCommand as Gs, DeleteElementCommand as bs, FontAlignmentCommand as Js, FontColorCommand as Ts, FontSizeCommand as Os, FontSourceCommand as Ls, GroupCommand as zs, LayoutElementFactory as Ks, LayoutElementType as js, MoveCommand as Vs, ResizeCommand as Ws, RotateCommand as Xs, SendBackwardsCommand as qs, StepAspectType as Zs, StepType as $s, TextChangeCommand as _s, UnitOfMeasurement as eo, UpdateImageSourceCommand as to, dataUrlFromExternalUrl as Ao, determineCorrectFontSizeAndLines as ao, findElement as no, frameDataCache as io, generate as so, generateSVGWithUnknownColors as oo, getAttributesFromArrayBuffer as ro, getAxisAlignedBoundingBox as co, getFrameData as go, getSvgElement as lo, loadFont as Bo, patternImageDataCache as Co, registerFetchImplementation as wo, registerWindowImplementation as ho, rehydrateSerializedLayout as Eo, setCanvasModule as uo, svgToDataUrl as Qo } from "@spiffcommerce/papyrus";
2
+ import { fetch as lt, getAttributesFromArrayBuffer as Ot, AssetType as At, StepType as M, getFrameData as gt, frameDataCache as GA, modifySVGColors as bA, svgToDataUrl as JA, GroupCommand as k, UpdateFramePattern as Lt, UpdateFrameThresholdSettingsCommand as TA, calculateOffsets as Bt, LayoutElementType as G, generate as J, CreateElementCommand as L, generateSVGWithUnknownColors as ze, svgObjectURL as Re, fetchAsString as _, DeleteElementCommand as ne, generateDefaultRectangleFrameSvg as yt, GetSVGDimensions as OA, patternImageDataCache as Mt, fetchAsArrayBuffer as LA, findElement as He, modifySVGWithElementProperties as zA, IllustrationColorCommand as at, IllustrationCacheCommand as KA, getFontMetrics as jA, getPatternImageData as nt, FontAlignmentCommand as VA, FontColorCommand as WA, FontImageFillCommand as Xe, applyTextTransformations as it, determineCorrectFontSizeAndLines as Ne, FontSourceCommand as St, loadFont as dt, TextChangeCommand as XA, FontSizeCommand as qA, createElementNS as ZA, createElement as fe, _loadFontExternalDataURL as Ct, UpdateWorkflowStateCommand as Yt, CommandContext as $A, createCanvas as ke, getSvgElement as zt, LayoutRenderingPurpose as Kt, renderPapyrusComponentAsString as jt, loadImage as Vt, getDomParser as Wt, toBase64 as Pt, getVariant as _A, generateFrameSVG as ea, getDefaultVariant as Ke, domParser as Xt, sanitizeSvgTree as qt, traverse as ta, xmlSerializer as Zt, CreateLayoutCommand as Aa, AspectType as $, rehydrateSerializedLayout as se } from "@spiffcommerce/papyrus";
3
+ import { AspectType as xs, AssetType as Ns, BringForwardCommand as vs, BringToBackCommand as Rs, BringToFrontCommand as Hs, CanvasCommand as ks, CommandContext as Us, CreateElementCommand as Gs, CreateLayoutCommand as bs, DeleteElementCommand as Js, FontAlignmentCommand as Ts, FontColorCommand as Os, FontSizeCommand as Ls, FontSourceCommand as zs, GroupCommand as Ks, LayoutElementFactory as js, LayoutElementType as Vs, MoveCommand as Ws, ResizeCommand as Xs, RotateCommand as qs, SendBackwardsCommand as Zs, StepAspectType as $s, StepType as _s, TextChangeCommand as eo, UnitOfMeasurement as to, UpdateImageSourceCommand as Ao, dataUrlFromExternalUrl as ao, determineCorrectFontSizeAndLines as no, findElement as io, frameDataCache as so, generate as oo, generateSVGWithUnknownColors as ro, getAttributesFromArrayBuffer as co, getAxisAlignedBoundingBox as lo, getFrameData as go, getSvgElement as Bo, loadFont as Co, patternImageDataCache as wo, registerFetchImplementation as ho, registerWindowImplementation as Eo, rehydrateSerializedLayout as uo, setCanvasModule as mo, svgToDataUrl as Qo } from "@spiffcommerce/papyrus";
4
4
  import { setContext as aa } from "@apollo/client/link/context";
5
5
  import { onError as na } from "@apollo/client/link/error";
6
6
  import { Pith as $t } from "pith";
7
7
  import _t from "lodash.debounce";
8
8
  import eA from "lodash.isequal";
9
- import ge from "lodash.clonedeep";
9
+ import le from "lodash.clonedeep";
10
10
  import { toString as tA } from "qrcode";
11
11
  import ia from "fuse.js";
12
12
  import { split as st } from "unicode-default-word-boundary";
@@ -150,28 +150,28 @@ class ra {
150
150
  }
151
151
  const q = new ra();
152
152
  let aA;
153
- const vt = (g) => {
154
- aA = g;
153
+ const vt = (l) => {
154
+ aA = l;
155
155
  };
156
156
  let ht;
157
- const ca = (g) => {
158
- ht = g;
159
- }, ga = () => ht;
157
+ const ca = (l) => {
158
+ ht = l;
159
+ }, la = () => ht;
160
160
  let nA;
161
- const la = (g) => {
162
- nA = g;
163
- }, Ba = () => new Promise((g) => {
161
+ const ga = (l) => {
162
+ nA = l;
163
+ }, Ba = () => new Promise((l) => {
164
164
  const e = q.getHubUrl(), t = (A) => {
165
- A.origin === e && (window.removeEventListener("message", t), g(A.data));
165
+ A.origin === e && (window.removeEventListener("message", t), l(A.data));
166
166
  };
167
167
  window.parent !== window && (window.addEventListener("message", t, !1), window.parent.postMessage("ready", e));
168
168
  }), da = async () => {
169
- const g = {
169
+ const l = {
170
170
  applicationKey: ht,
171
171
  customerToken: aA,
172
172
  bearer: nA
173
173
  };
174
- return typeof window < "u" && (window.location.href.includes("/workflows/product/") || window.location.href.includes("hub=true")) ? { ...await Ba(), ...g } : g;
174
+ return typeof window < "u" && (window.location.href.includes("/workflows/product/") || window.location.href.includes("hub=true")) ? { ...await Ba(), ...l } : l;
175
175
  };
176
176
  class Ca {
177
177
  constructor() {
@@ -185,22 +185,22 @@ class Ca {
185
185
  constructShadowGraphqlClient() {
186
186
  const e = RA({
187
187
  uri: `${q.getServerUrl()}/graphql`,
188
- fetch: gt
188
+ fetch: lt
189
189
  }), t = aa(async (i, s) => {
190
- const { headers: o } = s, r = o || {}, c = await da(), B = s.bearer ?? c.bearer, l = s.partnerId ?? c.partnerId, d = s.activeIntegration ?? c.activeIntegration, C = s.transactionOwnerId, w = s.customerToken ?? c.customerToken, h = s.applicationKey ?? c.applicationKey, u = s.bundleOwnerId;
190
+ const { headers: o } = s, r = o || {}, c = await da(), B = s.bearer ?? c.bearer, g = s.partnerId ?? c.partnerId, d = s.activeIntegration ?? c.activeIntegration, C = s.transactionOwnerId, w = s.customerToken ?? c.customerToken, h = s.applicationKey ?? c.applicationKey, u = s.bundleOwnerId;
191
191
  try {
192
192
  if (window && window.__SENTRY__) {
193
193
  const E = window.__SENTRY__.hub;
194
194
  if (E) {
195
195
  const D = E.traceHeaders();
196
- Object.entries(D).forEach(([m, p]) => {
197
- r[m] = p;
196
+ Object.entries(D).forEach(([Q, p]) => {
197
+ r[Q] = p;
198
198
  });
199
199
  }
200
200
  }
201
201
  } catch {
202
202
  }
203
- return B && (r.Authorization = `Bearer ${B}`), l && (r.partnerId = l), d && (r.activeIntegration = d), C && (r.transactionOwnerId = C), w && (r.customerToken = w), h && (r["X-Application-Key"] = h), u && (r.bundleOwnerId = u), {
203
+ return B && (r.Authorization = `Bearer ${B}`), g && (r.partnerId = g), d && (r.activeIntegration = d), C && (r.transactionOwnerId = C), w && (r.customerToken = w), h && (r["X-Application-Key"] = h), u && (r.bundleOwnerId = u), {
204
204
  headers: r
205
205
  };
206
206
  }), A = na(({ operation: i, graphQLErrors: s, networkError: o }) => {
@@ -265,8 +265,8 @@ const x = new Ca(), wa = f`
265
265
  value
266
266
  }
267
267
  }
268
- `, Ie = (g) => f`
269
- ${g && wa || ""}
268
+ `, Ie = (l) => f`
269
+ ${l && wa || ""}
270
270
  fragment AssetFields on Asset {
271
271
  name
272
272
  key
@@ -278,7 +278,7 @@ const x = new Ca(), wa = f`
278
278
  name
279
279
  link
280
280
  }
281
- ${g && "...AssetMetadataFields" || ""}
281
+ ${l && "...AssetMetadataFields" || ""}
282
282
  }
283
283
  `, ha = f`
284
284
  ${Ie(!1)}
@@ -355,35 +355,35 @@ const x = new Ca(), wa = f`
355
355
  }
356
356
  }
357
357
  }
358
- `, Qa = f`
358
+ `, ma = f`
359
359
  ${Ie(!1)}
360
360
  mutation RemoveBackgroundFromAsset($key: String!) {
361
361
  assetRemoveBackground(key: $key) {
362
362
  ...AssetFields
363
363
  }
364
364
  }
365
- `, ot = async (g) => (await x.getShadowGraphqlClient().query({
365
+ `, ot = async (l) => (await x.getShadowGraphqlClient().query({
366
366
  query: ha,
367
367
  errorPolicy: "all",
368
368
  fetchPolicy: "no-cache",
369
369
  variables: {
370
- keys: g
370
+ keys: l
371
371
  }
372
- })).data.assets, ma = async (g) => (await x.getShadowGraphqlClient().query({
372
+ })).data.assets, Qa = async (l) => (await x.getShadowGraphqlClient().query({
373
373
  query: Ea,
374
374
  errorPolicy: "all",
375
375
  fetchPolicy: "no-cache",
376
376
  variables: {
377
- ids: g
377
+ ids: l
378
378
  }
379
- })).data.materials, pa = async (g, e, t, A, a) => {
379
+ })).data.materials, pa = async (l, e, t, A, a) => {
380
380
  var i;
381
381
  return (i = (await x.getShadowGraphqlClient().mutate({
382
382
  mutation: ua,
383
383
  errorPolicy: "all",
384
384
  fetchPolicy: "no-cache",
385
385
  variables: {
386
- name: g,
386
+ name: l,
387
387
  type: e,
388
388
  mimeType: t,
389
389
  anonymous: A,
@@ -458,7 +458,7 @@ class Da {
458
458
  async getMaterialLocalOrFromServer(e) {
459
459
  if (this.materialCache.has(e))
460
460
  return this.materialCache.get(e);
461
- const A = (async () => (await ma([e]))[0])();
461
+ const A = (async () => (await Qa([e]))[0])();
462
462
  return this.materialCache.set(e, A), A;
463
463
  }
464
464
  /**
@@ -507,7 +507,7 @@ class Da {
507
507
  const a = (async () => {
508
508
  var i, s;
509
509
  const n = await x.getShadowGraphqlClient().mutate({
510
- mutation: Qa,
510
+ mutation: ma,
511
511
  fetchPolicy: "no-cache",
512
512
  errorPolicy: "all",
513
513
  variables: {
@@ -680,7 +680,7 @@ class Ia {
680
680
  this.disabled = e;
681
681
  }
682
682
  }
683
- const Qe = new Ia(), sA = f`
683
+ const me = new Ia(), sA = f`
684
684
  fragment OptionFields on Option {
685
685
  id
686
686
  name
@@ -726,13 +726,13 @@ const Qe = new Ia(), sA = f`
726
726
  ...OptionFields
727
727
  }
728
728
  }
729
- `, Fa = async (g) => {
729
+ `, Fa = async (l) => {
730
730
  const e = await x.getShadowGraphqlClient().query({
731
731
  query: fa,
732
732
  errorPolicy: "all",
733
733
  fetchPolicy: "no-cache",
734
734
  variables: {
735
- ids: g
735
+ ids: l
736
736
  }
737
737
  });
738
738
  return e.data.options.forEach((t) => {
@@ -741,12 +741,12 @@ const Qe = new Ia(), sA = f`
741
741
  n.asset && U.cacheAsset(n.asset), n.thumbnail && U.cacheAsset(n.thumbnail), n.material && U.cacheMaterial(n.material);
742
742
  });
743
743
  }), e.data.options;
744
- }, ya = async (g, e) => (await e).find((A) => A.id === g), Ma = async (g) => {
745
- const e = g.map((i) => Qe.get({ id: i })), t = g.filter((i, s) => e[s] === void 0);
744
+ }, ya = async (l, e) => (await e).find((A) => A.id === l), Ma = async (l) => {
745
+ const e = l.map((i) => me.get({ id: i })), t = l.filter((i, s) => e[s] === void 0);
746
746
  if (t.length === 0)
747
747
  return Promise.all(e);
748
748
  const A = Fa(t), a = t.map(
749
- (i) => Qe.set({ id: i }, ya(i, A))
749
+ (i) => me.set({ id: i }, ya(i, A))
750
750
  ), n = e.filter((i) => i !== void 0);
751
751
  return await Promise.all(n.concat(a));
752
752
  };
@@ -797,7 +797,7 @@ class Sa {
797
797
  }
798
798
  }
799
799
  const V = new Sa();
800
- var Ya = /* @__PURE__ */ ((g) => (g.Hyperlink = "Hyperlink", g.Edit = "Edit", g.Approve = "Approve", g))(Ya || {}), Pa = /* @__PURE__ */ ((g) => (g.Hub = "Hub", g.Shopify = "Shopify", g))(Pa || {}), ut = /* @__PURE__ */ ((g) => (g.BackgroundRemover = "BackgroundRemover", g.ConversionAccelerator = "Conversion Accelerator", g.ProcessBuilder = "ProcessBuilder", g))(ut || {}), xa = /* @__PURE__ */ ((g) => (g[g.Orbit = 0] = "Orbit", g[g.Pan = 1] = "Pan", g))(xa || {}), Na = /* @__PURE__ */ ((g) => (g.Manual = "Manual", g.OnStart = "OnStart", g.OnQuit = "OnQuit", g.OnEnd = "OnEnd", g))(Na || {}), va = /* @__PURE__ */ ((g) => (g.Email = "Email", g.FirstName = "FirstName", g.LastName = "LastName", g.Phone = "Phone", g))(va || {}), be = /* @__PURE__ */ ((g) => (g.Owner = "Owner", g.Approver = "Approver", g.Editor = "Editor", g.Viewer = "Viewer", g))(be || {});
800
+ var Ya = /* @__PURE__ */ ((l) => (l.Hyperlink = "Hyperlink", l.Edit = "Edit", l.Approve = "Approve", l))(Ya || {}), Pa = /* @__PURE__ */ ((l) => (l.Hub = "Hub", l.Shopify = "Shopify", l))(Pa || {}), ut = /* @__PURE__ */ ((l) => (l.BackgroundRemover = "BackgroundRemover", l.ConversionAccelerator = "Conversion Accelerator", l.ProcessBuilder = "ProcessBuilder", l))(ut || {}), xa = /* @__PURE__ */ ((l) => (l[l.Orbit = 0] = "Orbit", l[l.Pan = 1] = "Pan", l))(xa || {}), Na = /* @__PURE__ */ ((l) => (l.Manual = "Manual", l.OnStart = "OnStart", l.OnQuit = "OnQuit", l.OnEnd = "OnEnd", l))(Na || {}), va = /* @__PURE__ */ ((l) => (l.Email = "Email", l.FirstName = "FirstName", l.LastName = "LastName", l.Phone = "Phone", l))(va || {}), be = /* @__PURE__ */ ((l) => (l.Owner = "Owner", l.Approver = "Approver", l.Editor = "Editor", l.Viewer = "Viewer", l))(be || {});
801
801
  const oA = f`
802
802
  fragment ActiveIntegrationFields on Integration {
803
803
  id
@@ -1333,14 +1333,14 @@ const Ja = f`
1333
1333
  }
1334
1334
  }
1335
1335
  }
1336
- `, gA = f`
1336
+ `, lA = f`
1337
1337
  query ReadWorkflowStates($ids: [String]!) {
1338
1338
  transactions(ids: $ids) {
1339
1339
  id
1340
1340
  workflowState
1341
1341
  }
1342
1342
  }
1343
- `, lA = f`
1343
+ `, gA = f`
1344
1344
  ${Be}
1345
1345
  fragment IntegrationProductFields on IntegrationProduct {
1346
1346
  id
@@ -1403,14 +1403,14 @@ const Ja = f`
1403
1403
  }
1404
1404
  }
1405
1405
  `, Ta = f`
1406
- ${lA}
1406
+ ${gA}
1407
1407
  query GetIntegrationProducts($ids: [String!]!) {
1408
1408
  integrationProducts(ids: $ids) {
1409
1409
  ...IntegrationProductFields
1410
1410
  }
1411
1411
  }
1412
1412
  `, Oa = f`
1413
- ${lA}
1413
+ ${gA}
1414
1414
  query GetIntegrationProductFromExternalIds($externalIntegrationId: String!, $externalProductId: String!) {
1415
1415
  integrationProductFromExternalIds(
1416
1416
  externalIntegrationId: $externalIntegrationId
@@ -1431,25 +1431,25 @@ const Ja = f`
1431
1431
  }
1432
1432
  }
1433
1433
  }
1434
- `, Ce = [M.SilentIllustration, M.ProductOverlay], za = async (g) => {
1434
+ `, Ce = [M.SilentIllustration, M.ProductOverlay], za = async (l) => {
1435
1435
  const e = [];
1436
- g.introduction && e.push({
1436
+ l.introduction && e.push({
1437
1437
  name: "Introduction",
1438
- title: g.name,
1438
+ title: l.name,
1439
1439
  renderableSteps: [
1440
1440
  {
1441
1441
  type: M.Introduction,
1442
1442
  stepName: "Introduction",
1443
- stepTitle: g.name,
1444
- helpText: g.introduction,
1443
+ stepTitle: l.name,
1444
+ helpText: l.introduction,
1445
1445
  data: {},
1446
1446
  conditions: []
1447
1447
  }
1448
1448
  ],
1449
1449
  silentSteps: []
1450
1450
  });
1451
- for (const A of g.steps) {
1452
- const a = Ka(A.stepName, g.stepGroups);
1451
+ for (const A of l.steps) {
1452
+ const a = Ka(A.stepName, l.stepGroups);
1453
1453
  if (!a)
1454
1454
  e.push({
1455
1455
  name: A.stepName,
@@ -1478,15 +1478,15 @@ const Ja = f`
1478
1478
  stepTitle: t,
1479
1479
  helpText: "",
1480
1480
  data: {
1481
- modelAnimation: g.finalizeStepConfig ? g.finalizeStepConfig.modelAnimation : void 0,
1482
- lookAtAnimation: g.finalizeStepConfig ? g.finalizeStepConfig.lookAtAnimation : void 0
1481
+ modelAnimation: l.finalizeStepConfig ? l.finalizeStepConfig.modelAnimation : void 0,
1482
+ lookAtAnimation: l.finalizeStepConfig ? l.finalizeStepConfig.lookAtAnimation : void 0
1483
1483
  },
1484
1484
  conditions: []
1485
1485
  }
1486
1486
  ],
1487
1487
  silentSteps: []
1488
1488
  }), e;
1489
- }, Ka = (g, e) => e.find((t) => t.stepNames.includes(g)), ae = (g, e) => (g.conditions || []).every((t) => {
1489
+ }, Ka = (l, e) => e.find((t) => t.stepNames.includes(l)), ae = (l, e) => (l.conditions || []).every((t) => {
1490
1490
  const A = e[t.targetStepName];
1491
1491
  if (A && A.selectedVariants) {
1492
1492
  const a = A.selectedVariants;
@@ -1495,17 +1495,17 @@ const Ja = f`
1495
1495
  );
1496
1496
  }
1497
1497
  return !1;
1498
- }), ja = (g, e) => {
1498
+ }), ja = (l, e) => {
1499
1499
  const t = {
1500
- name: g.name,
1501
- title: g.title,
1502
- renderableSteps: g.renderableSteps.filter((A) => ae(A, e)),
1503
- silentSteps: g.silentSteps.filter((A) => ae(A, e))
1500
+ name: l.name,
1501
+ title: l.title,
1502
+ renderableSteps: l.renderableSteps.filter((A) => ae(A, e)),
1503
+ silentSteps: l.silentSteps.filter((A) => ae(A, e))
1504
1504
  };
1505
1505
  return t.silentSteps.length === 0 && t.renderableSteps.length === 0 ? null : t;
1506
- }, ce = (g, e) => g.map((t) => ja(t, e)).filter((t) => t !== null), Va = async (g, e, t = !1) => {
1506
+ }, ce = (l, e) => l.map((t) => ja(t, e)).filter((t) => t !== null), Va = async (l, e, t = !1) => {
1507
1507
  var i;
1508
- const A = ce(g, e), a = [];
1508
+ const A = ce(l, e), a = [];
1509
1509
  for (const s of A)
1510
1510
  for (const o of s.renderableSteps) {
1511
1511
  const r = (((i = o.option) == null ? void 0 : i.variants) || []).length;
@@ -1595,19 +1595,19 @@ class dA {
1595
1595
  }
1596
1596
  }
1597
1597
  }
1598
- function Wa(g, e, t, A) {
1599
- const a = t.width * g.zoom, n = t.height * g.zoom;
1598
+ function Wa(l, e, t, A) {
1599
+ const a = t.width * l.zoom, n = t.height * l.zoom;
1600
1600
  if (A) {
1601
- const s = g, o = Math.max(e.width / t.width, e.height / t.height);
1602
- s.zoom = Math.max(o, g.zoom);
1601
+ const s = l, o = Math.max(e.width / t.width, e.height / t.height);
1602
+ s.zoom = Math.max(o, l.zoom);
1603
1603
  const r = t.width * s.zoom, c = t.height * s.zoom;
1604
- return s.x = ye(g.x, e.width - r, 0), s.y = ye(g.y, e.height - c, 0), s;
1604
+ return s.x = ye(l.x, e.width - r, 0), s.y = ye(l.y, e.height - c, 0), s;
1605
1605
  }
1606
- const i = g;
1606
+ const i = l;
1607
1607
  return i.x = ye(i.x, -a, e.width), i.y = ye(i.y, -n, e.height), i;
1608
1608
  }
1609
- function ye(g, e, t) {
1610
- return Math.min(Math.max(g, e), t);
1609
+ function ye(l, e, t) {
1610
+ return Math.min(Math.max(l, e), t);
1611
1611
  }
1612
1612
  class Xa {
1613
1613
  constructor(e) {
@@ -1631,7 +1631,7 @@ class Xa {
1631
1631
  if (a.currentFrameSources) {
1632
1632
  let n = !1;
1633
1633
  for (let i = 0; i < a.currentFrameSources.length; i++) {
1634
- const s = a.currentFrameSources[i], o = await lt(s), r = this.frameData ? this.frameData[i] : void 0;
1634
+ const s = a.currentFrameSources[i], o = await gt(s), r = this.frameData ? this.frameData[i] : void 0;
1635
1635
  eA(o, r) || (this.frameData || (this.frameData = new Array(a.currentFrameSources.length)), this.frameData[i] = o, n = !0);
1636
1636
  }
1637
1637
  n && (this.onFrameDataChangeListeners.forEach(
@@ -1830,24 +1830,24 @@ class kt {
1830
1830
  constructor(e, t, A) {
1831
1831
  this.processRegion = async (a) => {
1832
1832
  var o, r, c, B;
1833
- const n = this.layouts.find((l) => l.panelId === a.panelId);
1833
+ const n = this.layouts.find((g) => g.panelId === a.panelId);
1834
1834
  if (!n)
1835
1835
  throw new z(a);
1836
1836
  let i = "";
1837
1837
  if (this.configuration.type === M.ProductOverlay) {
1838
- let l = "";
1839
- if ((o = this.product) != null && o.overlayImageUrl && (l = this.product.overlayImageUrl), i = l, !l)
1838
+ let g = "";
1839
+ if ((o = this.product) != null && o.overlayImageUrl && (g = this.product.overlayImageUrl), i = g, !g)
1840
1840
  throw new Ge(this.configuration, "Couldn't find an asset for product overlay step");
1841
1841
  }
1842
1842
  const s = this.evaluateAssetType();
1843
1843
  if (s === G.Image) {
1844
- const l = this.configuration.type === M.SilentIllustration ? (r = this.configuration.data.asset) == null ? void 0 : r.fileLink : (c = this.product) == null ? void 0 : c.overlayImageUrl;
1845
- if (!l)
1844
+ const g = this.configuration.type === M.SilentIllustration ? (r = this.configuration.data.asset) == null ? void 0 : r.fileLink : (c = this.product) == null ? void 0 : c.overlayImageUrl;
1845
+ if (!g)
1846
1846
  throw new Error("Undefined raster silent step source");
1847
1847
  const d = {
1848
1848
  stepName: this.configuration.stepName,
1849
1849
  id: J(),
1850
- src: l,
1850
+ src: g,
1851
1851
  type: s,
1852
1852
  y: a.top,
1853
1853
  x: a.left,
@@ -1869,19 +1869,19 @@ class kt {
1869
1869
  command: new L(d, n)
1870
1870
  };
1871
1871
  } else {
1872
- const l = this.configuration.type === M.SilentIllustration ? (B = this.configuration.data.asset) == null ? void 0 : B.fileLink : i, C = await ze(await (async () => new Promise((h, u) => {
1873
- if (!l) {
1872
+ const g = this.configuration.type === M.SilentIllustration ? (B = this.configuration.data.asset) == null ? void 0 : B.fileLink : i, C = await ze(await (async () => new Promise((h, u) => {
1873
+ if (!g) {
1874
1874
  u("Undefined vector silent step source");
1875
1875
  return;
1876
1876
  }
1877
- _(l, !0).then((E) => {
1877
+ _(g, !0).then((E) => {
1878
1878
  h(E);
1879
1879
  }).catch((E) => console.error(E));
1880
1880
  }))()), w = {
1881
1881
  stepName: this.configuration.stepName,
1882
1882
  id: J(),
1883
1883
  cachedObjectURL: await Re(C.svg),
1884
- src: l,
1884
+ src: g,
1885
1885
  svg: C.svg,
1886
1886
  colors: C.colors,
1887
1887
  type: s,
@@ -1927,12 +1927,12 @@ class kt {
1927
1927
  return e != null && e.startsWith("data:image/png") || e != null && e.endsWith(".jpeg") || e != null && e.endsWith(".jpg") || e != null && e.endsWith(".png") ? G.Image : e != null && e.endsWith(".svg") || e != null && e.startsWith("image/svg+xml") ? G.Illustration : G.Illustration;
1928
1928
  }
1929
1929
  }
1930
- const qa = async (g) => {
1930
+ const qa = async (l) => {
1931
1931
  const e = `${q.getServicesApiUrl()}/shortener`;
1932
1932
  try {
1933
1933
  return (await (await fetch(e, {
1934
1934
  method: "POST",
1935
- body: JSON.stringify({ longUrl: g }),
1935
+ body: JSON.stringify({ longUrl: l }),
1936
1936
  headers: {
1937
1937
  "Content-Type": "application/json"
1938
1938
  }
@@ -1974,8 +1974,8 @@ class Za {
1974
1974
  A.serializableWorkflow.steps
1975
1975
  ), o = Object.values(A.layouts).map((r) => r.elements).flat().filter((r) => r.stepName === e.stepName).map((r) => ({ id: r.id, region: r.stepRegion }));
1976
1976
  await t.setSelectionsAndElements(e.stepName, [], o, async () => {
1977
- var B, l;
1978
- const r = (B = a == null ? void 0 : a.storage) == null ? void 0 : B.videoShortUrl, c = (l = a == null ? void 0 : a.storage) == null ? void 0 : l.videoUrl;
1977
+ var B, g;
1978
+ const r = (B = a == null ? void 0 : a.storage) == null ? void 0 : B.videoShortUrl, c = (g = a == null ? void 0 : a.storage) == null ? void 0 : g.videoUrl;
1979
1979
  t.updateStorage(e.stepName, {
1980
1980
  videoShortUrl: r,
1981
1981
  videoUrl: c
@@ -2015,8 +2015,8 @@ class Za {
2015
2015
  const c = await qa(r);
2016
2016
  if (!a.data || !a.data.regions)
2017
2017
  throw new Ge(a, "Missing regions.");
2018
- const B = await this.regionElements(a), l = await this.command(c, B, A, a.stepName);
2019
- return l && (l.command && A.getCommandDispatcher()(l.command), l.followup && await l.followup()), await A.setSelectionsAndElements(a.stepName, [], B, async () => {
2018
+ const B = await this.regionElements(a), g = await this.command(c, B, A, a.stepName);
2019
+ return g && (g.command && A.getCommandDispatcher()(g.command), g.followup && await g.followup()), await A.setSelectionsAndElements(a.stepName, [], B, async () => {
2020
2020
  A.updateStorage(a.stepName, {
2021
2021
  videoShortUrl: c,
2022
2022
  videoUrl: i.href
@@ -2029,7 +2029,7 @@ class Za {
2029
2029
  }
2030
2030
  async command(e, t, A, a) {
2031
2031
  const n = A.getLayouts(), s = `data:image/svg+xml;base64,${btoa(await tA(e, { type: "svg" }))}`, o = t.map((r) => {
2032
- const c = r.region, B = n.find((l) => l.panelId === (c == null ? void 0 : c.panelId));
2032
+ const c = r.region, B = n.find((g) => g.panelId === (c == null ? void 0 : c.panelId));
2033
2033
  if (!B && c)
2034
2034
  throw new z(c);
2035
2035
  if (B && !c)
@@ -2056,7 +2056,7 @@ class Za {
2056
2056
  } };
2057
2057
  }
2058
2058
  }
2059
- const wA = new Za(), me = [
2059
+ const wA = new Za(), Qe = [
2060
2060
  "Yellow C",
2061
2061
  "Yellow 012 C",
2062
2062
  "Orange 021 C",
@@ -3398,7 +3398,7 @@ const wA = new Za(), me = [
3398
3398
  "Black 5 C",
3399
3399
  "Black 6 C",
3400
3400
  "Black 7 C"
3401
- ], le = [
3401
+ ], ge = [
3402
3402
  "FEDD00",
3403
3403
  "FFD700",
3404
3404
  "FE5000",
@@ -4740,55 +4740,55 @@ const wA = new Za(), me = [
4740
4740
  "3E2B2E",
4741
4741
  "101820",
4742
4742
  "3D3935"
4743
- ], qe = le.map((g) => [
4744
- parseInt(g.substring(0, 2), 16),
4745
- parseInt(g.substring(2, 4), 16),
4746
- parseInt(g.substring(4, 6), 16)
4743
+ ], qe = ge.map((l) => [
4744
+ parseInt(l.substring(0, 2), 16),
4745
+ parseInt(l.substring(2, 4), 16),
4746
+ parseInt(l.substring(4, 6), 16)
4747
4747
  ]);
4748
- function ms(g) {
4749
- const e = me.indexOf(g);
4750
- return e >= 0 ? le[e] : "";
4748
+ function ps(l) {
4749
+ const e = Qe.indexOf(l);
4750
+ return e >= 0 ? ge[e] : "";
4751
4751
  }
4752
- function $a(g) {
4753
- const e = le.indexOf(g);
4754
- return e >= 0 ? me[e] : "";
4752
+ function $a(l) {
4753
+ const e = ge.indexOf(l);
4754
+ return e >= 0 ? Qe[e] : "";
4755
4755
  }
4756
- function ps(g, e = 64) {
4757
- const t = [], A = [], a = $a(g);
4756
+ function Ds(l, e = 64) {
4757
+ const t = [], A = [], a = $a(l);
4758
4758
  a && t.push({
4759
4759
  pms: a,
4760
- hex: g,
4760
+ hex: l,
4761
4761
  distance: 0
4762
4762
  });
4763
- const n = parseInt(g.substring(0, 2), 16), i = parseInt(g.substring(2, 4), 16), s = parseInt(g.substring(4, 6), 16);
4763
+ const n = parseInt(l.substring(0, 2), 16), i = parseInt(l.substring(2, 4), 16), s = parseInt(l.substring(4, 6), 16);
4764
4764
  let o, r, c;
4765
- for (let B = 0; B < le.length; B++) {
4765
+ for (let B = 0; B < ge.length; B++) {
4766
4766
  o = qe[B][0], r = qe[B][1], c = qe[B][2];
4767
- const l = Math.sqrt(Math.pow(n - o, 2) + Math.pow(i - r, 2) + Math.pow(s - c, 2));
4768
- A.push(l);
4767
+ const g = Math.sqrt(Math.pow(n - o, 2) + Math.pow(i - r, 2) + Math.pow(s - c, 2));
4768
+ A.push(g);
4769
4769
  }
4770
4770
  for (let B = 0; B < A.length; B++)
4771
- A[B] <= e && !t.some((l) => l.pms === me[B]) && t.push({ pms: me[B], hex: le[B], distance: A[B] });
4772
- return t.sort((B, l) => B.distance - l.distance);
4771
+ A[B] <= e && !t.some((g) => g.pms === Qe[B]) && t.push({ pms: Qe[B], hex: ge[B], distance: A[B] });
4772
+ return t.sort((B, g) => B.distance - g.distance);
4773
4773
  }
4774
- const _a = me.map((g, e) => ({ pms: g, hex: le[e] })), en = new ia(_a, { keys: ["pms"] });
4775
- function Ds(g, e) {
4776
- return en.search(g, e ? { limit: e } : void 0);
4774
+ const _a = Qe.map((l, e) => ({ pms: l, hex: ge[e] })), en = new ia(_a, { keys: ["pms"] });
4775
+ function Is(l, e) {
4776
+ return en.search(l, e ? { limit: e } : void 0);
4777
4777
  }
4778
4778
  let we = null;
4779
- function tn(g) {
4780
- if (g.startsWith("#"))
4781
- return Ut(g);
4779
+ function tn(l) {
4780
+ if (l.startsWith("#"))
4781
+ return Ut(l);
4782
4782
  if (!document)
4783
4783
  throw new Error("browserColorToHex is only supported on browsers");
4784
4784
  if (we || (we = document.createElement("canvas").getContext("2d")), !we)
4785
4785
  throw new Error("Failed to create canvas context required to convert colors");
4786
- we.fillStyle = g;
4786
+ we.fillStyle = l;
4787
4787
  const e = Ut(we.fillStyle);
4788
- return e || console.error(`Unknown browser color ${g}`), e;
4788
+ return e || console.error(`Unknown browser color ${l}`), e;
4789
4789
  }
4790
- function Ut(g) {
4791
- const e = g.substring(1).toUpperCase();
4790
+ function Ut(l) {
4791
+ const e = l.substring(1).toUpperCase();
4792
4792
  return e.length === 6 ? e : e.length === 3 ? `${e[0]}${e[0]}${e[1]}${e[1]}${e[2]}${e[2]}` : "";
4793
4793
  }
4794
4794
  class An {
@@ -4850,16 +4850,16 @@ class An {
4850
4850
  if (a) {
4851
4851
  const c = async () => {
4852
4852
  var C, w, h, u, E;
4853
- const B = (C = a.storage) == null ? void 0 : C.colors, l = (w = a.storage) == null ? void 0 : w.framePatternSrc, d = (h = a.storage) == null ? void 0 : h.frameOffsetsList;
4853
+ const B = (C = a.storage) == null ? void 0 : C.colors, g = (w = a.storage) == null ? void 0 : w.framePatternSrc, d = (h = a.storage) == null ? void 0 : h.frameOffsetsList;
4854
4854
  if (t.updateMetadata(e.stepName, {
4855
4855
  frameOffsetsList: d,
4856
- framePatternSrc: l
4857
- }), l) {
4856
+ framePatternSrc: g
4857
+ }), g) {
4858
4858
  const D = (u = t.getStepSpecificServices(e.stepName)) == null ? void 0 : u.frameService;
4859
4859
  if (!D)
4860
4860
  throw new Error("Frame service unavailable, cannot load pattern!");
4861
- await this.loadPatternFromString(l, D, !0, B), t.updateMetadata(e.stepName, { image: l }), t.updateStorage(e.stepName, {
4862
- framePatternSrc: l
4861
+ await this.loadPatternFromString(g, D, !0, B), t.updateMetadata(e.stepName, { image: g }), t.updateStorage(e.stepName, {
4862
+ framePatternSrc: g
4863
4863
  }), this.validateColorCount(e, t);
4864
4864
  }
4865
4865
  if (d != null && d.some((D) => D.zoom)) {
@@ -4873,14 +4873,14 @@ class An {
4873
4873
  if (a.selectedVariants && a.selectedVariants.length > 0) {
4874
4874
  const B = a.selectedVariants[0].id;
4875
4875
  if (e.option && B) {
4876
- const l = (r = e.option.variants) == null ? void 0 : r.find((d) => d.id === B);
4877
- l && await t.setSelectionsAndElements(
4876
+ const g = (r = e.option.variants) == null ? void 0 : r.find((d) => d.id === B);
4877
+ g && await t.setSelectionsAndElements(
4878
4878
  e.stepName,
4879
- [l],
4879
+ [g],
4880
4880
  o,
4881
4881
  async () => {
4882
4882
  const d = await Promise.all(
4883
- e.data.regions.map((C) => this.frameSourceSvg(l, C))
4883
+ e.data.regions.map((C) => this.frameSourceSvg(g, C))
4884
4884
  );
4885
4885
  t.updateStorage(e.stepName, { currentFrameSources: d }), await c();
4886
4886
  }
@@ -4972,8 +4972,8 @@ class An {
4972
4972
  if (e.endsWith("svg")) {
4973
4973
  const i = await OA(e), s = i.width, o = i.height, r = await _(e);
4974
4974
  if (n) {
4975
- const l = r.match(/<(image|linearGradient|radialGradient)(\s|>|\/>)/gim);
4976
- if (l && l.length > 0)
4975
+ const g = r.match(/<(image|linearGradient|radialGradient)(\s|>|\/>)/gim);
4976
+ if (g && g.length > 0)
4977
4977
  throw new Error(
4978
4978
  "Vector files may not include images or gradients when a color limit is specified."
4979
4979
  );
@@ -5045,8 +5045,8 @@ class An {
5045
5045
  };
5046
5046
  const a = { ...e.getImageData().colors ?? {} }, n = {};
5047
5047
  Object.entries(a).forEach(([c, B]) => {
5048
- const l = { browserValue: B.browserValue };
5049
- n[c] = l;
5048
+ const g = { browserValue: B.browserValue };
5049
+ n[c] = g;
5050
5050
  });
5051
5051
  for (const [c, B] of A.entries())
5052
5052
  a[c] = { browserValue: B.browserValue, pmsValue: B.pmsValue }, n[c] = B;
@@ -5054,8 +5054,8 @@ class An {
5054
5054
  const s = t.data.colorOption;
5055
5055
  return s && ((r = s.variants) == null || r.forEach((c) => {
5056
5056
  i = i.map((B) => {
5057
- var l;
5058
- return B.toLowerCase() === ((l = c.color) == null ? void 0 : l.toLowerCase()) ? c.name : B;
5057
+ var g;
5058
+ return B.toLowerCase() === ((g = c.color) == null ? void 0 : g.toLowerCase()) ? c.name : B;
5059
5059
  });
5060
5060
  })), {
5061
5061
  newColors: a,
@@ -5072,8 +5072,8 @@ class An {
5072
5072
  );
5073
5073
  }
5074
5074
  async selectVariantCommand(e, t, A, a, n, i) {
5075
- var l;
5076
- const s = (l = a.getStepSpecificServices(e.stepName)) == null ? void 0 : l.frameService;
5075
+ var g;
5076
+ const s = (g = a.getStepSpecificServices(e.stepName)) == null ? void 0 : g.frameService;
5077
5077
  if (!s)
5078
5078
  throw new Error("Frame service unavailable, cannot load pattern!");
5079
5079
  const o = await Promise.all(
@@ -5082,7 +5082,7 @@ class An {
5082
5082
  n && n(!0);
5083
5083
  const r = await Promise.all(
5084
5084
  e.data.regions.map(async (d, C) => {
5085
- const w = await lt(o[C]), h = s.getImageData(), u = A.map((I) => new ne(I.id)), E = h ? Bt(h, w) : void 0, D = h ? {
5085
+ const w = await gt(o[C]), h = s.getImageData(), u = A.map((I) => new ne(I.id)), E = h ? Bt(h, w) : void 0, D = h ? {
5086
5086
  id: J(),
5087
5087
  src: h.src,
5088
5088
  x: (E == null ? void 0 : E.x) || 0,
@@ -5092,11 +5092,11 @@ class An {
5092
5092
  scaleX: (E == null ? void 0 : E.zoom) || 1,
5093
5093
  scaleY: (E == null ? void 0 : E.zoom) || 1,
5094
5094
  rotation: 0
5095
- } : void 0, m = J(), Q = a.getLayouts().find((I) => I.panelId === d.panelId);
5096
- if (!Q)
5095
+ } : void 0, Q = J(), m = a.getLayouts().find((I) => I.panelId === d.panelId);
5096
+ if (!m)
5097
5097
  throw new z(d);
5098
5098
  return {
5099
- command: this.getCreateElementCommand(m, d, Q, {
5099
+ command: this.getCreateElementCommand(Q, d, m, {
5100
5100
  frameData: w,
5101
5101
  pattern: D,
5102
5102
  disablePlaceholder: e.data.disablePlaceholder,
@@ -5106,7 +5106,7 @@ class An {
5106
5106
  stepName: e.stepName
5107
5107
  }),
5108
5108
  regionEl: {
5109
- id: m,
5109
+ id: Q,
5110
5110
  region: d
5111
5111
  },
5112
5112
  removeExistingCommands: u
@@ -5245,13 +5245,13 @@ class an {
5245
5245
  if (a != null && a.selectedVariants) {
5246
5246
  const c = a.selectedVariants[0].id;
5247
5247
  if (o && c) {
5248
- const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5248
+ const B = (r = o.variants) == null ? void 0 : r.find((g) => g.id === c);
5249
5249
  if (B) {
5250
- const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5250
+ const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5251
5251
  await t.setSelectionsAndElements(
5252
5252
  e.stepName,
5253
5253
  [B],
5254
- l,
5254
+ g,
5255
5255
  async () => {
5256
5256
  var d;
5257
5257
  t.updateMetadata(e.stepName, {
@@ -5277,12 +5277,12 @@ class an {
5277
5277
  async changeColorsCommand(e, t, A, a, n) {
5278
5278
  var c;
5279
5279
  const i = {};
5280
- for (const [B, l] of n.entries())
5281
- i[B] = { browserValue: l, spotColor: (c = i[B]) == null ? void 0 : c.spotColor };
5280
+ for (const [B, g] of n.entries())
5281
+ i[B] = { browserValue: g, spotColor: (c = i[B]) == null ? void 0 : c.spotColor };
5282
5282
  const s = zA(e, t, A, i), o = await Re(s), r = [];
5283
5283
  for (const B of a) {
5284
- for (const [l, d] of n.entries())
5285
- r.push(new at(B, l, d));
5284
+ for (const [g, d] of n.entries())
5285
+ r.push(new at(B, g, d));
5286
5286
  r.push(new KA(B, s, o));
5287
5287
  }
5288
5288
  return new k(r);
@@ -5314,7 +5314,7 @@ class an {
5314
5314
  B.set(w, h.browserValue);
5315
5315
  }), !i.svg)
5316
5316
  throw new Error("Colors changed before SVG loaded. This should never happen!");
5317
- const l = await this.changeColorsCommand(
5317
+ const g = await this.changeColorsCommand(
5318
5318
  i.svg,
5319
5319
  i.width,
5320
5320
  i.height,
@@ -5323,7 +5323,7 @@ class an {
5323
5323
  );
5324
5324
  A.updateStorage(e.stepName, {
5325
5325
  colors: o
5326
- }), A.getCommandDispatcher()(l);
5326
+ }), A.getCommandDispatcher()(g);
5327
5327
  }
5328
5328
  async selectVariant(e, t, A, a, n) {
5329
5329
  const i = await this.selectVariantCommand(e, t, A, a, n);
@@ -5346,23 +5346,23 @@ class an {
5346
5346
  const D = n.getLayouts().find((p) => p.panelId === E.panelId);
5347
5347
  if (!D)
5348
5348
  throw new z(E);
5349
- const m = J();
5349
+ const Q = J();
5350
5350
  return {
5351
- regionElement: { id: m, region: E },
5352
- command: this.getCreateElementCommand(m, E, D, {
5351
+ regionElement: { id: Q, region: E },
5352
+ command: this.getCreateElementCommand(Q, E, D, {
5353
5353
  stepName: e.stepName,
5354
5354
  src: o,
5355
5355
  objectURL: c,
5356
5356
  svg: r
5357
5357
  })
5358
5358
  };
5359
- }, l = e.data.regions.map(B), C = [...l.map((E) => E.command), ...i];
5359
+ }, g = e.data.regions.map(B), C = [...g.map((E) => E.command), ...i];
5360
5360
  let w = Array.from(Object.values(r.colors)).map((E) => E.browserValue);
5361
5361
  const h = e.data.colorOption;
5362
5362
  return h && ((u = h.variants) == null || u.forEach((E) => {
5363
5363
  w = w.map((D) => {
5364
- var m;
5365
- return D.toLowerCase() === ((m = E.color) == null ? void 0 : m.toLowerCase()) ? E.name : D;
5364
+ var Q;
5365
+ return D.toLowerCase() === ((Q = E.color) == null ? void 0 : Q.toLowerCase()) ? E.name : D;
5366
5366
  });
5367
5367
  })), n.updateMetadata(e.stepName, { colors: w }), {
5368
5368
  command: new k(C),
@@ -5370,25 +5370,25 @@ class an {
5370
5370
  await n.setSelectionsAndElements(
5371
5371
  e.stepName,
5372
5372
  [t],
5373
- l.map((m) => m.regionElement),
5373
+ g.map((Q) => Q.regionElement),
5374
5374
  async () => {
5375
5375
  n.setMandatoryFulfilled(e.stepName, !0), a(!1);
5376
5376
  }
5377
5377
  );
5378
5378
  const E = await this.availableColors(e, n) || [], D = Object.keys(r.colors);
5379
5379
  if (e.data.colorPickerEnabled && E.length === 1 && D.length === 1) {
5380
- const m = E[0], p = D[0];
5380
+ const Q = E[0], p = D[0];
5381
5381
  await this.changeColors(
5382
5382
  e,
5383
- l.map((Q) => Q.regionElement),
5383
+ g.map((m) => m.regionElement),
5384
5384
  n,
5385
5385
  () => n.getCommandContext().getAllLayouts(),
5386
- /* @__PURE__ */ new Map([[p, m.variant.color]])
5386
+ /* @__PURE__ */ new Map([[p, Q.variant.color]])
5387
5387
  );
5388
5388
  } else
5389
5389
  e.data.colorPickerEnabled && await this.changeColors(
5390
5390
  e,
5391
- l.map((m) => m.regionElement),
5391
+ g.map((Q) => Q.regionElement),
5392
5392
  n,
5393
5393
  () => n.getCommandContext().getAllLayouts(),
5394
5394
  /* @__PURE__ */ new Map()
@@ -5424,9 +5424,9 @@ class nn {
5424
5424
  if (a != null && a.selectedVariants) {
5425
5425
  const c = a.selectedVariants[0].id;
5426
5426
  if (c) {
5427
- const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5427
+ const B = (r = o.variants) == null ? void 0 : r.find((g) => g.id === c);
5428
5428
  if (B) {
5429
- const l = B.material, d = s.map((C) => ({ id: C.id, region: C.stepRegion }));
5429
+ const g = B.material, d = s.map((C) => ({ id: C.id, region: C.stepRegion }));
5430
5430
  await t.setSelectionsAndElements(
5431
5431
  e.stepName,
5432
5432
  [B],
@@ -5437,7 +5437,7 @@ class nn {
5437
5437
  const w = e.data.targetMaterials.map((h) => C.applyMaterialVariant(
5438
5438
  h,
5439
5439
  o.id || "",
5440
- l || {}
5440
+ g || {}
5441
5441
  ));
5442
5442
  Promise.all(w).then(
5443
5443
  () => t.setMandatoryFulfilled(e.stepName, !0)
@@ -5500,13 +5500,13 @@ class sn {
5500
5500
  if (a != null && a.selectedVariants) {
5501
5501
  const c = a.selectedVariants[0].id;
5502
5502
  if (o && c) {
5503
- const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5503
+ const B = (r = o.variants) == null ? void 0 : r.find((g) => g.id === c);
5504
5504
  if (B) {
5505
- const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5505
+ const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5506
5506
  await t.setSelectionsAndElements(
5507
5507
  e.stepName,
5508
5508
  [B],
5509
- l,
5509
+ g,
5510
5510
  async () => {
5511
5511
  var C;
5512
5512
  const d = t.getModelContainer();
@@ -5596,55 +5596,55 @@ class on {
5596
5596
  if (A.setMandatoryFulfilled(e.stepName, t !== ""), !e.data || !e.data.regions || e.data.regions.length <= 0)
5597
5597
  return console.error("Missing configuration."), null;
5598
5598
  A.updateStorage(e.stepName, { text: t }), A.updateMetadata(e.stepName, { text: t });
5599
- const r = (B, l, d) => {
5600
- const C = d || J(), h = A.getLayouts().find((E) => E.panelId === l.panelId);
5599
+ const r = (B, g, d) => {
5600
+ const C = d || J(), h = A.getLayouts().find((E) => E.panelId === g.panelId);
5601
5601
  if (!h)
5602
- return console.error(`Can not find layout for region: ${l.panelId}`), null;
5602
+ return console.error(`Can not find layout for region: ${g.panelId}`), null;
5603
5603
  const u = [];
5604
5604
  return d && u.push(new ne(C)), u.push(
5605
5605
  new L(
5606
5606
  {
5607
- stepRegion: l,
5607
+ stepRegion: g,
5608
5608
  stepName: e.stepName,
5609
5609
  colors: {},
5610
5610
  id: C,
5611
5611
  svg: B,
5612
5612
  type: G.Illustration,
5613
- y: l.top,
5614
- x: l.left,
5615
- rotation: l.rotation,
5616
- width: l.width,
5617
- height: l.height,
5618
- layer: l.layer,
5619
- layerIndex: l.layerIndex,
5620
- immutable: l.immutable
5613
+ y: g.top,
5614
+ x: g.left,
5615
+ rotation: g.rotation,
5616
+ width: g.width,
5617
+ height: g.height,
5618
+ layer: g.layer,
5619
+ layerIndex: g.layerIndex,
5620
+ immutable: g.immutable
5621
5621
  },
5622
5622
  h
5623
5623
  )
5624
5624
  ), {
5625
5625
  id: C,
5626
- region: l,
5626
+ region: g,
5627
5627
  command: new k(u)
5628
5628
  };
5629
5629
  };
5630
5630
  if (i.length > 0) {
5631
- const l = i.map((d) => {
5631
+ const g = i.map((d) => {
5632
5632
  if (!d.region)
5633
5633
  return null;
5634
5634
  const C = s.svgPrint(t, d.region);
5635
5635
  return r(C, d.region, d.id);
5636
5636
  }).filter((d) => !!d).filter((d) => !!d).map((d) => d && d.command);
5637
5637
  return {
5638
- command: new k(l),
5638
+ command: new k(g),
5639
5639
  followup: async () => {
5640
5640
  }
5641
5641
  };
5642
5642
  } else {
5643
5643
  const B = e.data.regions.map(
5644
5644
  (d) => r(s.svgPrint(t, d), d)
5645
- ), l = B.filter((d) => !!d).map((d) => d && d.command);
5645
+ ), g = B.filter((d) => !!d).map((d) => d && d.command);
5646
5646
  return {
5647
- command: new k(l),
5647
+ command: new k(g),
5648
5648
  followup: async () => {
5649
5649
  const d = B.filter((C) => C).map((C) => C && { id: C.id, region: C.region });
5650
5650
  await A.setSelectionsAndElements(
@@ -5696,13 +5696,13 @@ class rn {
5696
5696
  if (a != null && a.selectedVariants) {
5697
5697
  const c = a.selectedVariants[0].id;
5698
5698
  if (o && c) {
5699
- const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5699
+ const B = (r = o.variants) == null ? void 0 : r.find((g) => g.id === c);
5700
5700
  if (B) {
5701
- const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5701
+ const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5702
5702
  await t.setSelectionsAndElements(
5703
5703
  e.stepName,
5704
5704
  [B],
5705
- l,
5705
+ g,
5706
5706
  async () => {
5707
5707
  t.setMandatoryFulfilled(e.stepName, !0);
5708
5708
  }
@@ -5766,7 +5766,7 @@ class rn {
5766
5766
  };
5767
5767
  }
5768
5768
  }
5769
- const QA = new rn();
5769
+ const mA = new rn();
5770
5770
  class cn {
5771
5771
  async init(e, t, A) {
5772
5772
  const a = e.option;
@@ -5825,8 +5825,8 @@ class cn {
5825
5825
  };
5826
5826
  }
5827
5827
  }
5828
- const mA = new cn();
5829
- class gn {
5828
+ const QA = new cn();
5829
+ class ln {
5830
5830
  constructor() {
5831
5831
  this.shapeFillId = "spiff-fill-shape";
5832
5832
  }
@@ -5883,13 +5883,13 @@ class gn {
5883
5883
  if (a != null && a.selectedVariants) {
5884
5884
  const c = a.selectedVariants[0].id;
5885
5885
  if (o && c) {
5886
- const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5886
+ const B = (r = o.variants) == null ? void 0 : r.find((g) => g.id === c);
5887
5887
  if (B) {
5888
- const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5888
+ const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5889
5889
  await t.setSelectionsAndElements(
5890
5890
  e.stepName,
5891
5891
  [B],
5892
- l,
5892
+ g,
5893
5893
  async () => {
5894
5894
  var d;
5895
5895
  t.updateStorage(e.stepName, {
@@ -5913,9 +5913,9 @@ class gn {
5913
5913
  };
5914
5914
  if (A.length > 0) {
5915
5915
  const r = (B) => {
5916
- const l = B.region;
5917
- if (!n.find((w) => w.panelId === (l == null ? void 0 : l.panelId)))
5918
- throw new z(l);
5916
+ const g = B.region;
5917
+ if (!n.find((w) => w.panelId === (g == null ? void 0 : g.panelId)))
5918
+ throw new z(g);
5919
5919
  const C = s();
5920
5920
  return new at(B.id, this.shapeFillId, C);
5921
5921
  }, c = A.map(r).filter((B) => !!B);
@@ -5981,14 +5981,14 @@ class gn {
5981
5981
  C
5982
5982
  )
5983
5983
  };
5984
- }, c = e.data.regions.map(r), B = c.filter((d) => !!d).map((d) => d == null ? void 0 : d.command), l = c.filter((d) => !!d).map((d) => ({ id: d.id, region: d.region }));
5984
+ }, c = e.data.regions.map(r), B = c.filter((d) => !!d).map((d) => d == null ? void 0 : d.command), g = c.filter((d) => !!d).map((d) => ({ id: d.id, region: d.region }));
5985
5985
  return {
5986
5986
  command: new k(B),
5987
5987
  followup: async () => {
5988
5988
  await a.setSelectionsAndElements(
5989
5989
  e.stepName,
5990
5990
  t.variant ? [t.variant] : [],
5991
- l,
5991
+ g,
5992
5992
  async () => {
5993
5993
  a.updateStorage(e.stepName, { colour: s() });
5994
5994
  }
@@ -5998,8 +5998,8 @@ class gn {
5998
5998
  }
5999
5999
  }
6000
6000
  }
6001
- const Ee = new gn();
6002
- class ln {
6001
+ const Ee = new ln();
6002
+ class gn {
6003
6003
  constructor() {
6004
6004
  this.latestToast = null, this.toastType = null, this.toastCallbacks = [];
6005
6005
  }
@@ -6024,7 +6024,7 @@ class ln {
6024
6024
  );
6025
6025
  }
6026
6026
  }
6027
- const Bn = new ln(), Ze = 30;
6027
+ const Bn = new gn(), Ze = 30;
6028
6028
  class Je extends Error {
6029
6029
  constructor(e) {
6030
6030
  super(e), Object.setPrototypeOf(this, new.target.prototype), this.name = Je.name;
@@ -6093,11 +6093,11 @@ class Cn {
6093
6093
  color: ((s = await this.getDefaultColorVariant(e.data)) == null ? void 0 : s.name) || await this.getDefaultColor(e.data),
6094
6094
  fillImage: o == null ? void 0 : o.name
6095
6095
  });
6096
- const l = V.getDefaultVariant(a);
6097
- if (l)
6096
+ const g = V.getDefaultVariant(a);
6097
+ if (g)
6098
6098
  return this.selectVariantCommand(
6099
6099
  e,
6100
- l,
6100
+ g,
6101
6101
  {},
6102
6102
  [],
6103
6103
  t,
@@ -6219,20 +6219,20 @@ class Cn {
6219
6219
  const o = (A.data.maxLength - i.length).toString();
6220
6220
  s.helperText = `${o} characters remaining`;
6221
6221
  const r = [], c = /* @__PURE__ */ new Map(), B = /* @__PURE__ */ new Map();
6222
- for (const l of t) {
6223
- if (!l.fontData)
6222
+ for (const g of t) {
6223
+ if (!g.fontData)
6224
6224
  throw new b("Failed to resolve font data for text.");
6225
6225
  const [d, C] = Ne(
6226
- l.fontSize,
6227
- l.fontData,
6228
- { left: l.x, top: l.y, width: l.width, height: l.height, rotation: l.rotation, panelId: "" },
6226
+ g.fontSize,
6227
+ g.fontData,
6228
+ { left: g.x, top: g.y, width: g.width, height: g.height, rotation: g.rotation, panelId: "" },
6229
6229
  [i],
6230
6230
  { size: A.data.size, minSize: A.data.minSize, maxSize: A.data.maxSize }
6231
6231
  );
6232
- c.set(l.id, d), B.set(l.id, C);
6232
+ c.set(g.id, d), B.set(g.id, C);
6233
6233
  const w = A.data.curved ? i : (C || []).join(`
6234
6234
  `);
6235
- r.push(this.generateTextChangeCommandsForRegion(d, A.data, l.id, w));
6235
+ r.push(this.generateTextChangeCommandsForRegion(d, A.data, g.id, w));
6236
6236
  }
6237
6237
  return !A.data.curved && t.length > 0 && !Array.from(B.values()).every((d) => d) ? (s.errors.push({ localizationKey: "workflow.steps.text.doesNotFit" }), s) : (a.updateStorage(A.stepName, { text: e }), a.updateMetadata(A.stepName, {
6238
6238
  text: i
@@ -6267,11 +6267,11 @@ class Cn {
6267
6267
  const a = t.getSerializedStep(
6268
6268
  e.stepName,
6269
6269
  A.serializableWorkflow.steps
6270
- ), s = Object.values(A.layouts).map((l) => l.elements).flat().filter((l) => l.stepName === e.stepName), o = e.option;
6270
+ ), s = Object.values(A.layouts).map((g) => g.elements).flat().filter((g) => g.stepName === e.stepName), o = e.option;
6271
6271
  if (a != null && a.selectedVariants) {
6272
- const l = a.selectedVariants[0].id;
6273
- if (o && l) {
6274
- const d = (r = o.variants) == null ? void 0 : r.find((C) => C.id === l);
6272
+ const g = a.selectedVariants[0].id;
6273
+ if (o && g) {
6274
+ const d = (r = o.variants) == null ? void 0 : r.find((C) => C.id === g);
6275
6275
  if (d) {
6276
6276
  const C = await this.fontDataFromVariant(d), w = s.map((D) => ({ id: D.id, region: D.stepRegion })), h = (c = a.storage) == null ? void 0 : c.color, u = (B = a.storage) == null ? void 0 : B.text;
6277
6277
  await t.setSelectionsAndElements(
@@ -6280,8 +6280,8 @@ class Cn {
6280
6280
  w,
6281
6281
  async () => {
6282
6282
  t.updateMetadata(e.stepName, { color: h, text: u }), t.updateStorage(e.stepName, { text: u, inputText: u });
6283
- const D = s.map((p) => new St(p.id, C)), m = new k(D);
6284
- t.getCommandDispatcher()(m);
6283
+ const D = s.map((p) => new St(p.id, C)), Q = new k(D);
6284
+ t.getCommandDispatcher()(Q);
6285
6285
  }
6286
6286
  );
6287
6287
  const { command: E } = j.updateInputText(
@@ -6329,10 +6329,10 @@ class Cn {
6329
6329
  var B;
6330
6330
  const r = n.markUpdatePending(), c = await this.fontDataFromVariant(t);
6331
6331
  if (a.length > 0) {
6332
- const l = a.map((w) => new St(w.id, c));
6332
+ const g = a.map((w) => new St(w.id, c));
6333
6333
  if (o) {
6334
6334
  const w = a.map((h) => new Xe(h.id, o));
6335
- l.push(...w);
6335
+ g.push(...w);
6336
6336
  }
6337
6337
  const d = await this.changeInputTextWithRegion(
6338
6338
  e,
@@ -6345,14 +6345,14 @@ class Cn {
6345
6345
  i,
6346
6346
  s
6347
6347
  );
6348
- return d && l.push(d), {
6349
- command: new k(l),
6348
+ return d && g.push(d), {
6349
+ command: new k(g),
6350
6350
  followup: async () => {
6351
6351
  n.markUpdateCompleted(r), await n.setSelectionsAndElements(e.stepName, [t], a);
6352
6352
  }
6353
6353
  };
6354
6354
  } else {
6355
- const l = await this.createTextboxRegions(
6355
+ const g = await this.createTextboxRegions(
6356
6356
  e.stepName,
6357
6357
  t,
6358
6358
  e.data,
@@ -6363,15 +6363,15 @@ class Cn {
6363
6363
  e,
6364
6364
  e.data.size || Ze,
6365
6365
  c,
6366
- ((B = l[0]) == null ? void 0 : B.newElement.input) || A.text || e.data.defaultText || "",
6366
+ ((B = g[0]) == null ? void 0 : B.newElement.input) || A.text || e.data.defaultText || "",
6367
6367
  A,
6368
6368
  n,
6369
6369
  !!A.customiseAllText,
6370
6370
  i,
6371
6371
  s
6372
- ), C = l.flatMap((h) => h.commands);
6372
+ ), C = g.flatMap((h) => h.commands);
6373
6373
  if (o) {
6374
- const h = l.map(
6374
+ const h = g.map(
6375
6375
  (u) => new Xe(u.regionElement.id, o)
6376
6376
  );
6377
6377
  C.push(...h);
@@ -6412,7 +6412,7 @@ class Cn {
6412
6412
  colorProfileAssetKey: (w = h.colorProfile) == null ? void 0 : w.key
6413
6413
  });
6414
6414
  }
6415
- const E = await this.getDefaultColor(A), D = E || "#000000", m = {
6415
+ const E = await this.getDefaultColor(A), D = E || "#000000", Q = {
6416
6416
  stepRegion: B,
6417
6417
  stepName: e,
6418
6418
  align: this.textAlign(A),
@@ -6436,34 +6436,34 @@ class Cn {
6436
6436
  curved: A.curved,
6437
6437
  paths: A.paths,
6438
6438
  fillSpotColorDefinition: u
6439
- }, p = [], Q = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map();
6440
- if (!m.fontData)
6439
+ }, p = [], m = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map();
6440
+ if (!Q.fontData)
6441
6441
  throw new b("Failed to resolve font data for text.");
6442
6442
  const [F, y] = Ne(
6443
- m.fontSize,
6444
- m.fontData,
6443
+ Q.fontSize,
6444
+ Q.fontData,
6445
6445
  {
6446
- left: m.x,
6447
- top: m.y,
6448
- width: m.width,
6449
- height: m.height,
6450
- rotation: m.rotation,
6446
+ left: Q.x,
6447
+ top: Q.y,
6448
+ width: Q.width,
6449
+ height: Q.height,
6450
+ rotation: Q.rotation,
6451
6451
  panelId: ""
6452
6452
  },
6453
6453
  [o],
6454
6454
  { size: A.size, minSize: A.minSize, maxSize: A.maxSize }
6455
6455
  );
6456
- Q.set(m.id, F), I.set(m.id, y);
6456
+ m.set(Q.id, F), I.set(Q.id, y);
6457
6457
  const Y = A.curved || A.vertical ? o : (y || []).join(`
6458
6458
  `);
6459
6459
  p.push(
6460
- this.generateTextChangeCommandsForRegion(F, A, m.id, Y)
6460
+ this.generateTextChangeCommandsForRegion(F, A, Q.id, Y)
6461
6461
  );
6462
- const N = new L(m, d);
6462
+ const N = new L(Q, d);
6463
6463
  return {
6464
6464
  regionElement: { id: C, region: B },
6465
6465
  commands: [N, ...p],
6466
- newElement: m,
6466
+ newElement: Q,
6467
6467
  fontData: a
6468
6468
  };
6469
6469
  } catch (h) {
@@ -6497,30 +6497,30 @@ class Cn {
6497
6497
  * @deprecated
6498
6498
  */
6499
6499
  async changeInputTextWithRegion(e, t, A, a, n, i, s, o, r, c) {
6500
- const B = (a || "").replace(/^(?![\u000A\u000D])[\u0000-\u001F\u007F-\u009F]/g, ""), l = this.getProcessedInput(B, e.data, s), d = i.getRegionElements(e.stepName), C = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map();
6501
- for (const m of d)
6502
- if (m.region) {
6503
- const [p, Q] = Ne(
6500
+ const B = (a || "").replace(/^(?![\u000A\u000D])[\u0000-\u001F\u007F-\u009F]/g, ""), g = this.getProcessedInput(B, e.data, s), d = i.getRegionElements(e.stepName), C = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map();
6501
+ for (const Q of d)
6502
+ if (Q.region) {
6503
+ const [p, m] = Ne(
6504
6504
  t,
6505
6505
  A,
6506
- m.region,
6507
- [l],
6506
+ Q.region,
6507
+ [g],
6508
6508
  { size: e.data.size, minSize: e.data.minSize, maxSize: e.data.maxSize }
6509
6509
  );
6510
- C.set(m.id, p), w.set(m.id, Q);
6510
+ C.set(Q.id, p), w.set(Q.id, m);
6511
6511
  }
6512
6512
  const u = (() => {
6513
- if (e.data && e.data.maxLength && l.length > e.data.maxLength)
6513
+ if (e.data && e.data.maxLength && g.length > e.data.maxLength)
6514
6514
  return c && c(!0), { info: "0" };
6515
- const m = i.getProfanities(), p = st(l.toLowerCase());
6516
- for (const Q of p)
6517
- for (const I in m) {
6518
- const F = m[I].toLowerCase().replace(/\s/g, "");
6519
- if (Q === F)
6515
+ const Q = i.getProfanities(), p = st(g.toLowerCase());
6516
+ for (const m of p)
6517
+ for (const I in Q) {
6518
+ const F = Q[I].toLowerCase().replace(/\s/g, "");
6519
+ if (m === F)
6520
6520
  return o(!0), { error: "Blocked profanity." };
6521
6521
  }
6522
- return !e.data.vertical && !e.data.allowNewlines && (l.includes(`
6523
- `) || l.includes("\r")) ? (o(!0), { error: "Cannot span multiple lines." }) : !e.data.curved && !Array.from(w.values()).every((I) => I) ? (o(!0), { error: "Does not fit." }) : (o(!1), { info: (e.data.maxLength - l.length).toString() });
6522
+ return !e.data.vertical && !e.data.allowNewlines && (g.includes(`
6523
+ `) || g.includes("\r")) ? (o(!0), { error: "Cannot span multiple lines." }) : !e.data.curved && !Array.from(w.values()).every((I) => I) ? (o(!0), { error: "Does not fit." }) : (o(!1), { info: (e.data.maxLength - g.length).toString() });
6524
6524
  })();
6525
6525
  if (u.error) {
6526
6526
  r(u.error);
@@ -6532,14 +6532,14 @@ class Cn {
6532
6532
  text: this.injectReplaceableText(B, e.data)
6533
6533
  }), (n.defaultCleared || !e.data.deleteDefaultOnFocus) && i.setMandatoryFulfilled(e.stepName, !0);
6534
6534
  const E = [];
6535
- for (const m of d) {
6536
- const p = e.data.curved ? l : (w.get(m.id) || []).join(`
6535
+ for (const Q of d) {
6536
+ const p = e.data.curved ? g : (w.get(Q.id) || []).join(`
6537
6537
  `);
6538
6538
  E.push(
6539
6539
  this.generateTextChangeCommandsForRegion(
6540
- C.get(m.id) || 1,
6540
+ C.get(Q.id) || 1,
6541
6541
  e.data,
6542
- m.id,
6542
+ Q.id,
6543
6543
  p
6544
6544
  )
6545
6545
  );
@@ -6548,7 +6548,7 @@ class Cn {
6548
6548
  }
6549
6549
  }
6550
6550
  const j = new Cn();
6551
- class Qt {
6551
+ class mt {
6552
6552
  }
6553
6553
  const wn = "data:application/font-woff;base64,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", hn = `<?xml version="1.0" encoding="iso-8859-1"?>
6554
6554
  <!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
@@ -7811,42 +7811,42 @@ IfnI8vaNAAAAAElFTkSuQmCC" transform="matrix(0.13 0.0141 -0.0141 0.1301 104.926 1
7811
7811
  </g>
7812
7812
  </svg>
7813
7813
 
7814
- `, v = (g) => ZA("http://www.w3.org/2000/svg", g), mt = (g, e) => {
7814
+ `, v = (l) => ZA("http://www.w3.org/2000/svg", l), Qt = (l, e) => {
7815
7815
  const t = v("rect");
7816
- return t.setAttribute("height", `${g}`), t.setAttribute("width", `${e}`), t;
7816
+ return t.setAttribute("height", `${l}`), t.setAttribute("width", `${e}`), t;
7817
7817
  }, En = () => {
7818
- const g = v("svg");
7819
- return g.setAttribute("xmlns", "http://www.w3.org/2000/svg"), g.setAttribute("xmlns:xlink", "http://www.w3.org/1999/xlink"), g.setAttribute("version", "1.1"), g;
7820
- }, un = (g) => {
7818
+ const l = v("svg");
7819
+ return l.setAttribute("xmlns", "http://www.w3.org/2000/svg"), l.setAttribute("xmlns:xlink", "http://www.w3.org/1999/xlink"), l.setAttribute("version", "1.1"), l;
7820
+ }, un = (l) => {
7821
7821
  const e = v("use");
7822
- return e.setAttribute("xlink:href", g), e.setAttribute("href", g), e;
7822
+ return e.setAttribute("xlink:href", l), e.setAttribute("href", l), e;
7823
7823
  };
7824
- function pA(g) {
7825
- const e = En(), t = /viewBox="0 0 (.+?) (.+?)"/.exec(g) || ["0", "0"], A = parseFloat(t[1]), a = parseFloat(t[2]);
7824
+ function pA(l) {
7825
+ const e = En(), t = /viewBox="0 0 (.+?) (.+?)"/.exec(l) || ["0", "0"], A = parseFloat(t[1]), a = parseFloat(t[2]);
7826
7826
  return e.setAttribute("height", `${a}`), e.setAttribute("width", `${A}`), [e, a, A];
7827
7827
  }
7828
- const Qn = (g, e, t) => {
7828
+ const mn = (l, e, t) => {
7829
7829
  const A = v("g");
7830
- g.appendChild(A), A.setAttribute("id", t), A.innerHTML = e;
7830
+ l.appendChild(A), A.setAttribute("id", t), A.innerHTML = e;
7831
7831
  };
7832
- function DA(g, e, t) {
7832
+ function DA(l, e, t) {
7833
7833
  const A = J();
7834
- Qn(e, t, `bgdef-${A}`), g.appendChild(un(`#bgdef-${A}`));
7834
+ mn(e, t, `bgdef-${A}`), l.appendChild(un(`#bgdef-${A}`));
7835
7835
  }
7836
- const IA = (g, e, t, A) => {
7836
+ const IA = (l, e, t, A) => {
7837
7837
  const a = fe("filter");
7838
7838
  a.setAttribute("id", A), a.setAttribute("height", "200%"), a.setAttribute("width", "200%"), a.setAttribute("x", "-50%"), a.setAttribute("y", "-50%");
7839
7839
  const n = fe("feOffset");
7840
- a.appendChild(n), n.setAttribute("result", "offOut"), n.setAttribute("in", "SourceAlpha"), n.setAttribute("dx", `${g}`), n.setAttribute("dy", `${e}`);
7840
+ a.appendChild(n), n.setAttribute("result", "offOut"), n.setAttribute("in", "SourceAlpha"), n.setAttribute("dx", `${l}`), n.setAttribute("dy", `${e}`);
7841
7841
  const i = fe("feGaussianBlur");
7842
7842
  a.appendChild(i), i.setAttribute("result", "blurOut"), i.setAttribute("in", "offOut"), i.setAttribute("stdDeviation", `${t}`);
7843
7843
  const s = fe("feBlend");
7844
7844
  return a.appendChild(s), s.setAttribute("in", "SourceGraphic"), s.setAttribute("in2", "blurOut"), s.setAttribute("mode", "normal"), a;
7845
- }, fA = (g) => {
7846
- let e = g;
7845
+ }, fA = (l) => {
7846
+ let e = l;
7847
7847
  return e = e.replace(/feoffset/gi, "feOffset"), e = e.replace(/fegaussianblur/gi, "feGaussianBlur"), e = e.replace(/feblend/gi, "feBlend"), e = e.replace(/lineargradient/gi, "linearGradient"), e = e.replace(/stddeviation/gi, "stdDeviation"), e;
7848
7848
  };
7849
- function pt(g, e, t, A, a, n) {
7849
+ function pt(l, e, t, A, a, n) {
7850
7850
  const i = a || 1, s = n || 1, o = {
7851
7851
  x: e[0],
7852
7852
  y: e[1],
@@ -7855,11 +7855,11 @@ function pt(g, e, t, A, a, n) {
7855
7855
  };
7856
7856
  if (o.width <= 0)
7857
7857
  return;
7858
- const r = mn(o.height, o.width, t * i, A * s), c = (A - r * o.width) / 2 - r * o.x, B = (t - r * o.height) / 2 - r * o.y;
7859
- g.setAttribute("transform", `translate(${c} ${B}) scale(${r} ${r})`);
7858
+ const r = Qn(o.height, o.width, t * i, A * s), c = (A - r * o.width) / 2 - r * o.x, B = (t - r * o.height) / 2 - r * o.y;
7859
+ l.setAttribute("transform", `translate(${c} ${B}) scale(${r} ${r})`);
7860
7860
  }
7861
- function mn(g, e, t, A) {
7862
- const a = t / g, n = A / e;
7861
+ function Qn(l, e, t, A) {
7862
+ const a = t / l, n = A / e;
7863
7863
  return a > 1 && n > 1 ? Math.min(a, n) : a > 1 && n < 1 ? n : a < 1 && n > 1 ? a : Math.min(a, n);
7864
7864
  }
7865
7865
  const Gt = {
@@ -7896,18 +7896,18 @@ class Dt {
7896
7896
  o && (i.push(s), t = s);
7897
7897
  for (const c of r) {
7898
7898
  const B = n[c];
7899
- let l;
7899
+ let g;
7900
7900
  switch (typeof B) {
7901
7901
  case "boolean":
7902
- l = B | 0;
7902
+ g = B | 0;
7903
7903
  break;
7904
7904
  case "number":
7905
- l = (B * 100 | 0) / 100;
7905
+ g = (B * 100 | 0) / 100;
7906
7906
  break;
7907
7907
  default:
7908
7908
  throw new he("Failed to encode path.");
7909
7909
  }
7910
- o || i.push(" "), i.push(l), o = !1;
7910
+ o || i.push(" "), i.push(g), o = !1;
7911
7911
  }
7912
7912
  return i.join("");
7913
7913
  };
@@ -7929,8 +7929,8 @@ class Dt {
7929
7929
  );
7930
7930
  for (let c = 0; c < s.length / r.length; c++) {
7931
7931
  const B = { type: i, relative: o };
7932
- for (let l = 0; l < r.length; l++)
7933
- B[r[l]] = s[c * r.length + l];
7932
+ for (let g = 0; g < r.length; g++)
7933
+ B[r[g]] = s[c * r.length + g];
7934
7934
  a.push(B);
7935
7935
  }
7936
7936
  } else
@@ -7972,7 +7972,7 @@ class Dt {
7972
7972
  }
7973
7973
  }
7974
7974
  }
7975
- class pn extends Qt {
7975
+ class pn extends mt {
7976
7976
  constructor() {
7977
7977
  super(...arguments), this.moduleName = "Favourites";
7978
7978
  }
@@ -7988,8 +7988,8 @@ class pn extends Qt {
7988
7988
  }
7989
7989
  brandSvg(e, t) {
7990
7990
  const A = e.toSVG(2), a = e.getBoundingBox(), n = a.x2 - a.x1, i = e.toPathData(3), s = () => {
7991
- const p = v("g"), Q = v("defs");
7992
- p.appendChild(Q), Q.appendChild(IA(3, 7, 4, "shadow"));
7991
+ const p = v("g"), m = v("defs");
7992
+ p.appendChild(m), m.appendChild(IA(3, 7, 4, "shadow"));
7993
7993
  const I = v("g");
7994
7994
  p.appendChild(I), I.setAttribute("filter", "url(#shadow)"), I.innerHTML = A;
7995
7995
  const F = v("g");
@@ -8003,20 +8003,20 @@ class pn extends Qt {
8003
8003
  return "";
8004
8004
  const B = v("defs");
8005
8005
  o.appendChild(B), DA(o, B, t);
8006
- const l = r * 0.23, d = c * 0.94, C = c * 0.04, w = r * 0.53, h = v("g");
8006
+ const g = r * 0.23, d = c * 0.94, C = c * 0.04, w = r * 0.53, h = v("g");
8007
8007
  o.appendChild(h), h.setAttribute("transform", `translate(${C} ${w}) rotate(-21)`);
8008
- const u = mt(l, d);
8008
+ const u = Qt(g, d);
8009
8009
  u.setAttribute("opacity", "0"), h.appendChild(u);
8010
8010
  const E = v("g");
8011
8011
  h.appendChild(E);
8012
8012
  const D = s();
8013
8013
  E.appendChild(D);
8014
- const m = wt(i);
8015
- return pt(E, m, l, d), fA(o.outerHTML);
8014
+ const Q = wt(i);
8015
+ return pt(E, Q, g, d), fA(o.outerHTML);
8016
8016
  }
8017
8017
  }
8018
8018
  const Dn = "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==";
8019
- class In extends Qt {
8019
+ class In extends mt {
8020
8020
  constructor(e, t) {
8021
8021
  super(), this.moduleName = "Maltesers", this.shortLength = 5, this.indicator = (A) => A ? 1 : 0, this.backgroundSvg = e, this.backgroundShortSvg = t;
8022
8022
  }
@@ -8043,28 +8043,28 @@ class In extends Qt {
8043
8043
  S,
8044
8044
  T + (s / 3 - S) ** 2 / s * this.indicator(S < s / 3)
8045
8045
  ]), N.transform(([S, T]) => [S - (i - T) * (s - S) / 800, T]), I;
8046
- }, [c, B, l] = pA(t);
8046
+ }, [c, B, g] = pA(t);
8047
8047
  if (!c)
8048
8048
  return "";
8049
8049
  const d = v("defs");
8050
8050
  c.appendChild(d), DA(c, d, t);
8051
8051
  let C, w, h, u;
8052
- A ? (C = B * 0.25 * (1 + 0.1), w = l / 2 * (1 + 0.1), h = l * 0.22, u = B * 0.32) : (C = B * 0.22 * (1 + 0.1), w = l * 0.8, h = l * 0.067, u = B * 0.33);
8052
+ A ? (C = B * 0.25 * (1 + 0.1), w = g / 2 * (1 + 0.1), h = g * 0.22, u = B * 0.32) : (C = B * 0.22 * (1 + 0.1), w = g * 0.8, h = g * 0.067, u = B * 0.33);
8053
8053
  const E = v("g");
8054
8054
  c.appendChild(E), E.setAttribute("transform", `translate(${h} ${u}) rotate(-10)`);
8055
- const D = mt(C, w);
8055
+ const D = Qt(C, w);
8056
8056
  D.setAttribute("opacity", "0"), E.appendChild(D);
8057
- const m = v("g");
8058
- E.appendChild(m);
8057
+ const Q = v("g");
8058
+ E.appendChild(Q);
8059
8059
  const p = r();
8060
- m.appendChild(p);
8061
- const Q = wt(o);
8062
- return pt(m, Q, C, w), c.outerHTML;
8060
+ Q.appendChild(p);
8061
+ const m = wt(o);
8062
+ return pt(Q, m, C, w), c.outerHTML;
8063
8063
  }
8064
8064
  // 1 if true, 0 if false.
8065
8065
  }
8066
8066
  const fn = "data:application/octet-stream;base64,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DOYNZA3mDlQOyg88D54QEBCGEQARchHsEmIS1BOWFAwUghTwFWIV1BaiFxQXkhgEGMYZdBomGtQbfhwYHL4dYB3+HpgfPh/oIJYhPCHmIpQjRiPsJJolSCXuJpQnQifoKJIpRAAmAAn/8QAK//sADP/7AA3/+wAO//sAD//7ABD/+wAR//sAEv/7ABP/+wAU//sAFf/xABb/8QAZ//sAHf/2AB7/+wAf//sAIP/xACH/+wAi//sAI//7ACT/+wAl//EAJv/2ACf/8QAo//sAKf/2ACr/+wAr//sALP/sAC3/7AAu/+IAL//dADD/9gAx/+wAMv/7ADP/+wA0//YAKwAG//EACP/nAAn/4gAK/9MAC//iAAz/9gAN/+IADv/sAA//4gAQ/9gAEf/iABL/1QAT//EAFP/nABX/8QAW/9gAMf/TADL/pgAz//MANP/nADX/8QA2//EAN//7ADj/7gA5//YAOv/7ADv/2AA8//EAPf/2AD7/9gA///EAQP/sAEH/+wBC/+wAQ//xAET/7ABF/+wARv/2AEf/3QBI/90ASf/EAEr/zgBL//YAKwAG//YAB//2AAn/3QAL/+wADP/sAA3/8QAO//YAD//sABD/8QAR/+wAEv/iABP/5wAU/+wAFf/dABb/7AAX/78AMf/YADL/sAAz/+IANP/iADX/8QA2/+cAN//xADj/3QA5/+wAOv/2ADv/4gA8//EAPf/xAD7/8QA///YAQP/YAEH/9gBC/+cAQ//sAET/7ABF/+wARv/xAEf/zgBI/9MASf/OAEr/zgBL/+wAKgAG//YAB//iAAj/4gAK/+IADP/dAA3/ugAO/+IAD//iABD/5wAR/+IAEv/dABP/yQAU/90AFf+mABb/0wAx/5gAMv/YADP/4gA0/9MANf/xADb/7AA3/+wAOP/iADn/7AA6//EAO//dADz/5wA9/+wAPv/sAD//5wBA/9gAQf/sAEL/zgBD/+wARP/YAEX/tQBG/90AR/+hAEj/oQBJ/8QASv+DAEv/7AAqAAb/8QAH/90ACP/YAAn/oQAL/8kADP/iAA3/sAAO/+cAD//YABD/4gAR/90AEv/bABP/4gAU/+IAFf/TABb/5wAg/+QAMf/nADL/3AAz//QANP/rADX/9AA2//IAN//4ADj/8AA5//QAOv/1ADv/7AA8/+oAPf/7AD7/9wA///IAQP/tAEH/+wBC/+IAQ//2AET/4wBF/7YARv/vAEf/pgBK/6MAS//yACYAB//TAAj/8QAK/84ADP/dAA3/9gAO//EAD//dABD/pgAR/8kAEv+6ABP/7AAU/90AFf/OADH/xAAy/5IAM//sADT/3QA1/+cANv/xADf/9gA4/90AO/9WADz/5wA9//EAPv/sAD//5wBA/84AQf/dAEL/0wBD/+cARP/nAEX/5wBG/+cAR//dAEj/2ABJ/7oASv/JAEv/4gAsAAb/+wAH//sACP/xAAn/zgAK/+cAC//dAAz/9gAN/9gADv/tAA//7AAQ/+kAEf/rABL/3QAT/90AFP/hABX/3QAW/90AMf/nADL/vwAz/+cANP/nADX/8QA2//EAN//sADj/5wA5//YAOv/2ADv/4gA8//EAPf/2AD7/+wA///sAQP/2AEH/+wBC/+wAQ//7AET/7ABF/9MARv/7AEf/yQBI/84ASf+wAEr/xABL/+cADgAG//sACf/xAAv/7AAN//sADv/7AA8AAAAR//EAEv/0ABP/9gAU//EAFf/xABb/7AAx//YAQP/2ACkABv/7AAf/9gAI//sACf/iAAr/5wAL/+wADP/vAA3/3QAO//sAD//qABD/8QAR/+wAEv/nABP/8QAU/+cAFf/iABb/7AAx/+cAMv/vADP//AA0/+cANf/7ADb//gA4//EAOf/8ADr//AA7/+kAPP/6AD3//QA+//4AP//7AEL/6gBD//0ARP/2AEX/7ABG//EAR//YAEj/4gBJ/+wASv/LAEv//AAsAAb/+wAH//EACP/2AAn/0wAK/+IAC//JAAz/5wAN/90ADv/iAA//7AAQ/+cAEf/sABL/3QAT/9MAFP/iABX/zgAW/+cAMf/YADL/xAAz/+wANP/dADX/6AA2//EAN//xADj/4wA5//EAOv/2ADv/7AA8/+wAPf/sAD7/9gA//+wAQP/iAEH/8QBC/90AQ//nAET/5wBF/8QARv/mAEf/xABI/8kASf+1AEr/rQBL/+IALAAG//sAB//7AAj/9gAJ/9MACv/2AAv/ugAM/+kADf/dAA7/9gAP/+wAEP/2ABH/8AAS//EAE//2ABT/5wAV/9gAFv/sADH/vwAy/9UAM//eADT/3wA1//EANv/xADf/9gA4/+IAOf/xADr/9gA7/+wAPP/xAD3/9gA+//EAP//2AED/2ABB//EAQv/nAEP/9gBE/+cARf/TAEb/8QBH/9gASP/YAEn/xgBK/78AS//xACsABv/7AAf/9gAI/+wACf/TAAr/5wAL/90ADP/lAA3/zgAO/90AD//dABD/7AAR/+IAEv/iABP/2AAU/+IAFf/JABb/5wAx/90AMv/EADP/6wA0/+EANf/wADb/8AA4/9wAOf/dADr/7AA7/9gAPP/sAD3/5wA+/+wAP//iAED/0wBB/+IAQv/YAEP/4gBE/84ARf/JAEb/4gBH/8kASP/OAEn/vwBK/8kAS//TACwABv/7AAf/3wAI/+cACf+wAAr/4wAL/8kADP/dAA3/xwAO/+cAD//dABD/7AAR/+cAEv/iABP/yQAU/9cAFf+/ABb/4gAa/+kAMf/YADL/uwAz/+EANP/dADb/6wA3//MAOP/lADn/8QA6//IAO//eADz/5wA9/+4APv/zAD//8ABA/+IAQf/2AEL/6gBD//YARP/kAEX/zABG/+8AR/+0AEj/uwBJ/64ASv+vAEv/5QAsAAb/+wAH/90ACP/nAAn/4gAK/9MAC//nAAz/3QAN//YADv/eAA//3QAQ/7AAEf/OABL/sAAT//sAFP/dABX/0wAW/9MAMf/iADL/iAAz//YANP/OADX/9gA2//EAN//xADj/0wA5//YAOv/zADv/gAA8//EAPf/7AD7/+wA///YAQP/OAEH/7gBC/84AQ//2AET/2ABF//sARv/2AEf/5wBI/+cASf/TAEr/4gBL/+wALAAG//sAB//2AAj/8QAJ/9gACv/nAAv/3QAM/+IADf/dAA7/4gAP/+IAEP/nABH/5wAS/9gAE//YABT/3QAV/84AFv/sADH/5wAy/78AM//nADT/2AA1/+cANv/nADf/7AA4/90AOf/sADr/7AA7/+cAPP/sAD3/8QA+/+wAP//xAED/4gBB//EAQv/dAEP/5wBE/+IARf/YAEb/5wBH/78ASP/HAEn/sABK/7UAS//dACsABv/xAAf/8QAI/+IACf/dAAr/0wAL/+IADP/iAA3/3QAO/+cAD//dABD/zgAR/9MAEv/EABP/0wAU/84AFv/dADH/4gAy/6EAM//jADT/3QA1/+wANv/sADf/5wA4/90AOf/nADr/8QA7/78APP/xAD3/9gA+/+wAP//nAED/3QBB/+cAQv/nAEP/5wBE/+IARf/OAEb/3QBH/8QASP/JAEn/lwBK/7oAS//YACkABv/sAAf/0wAI/90ACf/OAAr/3QAM/90ADf/EAA7/5wAP/9gAEP/YABH/3QAS/9MAE//YABT/4gAV/90AMf/sADL/wAAz/+8ANP/kADX/6wA2//AAN//2ADj/5AA5//EAOv/uADv/1gA8//QAPf/2AD7/8QA///AAQP/dAEH/7ABD/+gARP/YAEX/1QBG/+wAR/+3AEj/wwBJ/7UASv+wAEv/5gAeAAf/zgAi/+4AI//5ACT/7wAy/9AAM//pADT/sQA1/+sANv/nADf/5gA4/7oAOf/vADr/9wA7/9AAPP/sAD3/6wA+/+YAP//sAED/uwBB/+kAQv+7AEP/5ABE/9QARf+6AEb/0ABH/34ASP+SAEn/zQBK/5sAS//nABwAF//RACT//wAy/9EAM//uADT/5wA1/+8ANv/3ADf/7gA4/+gAOf/3ADr/+wA7/9oAPP/vAD3/9wA+/+4AP//vAED/4QBB//cAQv/nAEP/7wBE/+4ARf/QAEb/9wBH/8EASP/MAEn/wwBK/7sAS//nABwAF//QABv/+QAy/8EAM//zADT/6wA1//sANv/zADf/+wA4/+8AOf/zADr//gA7/+EAPP/vAD3/9wA+//kAP//3AED/4gBB//kAQv/jAEP/8wBE/+YARf/VAEb/+QBH/84ASP/JAEn/twBK/8EAS//rAB8ABv/7ABL/3wAX/8kAJf/5ACv/7wAy/7oAM//zADT/6wA1/+8ANv/uADf/8wA4/+oAOf/vADr/7wA7/9QAPP/5AD3//gA+//EAP//vAED/4wBB//MAQv/mAEP/7gBE/+cARf/XAEb/6wBH/8kASP/JAEn/twBK/7cAS//nACAABv/7ACQAAgAl/+8AJ//5AC3//gAv//4AMv/oADP//QA0/+sANf/7ADb/+gA3//sAOP/jADn/9wA6//oAO//kADz//wA9//0APv/+AD8AAABA/+gAQf/7AEL/6ABD//sARP/sAEX/8QBG//sAR//qAEj/6wBJ/+cASv/qAEv/+QAbAAb/+wAl/+8AMv+5ADP/+wA0/+8ANf/7ADb/+wA3//0AOP/vADn/+wA6AAAAO/+7ADz//gA9//4APv/7AED/7ABB//4AQv/nAEP/+QBE//kARf/7AEb/+QBH//MASP/rAEn/4gBK/+8AS//7AB0ABv/2ABf/zgAl/+8AMv+3ADP/9wA0/+sANf/3ADb/8QA3//kAOP/uADn/8wA6//sAO//YADz/8wA9/+4APv/3AD//8wBA/+MAQf/3AEL/6QBD/+8ARP/nAEX/1ABG/+8AR//JAEj/zABJ/6YASv/JAEv/3AAcAAb/+wAX//MAJf/7ADL/6wAz//4ANP/uADX/+wA2//4AN//+ADj/8wA5//0AOv/+ADv/7gA8//4APf/+AD7/+wA///4AQP/uAEL/9wBD//4ARP/+AEX/+QBG//4AR//uAEj/9wBJ/+4ASv/zAEv//gAYAAb/+wAx//YAMv/rADP//wA0//MANf//ADYAAQA3//8AOP/zADv/6AA8//4APf/+AD4AAQBA/+4AQf//AEL/8wBD//4ARP/4AEX//QBH/+wASP/3AEn/7ABK//EASwABABwABv/2ABf/4QAy/8oAM//9ADT/+QA1//4ANv/7ADf//gA4//MAOf/+ADr//wA7/+EAPP/7AD3//gA+//4AP//+AED/7wBB//4AQv/zAEP//gBE//sARf/7AEb//gBH/+8ASP/5AEn/2gBK//oAS//+AB0ABv/nABf/5wAx/7AAMv/hADP/7gA0/7QANf/rADb/5wA3/+4AOP+sADn/6wA6//kAO/+3ADz/6gA9/+8APv/nAD//5wBA/6wAQf/uAEL/rgBD/+cARP+8AEX/3ABG/9oAR//cAEj/0QBJ/9oASv/RAEv/7wAeAAb/9gAX//cAI//9ADH/vwAy/+4AM//5ADT/2gA1//4ANv/3ADf/+wA4/9oAOf/3ADr/+wA7/+cAPP/7AD3/+QA+//cAP//5AED/1ABB//sAQv/cAEP/9wBE/+8ARf/JAEb/6wBH/8QASP++AEn/5wBK/8EAS//+ABwAF//7ADH/7AAy/+QAM//+ADT/7gA1//4ANgAAADf//QA4//cAOf/7ADr//gA7/+4APP/+AD3//gA+//0AP//7AED/7wBB//4AQv/uAEP//gBE//cARf/7AEb/+QBH/+gASP/vAEn/6wBK/+gAS//+AB4ABv/7ABf/8wAa//4AHf/3ACX/9wAq//4AMf/2ADL/5AAz//0ANP/zADX/+wA2//4AN//+ADj/+QA7/+4APf/+AD7/+wA///4AQP/2AEH/+gBC/+4AQ//7AET/+QBF//sARv/+AEf/8wBI/+8ASf/zAEr/6wBL//4AHQAG//EAJP/3ADH/7AAy/7sAM//sADT/4wA1/+8ANv/vADf/9wA4/+QAOf/qADr/9wA7/98APP/vAD3/9wA+/+sAP//uAED/4wBB/+4AQv/mAEP/7wBE/+IARf/VAEb/7gBH/8MASP/GAEn/uwBK/7oAS//fABwABv/sACT//gAy/54AM//rADT/6gA1//EANv/rADf/9wA4/+MAOf/oADr/9wA7/64APP/sAD3/8QA+/+wAP//sAED/4QBB//MAQv/oAEP/5ABE/9gARf/kAEb/7gBH/9EASP/QAEn/uwBK/8QAS//zADAAF//3ABj//wAZ/+kAGv//ABv//QAc//4AHf/pAB7/+wAf//8AIP/iACH//gAi//8AI//+ACT//wAl/+IAJ//uACj//gAp/+cAKv/hACv/+QAs/8MALf/QAC7/5AAv/8wAMP//ADL/4QAz//4ANP/jADX/9wA3//kAOP/fADn/9wA7/+IAPP/5AD3/+gA+//EAP//6AED/2gBB/+8AQv/aAET/7wBF/9cARv/qAEf/xgBI/7sASf/qAEr/tABL//sAHQAG/+cAF//oACT/+gAy/+IAM//xADT/zAA1/+8ANv/sADf/+gA4/8wAOf/3ADr/8wA7/8kAPP/uAD3/7wA+/+wAP//rAED/yQBB//cAQv/MAEP/+ABE/9QARf/KAEb/2gBH/8EASP/EAEn/4gBK/7cAS//vAB0ABv/xABv/+QAl/+4AMv+8ADP/7wA0/9wANf/zADb/6AA3//cAOP/hADn/5gA6//MAO//aADz/6QA9//MAPv/pAD//6wBA/+MAQf/3AEL/2gBD/+kARP/rAEX/1ABG/+kAR//JAEj/zABJ/7QASv+7AEv/5wAbAAb/9gAy/6YAM//9ADT/0wA1//oANv/+ADf//QA4/9UAOf/3ADr//wA7/7kAPP/6AD3//gA+//sAP//7AED/0ABB//oAQv/XAEP/+QBE/+IARf/zAEb/9wBH/+8ASP/vAEn/6gBK/+cAS//6ABwABv/7ACQAAgAy/9UAM//7ADT/7wA1//cANv/9ADf//wA4/+4AOf/7ADr//wA7/+sAPP/+AD3//gA+//0AP//6AED/7gBB//sAQv/sAEP/+wBE/+8ARf/7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ABX/3QAx//YAMv+5ADP/+AA0/+MANf/3ADb/+AA3//kAOP/iADn/+gA6//0AO//OADz//QA9//4APv/5AD///ABA/+YAQv/jAEP/9wBE/+YARf/vAEb//gBH/+cASP/vAEn/0QBK/+YAS//9ACgAB//2AAj/4gAJ/90ACv/sAAv/4gAM/+gADf/iAA7/9QAP/+gAEP/dABH/4AAS/+YAE//OABT/4gAV/90AJP/7ADH/9gAy/8EAM//vADT/3wA2//QAN//4ADj/4wA5/+kAOv/6ADv/0QA8/+YAPf/zAD7/6QA///EAQP/qAEL/3ABD/+gARP/fAEb/+ABH/7sASP+7AEn/rwBK/68AS//jACcACP/xAAn/7AAK//gADP/2AA7/9wAP//YAEP/xABH/5wAS/+cAE//xABT/7AAV/+UAMf/2ADL/6AAz//kANP/qADX/+wA2//oAN//7ADj/6wA5//cAOv//ADv/4wA8//sAPf/+AD7/+wA///oAQP/sAEH/+gBC/+MAQ//5AET/7wBF/+oARv/7AEf/4wBI/+wASf/jAEr/6gBL//4AJgAH//sACP/7AAn/5wAK//oADP/2AA7/9gAP//YAEP/xABH/8QAS//IAE//xABT/5wAV//EAMv/nADP/+wA0//EANf/9ADb//gA3//4AOP/uADn/+wA6//4AO//oAD0AAAA+//sAP//+AED/7wBB//4AQv/qAEP//wBE//EARf/3AEb/+wBH/+YASP/3AEn/2gBK/+QAS//7ACkAB//2AAj/9gAJ/90ACv/yAAz/8QAO//EAD//wABD/6gAR/+wAEv/mABP/9AAU/+wAFf/rABf/zgAx//YAMv/OADP/7wA0/+oANf/5ADb//gA3//0AOP/oADn/+QA6//0AO//YADz//gA9//8APv/6AD//+QBA/+4AQf/5AEL/4wBD//gARP/qAEX/+QBG//oAR//pAEj/6QBJ/9UASv/rAEv/+gAqAAf/sgAI/8kACf+wAAr/ugAL/7UADP+1AA3/3QAO/+QAD/+6ABD/sgAR/7UAEv+xABP/4gAU/6sAFf+mADH/lwAy/9oAM//jADT/qwA1/+IANv/iADf/4wA4/5oAOf/XADr/7gA7/7QAPP/kAD3/6wA+/+4AP//mAED/rQBB/+8AQv+qAEP/6gBE/74ARf/XAEb/2gBH/9AASP/SAEn/1QBK/80AS//qACsAB//nAAj/8QAJ/6YACv/sAAv/nAAM/90ADf+6AA7/9gAP/+IAEP/sABH/3QAS/9oAE//sABT/3QAV/8QAJP/+ADH/pgAy/+sAM//vADT/ygA1//0ANv/zADf/+wA4/9MAOf/vADr/+wA7/9gAPP/3AD3/9wA+//EAP//7AED/1QBB//cAQv/PAEP/8wBE/+YARf+7AEb/5wBH/7UASP/JAEn/2gBK/6UAS//zACkAB//2AAn/7AAK//kAC//sAAz/9gAO//oAD//2ABD/7AAR/+cAEv/vABP/9gAU//EAFf/sABcAAQAx/+YAMv/pADP/+QA0/+oANf/zADb/+wA3//oAOP/nADn/9wA6//4AO//uADz/+QA9//oAPv/7AD//+QBA/+8AQf/3AEL/6QBD//oARP/sAEX/8wBG//gAR//pAEj/6QBJ/+MASv/nAEv//QAqAAf/9gAI//sACf/sAAr/9wAL/+wADP/7AA7/+gAP//EAEP/2ABH/7AAS//EAE//2ABT/9gAV/+QAFwABADH/8QAy/+kAM//3ADT/6QA1//kANv/5ADf/+QA4/+8AOf/6ADr//gA7/+8APP/7AD3/+gA+//oAP//4AED/7wBB//sAQv/rAEP//QBE/+8ARf/3AEb/+gBH/+4ASP/rAEn/4QBK/+wAS//5ACsAB//xAAj/4gAJ/9gACv/sAAv/2AAM//YADf/iAA7/8QAP/90AEP/iABH/0wAS/+IAE//JABT/4gAV/94AJP/7ADH/3QAy/7QAM//pADT/4QA1/+wANv/vADf/6gA4/+IAOf/qADr/+gA7/9oAPP/pAD3/6wA+/+wAP//pAED/4QBB/+sAQv/cAEP/6wBE/+IARf/JAEb/7gBH/7wASP/BAEn/pgBK/7UAS//kACwAB//iAAj/5wAJ/+IACv/OAAv/2AAM/+cADf/nAA7/8AAP/90AEP+6ABH/xAAS/9cAE//XABT/2AAV/9gAG//3ACT/+wAx/+IAMv+gADP/6QA0/+MANf/mADb/7wA3/+sAOP/aADn/6AA6//YAO/+xADz/6wA9/+4APv/oAD//7wBA/9oAQf/oAEL/1wBD/+MARP/aAEX/2ABG/+cAR//PAEj/yQBJ/7kASv/BAEv/6AApAAf/8QAI/+wACf/OAAr/6gAL/84ADP/nAA3/2AAO//YAD//fABD/4gAR/9gAEv/lABP/5wAU/+IAFf/YADH/4gAy/+cAM//3ADT/2gA1//gANv/5ADf/+wA4/9wAOf/3ADr//gA7/+MAPP/3AD3//QA+//cAP//3AED/1QBC/9UAQ//9AET/6QBF/+EARv/pAEf/ugBI/8QASf/aAEr/wgBL//sAKwAH/8kACP/YAAn/xAAK/9MAC/+/AAz/yQAN/9gADv/nAA//xAAQ/7oAEf+1ABL/wQAT/9gAFP+6ABX/vwAk//sAMf+/ADL/2gAz/+gANP/KADX/6QA2/+kAN//oADj/xgA5/+QAOv/nADv/uQA8/+wAPf/uAD7/6QA//+cAQP/GAEH/7ABC/8kAQ//mAET/2ABF/84ARv/VAEf/wQBI/7wASf/GAEr/tABL/+8AKwAH//EACP/2AAn/yQAK/+oAC//TAAz/3QAN/+cADv/sAA//4gAQ/+IAEf/YABL/3wAT/90AFP/dABX/2AAk//sAMf/nADL/xgAz//MANP/iADX/7wA2/+4AN//3ADj/4wA5/+kAOv/vADv/1wA8/+4APf/zAD7/6gA//+0AQP/kAEH/9wBC/98AQ//qAET/5wBF/9AARv/vAEf/yQBI/9AASf/PAEr/xABL/+8AKQAH/+cACP/sAAn/5wAK/+kAC//dAAz/2AAO/+wAD//XABD/qwAR/8kAEv/AABP/9gAU/9MAFf/OADH/2AAy/7AAM//5ADT/2gA1//0ANv/6ADf//gA4/98AOf/3ADr//QA7/8YAPP/7AD3//gA+//gAP//4AED/1QBB//0AQv/VAEP/+ABE/+MARf/zAEb/+QBH/+4ASP/zAEn/4gBK/+cAS//zACkACP/2AAn/5wAK//QAC//sAAz/+wAN//4ADv/2AA//5QAQ/+wAEf/nABL/8wAT//EAFP/nABX/3QAx/+QAMv/KADP/+QA0/+wANf/6ADb/+gA3//sAOP/vADn/+gA6AAAAO//hADz//wA9//0APv/5AD///gBA/+wAQf/7AEL/7ABD//sARP/vAEX/9wBG//sAR//zAEj/6gBJ/+EASv/jAEv/+wArAAf/zgAI/84ACf/YAAr/ygAL/9gADP/JAA3/+wAO/9kAD//JABD/ogAR/7oAEv+5ABP/5wAU/8QAFf+9ACT/+wAx/7oAMv+FADP/+wA0/7sANf/qADb/6wA3/+wAOP++ADn/5gA6/+8AO/+iADz/6AA9/+oAPv/sAD//7wBA/8MAQf/mAEL/uwBD/+YARP/KAEX/6QBG/+8AR//jAEj/3wBJ/9MASv/hAEv/6wApAAf/zgAI/84ACf/TAAv/2AAM/84ADv/eAA//xAAQ/7AAEf/TABL/sQAT/+wAFP/FABX/yQAk//sAMf/JADL/lQAz//MANP/BADX/+QA2//MAN//3ADj/xgA5//sAOv/3ADv/pQA8/+8APf/+AD7/7gA//+oAQP/DAEH/7gBC/8QAQ//vAET/0ABF/+4ARv/uAEf/6QBI/+QASf/aAEr/5gBL//cAKgAH/8QACP/OAAn/pgAL/7oADP+rAA3/3QAO/+cAD/+5ABD/twAR/8QAEv+zABP/0wAU/7AAFf+cACT/+wAx/6EAMv/aADP/4wA0/7cANf/4ADb/4wA3//0AOP+3ADn/7gA6/+8AO/+7ADz/7gA9//EAPv/jAD//6ABA/7oAQf/zAEL/uQBD/+sARP/OAEX/3wBG/+EAR//aAEj/2ABJ/9gASv/MAEv/7gAsAAf/yQAI/84ACf/JAAr/wgAL/8kADP/JAA3//gAO/8kAD/+6ABD/jQAR/7oAEv+gABP/4gAU/7UAFf+6AB7/8QAk//sAMf+1ADL/lwAz/+8ANP+7ADX/5gA2/+4AN//uADj/uQA5/+gAOv/3ADv/hAA8/+8APf/sAD7/7AA//+oAQP+6AEH/7ABC/7kAQ//pAET/ygBF/+8ARv/vAEf/6ABI/+kASf/fAEr/5ABL//EAJgAH//YACf/iAAr/7AAL/+cADP/iAA3//wAO//UAD//nABD/7AAR/+IAEv/gABP/7AAU/90AFf/TADH/4gAy/+sAM//+ADT/6AA1//4ANgAEADf//wA4/9wAOf/6ADv/5gA8//8APf//AD///QBA/+MAQf//AEMAAABE/+8ARf/4AEb/+wBH//cASP/rAEn/6QBK/+kAS//9AAIAAQAGAEsAAAAAAAAAAQAAAADUGBYRAAAAANmXsTQAAAAA2ZexNA==";
8067
- class Fn extends Qt {
8067
+ class Fn extends mt {
8068
8068
  constructor() {
8069
8069
  super(...arguments), this.moduleName = "Vegemite";
8070
8070
  }
@@ -8078,46 +8078,46 @@ class Fn extends Qt {
8078
8078
  const A = Ct(fn), n = e !== "" ? ((D) => D.charAt(0).toUpperCase() + D.substr(1).toLowerCase())(e) : "", i = A.getPath(n, 0, 72, 72), s = i.toSVG(2), o = i.getBoundingBox(), r = o.x2 - o.x1, c = i.toPathData(3), B = () => {
8079
8079
  const D = v("g");
8080
8080
  D.classList.add("module-text-group");
8081
- const m = v("defs");
8082
- D.appendChild(m), m.appendChild(IA(0, 2, 2, "shadow"));
8081
+ const Q = v("defs");
8082
+ D.appendChild(Q), Q.appendChild(IA(0, 2, 2, "shadow"));
8083
8083
  const p = v("path");
8084
- p.setAttribute("d", c), p.setAttribute("stroke", "black"), p.setAttribute("stroke-width", "3"), m.appendChild(p);
8085
- const Q = v("g");
8086
- Q.classList.add("module-layer0"), D.appendChild(Q), Q.setAttribute("filter", "url(#shadow)"), Q.innerHTML = p.outerHTML;
8084
+ p.setAttribute("d", c), p.setAttribute("stroke", "black"), p.setAttribute("stroke-width", "3"), Q.appendChild(p);
8085
+ const m = v("g");
8086
+ m.classList.add("module-layer0"), D.appendChild(m), m.setAttribute("filter", "url(#shadow)"), m.innerHTML = p.outerHTML;
8087
8087
  const I = v("g");
8088
8088
  I.classList.add("module-layer1"), D.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;
8089
8089
  const F = v("g");
8090
8090
  F.classList.add("module-layer2"), D.appendChild(F), F.setAttribute("fill", "rgb(255,209,0)"), F.setAttribute("transform", "translate(1,-0.1)"), F.innerHTML = s;
8091
8091
  const y = v("g");
8092
8092
  return y.classList.add("module-layer3"), D.appendChild(y), y.setAttribute("fill", "white"), y.innerHTML = s, new Dt(D).transform(([N, S]) => [N, S + (r / 2 - N) ** 2 / (r * 6)]), D;
8093
- }, l = v("g");
8094
- l.classList.add("module-root");
8093
+ }, g = v("g");
8094
+ g.classList.add("module-root");
8095
8095
  const d = v("defs");
8096
- l.appendChild(d);
8096
+ g.appendChild(d);
8097
8097
  const C = v("g");
8098
- C.classList.add("module-bounds"), l.appendChild(C);
8099
- const w = mt(t.height, t.width);
8098
+ C.classList.add("module-bounds"), g.appendChild(C);
8099
+ const w = Qt(t.height, t.width);
8100
8100
  w.setAttribute("opacity", "0"), C.appendChild(w);
8101
8101
  const h = v("g");
8102
- h.classList.add("module-text-enclosure"), l.appendChild(h);
8102
+ h.classList.add("module-text-enclosure"), g.appendChild(h);
8103
8103
  const u = B();
8104
8104
  h.appendChild(u);
8105
8105
  const E = wt(c);
8106
- return pt(h, E, t.height, t.width, 0.35, 0.65), fA(l.outerHTML);
8106
+ return pt(h, E, t.height, t.width, 0.35, 0.65), fA(g.outerHTML);
8107
8107
  }
8108
8108
  }
8109
- async function FA(g) {
8110
- if (g === "Favourites")
8109
+ async function FA(l) {
8110
+ if (l === "Favourites")
8111
8111
  return new pn();
8112
- if (g === "Maltesers") {
8112
+ if (l === "Maltesers") {
8113
8113
  const e = _("https://assets.spiff.com.au/public/modules/img/MaltesersBackground.svg"), t = _("https://assets.spiff.com.au/public/modules/img/MaltesersBackgroundShort.svg"), A = await Promise.all([e, t]);
8114
8114
  return new In(A[0], A[1]);
8115
8115
  }
8116
- if (g === "Vegemite")
8116
+ if (l === "Vegemite")
8117
8117
  return new Fn();
8118
- throw new b(`Failed to resolve Module, Module ${g} not found`);
8118
+ throw new b(`Failed to resolve Module, Module ${l} not found`);
8119
8119
  }
8120
- var pe = /* @__PURE__ */ ((g) => (g.Error = "Error", g.Warning = "Warning", g.Info = "Info", g))(pe || {});
8120
+ var pe = /* @__PURE__ */ ((l) => (l.Error = "Error", l.Warning = "Warning", l.Info = "Info", l))(pe || {});
8121
8121
  const yn = 1e3;
8122
8122
  class bt extends BA {
8123
8123
  constructor(e) {
@@ -8132,16 +8132,16 @@ class bt extends BA {
8132
8132
  }
8133
8133
  }
8134
8134
  class Mn {
8135
- constructor(e, t, A, a, n, i, s, o, r, c, B, l, d, C = !1, w, h = !1, u = !1, E = !1) {
8135
+ constructor(e, t, A, a, n, i, s, o, r, c, B, g, d, C = !1, w, h = !1, u = !1, E = !1) {
8136
8136
  this.workflowStatePromiseQueue = new dA(1), this.initialized = !1, this.readOnly = !1, this.isReloadedTransaction = !1, this.singleVariantsRenderable = !1, this.stepTags = {}, this.renderLayouts = () => {
8137
8137
  var p;
8138
8138
  if (!this.previewService)
8139
8139
  return;
8140
- const D = this.getCommandContext().getAllLayouts(), m = (p = this.getLayoutPreviewService()) == null ? void 0 : p.getAll();
8141
- if (m)
8142
- for (const [, Q] of m)
8143
- Q.render(D);
8144
- }, this.experience = e, this.client = t, this.updateTransaction = s, this.commandContext = i, this.reloadedState = d, this.transaction = o, this.readOnly = C, this.singleVariantsRenderable = u, this.confirmedDesign = !1, this.editedSteps = {}, this.informationResults = [], this.mandatorySteps = {}, this.pendingUpdates = [], this.selectionCost = 0, this.workflow = A, this.stepSpecificServices = {}, this.profanityFilter = a, this.pollers = [], this.allScenes = [], this.layouts = n, this.product = r, this.previewService = B, this.modelContainer = w, this.stepElements = {}, this.stepInitialised = {}, this.stepMetadata = {}, this.stepSelections = {}, this.storage = {}, this.validationErrors = { steps: /* @__PURE__ */ new Map() }, this.confirmCallbacks = [], this.editedCallbacks = [], this.elementsCallbacks = [], this.informationResultCallbacks = [], this.initCallbacks = [], this.mandatoryCallbacks = [], this.makingAdjustmentsCallback = [], this.metadataCallbacks = [], this.selectionCallbacks = [], this.stepSpecificStorageCallbacks = {}, this.storageCallbacks = [], this.validationCallbacks = [], this.currentAdjustingStepId = "", this.renderableContextService = l, this.isReloadedTransaction = h, this.stepTags = c, E && (this.workflowStatePromiseQueue.enabled = !1), this.initializationPromise = this.initializeDefaultWorkflowState(A), this.initializationPromise.then(() => {
8140
+ const D = this.getCommandContext().getAllLayouts(), Q = (p = this.getLayoutPreviewService()) == null ? void 0 : p.getAll();
8141
+ if (Q)
8142
+ for (const [, m] of Q)
8143
+ m.render(D);
8144
+ }, this.experience = e, this.client = t, this.updateTransaction = s, this.commandContext = i, this.reloadedState = d, this.transaction = o, this.readOnly = C, this.singleVariantsRenderable = u, this.confirmedDesign = !1, this.editedSteps = {}, this.informationResults = [], this.mandatorySteps = {}, this.pendingUpdates = [], this.selectionCost = 0, this.workflow = A, this.stepSpecificServices = {}, this.profanityFilter = a, this.pollers = [], this.allScenes = [], this.layouts = n, this.product = r, this.previewService = B, this.modelContainer = w, this.stepElements = {}, this.stepInitialised = {}, this.stepMetadata = {}, this.stepSelections = {}, this.storage = {}, this.validationErrors = { steps: /* @__PURE__ */ new Map() }, this.confirmCallbacks = [], this.editedCallbacks = [], this.elementsCallbacks = [], this.informationResultCallbacks = [], this.initCallbacks = [], this.mandatoryCallbacks = [], this.makingAdjustmentsCallback = [], this.metadataCallbacks = [], this.selectionCallbacks = [], this.stepSpecificStorageCallbacks = {}, this.storageCallbacks = [], this.validationCallbacks = [], this.currentAdjustingStepId = "", this.renderableContextService = g, this.isReloadedTransaction = h, this.stepTags = c, E && (this.workflowStatePromiseQueue.enabled = !1), this.initializationPromise = this.initializeDefaultWorkflowState(A), this.initializationPromise.then(() => {
8145
8145
  this.initialized = !0;
8146
8146
  }), this.initializationPromise.catch((D) => {
8147
8147
  throw console.error(D), this.initialized = !1, new Error("Workflow initialization failed due to an error. See console.");
@@ -8378,8 +8378,8 @@ class Mn {
8378
8378
  throw new b(
8379
8379
  "We should always have a model container when injecting a preview!"
8380
8380
  );
8381
- const l = (B = o.asset) == null ? void 0 : B.fileLink;
8382
- if (!l) {
8381
+ const g = (B = o.asset) == null ? void 0 : B.fileLink;
8382
+ if (!g) {
8383
8383
  console.error(`Failed to read model url from variant: ${o.id} for step: ${i.stepName}`);
8384
8384
  return;
8385
8385
  }
@@ -8387,14 +8387,14 @@ class Mn {
8387
8387
  this.modelContainer.applyModelVariant(
8388
8388
  i.stepName,
8389
8389
  {
8390
- model: l,
8390
+ model: g,
8391
8391
  contextService: this.getLayoutPreviewService()
8392
8392
  },
8393
8393
  d.replaceProductModel || !1
8394
8394
  );
8395
8395
  } else {
8396
- const l = o.material;
8397
- if (!l) {
8396
+ const g = o.material;
8397
+ if (!g) {
8398
8398
  console.error(`Failed to read material from variant: ${o.id} for step: ${i.stepName}`);
8399
8399
  return;
8400
8400
  }
@@ -8403,7 +8403,7 @@ class Mn {
8403
8403
  throw new b(
8404
8404
  "We should always have a model container when injecting a preview!"
8405
8405
  );
8406
- this.modelContainer.applyMaterialVariant(C, i.option.id, l);
8406
+ this.modelContainer.applyMaterialVariant(C, i.option.id, g);
8407
8407
  });
8408
8408
  }
8409
8409
  }), await A.getInitializationPromise(), this.renderLayouts();
@@ -8475,7 +8475,7 @@ class Mn {
8475
8475
  const e = this.getCommandContext().getState();
8476
8476
  if (!e)
8477
8477
  throw new b("Attempted to serialize state before it was initialized.");
8478
- return { transaction: JSON.stringify(this.dehydrateState(ge(e.transaction))) };
8478
+ return { transaction: JSON.stringify(this.dehydrateState(le(e.transaction))) };
8479
8479
  }
8480
8480
  dehydrateState(e) {
8481
8481
  var t;
@@ -8516,15 +8516,15 @@ class Mn {
8516
8516
  return Promise.resolve({ stepElements: {}, commands: [] });
8517
8517
  const a = async (r, c, B) => {
8518
8518
  if (r.type === M.SilentIllustration) {
8519
- const l = await new kt(r, c).trigger();
8520
- return { step: r, results: l };
8519
+ const g = await new kt(r, c).trigger();
8520
+ return { step: r, results: g };
8521
8521
  } else if (r.type === M.ProductOverlay) {
8522
- const l = await new kt(
8522
+ const g = await new kt(
8523
8523
  r,
8524
8524
  c,
8525
8525
  B
8526
8526
  ).trigger();
8527
- return { step: r, results: l };
8527
+ return { step: r, results: g };
8528
8528
  }
8529
8529
  return Promise.reject("Unknown silent step. This is a bug");
8530
8530
  }, n = e.filter(
@@ -8587,32 +8587,32 @@ class Mn {
8587
8587
  this.stepSelections = {
8588
8588
  ...this.stepSelections,
8589
8589
  [e]: { selectedVariants: t }
8590
- }, this.selectionCost = Object.values(this.stepSelections).reduce((Q, I) => Q + I.selectedVariants.map((F) => F.priceModifier || 0).reduce((F, y) => F + y, 0), 0), this.workflow.steps.forEach((Q) => {
8591
- ae(Q, this.stepSelections) || (this.stepInitialised[Q.stepName] = !1, delete this.stepMetadata[Q.stepName], delete this.stepSelections[Q.stepName], delete this.storage[Q.stepName]);
8590
+ }, 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) => {
8591
+ ae(m, this.stepSelections) || (this.stepInitialised[m.stepName] = !1, delete this.stepMetadata[m.stepName], delete this.stepSelections[m.stepName], delete this.storage[m.stepName]);
8592
8592
  });
8593
- const i = this.allScenes, s = ce(i, n), o = ce(i, this.stepSelections), r = s.map((Q) => Q.silentSteps).flat(), B = o.map((Q) => Q.silentSteps).flat().filter(
8594
- (Q) => !r.some((I) => I.stepName === Q.stepName)
8593
+ const i = this.allScenes, s = ce(i, n), o = ce(i, this.stepSelections), r = s.map((m) => m.silentSteps).flat(), B = o.map((m) => m.silentSteps).flat().filter(
8594
+ (m) => !r.some((I) => I.stepName === m.stepName)
8595
8595
  );
8596
- r.forEach((Q) => {
8597
- ae(Q, this.stepSelections) || (this.stepInitialised[Q.stepName] = !1);
8596
+ r.forEach((m) => {
8597
+ ae(m, this.stepSelections) || (this.stepInitialised[m.stepName] = !1);
8598
8598
  });
8599
- const l = this.getInvalidCanvasRegions(), { stepElements: d, commands: C } = await this.stepElementsForIntroducedSilentSteps(B, !1);
8599
+ const g = this.getInvalidCanvasRegions(), { stepElements: d, commands: C } = await this.stepElementsForIntroducedSilentSteps(B, !1);
8600
8600
  this.stepElements = {
8601
8601
  ...this.stepElements,
8602
8602
  ...d,
8603
8603
  [e]: A
8604
- }, this.removeElements(l);
8605
- const w = this.workflow.steps.find((Q) => Q.stepName === e);
8604
+ }, this.removeElements(g);
8605
+ const w = this.workflow.steps.find((m) => m.stepName === e);
8606
8606
  if ((w == null ? void 0 : w.type) === M.Frame) {
8607
- const Q = this.getStepSpecificServices(e);
8608
- (p = Q == null ? void 0 : Q.frameService) == null || p.setTargetElements(A.map((I) => I.id));
8607
+ const m = this.getStepSpecificServices(e);
8608
+ (p = m == null ? void 0 : m.frameService) == null || p.setTargetElements(A.map((I) => I.id));
8609
8609
  }
8610
- const h = l.map((Q) => new ne(Q.id)), u = new Yt(this.constructSerializableWorkflow()), E = [...C, ...h, u];
8610
+ const h = g.map((m) => new ne(m.id)), u = new Yt(this.constructSerializableWorkflow()), E = [...C, ...h, u];
8611
8611
  E.length > 0 && this.commandContext.apply(new k(E), !0), await this.ensureStepsAreLoaded(), this.onElementsChange();
8612
- const D = this.getInvalidModelVariants(), m = this.modelContainer;
8613
- if (m) {
8614
- const Q = D.map(
8615
- (I) => m.applyModelVariant(
8612
+ const D = this.getInvalidModelVariants(), Q = this.modelContainer;
8613
+ if (Q) {
8614
+ const m = D.map(
8615
+ (I) => Q.applyModelVariant(
8616
8616
  I,
8617
8617
  {
8618
8618
  contextService: this.getLayoutPreviewService()
@@ -8620,7 +8620,7 @@ class Mn {
8620
8620
  !1
8621
8621
  )
8622
8622
  );
8623
- await Promise.all(Q);
8623
+ await Promise.all(m);
8624
8624
  }
8625
8625
  await this.onSelectionChange(), a && await a();
8626
8626
  }
@@ -8670,12 +8670,12 @@ class Mn {
8670
8670
  break;
8671
8671
  case M.Picture:
8672
8672
  A.push(
8673
- QA.init(o, this, this.reloadedState)
8673
+ mA.init(o, this, this.reloadedState)
8674
8674
  );
8675
8675
  break;
8676
8676
  case M.Question:
8677
8677
  A.push(
8678
- mA.init(o, this, this.reloadedState)
8678
+ QA.init(o, this, this.reloadedState)
8679
8679
  );
8680
8680
  break;
8681
8681
  case M.Shape:
@@ -9052,7 +9052,7 @@ class xn extends X {
9052
9052
  * @returns A promise that can be awaited to ensure the new image asset has been updated on the design.
9053
9053
  */
9054
9054
  selectVariant(e) {
9055
- return QA.selectVariant(
9055
+ return mA.selectVariant(
9056
9056
  this.step,
9057
9057
  e.getResource(),
9058
9058
  this.manager,
@@ -9067,7 +9067,7 @@ class Nn extends X {
9067
9067
  async selectVariant(e) {
9068
9068
  if (!e.getId())
9069
9069
  throw new Error("Unable to select variant with a null ID");
9070
- await mA.selectVariant(this.step, e.getId(), this.manager);
9070
+ await QA.selectVariant(this.step, e.getId(), this.manager);
9071
9071
  }
9072
9072
  /**
9073
9073
  * The way that this step expects to be rendered.
@@ -9247,12 +9247,12 @@ class Rn extends X {
9247
9247
  this.manager
9248
9248
  );
9249
9249
  o && this.manager.getCommandDispatcher()(o);
9250
- const B = this.manager.getInformationResults(), l = (C = r[0]) == null ? void 0 : C.localizationKey;
9251
- if (l)
9250
+ const B = this.manager.getInformationResults(), g = (C = r[0]) == null ? void 0 : C.localizationKey;
9251
+ if (g)
9252
9252
  this.manager.setInformationResults([
9253
9253
  ...B,
9254
9254
  {
9255
- message: `${l} - ${this.step.stepTitle}`,
9255
+ message: `${g} - ${this.step.stepTitle}`,
9256
9256
  messageType: pe.Error,
9257
9257
  stepID: this.step.stepName
9258
9258
  }
@@ -9261,7 +9261,7 @@ class Rn extends X {
9261
9261
  const w = B.filter((h) => h.stepID !== this.step.stepName);
9262
9262
  this.manager.setInformationResults(w);
9263
9263
  }
9264
- return t.helperText = l || c, t.errorText = l, t;
9264
+ return t.helperText = g || c, t.errorText = g, t;
9265
9265
  }
9266
9266
  /**
9267
9267
  * Gets the text currently applied to the elements of this step.
@@ -9434,7 +9434,7 @@ class Me {
9434
9434
  case M.Model:
9435
9435
  return new Pn(e, t, e.getStepTags(t.stepName));
9436
9436
  case M.Frame:
9437
- return new ss(e, t, e.getStepTags(t.stepName));
9437
+ return new os(e, t, e.getStepTags(t.stepName));
9438
9438
  case M.Module:
9439
9439
  return new Un(e, t, e.getStepTags(t.stepName));
9440
9440
  default:
@@ -9514,11 +9514,11 @@ const MA = f`
9514
9514
  }
9515
9515
  }
9516
9516
  `;
9517
- function Oe(g) {
9518
- const e = JSON.parse(atob(g.split(".")[1])).exp;
9517
+ function Oe(l) {
9518
+ const e = JSON.parse(atob(l.split(".")[1])).exp;
9519
9519
  return Math.floor((/* @__PURE__ */ new Date()).getTime() / 1e3) >= e;
9520
9520
  }
9521
- const Jn = async (g) => {
9521
+ const Jn = async (l) => {
9522
9522
  var i, s;
9523
9523
  const t = ((i = Object.entries(localStorage).find(([o, r]) => o.startsWith("CognitoIdentityServiceProvider") && o.endsWith("idToken"))) == null ? void 0 : i[0]) || "", A = localStorage.getItem(t), a = {};
9524
9524
  return A && !Oe(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
@@ -9526,20 +9526,20 @@ const Jn = async (g) => {
9526
9526
  errorPolicy: "all",
9527
9527
  fetchPolicy: "no-cache",
9528
9528
  variables: {
9529
- name: g.name,
9530
- layouts: g.layouts,
9531
- workflowId: g.workflowId,
9532
- transactionId: g.transactionId,
9533
- previewImage: g.previewImage,
9534
- useThreeDimPreview: g.useThreeDimPreview,
9535
- metadata: g.metadata,
9536
- selectedVariants: g.selectedVariants
9529
+ name: l.name,
9530
+ layouts: l.layouts,
9531
+ workflowId: l.workflowId,
9532
+ transactionId: l.transactionId,
9533
+ previewImage: l.previewImage,
9534
+ useThreeDimPreview: l.useThreeDimPreview,
9535
+ metadata: l.metadata,
9536
+ selectedVariants: l.selectedVariants
9537
9537
  },
9538
9538
  context: {
9539
9539
  headers: a
9540
9540
  }
9541
9541
  })).data) == null ? void 0 : s.designCreate;
9542
- }, Tn = async (g) => {
9542
+ }, Tn = async (l) => {
9543
9543
  var i, s;
9544
9544
  const t = ((i = Object.entries(localStorage).find(([o, r]) => o.startsWith("CognitoIdentityServiceProvider") && o.endsWith("idToken"))) == null ? void 0 : i[0]) || "", A = localStorage.getItem(t), a = {};
9545
9545
  return A && !Oe(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
@@ -9547,7 +9547,7 @@ const Jn = async (g) => {
9547
9547
  errorPolicy: "all",
9548
9548
  fetchPolicy: "no-cache",
9549
9549
  variables: {
9550
- inputs: g.map((o) => ({
9550
+ inputs: l.map((o) => ({
9551
9551
  name: o.name,
9552
9552
  layouts: o.layouts,
9553
9553
  workflowId: o.workflowId,
@@ -9562,17 +9562,17 @@ const Jn = async (g) => {
9562
9562
  headers: a
9563
9563
  }
9564
9564
  })).data) == null ? void 0 : s.designCreateMany;
9565
- }, ct = (g, e, t) => {
9565
+ }, ct = (l, e, t) => {
9566
9566
  const A = (n) => {
9567
9567
  const i = {};
9568
9568
  if (n.type === "Frame") {
9569
- const s = g[n.stepName], o = n.data;
9569
+ const s = l[n.stepName], o = n.data;
9570
9570
  if (!s || !s.image || o.hideImageInCart && t)
9571
9571
  return i;
9572
9572
  i[`${n.stepTitle} image`] = s.image;
9573
9573
  }
9574
9574
  if (n.type === "Illustration") {
9575
- const s = g[n.stepName], o = n.data;
9575
+ const s = l[n.stepName], o = n.data;
9576
9576
  if (!s || o.hideColorsInCart && t || !s.colors)
9577
9577
  return i;
9578
9578
  if (s.colors.length > 0) {
@@ -9581,13 +9581,13 @@ const Jn = async (g) => {
9581
9581
  }
9582
9582
  }
9583
9583
  if (n.type === "Module") {
9584
- const s = g[n.stepName], o = n.data;
9584
+ const s = l[n.stepName], o = n.data;
9585
9585
  if (!s || s.text === void 0 || s.text === null || o.hideTextInCart && t)
9586
9586
  return i;
9587
9587
  i[`${n.stepTitle} text`] = s.text;
9588
9588
  }
9589
9589
  if (n.type === "Text") {
9590
- const s = g[n.stepName];
9590
+ const s = l[n.stepName];
9591
9591
  if (!s)
9592
9592
  return i;
9593
9593
  const o = n.data;
@@ -9598,14 +9598,14 @@ const Jn = async (g) => {
9598
9598
  return e.steps.forEach((n) => {
9599
9599
  Object.assign(a, A(n));
9600
9600
  }), a;
9601
- }, On = (g, e, t, A) => {
9601
+ }, On = (l, e, t, A) => {
9602
9602
  const a = {};
9603
9603
  let n = {};
9604
9604
  t ? n = ct(t, e, !1) : A && (n = A);
9605
9605
  const s = e.steps.map((o) => o.stepTitle).filter((o, r, c) => c.indexOf(o) == r);
9606
9606
  for (const o of s) {
9607
- if (Object.keys(g).includes(o)) {
9608
- const r = g[o], c = e.steps.find((B) => B.stepTitle === o);
9607
+ if (Object.keys(l).includes(o)) {
9608
+ const r = l[o], c = e.steps.find((B) => B.stepTitle === o);
9609
9609
  a[`${c == null ? void 0 : c.stepTitle} selection`] = {
9610
9610
  value: r[0].name,
9611
9611
  priceModifier: r[0].priceModifier
@@ -9618,39 +9618,39 @@ const Jn = async (g) => {
9618
9618
  });
9619
9619
  }
9620
9620
  return a;
9621
- }, SA = (g, e, t, A, a, n, i, s) => {
9621
+ }, SA = (l, e, t, A, a, n, i, s) => {
9622
9622
  var C, w;
9623
- const o = e.basePrice || 0, r = g.priceModifierTotal || 0, c = On(A, t, void 0, n), l = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(g.id), d = {
9624
- additionalExternalProductId: (C = g.integrationProduct) == null ? void 0 : C.additionalExternalProductId,
9625
- additionalExternalVariantId: (w = g.integrationProduct) == null ? void 0 : w.additionalExternalVariantId,
9623
+ const o = e.basePrice || 0, r = l.priceModifierTotal || 0, c = On(A, t, void 0, n), g = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(l.id), d = {
9624
+ additionalExternalProductId: (C = l.integrationProduct) == null ? void 0 : C.additionalExternalProductId,
9625
+ additionalExternalVariantId: (w = l.integrationProduct) == null ? void 0 : w.additionalExternalVariantId,
9626
9626
  baseCost: o,
9627
- designExternalVariants: g.designExternalVariants,
9628
- designProductId: g.externalDesignProductId,
9629
- designProductVariantId: g.externalDesignProductVariantId,
9627
+ designExternalVariants: l.designExternalVariants,
9628
+ designProductId: l.externalDesignProductId,
9629
+ designProductVariantId: l.externalDesignProductVariantId,
9630
9630
  event: "onComplete",
9631
9631
  exportedData: c,
9632
- externalCartProductId: g.externalCartProductId,
9633
- externalCartProductVariantId: g.externalCartProductVariantId,
9632
+ externalCartProductId: l.externalCartProductId,
9633
+ externalCartProductVariantId: l.externalCartProductVariantId,
9634
9634
  lineItemImageUrl: i || "",
9635
9635
  optionsCost: r,
9636
9636
  processExecutionId: s,
9637
- quantity: g.quantity,
9638
- transactionId: g.id,
9639
- transactionOwnerId: l,
9637
+ quantity: l.quantity,
9638
+ transactionId: l.id,
9639
+ transactionOwnerId: g,
9640
9640
  weight: e.weight,
9641
- workflowViewerLink: g.workflowViewerLink || "",
9642
- workflowViewerReadOnlyLink: g.workflowViewerReadOnlyLink || ""
9641
+ workflowViewerLink: l.workflowViewerLink || "",
9642
+ workflowViewerReadOnlyLink: l.workflowViewerReadOnlyLink || ""
9643
9643
  };
9644
9644
  return n && (d.metadata = n), A && (d.selectedVariants = A), a && (d.sku = a), d;
9645
- }, YA = async (g, e, t, A, a, n, i, s, o, r) => {
9645
+ }, YA = async (l, e, t, A, a, n, i, s, o, r) => {
9646
9646
  var F;
9647
9647
  await (async () => {
9648
9648
  var R;
9649
9649
  if (r !== void 0)
9650
9650
  return r;
9651
- await g.outstandingRequestsPromise();
9651
+ await l.outstandingRequestsPromise();
9652
9652
  const Y = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(a.id), S = await x.getShadowGraphqlClient().query({
9653
- query: gA,
9653
+ query: lA,
9654
9654
  variables: { ids: [a.id] },
9655
9655
  fetchPolicy: "no-cache",
9656
9656
  errorPolicy: "all",
@@ -9661,8 +9661,8 @@ const Jn = async (g) => {
9661
9661
  return S.errors ? (S.errors.forEach((W) => {
9662
9662
  S.errors && console.log("Server Error:", W.message);
9663
9663
  }), null) : T ?? null;
9664
- })() || (console.warn("State mismatch detected. Uploading known state explicitly"), console.warn("State Object:", JSON.stringify(A())), await g.updateStateWithServerImmediate(A), console.log("Server state is undefined @ Workflow completion"));
9665
- const l = g.getPreviewService(), d = (F = e == null ? void 0 : e.finalizeStepConfig) == null ? void 0 : F.lookAtAnimation, C = l && e.showModelOnFinishStep && !!d, w = o && ct(o, e, !0), h = o && ct(o, e, !1), u = async (y) => {
9664
+ })() || (console.warn("State mismatch detected. Uploading known state explicitly"), console.warn("State Object:", JSON.stringify(A())), await l.updateStateWithServerImmediate(A), console.log("Server state is undefined @ Workflow completion"));
9665
+ const g = l.getPreviewService(), d = (F = e == null ? void 0 : e.finalizeStepConfig) == null ? void 0 : F.lookAtAnimation, C = g && e.showModelOnFinishStep && !!d, w = o && ct(o, e, !0), h = o && ct(o, e, !1), u = async (y) => {
9666
9666
  const Y = {};
9667
9667
  let N = 0;
9668
9668
  if (Object.keys(n).length > 0)
@@ -9690,16 +9690,16 @@ const Jn = async (g) => {
9690
9690
  return [Y, N];
9691
9691
  }, [E] = await u(!0), D = Object.fromEntries(
9692
9692
  Object.keys(E).map((y) => [y, E[y].map((Y) => Y.id)])
9693
- ), [m] = await u(!1), p = Object.fromEntries(
9694
- Object.keys(m).map((y) => [
9693
+ ), [Q] = await u(!1), p = Object.fromEntries(
9694
+ Object.keys(Q).map((y) => [
9695
9695
  y,
9696
- m[y].map((Y) => Y.id)
9696
+ Q[y].map((Y) => Y.id)
9697
9697
  ])
9698
9698
  );
9699
- let Q = await s(C, a.id);
9700
- if (Q) {
9701
- const y = await (await fetch(Q)).blob();
9702
- Q = (await U.uploadAsset(
9699
+ let m = await s(C, a.id);
9700
+ if (m) {
9701
+ const y = await (await fetch(m)).blob();
9702
+ m = (await U.uploadAsset(
9703
9703
  { name: `${a.id}-preview-image.png`, blob: y },
9704
9704
  At.Image,
9705
9705
  !0,
@@ -9717,7 +9717,7 @@ const Jn = async (g) => {
9717
9717
  workflowId: e.id,
9718
9718
  transactionId: a.id,
9719
9719
  useThreeDimPreview: !!C,
9720
- previewImage: Q
9720
+ previewImage: m
9721
9721
  };
9722
9722
  if (h) {
9723
9723
  const Y = [];
@@ -9736,11 +9736,11 @@ const Jn = async (g) => {
9736
9736
  cartSelectionsWithPrices: E,
9737
9737
  cartMetadata: w
9738
9738
  };
9739
- }, Ln = async (g, e, t, A, a, n, i, s, o, r, c) => {
9739
+ }, Ln = async (l, e, t, A, a, n, i, s, o, r, c) => {
9740
9740
  var u, E;
9741
9741
  o("workflow.steps.finish.finalize.buildingLayouts");
9742
- const { designDetails: B, cartSelectionsWithPrices: l, cartMetadata: d } = await YA(
9743
- g,
9742
+ const { designDetails: B, cartSelectionsWithPrices: g, cartMetadata: d } = await YA(
9743
+ l,
9744
9744
  e,
9745
9745
  t,
9746
9746
  A,
@@ -9760,23 +9760,23 @@ const Jn = async (g) => {
9760
9760
  h,
9761
9761
  a,
9762
9762
  e,
9763
- l,
9763
+ g,
9764
9764
  C == null ? void 0 : C.sku,
9765
9765
  d,
9766
9766
  w,
9767
9767
  (E = C == null ? void 0 : C.processExecution) == null ? void 0 : E.id
9768
9768
  );
9769
- }, zn = async (g, e, t) => {
9769
+ }, zn = async (l, e, t) => {
9770
9770
  e("workflow.steps.finish.finalize.buildingLayouts"), await Promise.all(
9771
- g.map(async (s) => {
9771
+ l.map(async (s) => {
9772
9772
  await s.workflowManager.outstandingRequestsPromise();
9773
9773
  })
9774
9774
  );
9775
9775
  const a = await (async () => {
9776
9776
  var r;
9777
9777
  const o = await x.getShadowGraphqlClient().query({
9778
- query: gA,
9779
- variables: { ids: g.map((c) => c.transaction.id) },
9778
+ query: lA,
9779
+ variables: { ids: l.map((c) => c.transaction.id) },
9780
9780
  fetchPolicy: "no-cache",
9781
9781
  errorPolicy: "all"
9782
9782
  });
@@ -9784,7 +9784,7 @@ const Jn = async (g) => {
9784
9784
  o.errors && console.log("Server Error:", c.message);
9785
9785
  }), null) : (r = o.data) != null && r.transactions ? o.data.transactions.map((c) => c.workflowState ?? null) : null;
9786
9786
  })(), n = await Promise.all(
9787
- g.map(async (s, o) => await YA(
9787
+ l.map(async (s, o) => await YA(
9788
9788
  s.workflowManager,
9789
9789
  s.workflow,
9790
9790
  s.layouts,
@@ -9802,8 +9802,8 @@ const Jn = async (g) => {
9802
9802
  if (!i)
9803
9803
  throw new Error("Failed to create designs");
9804
9804
  return e("workflow.steps.finish.finalize.updatingTransaction"), i.map((s, o) => {
9805
- var l;
9806
- const r = g[o], c = n[o], B = s.transaction;
9805
+ var g;
9806
+ const r = l[o], c = n[o], B = s.transaction;
9807
9807
  return SA(
9808
9808
  B,
9809
9809
  r.product,
@@ -9813,7 +9813,7 @@ const Jn = async (g) => {
9813
9813
  c.cartMetadata,
9814
9814
  //lineItemImageLink,
9815
9815
  void 0,
9816
- (l = s.processExecution) == null ? void 0 : l.id
9816
+ (g = s.processExecution) == null ? void 0 : g.id
9817
9817
  );
9818
9818
  });
9819
9819
  };
@@ -9899,7 +9899,7 @@ const $e = new Kn(), jn = f`
9899
9899
  }
9900
9900
  }
9901
9901
  `;
9902
- var Vn = /* @__PURE__ */ ((g) => (g.QuantityChanged = "QuantityChanged", g.PriceBreakChanged = "PriceBreakChanged", g))(Vn || {});
9902
+ var Vn = /* @__PURE__ */ ((l) => (l.QuantityChanged = "QuantityChanged", l.PriceBreakChanged = "PriceBreakChanged", l))(Vn || {});
9903
9903
  class Se {
9904
9904
  constructor(e, t) {
9905
9905
  var a;
@@ -9989,9 +9989,9 @@ class Se {
9989
9989
  }
9990
9990
  let n = 2048;
9991
9991
  t && t <= 2048 && (n = t);
9992
- const i = ke(n, n), s = this.commandContext.getAllLayouts(), o = A.defaultPreviewPanelIndex || 0, r = A.panels[o], c = s.find((m) => {
9992
+ const i = ke(n, n), s = this.commandContext.getAllLayouts(), o = A.defaultPreviewPanelIndex || 0, r = A.panels[o], c = s.find((Q) => {
9993
9993
  var p;
9994
- return ((p = m.layoutState) == null ? void 0 : p.layout.panelId) === (r == null ? void 0 : r.name);
9994
+ return ((p = Q.layoutState) == null ? void 0 : p.layout.panelId) === (r == null ? void 0 : r.name);
9995
9995
  }) || s[0], B = c.layoutState.layout.previewRegion ? {
9996
9996
  x: c.layoutState.layout.previewRegion.left,
9997
9997
  y: c.layoutState.layout.previewRegion.top,
@@ -10002,10 +10002,10 @@ class Se {
10002
10002
  y: 0,
10003
10003
  width: c.layoutState.layout.width,
10004
10004
  height: c.layoutState.layout.height
10005
- }, l = this.commandContext.getLayoutById(c.layoutState.layout.id), d = i.getContext("2d");
10005
+ }, g = this.commandContext.getLayoutById(c.layoutState.layout.id), d = i.getContext("2d");
10006
10006
  if (!d)
10007
10007
  throw new Ve("Failed to obtain 2D context for preview image creation");
10008
- const C = zt(l.layoutState.layout, l.layoutState.elements, {
10008
+ const C = zt(g.layoutState.layout, g.layoutState.elements, {
10009
10009
  renderingConfiguration: {
10010
10010
  purpose: Kt.Print,
10011
10011
  region: { left: B.x, top: B.y, width: B.width, height: B.height }
@@ -10017,7 +10017,7 @@ class Se {
10017
10017
  createCanvas: ke,
10018
10018
  createImage: Vt,
10019
10019
  DOMParser: Wt(),
10020
- fetch: gt
10020
+ fetch: lt
10021
10021
  })).render();
10022
10022
  const u = await this.getCanvasObjectURLAsync(i);
10023
10023
  return i.toDataURL(u);
@@ -10113,17 +10113,17 @@ class Se {
10113
10113
  const a = await e.getGlobalProperties(), n = A == null ? void 0 : A.map((r) => r.getId()), i = this.getSteps().filter((r) => n === void 0 || n.includes(r.getId())), s = t.getSteps(), o = (r) => a.find((c) => c.getRawProperty().name === r.aspectName);
10114
10114
  i.forEach((r) => {
10115
10115
  const c = /* @__PURE__ */ new Set(), B = r.getRaw().globalPropertyAspectConfigurations;
10116
- B !== void 0 && (B.forEach((l) => c.add(JSON.stringify(l))), s.forEach((l) => {
10117
- const d = l.getRaw().globalPropertyAspectConfigurations;
10116
+ B !== void 0 && (B.forEach((g) => c.add(JSON.stringify(g))), s.forEach((g) => {
10117
+ const d = g.getRaw().globalPropertyAspectConfigurations;
10118
10118
  d !== void 0 && d.forEach((C) => {
10119
10119
  const w = o(C), h = c.has(JSON.stringify(C));
10120
10120
  if (h && (w == null ? void 0 : w.getType()) === "Option") {
10121
- const u = l.getCurrentVariant();
10121
+ const u = g.getCurrentVariant();
10122
10122
  if (!u)
10123
10123
  return;
10124
10124
  r.selectVariant(u), c.delete(JSON.stringify(C));
10125
10125
  } else if (h && (w == null ? void 0 : w.getType()) === "Text") {
10126
- const u = l.getText();
10126
+ const u = g.getText();
10127
10127
  r.setText(u), c.delete(JSON.stringify(C));
10128
10128
  }
10129
10129
  });
@@ -10203,10 +10203,10 @@ class Se {
10203
10203
  }
10204
10204
  async copy() {
10205
10205
  var s;
10206
- const e = ge(this.getCommandContext().getState());
10206
+ const e = le(this.getCommandContext().getState());
10207
10207
  if (!e)
10208
10208
  throw new b("Internal state is undefined! Cannot copy experience!");
10209
- const t = JSON.stringify(e.transaction), A = this.getWorkflowManager().getWorkflow(), a = new ns({}), n = (s = this.getWorkflowManager().getTransaction().integrationProduct) == null ? void 0 : s.id;
10209
+ const t = JSON.stringify(e.transaction), A = this.getWorkflowManager().getWorkflow(), a = new is({}), n = (s = this.getWorkflowManager().getTransaction().integrationProduct) == null ? void 0 : s.id;
10210
10210
  if (!n)
10211
10211
  throw new b("Integration product id is undefined!");
10212
10212
  return await a.initFromIntegrationProduct(n), await a.getWorkflowExperience(A.id, t, void 0);
@@ -10303,11 +10303,11 @@ const Wn = [
10303
10303
  "textPath",
10304
10304
  "tref",
10305
10305
  "tspan"
10306
- ], Xn = async (g, e, t) => {
10306
+ ], Xn = async (l, e, t) => {
10307
10307
  const A = e.data, a = t.data.baseUrl, n = A.assetUrl.replace("localhost", "localstack"), i = a.slice(0, 4) === "http" ? "" : "https://", s = new URL(i + a);
10308
10308
  s.searchParams.append("video", Pt(JSON.stringify([{ href: n }]))), s.pathname = s.pathname + (s.pathname.slice(-1) === "/" ? "" : "/");
10309
10309
  const o = s.toString(), c = `data:image/svg+xml;base64,${Pt(await tA(o, { type: "svg" }))}`, B = (d) => {
10310
- const C = g.find((h) => h.panelId === d.panelId);
10310
+ const C = l.find((h) => h.panelId === d.panelId);
10311
10311
  if (!C)
10312
10312
  throw new z(d);
10313
10313
  const w = J();
@@ -10324,13 +10324,13 @@ const Wn = [
10324
10324
  },
10325
10325
  C
10326
10326
  );
10327
- }, l = t.data.regions;
10327
+ }, g = t.data.regions;
10328
10328
  try {
10329
- return l.map(B);
10329
+ return g.map(B);
10330
10330
  } catch (d) {
10331
10331
  return console.error(d), [];
10332
10332
  }
10333
- }, qn = async (g, e, t, A) => {
10333
+ }, qn = async (l, e, t, A) => {
10334
10334
  const a = t.data, n = a.assetUrl, i = await nt(n);
10335
10335
  try {
10336
10336
  const s = _A(a, A.option);
@@ -10343,7 +10343,7 @@ const Wn = [
10343
10343
  height: 1
10344
10344
  },
10345
10345
  (w = s == null ? void 0 : s.asset) == null ? void 0 : w.fileLink
10346
- ), B = await lt(c), l = J(), d = g.find((h) => h.panelId === r.panelId);
10346
+ ), B = await gt(c), g = J(), d = l.find((h) => h.panelId === r.panelId);
10347
10347
  if (!d)
10348
10348
  throw new z(r);
10349
10349
  const C = Bt(i, B, {
@@ -10354,7 +10354,7 @@ const Wn = [
10354
10354
  return [
10355
10355
  new L(
10356
10356
  {
10357
- id: l,
10357
+ id: g,
10358
10358
  path: B.path,
10359
10359
  dataWidth: B.width,
10360
10360
  dataHeight: B.height,
@@ -10376,15 +10376,15 @@ const Wn = [
10376
10376
  },
10377
10377
  d
10378
10378
  ),
10379
- new Lt(l, i, C)
10379
+ new Lt(g, i, C)
10380
10380
  ];
10381
10381
  };
10382
10382
  return (await Promise.all(A.data.regions.map((r) => o(r)))).flat();
10383
10383
  } catch (s) {
10384
10384
  return console.error(s), [];
10385
10385
  }
10386
- }, Zn = async (g, e, t, A) => {
10387
- var p, Q;
10386
+ }, Zn = async (l, e, t, A) => {
10387
+ var p, m;
10388
10388
  const a = t.data, n = A.option;
10389
10389
  if (!n)
10390
10390
  return console.error(`No option for step ${A.stepName}.`), [];
@@ -10394,7 +10394,7 @@ const Wn = [
10394
10394
  if (!i.asset)
10395
10395
  return console.error(`No asset for variant with ID: ${a.illustrationVariantId}`), [];
10396
10396
  e[A.stepName] = { selectedVariants: [i] };
10397
- const s = (Q = i.asset) == null ? void 0 : Q.fileLink;
10397
+ const s = (m = i.asset) == null ? void 0 : m.fileLink;
10398
10398
  if (!s)
10399
10399
  return console.error(`No asset link for variant with ID: ${a.illustrationVariantId}`), [];
10400
10400
  const o = await _(s, !0), r = /<svg.*?<\/svg>/s, c = o.match(r) || [], B = (c == null ? void 0 : c.length) > 0 ? c[0] : "", C = Xt().parseFromString(B, "image/svg+xml").firstElementChild;
@@ -10425,7 +10425,7 @@ const Wn = [
10425
10425
  }
10426
10426
  }
10427
10427
  const D = (I) => {
10428
- const F = g.find((Y) => Y.panelId === I.panelId);
10428
+ const F = l.find((Y) => Y.panelId === I.panelId);
10429
10429
  if (!F)
10430
10430
  throw new z(I);
10431
10431
  const y = J();
@@ -10446,15 +10446,15 @@ const Wn = [
10446
10446
  },
10447
10447
  F
10448
10448
  );
10449
- }, m = A.data.regions;
10449
+ }, Q = A.data.regions;
10450
10450
  try {
10451
- return m.map(D);
10451
+ return Q.map(D);
10452
10452
  } catch (I) {
10453
10453
  return console.error(I), [];
10454
10454
  }
10455
- }, $n = async (g, e, t) => {
10455
+ }, $n = async (l, e, t) => {
10456
10456
  const A = await FA(t.data.module), a = e.data, n = (s, o) => {
10457
- const r = g.find((B) => B.panelId === o.panelId);
10457
+ const r = l.find((B) => B.panelId === o.panelId);
10458
10458
  if (!r)
10459
10459
  throw new z(o);
10460
10460
  const c = J();
@@ -10482,12 +10482,12 @@ const Wn = [
10482
10482
  } catch (s) {
10483
10483
  return console.error(s), [];
10484
10484
  }
10485
- }, _n = async (g, e, t, A) => {
10485
+ }, _n = async (l, e, t, A) => {
10486
10486
  var c, B;
10487
10487
  const a = t.data, n = A.option;
10488
10488
  if (!n)
10489
10489
  return console.error(`No option for step ${A.stepName}.`), [];
10490
- const i = ((c = n.variants) == null ? void 0 : c.find((l) => l.id === a.pictureVariantId)) || Ke(n);
10490
+ const i = ((c = n.variants) == null ? void 0 : c.find((g) => g.id === a.pictureVariantId)) || Ke(n);
10491
10491
  if (!i)
10492
10492
  return console.error(`No variant with ID: ${a.pictureVariantId}`), [];
10493
10493
  if (!i.asset)
@@ -10496,24 +10496,24 @@ const Wn = [
10496
10496
  const s = (B = i.asset) == null ? void 0 : B.fileLink;
10497
10497
  if (!s)
10498
10498
  return console.error(`No asset link for variant with ID: ${a.pictureVariantId}`), [];
10499
- const o = (l) => {
10500
- const d = g.find((w) => w.panelId === l.panelId);
10499
+ const o = (g) => {
10500
+ const d = l.find((w) => w.panelId === g.panelId);
10501
10501
  if (!d)
10502
- throw new z(l);
10502
+ throw new z(g);
10503
10503
  const C = J();
10504
10504
  return new L(
10505
10505
  {
10506
10506
  id: C,
10507
10507
  src: s,
10508
10508
  type: G.Image,
10509
- y: l.top,
10510
- x: l.left,
10511
- rotation: l.rotation,
10512
- width: l.width,
10513
- height: l.height,
10514
- layer: l.layer,
10515
- layerIndex: l.layerIndex,
10516
- immutable: l.immutable,
10509
+ y: g.top,
10510
+ x: g.left,
10511
+ rotation: g.rotation,
10512
+ width: g.width,
10513
+ height: g.height,
10514
+ layer: g.layer,
10515
+ layerIndex: g.layerIndex,
10516
+ immutable: g.immutable,
10517
10517
  preserveAspectRatio: "none"
10518
10518
  },
10519
10519
  d
@@ -10521,10 +10521,10 @@ const Wn = [
10521
10521
  }, r = A.data.regions;
10522
10522
  try {
10523
10523
  return r.map(o);
10524
- } catch (l) {
10525
- return console.error(l), [];
10524
+ } catch (g) {
10525
+ return console.error(g), [];
10526
10526
  }
10527
- }, ei = async (g, e, t, A) => {
10527
+ }, ei = async (l, e, t, A) => {
10528
10528
  var r;
10529
10529
  const a = t.data, n = A.option;
10530
10530
  if (!n)
@@ -10534,10 +10534,10 @@ const Wn = [
10534
10534
  return console.error(`No variant with ID: ${a.colorVariantId}`), [];
10535
10535
  e[A.stepName] = { selectedVariants: [i] };
10536
10536
  const s = (c) => {
10537
- const B = g.find((h) => h.panelId === c.panelId);
10537
+ const B = l.find((h) => h.panelId === c.panelId);
10538
10538
  if (!B)
10539
10539
  throw new z(c);
10540
- const l = `
10540
+ const g = `
10541
10541
  <svg
10542
10542
  xmlns="http://www.w3.org/2000/svg"
10543
10543
  xmlnsXlink="http://www.w3.org/1999/xlink"
@@ -10562,7 +10562,7 @@ const Wn = [
10562
10562
  {
10563
10563
  colors: C,
10564
10564
  id: w,
10565
- svg: l,
10565
+ svg: g,
10566
10566
  type: G.Illustration,
10567
10567
  y: c.top,
10568
10568
  x: c.left,
@@ -10581,7 +10581,7 @@ const Wn = [
10581
10581
  } catch (c) {
10582
10582
  return console.error(c), [];
10583
10583
  }
10584
- }, ti = async (g, e, t) => {
10584
+ }, ti = async (l, e, t) => {
10585
10585
  const A = [], n = (() => {
10586
10586
  var r, c;
10587
10587
  return e.type === M.ProductOverlay ? t || ((r = e.data.asset) == null ? void 0 : r.fileLink) || "" : ((c = e.data.asset) == null ? void 0 : c.fileLink) || "";
@@ -10589,7 +10589,7 @@ const Wn = [
10589
10589
  if (s === "image")
10590
10590
  try {
10591
10591
  o.forEach((r) => {
10592
- const c = g.find((l) => l.panelId === r.panelId);
10592
+ const c = l.find((g) => g.panelId === r.panelId);
10593
10593
  if (!c)
10594
10594
  throw new z(r);
10595
10595
  const B = {
@@ -10616,14 +10616,14 @@ const Wn = [
10616
10616
  }
10617
10617
  else {
10618
10618
  const r = await _(n, !0), c = (B) => {
10619
- const l = /<svg.*?<\/svg>/s, d = B.match(l) || [], C = (d == null ? void 0 : d.length) > 0 ? d[0] : "", u = Xt().parseFromString(C, "image/svg+xml").firstElementChild;
10619
+ const g = /<svg.*?<\/svg>/s, d = B.match(g) || [], C = (d == null ? void 0 : d.length) > 0 ? d[0] : "", u = Xt().parseFromString(C, "image/svg+xml").firstElementChild;
10620
10620
  if (!u)
10621
10621
  throw new he("Failed to read SVG.");
10622
10622
  return qt(u), Zt().serializeToString(u);
10623
10623
  };
10624
10624
  o.forEach((B) => {
10625
- const l = g.find((C) => C.panelId === B.panelId);
10626
- if (!l)
10625
+ const g = l.find((C) => C.panelId === B.panelId);
10626
+ if (!g)
10627
10627
  throw new z(B);
10628
10628
  const d = {
10629
10629
  id: J(),
@@ -10644,17 +10644,17 @@ const Wn = [
10644
10644
  productOverlay: e.type === M.ProductOverlay ? !0 : void 0,
10645
10645
  excludeFromExport: e.data.excludeFromPrint
10646
10646
  };
10647
- A.push(new L(d, l));
10647
+ A.push(new L(d, g));
10648
10648
  });
10649
10649
  }
10650
10650
  return A;
10651
- }, Ai = async (g, e, t, A) => {
10651
+ }, Ai = async (l, e, t, A) => {
10652
10652
  const a = [], n = t.data, i = 30, s = (h) => h.vertical ? "center" : h.textAlign || "center", o = () => {
10653
10653
  var D;
10654
10654
  const h = A.option;
10655
10655
  if (!h)
10656
10656
  return;
10657
- const u = ((D = h.variants) == null ? void 0 : D.find((m) => m.id === n.fontVariantId)) || Ke(h);
10657
+ const u = ((D = h.variants) == null ? void 0 : D.find((Q) => Q.id === n.fontVariantId)) || Ke(h);
10658
10658
  if (!u || !u.asset)
10659
10659
  return;
10660
10660
  e[A.stepName] = { selectedVariants: [u] };
@@ -10670,7 +10670,7 @@ const Wn = [
10670
10670
  assetUrl: h,
10671
10671
  name: u.names.fullName.en
10672
10672
  };
10673
- })(), B = (A.data.replaceableText ? A.data.replaceableText.replace("{{}}", n.text) : n.text) || "", l = it(B, {
10673
+ })(), B = (A.data.replaceableText ? A.data.replaceableText.replace("{{}}", n.text) : n.text) || "", g = it(B, {
10674
10674
  vertical: A.data.vertical,
10675
10675
  uppercase: A.data.uppercase
10676
10676
  }), d = async (h) => {
@@ -10681,7 +10681,7 @@ const Wn = [
10681
10681
  return E == null ? void 0 : E.color;
10682
10682
  }, C = n.color || await d(A.data), w = A.data.regions;
10683
10683
  for (const h of w) {
10684
- const u = g.find((D) => D.panelId === h.panelId);
10684
+ const u = l.find((D) => D.panelId === h.panelId);
10685
10685
  if (!u)
10686
10686
  continue;
10687
10687
  const E = {
@@ -10697,7 +10697,7 @@ const Wn = [
10697
10697
  layerIndex: h.layerIndex,
10698
10698
  paths: A.data.paths,
10699
10699
  rotation: h.rotation,
10700
- text: l,
10700
+ text: g,
10701
10701
  type: G.Textbox,
10702
10702
  vertical: A.data.vertical,
10703
10703
  verticalAlign: A.data.verticalAlign || "middle",
@@ -10706,12 +10706,12 @@ const Wn = [
10706
10706
  y: h.top
10707
10707
  };
10708
10708
  if (c) {
10709
- const [D, m] = Ne(
10709
+ const [D, Q] = Ne(
10710
10710
  A.data.size || i,
10711
10711
  c,
10712
10712
  h,
10713
10713
  [
10714
- it(l, {
10714
+ it(g, {
10715
10715
  vertical: A.data.vertical,
10716
10716
  uppercase: A.data.uppercase
10717
10717
  })
@@ -10727,7 +10727,7 @@ const Wn = [
10727
10727
  {
10728
10728
  ...E,
10729
10729
  fontSize: D,
10730
- text: E.curved ? E.text : (m || []).join(`
10730
+ text: E.curved ? E.text : (Q || []).join(`
10731
10731
  `)
10732
10732
  },
10733
10733
  u
@@ -10737,7 +10737,7 @@ const Wn = [
10737
10737
  a.push(new L(E, u));
10738
10738
  }
10739
10739
  return a;
10740
- }, ai = (g, e) => g.conditions ? g.conditions.every((t) => {
10740
+ }, ai = (l, e) => l.conditions ? l.conditions.every((t) => {
10741
10741
  const A = e[t.targetStepName];
10742
10742
  if (A && A.selectedVariants) {
10743
10743
  const a = A.selectedVariants;
@@ -10746,9 +10746,9 @@ const Wn = [
10746
10746
  );
10747
10747
  }
10748
10748
  return !1;
10749
- }) : !0, ni = async (g, e, t, A) => {
10749
+ }) : !0, ni = async (l, e, t, A) => {
10750
10750
  const a = [], n = {};
10751
- for (const i of g) {
10751
+ for (const i of l) {
10752
10752
  const s = e.steps.find((o) => o.stepName === i.name);
10753
10753
  if (s)
10754
10754
  switch (s.type) {
@@ -10820,12 +10820,12 @@ class Ye {
10820
10820
  return this.layouts;
10821
10821
  }
10822
10822
  }
10823
- const ii = () => new Promise((g, e) => {
10823
+ const ii = () => new Promise((l, e) => {
10824
10824
  try {
10825
10825
  const A = ke().getContext("webgl2");
10826
- g(!!A);
10826
+ l(!!A);
10827
10827
  } catch {
10828
- g(!1);
10828
+ l(!1);
10829
10829
  }
10830
10830
  }), si = ii();
10831
10831
  class oi {
@@ -10876,7 +10876,7 @@ class oi {
10876
10876
  * Actions to perform when a static render event is fired for this canvas.
10877
10877
  */
10878
10878
  async render(e) {
10879
- const t = ge(e);
10879
+ const t = le(e);
10880
10880
  this.lastRequestedRenderArguments = t;
10881
10881
  const A = this.getStaticContext();
10882
10882
  if (!A) {
@@ -10949,7 +10949,7 @@ class ri extends BA {
10949
10949
  o = n.width, r = n.height;
10950
10950
  const c = zt(e.layoutState.layout, t, {
10951
10951
  renderingConfiguration: { purpose: Kt.ThreeD }
10952
- }), B = jt(c), l = await $t.from(this.ctx, B, {
10952
+ }), B = jt(c), g = await $t.from(this.ctx, B, {
10953
10953
  anonymousCrossOrigin: !0,
10954
10954
  ignoreDimensions: !this.nonPOTSupport,
10955
10955
  ignoreAnimation: !0,
@@ -10959,14 +10959,14 @@ class ri extends BA {
10959
10959
  createCanvas: ke,
10960
10960
  createImage: Vt,
10961
10961
  DOMParser: Wt(),
10962
- fetch: gt
10962
+ fetch: lt
10963
10963
  });
10964
- l.resize(o, r), await l.render(), this.onRender();
10964
+ g.resize(o, r), await g.render(), this.onRender();
10965
10965
  }
10966
10966
  }
10967
- const Is = (g, e) => {
10967
+ const fs = (l, e) => {
10968
10968
  const t = [];
10969
- return g.forEach((A) => {
10969
+ return l.forEach((A) => {
10970
10970
  const a = e.steps.find((n) => n.stepName === A.stepName);
10971
10971
  (a == null ? void 0 : a.type) === M.Text && A.stepAspectType === "Text" && t.push({
10972
10972
  name: a.stepName,
@@ -10975,13 +10975,13 @@ const Is = (g, e) => {
10975
10975
  }
10976
10976
  });
10977
10977
  }), t;
10978
- }, fs = async (g, e, t, A) => {
10978
+ }, Fs = async (l, e, t, A) => {
10979
10979
  let a = {
10980
10980
  serializableWorkflow: { steps: [] },
10981
10981
  layouts: {}
10982
10982
  };
10983
10983
  a = new k(t.map((o) => new Aa(o))).apply(a);
10984
- const i = await ni(g, e, t, A);
10984
+ const i = await ni(l, e, t, A);
10985
10985
  return new k(i).apply(a);
10986
10986
  }, ci = f`
10987
10987
  ${Be}
@@ -11037,8 +11037,8 @@ const Is = (g, e) => {
11037
11037
  ...ProductFields
11038
11038
  }
11039
11039
  }
11040
- `, We = (g) => f`
11041
- ${g ? PA : ""}
11040
+ `, We = (l) => f`
11041
+ ${l ? PA : ""}
11042
11042
  fragment ProductCollectionFields on ProductCollection {
11043
11043
  id
11044
11044
  name
@@ -11057,7 +11057,7 @@ const Is = (g, e) => {
11057
11057
  }
11058
11058
  }
11059
11059
  }
11060
- ${g ? "productCollectionProducts { ...ProductCollectionProductFields }" : ""}
11060
+ ${l ? "productCollectionProducts { ...ProductCollectionProductFields }" : ""}
11061
11061
  transformCollection {
11062
11062
  id
11063
11063
  name
@@ -11082,8 +11082,8 @@ const Is = (g, e) => {
11082
11082
  }
11083
11083
  }
11084
11084
  }
11085
- `, gi = (g) => f`
11086
- ${We(g)}
11085
+ `, li = (l) => f`
11086
+ ${We(l)}
11087
11087
  query GetBundle($id: String!) {
11088
11088
  bundles(ids: [$id]) {
11089
11089
  id
@@ -11104,7 +11104,7 @@ const Is = (g, e) => {
11104
11104
  }
11105
11105
  }
11106
11106
  }
11107
- `, li = f`
11107
+ `, gi = f`
11108
11108
  query GetBundleStakeholders($id: String!) {
11109
11109
  bundles(ids: [$id]) {
11110
11110
  id
@@ -11155,8 +11155,8 @@ const Is = (g, e) => {
11155
11155
  }
11156
11156
  }
11157
11157
  }
11158
- `, Ci = (g) => f`
11159
- ${We(g)}
11158
+ `, Ci = (l) => f`
11159
+ ${We(l)}
11160
11160
  mutation CreateBundle(
11161
11161
  $collectionId: String
11162
11162
  $initialMetadata: [MetadataInput!]
@@ -11184,8 +11184,8 @@ const Is = (g, e) => {
11184
11184
  }
11185
11185
  }
11186
11186
  }
11187
- `, wi = (g) => f`
11188
- ${We(g)}
11187
+ `, wi = (l) => f`
11188
+ ${We(l)}
11189
11189
  mutation DuplicateBundle(
11190
11190
  $id: String!
11191
11191
  $template: Boolean
@@ -11233,7 +11233,7 @@ const Is = (g, e) => {
11233
11233
  id
11234
11234
  }
11235
11235
  }
11236
- `, Qi = f`
11236
+ `, mi = f`
11237
11237
  mutation BundleRemoveTransaction(
11238
11238
  $id: String!
11239
11239
  $transactionId: String!
@@ -11248,7 +11248,7 @@ const Is = (g, e) => {
11248
11248
  id
11249
11249
  }
11250
11250
  }
11251
- `, mi = f`
11251
+ `, Qi = f`
11252
11252
  mutation BundleRemoveTransactions(
11253
11253
  $id: String!
11254
11254
  $transactionIds: [String!]!
@@ -11315,8 +11315,8 @@ const Is = (g, e) => {
11315
11315
  id
11316
11316
  }
11317
11317
  }
11318
- `, Fi = (g) => f`
11319
- ${We(g)}
11318
+ `, Fi = (l) => f`
11319
+ ${We(l)}
11320
11320
  mutation BundleAssignProductCollection($id: String!, $productCollectionId: String!) {
11321
11321
  bundleAssignProductCollection(id: $id, collectionId: $productCollectionId) {
11322
11322
  id
@@ -11804,7 +11804,7 @@ class Ni {
11804
11804
  }
11805
11805
  async setGlobalPropertyState(e) {
11806
11806
  this.globalPropertyState || await this.initPromise;
11807
- const t = ge(this.globalPropertyState);
11807
+ const t = le(this.globalPropertyState);
11808
11808
  this.globalPropertyState = { ...e, id: t.id }, await this.updateGlobalPropertyState(), await this.onGlobalPropertyStateChange(t, this.globalPropertyState);
11809
11809
  }
11810
11810
  getAspect(e) {
@@ -11828,7 +11828,7 @@ class Ni {
11828
11828
  const a = this.configuration.aspects.find((s) => s.name === e);
11829
11829
  if (!a)
11830
11830
  throw new Error(`Failed to find configuration aspect with name: ${e}`);
11831
- const n = ge(this.globalPropertyState), i = this.globalPropertyState.aspects.find((s) => s.name === e);
11831
+ const n = le(this.globalPropertyState), i = this.globalPropertyState.aspects.find((s) => s.name === e);
11832
11832
  i ? (i.value = t, A !== void 0 && (i.type = a.type, i.storage = A !== null ? A : void 0)) : this.globalPropertyState.aspects.push({
11833
11833
  name: e,
11834
11834
  value: t,
@@ -11843,7 +11843,7 @@ class Ni {
11843
11843
  const A = this.configuration.aspects.find((i) => i.name === e);
11844
11844
  if (!A)
11845
11845
  throw new Error(`Failed to find configuration aspect with name: ${e}`);
11846
- const a = ge(this.globalPropertyState), n = this.globalPropertyState.aspects.find((i) => i.name === e);
11846
+ const a = le(this.globalPropertyState), n = this.globalPropertyState.aspects.find((i) => i.name === e);
11847
11847
  n ? (n.storage = t !== null ? t : void 0, n.type = A.type) : this.globalPropertyState.aspects.push({
11848
11848
  name: e,
11849
11849
  value: "",
@@ -12415,7 +12415,7 @@ class et {
12415
12415
  (n) => n.getWorkflowManager().getTransaction().id === t.id
12416
12416
  );
12417
12417
  a.setBundle(void 0), this.previewService && a.getWorkflowManager().ejectFromPreviewService(), this.bundleStateManager.removeStateForTransaction(t.id), await x.getShadowGraphqlClient().mutate({
12418
- mutation: Qi,
12418
+ mutation: mi,
12419
12419
  variables: {
12420
12420
  id: this.id,
12421
12421
  transactionId: t.id,
@@ -12447,7 +12447,7 @@ class et {
12447
12447
  A.forEach((a) => a.setBundle(void 0)), [...this.workflowExperiences, ...A].forEach(
12448
12448
  (a) => a.checkForPriceBreakChanges()
12449
12449
  ), this.previewService && A.forEach((a) => a.getWorkflowManager().ejectFromPreviewService()), e.forEach((a) => this.bundleStateManager.removeStateForTransaction(a.id)), await x.getShadowGraphqlClient().mutate({
12450
- mutation: mi,
12450
+ mutation: Qi,
12451
12451
  variables: {
12452
12452
  id: this.id,
12453
12453
  transactionIds: e.map((a) => a.id),
@@ -12556,7 +12556,7 @@ class et {
12556
12556
  }
12557
12557
  async getAllStakeholders() {
12558
12558
  const e = await x.getShadowGraphqlClient().query({
12559
- query: li,
12559
+ query: gi,
12560
12560
  errorPolicy: "all",
12561
12561
  fetchPolicy: "no-cache",
12562
12562
  variables: {
@@ -12748,14 +12748,14 @@ class Gi {
12748
12748
  * @returns
12749
12749
  */
12750
12750
  async execute(e, t, A) {
12751
- var B, l, d;
12752
- const n = (l = (B = (await x.getShadowGraphqlClient().mutate({
12751
+ var B, g, d;
12752
+ const n = (g = (B = (await x.getShadowGraphqlClient().mutate({
12753
12753
  mutation: Ui,
12754
12754
  variables: {
12755
12755
  processFlowId: e,
12756
12756
  inputs: [...t.map((C) => C.getValueForTransmission())]
12757
12757
  }
12758
- })).data) == null ? void 0 : B.processExecutionCreate) == null ? void 0 : l.id;
12758
+ })).data) == null ? void 0 : B.processExecutionCreate) == null ? void 0 : g.id;
12759
12759
  if (!n)
12760
12760
  throw new Error("Failed to create process execution.");
12761
12761
  function i(C) {
@@ -12891,8 +12891,8 @@ class Ft {
12891
12891
  return e.startsWith("[") ? JSON.stringify(JSON.parse(e)) : e;
12892
12892
  }
12893
12893
  }
12894
- var Ji = /* @__PURE__ */ ((g) => (g.Transaction = "Transaction", g.Bundle = "Bundle", g.Product = "Product", g.Variant = "Variant", g.Option = "Option", g.LineItem = "LineItem", g.Asset = "Asset", g))(Ji || {});
12895
- class Fs extends Ft {
12894
+ var Ji = /* @__PURE__ */ ((l) => (l.Transaction = "Transaction", l.Bundle = "Bundle", l.Product = "Product", l.Variant = "Variant", l.Option = "Option", l.LineItem = "LineItem", l.Asset = "Asset", l))(Ji || {});
12895
+ class ys extends Ft {
12896
12896
  constructor(e) {
12897
12897
  super(`"${e}"`);
12898
12898
  }
@@ -12907,7 +12907,7 @@ class NA extends Ft {
12907
12907
  return e.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i);
12908
12908
  }
12909
12909
  }
12910
- class ys extends Ft {
12910
+ class Ms extends Ft {
12911
12911
  constructor(e) {
12912
12912
  super(`[${e.map((t) => t.getRaw()).join(",")}]`);
12913
12913
  }
@@ -12955,6 +12955,103 @@ class Tt {
12955
12955
  }
12956
12956
  }
12957
12957
  const Ti = f`
12958
+ query GetCustomer($emailAddress: String!) {
12959
+ customer(emailAddress: $emailAddress) {
12960
+ id
12961
+ emailAddress
12962
+ partner {
12963
+ id
12964
+ }
12965
+ }
12966
+ }
12967
+ `, Oi = f`
12968
+ mutation CustomerCreate($details: CustomerDetailsInput!) {
12969
+ customerCreate(details: $details) {
12970
+ id
12971
+ emailAddress
12972
+ partner {
12973
+ id
12974
+ }
12975
+ }
12976
+ }
12977
+ `, Li = f`
12978
+ mutation CustomerAuthenticate($loginToken: String!) {
12979
+ customerAuthenticate(loginToken: $loginToken) {
12980
+ id
12981
+ emailAddress
12982
+ stakeholders {
12983
+ id
12984
+ type
12985
+ transaction {
12986
+ id
12987
+ }
12988
+ }
12989
+ bundleStakeholders {
12990
+ id
12991
+ type
12992
+ bundle {
12993
+ id
12994
+ transactions {
12995
+ id
12996
+ }
12997
+ }
12998
+ }
12999
+ partner {
13000
+ id
13001
+ }
13002
+ }
13003
+ }
13004
+ `, zi = f`
13005
+ mutation CustomerGenerateVerificationCode($emailAddress: String!) {
13006
+ customerGenerateVerificationCode(emailAddress: $emailAddress)
13007
+ }
13008
+ `, Ki = f`
13009
+ mutation CustomerVerifyCode($emailAddress: String!, $verificationCode: String!) {
13010
+ customerVerifyCode(emailAddress: $emailAddress, verificationCode: $verificationCode) {
13011
+ id
13012
+ emailAddress
13013
+ loginToken
13014
+ partner {
13015
+ id
13016
+ }
13017
+ stakeholders {
13018
+ id
13019
+ type
13020
+ transaction {
13021
+ id
13022
+ }
13023
+ }
13024
+ bundleStakeholders {
13025
+ id
13026
+ type
13027
+ bundle {
13028
+ id
13029
+ transactions {
13030
+ id
13031
+ }
13032
+ }
13033
+ }
13034
+ }
13035
+ }
13036
+ `, ji = f`
13037
+ query CustomerMetafields($id: String!) {
13038
+ metafields(entityId: $id) {
13039
+ id
13040
+ createdAt
13041
+ updatedAt
13042
+ entityId
13043
+ value
13044
+ metafieldConfiguration {
13045
+ id
13046
+ createdAt
13047
+ updatedAt
13048
+ entityType
13049
+ metafieldType
13050
+ name
13051
+ }
13052
+ }
13053
+ }
13054
+ `, Vi = f`
12958
13055
  fragment RegionFields on Region {
12959
13056
  width
12960
13057
  top
@@ -12972,7 +13069,7 @@ const Ti = f`
12972
13069
  height
12973
13070
  }
12974
13071
  }
12975
- `, Oi = f`
13072
+ `, Wi = f`
12976
13073
  fragment LookAtAnimationFields on LookAtAnimation {
12977
13074
  latDeg
12978
13075
  lonDeg
@@ -12983,7 +13080,7 @@ const Ti = f`
12983
13080
  z
12984
13081
  }
12985
13082
  }
12986
- `, Li = f`
13083
+ `, Xi = f`
12987
13084
  fragment RenderingPipelineConfigurationFields on RenderingPipelineConfiguration {
12988
13085
  antiAliasing {
12989
13086
  samples
@@ -13067,21 +13164,21 @@ const Ti = f`
13067
13164
  weight
13068
13165
  }
13069
13166
  }
13070
- `, zi = f`
13167
+ `, qi = f`
13071
13168
  fragment ModelAnimationFields on ModelAnimation {
13072
13169
  from
13073
13170
  to
13074
13171
  loop
13075
13172
  name
13076
13173
  }
13077
- `, Ki = (g) => f`
13078
- ${Ie(g)}
13174
+ `, Zi = (l) => f`
13175
+ ${Ie(l)}
13079
13176
  ${Et}
13080
13177
  ${sA}
13081
- ${Ti}
13082
- ${Oi}
13083
- ${Li}
13084
- ${zi}
13178
+ ${Vi}
13179
+ ${Wi}
13180
+ ${Xi}
13181
+ ${qi}
13085
13182
  query GetWorkflows($ids: [String!]!) {
13086
13183
  workflows(ids: $ids) {
13087
13184
  partner {
@@ -13470,7 +13567,7 @@ const Ti = f`
13470
13567
  }
13471
13568
  }
13472
13569
  }
13473
- `, ji = f`
13570
+ `, $i = f`
13474
13571
  query GetTransactionForPartner($id: String!) {
13475
13572
  transactions(ids: [$id]) {
13476
13573
  id
@@ -13487,7 +13584,7 @@ const Ti = f`
13487
13584
  }
13488
13585
  }
13489
13586
  }
13490
- `, Vi = f`
13587
+ `, _i = f`
13491
13588
  ${Ie(!1)}
13492
13589
  query GetWorkflowForTheme($id: String!) {
13493
13590
  workflow(id: $id) {
@@ -13509,147 +13606,68 @@ const Ti = f`
13509
13606
  }
13510
13607
  }
13511
13608
  }
13512
- `, Wi = f`
13513
- query GetCustomer($emailAddress: String!) {
13514
- customer(emailAddress: $emailAddress) {
13515
- id
13516
- emailAddress
13517
- partner {
13518
- id
13519
- }
13520
- }
13521
- }
13522
- `, Xi = f`
13523
- mutation CustomerCreate($details: CustomerDetailsInput!) {
13524
- customerCreate(details: $details) {
13525
- id
13526
- emailAddress
13527
- partner {
13528
- id
13529
- }
13530
- }
13531
- }
13532
- `, qi = f`
13533
- mutation CustomerAuthenticate($loginToken: String!) {
13534
- customerAuthenticate(loginToken: $loginToken) {
13535
- id
13536
- emailAddress
13537
- stakeholders {
13538
- id
13539
- type
13540
- transaction {
13541
- id
13542
- }
13543
- }
13544
- bundleStakeholders {
13545
- id
13546
- type
13547
- bundle {
13548
- id
13549
- transactions {
13550
- id
13551
- }
13552
- }
13553
- }
13554
- partner {
13555
- id
13556
- }
13557
- }
13558
- }
13559
- `, Zi = f`
13560
- mutation CustomerGenerateVerificationCode($emailAddress: String!) {
13561
- customerGenerateVerificationCode(emailAddress: $emailAddress)
13562
- }
13563
- `, $i = f`
13564
- mutation CustomerVerifyCode($emailAddress: String!, $verificationCode: String!) {
13565
- customerVerifyCode(emailAddress: $emailAddress, verificationCode: $verificationCode) {
13566
- id
13567
- emailAddress
13568
- loginToken
13569
- partner {
13570
- id
13571
- }
13572
- stakeholders {
13573
- id
13574
- type
13575
- transaction {
13576
- id
13577
- }
13578
- }
13579
- bundleStakeholders {
13580
- id
13581
- type
13582
- bundle {
13583
- id
13584
- transactions {
13585
- id
13586
- }
13587
- }
13588
- }
13589
- }
13590
- }
13591
- `, _i = f`
13609
+ `, es = f`
13592
13610
  fragment TagFields on Tag {
13593
13611
  id
13594
13612
  name
13595
13613
  }
13596
- `, es = f`
13597
- ${_i}
13614
+ `, ts = f`
13615
+ ${es}
13598
13616
  query GetManyTags($entityIds: [String!]!) {
13599
13617
  tagsMany(entityIds: $entityIds) {
13600
13618
  ...TagFields
13601
13619
  }
13602
13620
  }
13603
- `, re = async (g) => {
13621
+ `, re = async (l) => {
13604
13622
  var e;
13605
- for (const t in g.layouts) {
13606
- const A = g.layouts[t].elements.filter(
13623
+ for (const t in l.layouts) {
13624
+ const A = l.layouts[t].elements.filter(
13607
13625
  (n) => n.type === G.Illustration
13608
13626
  );
13609
13627
  for (let n = 0; n < A.length; ++n) {
13610
13628
  const i = A[n];
13611
13629
  i.src && i.svg && (i.cachedObjectURL = await Re(i.svg));
13612
13630
  }
13613
- const a = g.layouts[t].elements.filter((n) => n.type === G.Textbox);
13631
+ const a = l.layouts[t].elements.filter((n) => n.type === G.Textbox);
13614
13632
  for (let n = 0; n < a.length; ++n) {
13615
13633
  const i = a[n];
13616
13634
  (e = i.fontData) != null && e.assetUrl && await dt(i.fontData.assetUrl);
13617
13635
  }
13618
13636
  }
13619
- }, ts = async (g, e) => {
13637
+ }, As = async (l, e) => {
13620
13638
  var a;
13621
13639
  const t = await x.getShadowGraphqlClient().query({
13622
- query: Ki(((a = e == null ? void 0 : e.assets) == null ? void 0 : a.metadata) || !1),
13640
+ query: Zi(((a = e == null ? void 0 : e.assets) == null ? void 0 : a.metadata) || !1),
13623
13641
  errorPolicy: "all",
13624
13642
  fetchPolicy: "no-cache",
13625
13643
  variables: {
13626
- ids: g
13644
+ ids: l
13627
13645
  }
13628
13646
  }), A = t.data.workflows;
13629
- if (A === void 0 || A.length !== g.length)
13647
+ if (A === void 0 || A.length !== l.length)
13630
13648
  throw new Error(`Unable to read workflows: ${t.errors ?? "Length mismatch in response"}`);
13631
13649
  return A.forEach((n) => {
13632
13650
  n.steps.forEach((i) => {
13633
13651
  var s, o, r;
13634
13652
  delete i.data.__typename, (s = i.option) != null && s.id && ((o = i.option.defaultVariant) != null && o.asset && U.cacheAsset(i.option.defaultVariant.asset), i.option.colorProfile && U.cacheAsset(i.option.colorProfile), (r = i.option.variants) == null || r.forEach((c) => {
13635
13653
  c.asset && U.cacheAsset(c.asset), c.thumbnail && U.cacheAsset(c.thumbnail), c.material && U.cacheMaterial(c.material);
13636
- }), Qe.set({ id: i.option.id }, Promise.resolve(i.option)));
13654
+ }), me.set({ id: i.option.id }, Promise.resolve(i.option)));
13637
13655
  }), n.finalizeStepConfig || (n.finalizeStepConfig = {}), n.finalizeStepConfig.termsMarkdown = n.partner.termsMarkdown;
13638
13656
  }), A;
13639
- }, As = async (g, e) => {
13640
- const A = (await e).find((a) => a.id === g);
13657
+ }, as = async (l, e) => {
13658
+ const A = (await e).find((a) => a.id === l);
13641
13659
  if (!A)
13642
- throw new Error(`Workflow not found: ${g}`);
13660
+ throw new Error(`Workflow not found: ${l}`);
13643
13661
  return A;
13644
- }, vA = async (g, e) => {
13645
- const t = g.map((s) => Qe.get({ id: s, options: e })), A = g.filter((s, o) => t[o] === void 0);
13662
+ }, vA = async (l, e) => {
13663
+ const t = l.map((s) => me.get({ id: s, options: e })), A = l.filter((s, o) => t[o] === void 0);
13646
13664
  if (A.length === 0)
13647
13665
  return Promise.all(t);
13648
- const a = ts(A, e), n = A.map(
13649
- (s) => Qe.set({ id: s, options: e }, As(s, a))
13666
+ const a = As(A, e), n = A.map(
13667
+ (s) => me.set({ id: s, options: e }, as(s, a))
13650
13668
  ), i = t.filter((s) => s !== void 0);
13651
13669
  return await Promise.all(i.concat(n));
13652
- }, xe = async (g, e) => (await vA([g], e))[0], as = (g) => g.sort((e, t) => e.index - t.index).map((e) => ({
13670
+ }, xe = async (l, e) => (await vA([l], e))[0], ns = (l) => l.sort((e, t) => e.index - t.index).map((e) => ({
13653
13671
  id: J(),
13654
13672
  panelId: e.name,
13655
13673
  name: e.name,
@@ -13662,11 +13680,11 @@ const Ti = f`
13662
13680
  previewRegion: e.previewRegion,
13663
13681
  useEditableArea: e.useEditableArea,
13664
13682
  editableArea: e.editableArea
13665
- })), tt = (g, e) => {
13666
- const t = g.workflowState, A = t ? JSON.parse(t) : void 0;
13667
- return A ? Object.values(A.layouts).map((a) => a.layout) : as(e.panels);
13683
+ })), tt = (l, e) => {
13684
+ const t = l.workflowState, A = t ? JSON.parse(t) : void 0;
13685
+ return A ? Object.values(A.layouts).map((a) => a.layout) : ns(e.panels);
13668
13686
  };
13669
- class ns {
13687
+ class is {
13670
13688
  constructor(e) {
13671
13689
  this.activeIntegration = void 0, this.updateTransactionState = async (t) => {
13672
13690
  try {
@@ -13677,14 +13695,14 @@ class ns {
13677
13695
  } catch (A) {
13678
13696
  throw console.error(A), new H("Critical - Unable to synchronize workflow state with server.");
13679
13697
  }
13680
- }, this.initialized = !1, this.options = e, this.options.applicationKey && ca(this.options.applicationKey), console.debug("------------------------"), console.debug("Spiff Commerce Core SDK"), console.debug("Version: 22.8.0"), console.debug(`Application Key Provided: ${!!this.options.applicationKey}`), console.debug("------------------------");
13698
+ }, this.initialized = !1, this.options = e, this.options.applicationKey && ca(this.options.applicationKey), console.debug("------------------------"), console.debug("Spiff Commerce Core SDK"), console.debug("Version: 22.9.0"), console.debug(`Application Key Provided: ${!!this.options.applicationKey}`), console.debug("------------------------");
13681
13699
  }
13682
13700
  /** @deprecated Use `configure` instead */
13683
13701
  configureUrls(e, t, A) {
13684
13702
  q.setHubUrl(e), q.setServerUrl(t), q.setServicesApiUrl(A), this.options.applicationKey && this.getIntegration();
13685
13703
  }
13686
13704
  configure(e) {
13687
- q.setHubUrl(e.hubUrl), q.setServerUrl(e.serverUrl), q.setServicesApiUrl(e.servicesApiUrl), this.marketplaceThemeInstallId = e.marketplaceThemeInstallId, this.marketplaceThemeInstallConfigurationId = e.marketplaceThemeInstallConfigurationId, e.bearerAuthenticationToken && la(e.bearerAuthenticationToken), this.options.applicationKey && this.getIntegration();
13705
+ q.setHubUrl(e.hubUrl), q.setServerUrl(e.serverUrl), q.setServicesApiUrl(e.servicesApiUrl), this.marketplaceThemeInstallId = e.marketplaceThemeInstallId, this.marketplaceThemeInstallConfigurationId = e.marketplaceThemeInstallConfigurationId, e.bearerAuthenticationToken && ga(e.bearerAuthenticationToken), this.options.applicationKey && this.getIntegration();
13688
13706
  }
13689
13707
  /**
13690
13708
  * @returns The asset manager allows for common operations related to assets
@@ -13699,7 +13717,7 @@ class ns {
13699
13717
  return this.currencyCode;
13700
13718
  }
13701
13719
  getFlowService() {
13702
- if (!ga())
13720
+ if (!la())
13703
13721
  throw new Error("Application key required to use Flow Service.");
13704
13722
  return new Gi();
13705
13723
  }
@@ -13740,8 +13758,8 @@ class ns {
13740
13758
  if (o && await this.authenticateCustomerId(o)) {
13741
13759
  const c = (n = (a = this.customer) == null ? void 0 : a.bundleStakeholders) == null ? void 0 : n.find(
13742
13760
  (B) => {
13743
- var l;
13744
- return ((l = B.bundle) == null ? void 0 : l.id) === e;
13761
+ var g;
13762
+ return ((g = B.bundle) == null ? void 0 : g.id) === e;
13745
13763
  }
13746
13764
  );
13747
13765
  if (c)
@@ -13764,9 +13782,9 @@ class ns {
13764
13782
  * @throws An error if the transaction is not found.
13765
13783
  */
13766
13784
  async authenticateTransactionFromLocalStorage(e) {
13767
- var c, B, l, d, C, w;
13785
+ var c, B, g, d, C, w;
13768
13786
  const t = x.getShadowGraphqlClient(), A = await t.query({
13769
- query: ji,
13787
+ query: $i,
13770
13788
  errorPolicy: "all",
13771
13789
  fetchPolicy: "no-cache",
13772
13790
  variables: {
@@ -13787,15 +13805,15 @@ class ns {
13787
13805
  if (s != null && s.has(e)) {
13788
13806
  const h = s.get(e);
13789
13807
  if (h && await this.authenticateCustomerId(h)) {
13790
- const E = ((d = (l = this.customer) == null ? void 0 : l.bundleStakeholders) == null ? void 0 : d.find(
13808
+ const E = ((d = (g = this.customer) == null ? void 0 : g.bundleStakeholders) == null ? void 0 : d.find(
13791
13809
  (D) => {
13792
- var m, p;
13793
- return (p = (m = D.bundle) == null ? void 0 : m.transactions) == null ? void 0 : p.some((Q) => Q.id === e);
13810
+ var Q, p;
13811
+ return (p = (Q = D.bundle) == null ? void 0 : Q.transactions) == null ? void 0 : p.some((m) => m.id === e);
13794
13812
  }
13795
13813
  )) || ((w = (C = this.customer) == null ? void 0 : C.stakeholders) == null ? void 0 : w.find(
13796
13814
  (D) => {
13797
- var m;
13798
- return ((m = D.transaction) == null ? void 0 : m.id) === e;
13815
+ var Q;
13816
+ return ((Q = D.transaction) == null ? void 0 : Q.id) === e;
13799
13817
  }
13800
13818
  ));
13801
13819
  if (E)
@@ -13806,7 +13824,7 @@ class ns {
13806
13824
  }
13807
13825
  }
13808
13826
  const r = (await t.query({
13809
- query: Vi,
13827
+ query: _i,
13810
13828
  errorPolicy: "all",
13811
13829
  variables: {
13812
13830
  id: a.workflowId
@@ -13842,7 +13860,7 @@ class ns {
13842
13860
  var i;
13843
13861
  this.customer = void 0;
13844
13862
  const t = x.getShadowGraphqlClient(), a = (await t.query({
13845
- query: Wi,
13863
+ query: Ti,
13846
13864
  errorPolicy: "all",
13847
13865
  fetchPolicy: "no-cache",
13848
13866
  variables: {
@@ -13851,7 +13869,7 @@ class ns {
13851
13869
  })).data.customer;
13852
13870
  if (!a.id) {
13853
13871
  const o = (i = (await t.mutate({
13854
- mutation: Xi,
13872
+ mutation: Oi,
13855
13873
  errorPolicy: "all",
13856
13874
  fetchPolicy: "no-cache",
13857
13875
  variables: {
@@ -13883,7 +13901,7 @@ class ns {
13883
13901
  if (!a)
13884
13902
  return !1;
13885
13903
  const i = (s = (await t.mutate({
13886
- mutation: qi,
13904
+ mutation: Li,
13887
13905
  errorPolicy: "all",
13888
13906
  fetchPolicy: "no-cache",
13889
13907
  variables: {
@@ -13898,7 +13916,7 @@ class ns {
13898
13916
  */
13899
13917
  async generateVerificationCode(e) {
13900
13918
  await x.getShadowGraphqlClient().mutate({
13901
- mutation: Zi,
13919
+ mutation: zi,
13902
13920
  variables: {
13903
13921
  emailAddress: e
13904
13922
  }
@@ -13913,7 +13931,7 @@ class ns {
13913
13931
  async verifyCode(e, t) {
13914
13932
  var n, i;
13915
13933
  const a = (n = (await x.getShadowGraphqlClient().mutate({
13916
- mutation: $i,
13934
+ mutation: Ki,
13917
13935
  errorPolicy: "all",
13918
13936
  fetchPolicy: "no-cache",
13919
13937
  variables: {
@@ -13932,12 +13950,24 @@ class ns {
13932
13950
  }
13933
13951
  return !1;
13934
13952
  }
13953
+ async getCustomerMetafields() {
13954
+ var t;
13955
+ if (!((t = this.customer) != null && t.id))
13956
+ throw new Error("Customer must be logged in before calling this function.");
13957
+ return (await x.getShadowGraphqlClient().query({
13958
+ query: ji,
13959
+ fetchPolicy: "no-cache",
13960
+ variables: {
13961
+ id: this.customer.id
13962
+ }
13963
+ })).data.metafields;
13964
+ }
13935
13965
  /**
13936
13966
  * @param collectionId Optional: The id of the product collection that the bundle can use.
13937
13967
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
13938
13968
  */
13939
13969
  async getNewBundle(e, t, A) {
13940
- var r, c, B, l, d;
13970
+ var r, c, B, g, d;
13941
13971
  const n = (B = (await x.getShadowGraphqlClient().mutate({
13942
13972
  mutation: Ci(((c = (r = A == null ? void 0 : A.graphql) == null ? void 0 : r.productCollection) == null ? void 0 : c.eagerFetchProducts) || !1),
13943
13973
  variables: {
@@ -13955,7 +13985,7 @@ class ns {
13955
13985
  const s = P.getMap("bundleOwnerIds") || /* @__PURE__ */ new Map();
13956
13986
  s.set(n.id, n.bundleOwnerId), P.setMap("bundleOwnerIds", s);
13957
13987
  const o = new et(this, n, void 0, void 0, n.bundleOwnerId, {
13958
- eagerFetchProducts: (d = (l = A == null ? void 0 : A.graphql) == null ? void 0 : l.productCollection) == null ? void 0 : d.eagerFetchProducts
13988
+ eagerFetchProducts: (d = (g = A == null ? void 0 : A.graphql) == null ? void 0 : g.productCollection) == null ? void 0 : d.eagerFetchProducts
13959
13989
  });
13960
13990
  return await o.getInitializationPromise(), o;
13961
13991
  }
@@ -13967,15 +13997,15 @@ class ns {
13967
13997
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
13968
13998
  */
13969
13999
  async getExistingBundle(e, t, A, a) {
13970
- var h, u, E, D, m, p, Q, I, F, y, Y;
14000
+ var h, u, E, D, Q, p, m, I, F, y, Y;
13971
14001
  const n = P.getMap("bundleOwnerIds"), i = n == null ? void 0 : n.get(e), o = ((h = Object.entries(localStorage).find(([N, S]) => N.startsWith("CognitoIdentityServiceProvider") && N.endsWith("idToken"))) == null ? void 0 : h[0]) || "", r = localStorage.getItem(o), c = {};
13972
14002
  r && !Oe(r) && (c.Authorization = `Bearer ${r}`);
13973
14003
  const B = {
13974
14004
  bundleOwnerId: i,
13975
14005
  ...c,
13976
14006
  ...(u = a == null ? void 0 : a.graphql) == null ? void 0 : u.additionalHeaders
13977
- }, l = await x.getShadowGraphqlClient().query({
13978
- query: gi(((D = (E = a == null ? void 0 : a.graphql) == null ? void 0 : E.productCollection) == null ? void 0 : D.eagerFetchProducts) || !1),
14007
+ }, g = await x.getShadowGraphqlClient().query({
14008
+ query: li(((D = (E = a == null ? void 0 : a.graphql) == null ? void 0 : E.productCollection) == null ? void 0 : D.eagerFetchProducts) || !1),
13979
14009
  variables: {
13980
14010
  id: e
13981
14011
  },
@@ -13984,9 +14014,9 @@ class ns {
13984
14014
  headers: B
13985
14015
  }
13986
14016
  });
13987
- if (!((m = l.data) != null && m.bundles) || ((p = l.data) == null ? void 0 : p.bundles.length) === 0 || !((Q = l.data) != null && Q.bundles[0]))
14017
+ if (!((Q = g.data) != null && Q.bundles) || ((p = g.data) == null ? void 0 : p.bundles.length) === 0 || !((m = g.data) != null && m.bundles[0]))
13988
14018
  throw new Error(`Unable to find bundle: ${e}`);
13989
- const d = (I = l.data) == null ? void 0 : I.bundles[0], C = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
14019
+ const d = (I = g.data) == null ? void 0 : I.bundles[0], C = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
13990
14020
  C.set(d.id, d.partner.id), P.setMap("bundlePartnerIds", C);
13991
14021
  const w = new et(this, d, t, A, i, {
13992
14022
  additionalHeaders: (F = a == null ? void 0 : a.graphql) == null ? void 0 : F.additionalHeaders,
@@ -14001,15 +14031,15 @@ class ns {
14001
14031
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
14002
14032
  */
14003
14033
  async duplicateBundle(e, t, A, a) {
14004
- var h, u, E, D, m, p, Q, I;
14034
+ var h, u, E, D, Q, p, m, I;
14005
14035
  const n = (h = P.getMap("bundleOwnerIds")) == null ? void 0 : h.get(e), s = ((u = Object.entries(localStorage).find(([F, y]) => F.startsWith("CognitoIdentityServiceProvider") && F.endsWith("idToken"))) == null ? void 0 : u[0]) || "", o = localStorage.getItem(s), r = {};
14006
14036
  o && !Oe(o) && (r.Authorization = `Bearer ${o}`);
14007
14037
  const c = {
14008
14038
  bundleOwnerId: n,
14009
14039
  ...r,
14010
14040
  ...(E = a == null ? void 0 : a.graphql) == null ? void 0 : E.additionalHeaders
14011
- }, l = (p = (await x.getShadowGraphqlClient().mutate({
14012
- mutation: wi(((m = (D = a == null ? void 0 : a.graphql) == null ? void 0 : D.productCollection) == null ? void 0 : m.eagerFetchProducts) || !1),
14041
+ }, g = (p = (await x.getShadowGraphqlClient().mutate({
14042
+ mutation: wi(((Q = (D = a == null ? void 0 : a.graphql) == null ? void 0 : D.productCollection) == null ? void 0 : Q.eagerFetchProducts) || !1),
14013
14043
  variables: {
14014
14044
  id: e,
14015
14045
  template: t,
@@ -14022,14 +14052,14 @@ class ns {
14022
14052
  },
14023
14053
  fetchPolicy: "no-cache"
14024
14054
  })).data) == null ? void 0 : p.bundleDuplicate;
14025
- if (!(l != null && l.id))
14055
+ if (!(g != null && g.id))
14026
14056
  throw new Error("Unable to duplicate bundle");
14027
14057
  const d = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
14028
- d.set(l.id, l.partner.id), P.setMap("bundlePartnerIds", d);
14058
+ d.set(g.id, g.partner.id), P.setMap("bundlePartnerIds", d);
14029
14059
  const C = P.getMap("bundleOwnerIds") || /* @__PURE__ */ new Map();
14030
- C.set(l.id, l.bundleOwnerId), P.setMap("bundleOwnerIds", C);
14031
- const w = new et(this, l, void 0, void 0, l.bundleOwnerId, {
14032
- eagerFetchProducts: (I = (Q = a == null ? void 0 : a.graphql) == null ? void 0 : Q.productCollection) == null ? void 0 : I.eagerFetchProducts
14060
+ C.set(g.id, g.bundleOwnerId), P.setMap("bundleOwnerIds", C);
14061
+ const w = new et(this, g, void 0, void 0, g.bundleOwnerId, {
14062
+ eagerFetchProducts: (I = (m = a == null ? void 0 : a.graphql) == null ? void 0 : m.productCollection) == null ? void 0 : I.eagerFetchProducts
14033
14063
  });
14034
14064
  return await w.getInitializationPromise(), w;
14035
14065
  }
@@ -14060,7 +14090,7 @@ class ns {
14060
14090
  const t = x.getShadowGraphqlClient();
14061
14091
  let A = {};
14062
14092
  const a = e.steps.map((i) => `${e.id}_${i.stepName}`), n = await t.query({
14063
- query: es,
14093
+ query: ts,
14064
14094
  fetchPolicy: "no-cache",
14065
14095
  variables: { entityIds: a }
14066
14096
  });
@@ -14082,14 +14112,14 @@ class ns {
14082
14112
  * @returns A workflow experience configured as requested.
14083
14113
  */
14084
14114
  async getWorkflowExperience(e, t, A, a) {
14085
- var l, d, C, w, h;
14115
+ var g, d, C, w, h;
14086
14116
  if (!a)
14087
14117
  return await this.getWorkflowExperienceDeprecated(e, t, A);
14088
14118
  const n = async () => {
14089
- var E, D, m;
14119
+ var E, D, Q;
14090
14120
  const u = x.getShadowGraphqlClient();
14091
14121
  if (a.type === "transaction") {
14092
- const { transactionId: p, readOnly: Q } = a, I = await u.query({
14122
+ const { transactionId: p, readOnly: m } = a, I = await u.query({
14093
14123
  query: Fe,
14094
14124
  variables: {
14095
14125
  ids: [p]
@@ -14105,9 +14135,9 @@ class ns {
14105
14135
  const y = await xe(F.workflowId);
14106
14136
  if (!F.product)
14107
14137
  throw new H("Failed to load transaction, product not available.");
14108
- !this.activeIntegration && ((m = F.integrationProduct) != null && m.integration) && (this.activeIntegration = Promise.resolve(F.integrationProduct.integration));
14138
+ !this.activeIntegration && ((Q = F.integrationProduct) != null && Q.integration) && (this.activeIntegration = Promise.resolve(F.integrationProduct.integration));
14109
14139
  const Y = await this.getStepTags(y);
14110
- return { transaction: F, workflow: y, stepTags: Y, readOnly: Q };
14140
+ return { transaction: F, workflow: y, stepTags: Y, readOnly: m };
14111
14141
  }
14112
14142
  if (a.type === "integration" || a.type === "external") {
14113
14143
  const p = async () => {
@@ -14135,12 +14165,12 @@ class ns {
14135
14165
  if (!S.product)
14136
14166
  throw new H("Failed to create transaction, product not available.");
14137
14167
  return S;
14138
- }, Q = xe(a.workflowId, a == null ? void 0 : a.graphql), [I, F] = await Promise.all([p(), Q]), y = await this.getStepTags(F);
14168
+ }, m = xe(a.workflowId, a == null ? void 0 : a.graphql), [I, F] = await Promise.all([p(), m]), y = await this.getStepTags(F);
14139
14169
  return { transaction: I, workflow: F, stepTags: y };
14140
14170
  }
14141
14171
  throw new H("No workflow ID provided.");
14142
14172
  }, { transaction: i, workflow: s, stepTags: o, readOnly: r } = await n();
14143
- this.currencyCode = (l = i.product.partner) == null ? void 0 : l.currencyCode;
14173
+ this.currencyCode = (g = i.product.partner) == null ? void 0 : g.currencyCode;
14144
14174
  const c = {
14145
14175
  product: i.product,
14146
14176
  transaction: i,
@@ -14198,10 +14228,10 @@ class ns {
14198
14228
  var y, Y, N;
14199
14229
  if (p.length === 0)
14200
14230
  return [];
14201
- const Q = p.map((S) => S.option.transactionId), I = await A.query({
14231
+ const m = p.map((S) => S.option.transactionId), I = await A.query({
14202
14232
  query: Fe,
14203
14233
  variables: {
14204
- ids: Q
14234
+ ids: m
14205
14235
  },
14206
14236
  errorPolicy: "all",
14207
14237
  fetchPolicy: "no-cache"
@@ -14223,7 +14253,7 @@ class ns {
14223
14253
  var F, y, Y;
14224
14254
  if (p.length === 0)
14225
14255
  return [];
14226
- const Q = await A.mutate({
14256
+ const m = await A.mutate({
14227
14257
  mutation: Ha,
14228
14258
  variables: {
14229
14259
  inputs: p.map((N) => ({
@@ -14239,9 +14269,9 @@ class ns {
14239
14269
  },
14240
14270
  errorPolicy: "all",
14241
14271
  fetchPolicy: "no-cache"
14242
- }), I = (F = Q.data) == null ? void 0 : F.transactionCreateMany;
14272
+ }), I = (F = m.data) == null ? void 0 : F.transactionCreateMany;
14243
14273
  if (!I || I.length === 0) {
14244
- const N = ((Y = (y = Q.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
14274
+ const N = ((Y = (y = m.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
14245
14275
  throw new H(`Failed to create transactions: ${N}`);
14246
14276
  }
14247
14277
  return I.map((N, S) => ({
@@ -14250,18 +14280,18 @@ class ns {
14250
14280
  readOnly: !1,
14251
14281
  index: p[S].index
14252
14282
  }));
14253
- }, i = e.map((p, Q) => ({ option: p, index: Q })), s = i.filter((p) => p.option.type === "transaction"), o = i.filter(
14283
+ }, i = e.map((p, m) => ({ option: p, index: m })), s = i.filter((p) => p.option.type === "transaction"), o = i.filter(
14254
14284
  (p) => p.option.type === "integration" || p.option.type === "external"
14255
14285
  ), r = xt(s, 10), c = xt(o, 10), B = (await Promise.all([
14256
14286
  ...r.map(a),
14257
14287
  ...c.map(n)
14258
- ])).flat(), l = [...new Set(B.map((p) => p.workflowId))], d = await vA(l, t), C = new Map(d.map((p) => [p.id, p])), w = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), h = B.map(async (p) => {
14288
+ ])).flat(), g = [...new Set(B.map((p) => p.workflowId))], d = await vA(g, t), C = new Map(d.map((p) => [p.id, p])), w = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), h = B.map(async (p) => {
14259
14289
  var W;
14260
- const { transaction: Q, workflowId: I, readOnly: F, index: y } = p, Y = C.get(I), N = await this.getStepTags(Y), S = e[y];
14261
- !w.get(Q.id) && Q.transactionOwnerId && w.set(Q.id, Q.transactionOwnerId);
14262
- const T = w.get(Q.id) || void 0, R = {
14263
- product: Q.product,
14264
- transaction: Q,
14290
+ const { transaction: m, workflowId: I, readOnly: F, index: y } = p, Y = C.get(I), N = await this.getStepTags(Y), S = e[y];
14291
+ !w.get(m.id) && m.transactionOwnerId && w.set(m.id, m.transactionOwnerId);
14292
+ const T = w.get(m.id) || void 0, R = {
14293
+ product: m.product,
14294
+ transaction: m,
14265
14295
  stepTags: N,
14266
14296
  layouts: [],
14267
14297
  singleVariantsRenderable: (W = S == null ? void 0 : S.workflowConfiguration) == null ? void 0 : W.singleVariantsRenderable,
@@ -14272,8 +14302,8 @@ class ns {
14272
14302
  workflow: Y,
14273
14303
  isReloadedTransaction: S.type === "transaction"
14274
14304
  };
14275
- if (S.type === "transaction" && Q.workflowState) {
14276
- const O = JSON.parse(Q.workflowState);
14305
+ if (S.type === "transaction" && m.workflowState) {
14306
+ const O = JSON.parse(m.workflowState);
14277
14307
  R.layouts = Object.values(O.layouts || {}).map((ee) => ee.layout), await se(O), await re(O), R.reloadedState = O;
14278
14308
  } else if (!F && S.workflowState) {
14279
14309
  const O = JSON.parse(S.workflowState);
@@ -14288,11 +14318,11 @@ class ns {
14288
14318
  ), R.delayWorkflowStateSync = !0, this.initialized = !0, this.experienceOptions = R, { experienceOptions: R, index: y, options: S };
14289
14319
  }), u = await Promise.all(h);
14290
14320
  P.setMap("transactionOwnerIds", w);
14291
- const D = u.sort((p, Q) => p.index - Q.index).map(async (p) => {
14292
- const { experienceOptions: Q, options: I } = p, F = new Se(this, Q);
14321
+ const D = u.sort((p, m) => p.index - m.index).map(async (p) => {
14322
+ const { experienceOptions: m, options: I } = p, F = new Se(this, m);
14293
14323
  return await F.getWorkflowManager().getInitializationPromise(), I.type !== "transaction" && this.customer && await F.attachCustomerDetails({ email: this.customer.emailAddress }), F;
14294
- }), m = await Promise.all(D);
14295
- return m.forEach((p) => p.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), m;
14324
+ }), Q = await Promise.all(D);
14325
+ return Q.forEach((p) => p.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), Q;
14296
14326
  }
14297
14327
  /**
14298
14328
  * Initialize the client from an integration product.
@@ -14345,19 +14375,19 @@ class ns {
14345
14375
  throw new H("No transaction ID provided.");
14346
14376
  const A = x.getShadowGraphqlClient(), a = async () => {
14347
14377
  var d, C;
14348
- const l = (d = (await A.query({
14378
+ const g = (d = (await A.query({
14349
14379
  query: Fe,
14350
14380
  variables: { ids: [e] },
14351
14381
  fetchPolicy: "no-cache",
14352
14382
  errorPolicy: "all"
14353
14383
  })).data) == null ? void 0 : d.transactions[0];
14354
- if (!l)
14384
+ if (!g)
14355
14385
  throw new H("Failed to read transaction.");
14356
- if (!l.product)
14386
+ if (!g.product)
14357
14387
  throw new H("Failed to load transaction, product not available.");
14358
- this.currencyCode = (C = l.product.partner) == null ? void 0 : C.currencyCode, this.experienceOptions = {
14359
- product: l.product,
14360
- transaction: l,
14388
+ this.currencyCode = (C = g.product.partner) == null ? void 0 : C.currencyCode, this.experienceOptions = {
14389
+ product: g.product,
14390
+ transaction: g,
14361
14391
  layouts: [],
14362
14392
  stateMutationFunc: async () => {
14363
14393
  throw new b("State mutation is forbidden in read only mode!");
@@ -14369,20 +14399,20 @@ class ns {
14369
14399
  return await a();
14370
14400
  const n = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), i = n.get(e);
14371
14401
  if (i) {
14372
- const l = (s = (await A.query({
14402
+ const g = (s = (await A.query({
14373
14403
  query: Fe,
14374
14404
  variables: {
14375
14405
  ids: [e]
14376
14406
  },
14377
14407
  errorPolicy: "all"
14378
14408
  })).data) == null ? void 0 : s.transactions[0];
14379
- if (!l)
14409
+ if (!g)
14380
14410
  throw new H("Failed to read transaction.");
14381
- if (!l.product)
14411
+ if (!g.product)
14382
14412
  throw new H("Failed to load transaction, product not available.");
14383
- this.currencyCode = (o = l.product.partner) == null ? void 0 : o.currencyCode, this.experienceOptions = {
14384
- product: l.product,
14385
- transaction: l,
14413
+ this.currencyCode = (o = g.product.partner) == null ? void 0 : o.currencyCode, this.experienceOptions = {
14414
+ product: g.product,
14415
+ transaction: g,
14386
14416
  layouts: [],
14387
14417
  stateMutationFunc: async (d) => this.updateTransactionState({ ...d, context: { transactionOwnerId: i } }),
14388
14418
  readOnly: t
@@ -14390,22 +14420,22 @@ class ns {
14390
14420
  return;
14391
14421
  }
14392
14422
  try {
14393
- const l = (r = (await A.mutate({
14423
+ const g = (r = (await A.mutate({
14394
14424
  mutation: ka,
14395
14425
  variables: { id: e },
14396
14426
  errorPolicy: "all"
14397
14427
  })).data) == null ? void 0 : r.transactionClaim;
14398
- if (!l)
14428
+ if (!g)
14399
14429
  throw new H("Failed to read transaction.");
14400
- if (!l.product)
14430
+ if (!g.product)
14401
14431
  throw new H("Failed to load transaction, product not available.");
14402
- this.currencyCode = (c = l.product.partner) == null ? void 0 : c.currencyCode, l.transactionOwnerId && (n.set(l.id, l.transactionOwnerId), P.setMap("transactionOwnerIds", n)), this.experienceOptions = {
14403
- product: l.product,
14404
- transaction: l,
14432
+ this.currencyCode = (c = g.product.partner) == null ? void 0 : c.currencyCode, g.transactionOwnerId && (n.set(g.id, g.transactionOwnerId), P.setMap("transactionOwnerIds", n)), this.experienceOptions = {
14433
+ product: g.product,
14434
+ transaction: g,
14405
14435
  layouts: [],
14406
14436
  stateMutationFunc: async (d) => this.updateTransactionState({
14407
14437
  ...d,
14408
- context: { transactionOwnerId: l.transactionOwnerId }
14438
+ context: { transactionOwnerId: g.transactionOwnerId }
14409
14439
  }),
14410
14440
  readOnly: t
14411
14441
  }, this.initialized = !0;
@@ -14456,8 +14486,8 @@ class ns {
14456
14486
  model: this.experienceOptions.product.modelUrl,
14457
14487
  contextService: this.experienceOptions.renderableContextService
14458
14488
  }));
14459
- const l = new Se(this, this.experienceOptions);
14460
- return await l.getWorkflowManager().getInitializationPromise(), l;
14489
+ const g = new Se(this, this.experienceOptions);
14490
+ return await g.getWorkflowManager().getInitializationPromise(), g;
14461
14491
  }
14462
14492
  throw new H("No workflow ID provided.");
14463
14493
  }
@@ -14540,7 +14570,7 @@ class ns {
14540
14570
  return a.data.transactions[0].transactionShareActions;
14541
14571
  }
14542
14572
  }
14543
- class Ms {
14573
+ class Ss {
14544
14574
  getClient() {
14545
14575
  return this.client ?? {};
14546
14576
  }
@@ -14693,8 +14723,8 @@ class Ms {
14693
14723
  return [];
14694
14724
  }
14695
14725
  }
14696
- var is = /* @__PURE__ */ ((g) => (g.SelectFrame = "SelectFrame", g.SelectImage = "SelectImage", g.Position = "Position", g))(is || {});
14697
- class ss extends X {
14726
+ var ss = /* @__PURE__ */ ((l) => (l.SelectFrame = "SelectFrame", l.SelectImage = "SelectImage", l.Position = "Position", l))(ss || {});
14727
+ class os extends X {
14698
14728
  constructor(e, t, A) {
14699
14729
  var a;
14700
14730
  super(e, t, A), this.frameService = (a = this.manager.getStepSpecificServices(this.getId())) == null ? void 0 : a.frameService;
@@ -14868,50 +14898,50 @@ class ss extends X {
14868
14898
  }
14869
14899
  export {
14870
14900
  ut as AddonHandle,
14871
- ys as ArrayInput,
14872
- Ps as AspectType,
14901
+ Ms as ArrayInput,
14902
+ xs as AspectType,
14873
14903
  ie as AssetNotFoundError,
14874
- xs as AssetType,
14875
- Ns as BringForwardCommand,
14876
- vs as BringToBackCommand,
14877
- Rs as BringToFrontCommand,
14878
- Hs as CanvasCommand,
14904
+ Ns as AssetType,
14905
+ vs as BringForwardCommand,
14906
+ Rs as BringToBackCommand,
14907
+ Hs as BringToFrontCommand,
14908
+ ks as CanvasCommand,
14879
14909
  _e as CollectionProduct,
14880
14910
  Jt as ColorOptionGlobalPropertyHandle,
14881
- ks as CommandContext,
14911
+ Us as CommandContext,
14882
14912
  va as ConversionDataType,
14883
14913
  Na as ConversionLocation,
14884
- Us as CreateElementCommand,
14885
- Gs as CreateLayoutCommand,
14886
- bs as DeleteElementCommand,
14914
+ Gs as CreateElementCommand,
14915
+ bs as CreateLayoutCommand,
14916
+ Js as DeleteElementCommand,
14887
14917
  kn as DigitalContentStepHandle,
14888
14918
  Mi as FileUploadGlobalPropertyHandle,
14889
14919
  Pe as FlowExecutionNodeResult,
14890
14920
  bi as FlowExecutionResult,
14891
14921
  Gi as FlowService,
14892
- Js as FontAlignmentCommand,
14893
- Ts as FontColorCommand,
14894
- Os as FontSizeCommand,
14895
- Ls as FontSourceCommand,
14922
+ Ts as FontAlignmentCommand,
14923
+ Os as FontColorCommand,
14924
+ Ls as FontSizeCommand,
14925
+ zs as FontSourceCommand,
14896
14926
  Xa as FrameService,
14897
- is as FrameStep,
14898
- ss as FrameStepHandle,
14927
+ ss as FrameStep,
14928
+ os as FrameStepHandle,
14899
14929
  It as GlobalPropertyHandle,
14900
- zs as GroupCommand,
14930
+ Ks as GroupCommand,
14901
14931
  Sn as IllustrationStepHandle,
14902
14932
  pe as InformationMessageType,
14903
14933
  Hn as InformationStepHandle,
14904
14934
  Tt as IntegrationProduct,
14905
14935
  Pa as IntegrationType,
14906
- Ks as LayoutElementFactory,
14907
- js as LayoutElementType,
14936
+ js as LayoutElementFactory,
14937
+ Vs as LayoutElementType,
14908
14938
  z as LayoutNotFoundError,
14909
14939
  Yn as MaterialStepHandle,
14910
14940
  Ge as MisconfigurationError,
14911
- Ms as MockWorkflowManager,
14941
+ Ss as MockWorkflowManager,
14912
14942
  Pn as ModelStepHandle,
14913
14943
  Un as ModuleStepHandle,
14914
- Vs as MoveCommand,
14944
+ Ws as MoveCommand,
14915
14945
  NA as ObjectInput,
14916
14946
  Ji as ObjectInputType,
14917
14947
  xA as OptionGlobalPropertyHandle,
@@ -14921,78 +14951,78 @@ export {
14921
14951
  xa as ProductCameraRig,
14922
14952
  Ri as ProductCollection,
14923
14953
  Le as ProductWorkflow,
14924
- Qe as PromiseCache,
14954
+ me as PromiseCache,
14925
14955
  dA as PromiseQueue,
14926
14956
  Nn as QuestionStepHandle,
14927
14957
  BA as QueueablePromise,
14928
- Ws as ResizeCommand,
14958
+ Xs as ResizeCommand,
14929
14959
  ue as ResourceNotFoundError,
14930
- Xs as RotateCommand,
14931
- qs as SendBackwardsCommand,
14960
+ qs as RotateCommand,
14961
+ Zs as SendBackwardsCommand,
14932
14962
  vn as ShapeStepHandle,
14933
- ns as SpiffCommerceClient,
14963
+ is as SpiffCommerceClient,
14934
14964
  be as StakeholderType,
14935
- Zs as StepAspectType,
14965
+ $s as StepAspectType,
14936
14966
  X as StepHandle,
14937
- $s as StepType,
14938
- _s as TextChangeCommand,
14967
+ _s as StepType,
14968
+ eo as TextChangeCommand,
14939
14969
  Si as TextGlobalPropertyHandle,
14940
- Fs as TextInput,
14970
+ ys as TextInput,
14941
14971
  Rn as TextStepHandle,
14942
14972
  Ya as TransactionShareActionType,
14943
14973
  ki as Transform,
14944
14974
  Hi as TransformCollection,
14945
14975
  b as UnhandledBehaviorError,
14946
- eo as UnitOfMeasurement,
14947
- to as UpdateImageSourceCommand,
14976
+ to as UnitOfMeasurement,
14977
+ Ao as UpdateImageSourceCommand,
14948
14978
  Z as Variant,
14949
14979
  Vn as WorkflowExperienceEventType,
14950
14980
  Se as WorkflowExperienceImpl,
14951
14981
  U as assetService,
14952
14982
  tn as browserColorToHex,
14953
14983
  Ln as createDesign,
14954
- Ao as dataUrlFromExternalUrl,
14984
+ ao as dataUrlFromExternalUrl,
14955
14985
  $e as designService,
14956
- ao as determineCorrectFontSizeAndLines,
14986
+ no as determineCorrectFontSizeAndLines,
14957
14987
  wA as digitalContentStepService,
14958
- no as findElement,
14959
- Ds as findPmsColors,
14960
- io as frameDataCache,
14988
+ io as findElement,
14989
+ Is as findPmsColors,
14990
+ so as frameDataCache,
14961
14991
  Ae as frameStepService,
14962
- so as generate,
14992
+ oo as generate,
14963
14993
  ni as generateCommands,
14964
- oo as generateSVGWithUnknownColors,
14965
- fs as generateStateFromDesignInputSteps,
14966
- ro as getAttributesFromArrayBuffer,
14967
- co as getAxisAlignedBoundingBox,
14994
+ ro as generateSVGWithUnknownColors,
14995
+ Fs as generateStateFromDesignInputSteps,
14996
+ co as getAttributesFromArrayBuffer,
14997
+ lo as getAxisAlignedBoundingBox,
14968
14998
  Wa as getBoundedOffsets,
14969
14999
  go as getFrameData,
14970
- lo as getSvgElement,
15000
+ Bo as getSvgElement,
14971
15001
  xe as getWorkflow,
14972
15002
  vA as getWorkflows,
14973
15003
  x as graphQlManager,
14974
15004
  ve as illustrationStepService,
14975
- Bo as loadFont,
14976
- ps as matchHexToPms,
15005
+ Co as loadFont,
15006
+ Ds as matchHexToPms,
14977
15007
  hA as materialStepService,
14978
15008
  EA as modelStepService,
14979
15009
  uA as moduleStepService,
14980
15010
  V as optionService,
14981
- Co as patternImageDataCache,
15011
+ wo as patternImageDataCache,
14982
15012
  P as persistenceService,
14983
- QA as pictureStepService,
14984
- ms as pmsToRgb,
14985
- mA as questionStepService,
14986
- wo as registerFetchImplementation,
14987
- ho as registerWindowImplementation,
14988
- Eo as rehydrateSerializedLayout,
15013
+ mA as pictureStepService,
15014
+ ps as pmsToRgb,
15015
+ QA as questionStepService,
15016
+ ho as registerFetchImplementation,
15017
+ Eo as registerWindowImplementation,
15018
+ uo as rehydrateSerializedLayout,
14989
15019
  $a as rgbToPms,
14990
- la as setBearerAuthenticationToken,
14991
- uo as setCanvasModule,
15020
+ ga as setBearerAuthenticationToken,
15021
+ mo as setCanvasModule,
14992
15022
  Ee as shapeStepService,
14993
15023
  qa as shortenUrl,
14994
15024
  q as spiffCoreConfiguration,
14995
- Is as stepAspectValuesToDesignInputSteps,
15025
+ fs as stepAspectValuesToDesignInputSteps,
14996
15026
  Qo as svgToDataUrl,
14997
15027
  j as textStepService,
14998
15028
  Bn as toast