@spiffcommerce/core 22.9.1 → 22.10.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 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";
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 Le, svgObjectURL as ve, fetchAsString as _, DeleteElementCommand as ne, generateDefaultRectangleFrameSvg as yt, GetSVGDimensions as OA, patternImageDataCache as Mt, fetchAsArrayBuffer as LA, findElement as Re, 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 xe, FontSourceCommand as St, loadFont as dt, TextChangeCommand as XA, FontSizeCommand as qA, createElementNS as ZA, createElement as Ie, _loadFontExternalDataURL as Ct, UpdateWorkflowStateCommand as Yt, CommandContext as $A, createCanvas as He, 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 ze, 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 go, getFrameData as lo, getSvgElement as Bo, loadFont as Co, patternImageDataCache as wo, registerFetchImplementation as ho, registerWindowImplementation as Eo, rehydrateSerializedLayout as uo, setCanvasModule as Qo, svgToDataUrl as mo } 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 le from "lodash.clonedeep";
9
+ import ge 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";
@@ -17,57 +17,57 @@ class AA extends Error {
17
17
  super(e), this.name = this.constructor.name;
18
18
  }
19
19
  }
20
- class De extends AA {
20
+ class pe extends AA {
21
21
  constructor(e) {
22
22
  super(`ConfigurationError - ${e}`);
23
23
  }
24
24
  }
25
- class Ue extends De {
25
+ class ke extends pe {
26
26
  constructor(e) {
27
27
  super(`Option not Configured: ${e.stepTitle}`), this.optionId = (e == null ? void 0 : e.optionId) || "N/A";
28
28
  }
29
29
  }
30
- class z extends De {
30
+ class z extends pe {
31
31
  constructor(e) {
32
32
  super(`Panel not Found: ${e.panelId}`), this.panelId = (e == null ? void 0 : e.panelId) || "N/A";
33
33
  }
34
34
  }
35
- class ie extends De {
35
+ class ie extends pe {
36
36
  constructor(e) {
37
37
  super(`Asset not found for variant: ${e.name}`), this.variant = e;
38
38
  }
39
39
  }
40
- class ue extends De {
40
+ class ue extends pe {
41
41
  constructor(e) {
42
42
  super(`Resource not found for asset: ${e.name}`), this.asset = e;
43
43
  }
44
44
  }
45
- class Ge extends De {
45
+ class Ue extends pe {
46
46
  constructor(e, t) {
47
47
  super(`Workflow Misconfiguration: ${e.stepName} - ${t}`), this.step = e;
48
48
  }
49
49
  }
50
- class je extends AA {
50
+ class Ke extends AA {
51
51
  constructor(e) {
52
52
  super(`ImplementationError - ${e}`);
53
53
  }
54
54
  }
55
- class b extends je {
55
+ class b extends Ke {
56
56
  constructor(e) {
57
57
  super(`Unhandled Behavior Encountered: ${e}`);
58
58
  }
59
59
  }
60
- class he extends je {
60
+ class he extends Ke {
61
61
  constructor(e) {
62
62
  super(`Parsing Error: ${e}`);
63
63
  }
64
64
  }
65
- class H extends je {
65
+ class H extends Ke {
66
66
  constructor(e) {
67
67
  super(`Client Error: ${e}`);
68
68
  }
69
69
  }
70
- class Ve extends je {
70
+ class je extends Ke {
71
71
  constructor(e) {
72
72
  super(`Resource Generation Failed: ${e}`);
73
73
  }
@@ -150,28 +150,28 @@ class ra {
150
150
  }
151
151
  const q = new ra();
152
152
  let aA;
153
- const vt = (l) => {
154
- aA = l;
153
+ const vt = (g) => {
154
+ aA = g;
155
155
  };
156
156
  let ht;
157
- const ca = (l) => {
158
- ht = l;
159
- }, la = () => ht;
157
+ const ca = (g) => {
158
+ ht = g;
159
+ }, ga = () => ht;
160
160
  let nA;
161
- const ga = (l) => {
162
- nA = l;
163
- }, Ba = () => new Promise((l) => {
161
+ const la = (g) => {
162
+ nA = g;
163
+ }, Ba = () => new Promise((g) => {
164
164
  const e = q.getHubUrl(), t = (A) => {
165
- A.origin === e && (window.removeEventListener("message", t), l(A.data));
165
+ A.origin === e && (window.removeEventListener("message", t), g(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 l = {
169
+ const g = {
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(), ...l } : l;
174
+ return typeof window < "u" && (window.location.href.includes("/workflows/product/") || window.location.href.includes("hub=true")) ? { ...await Ba(), ...g } : g;
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: lt
188
+ fetch: gt
189
189
  }), t = aa(async (i, s) => {
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;
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;
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(([Q, p]) => {
197
- r[Q] = p;
196
+ Object.entries(D).forEach(([m, p]) => {
197
+ r[m] = p;
198
198
  });
199
199
  }
200
200
  }
201
201
  } catch {
202
202
  }
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), {
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), {
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 = (l) => f`
269
- ${l && wa || ""}
268
+ `, De = (g) => f`
269
+ ${g && wa || ""}
270
270
  fragment AssetFields on Asset {
271
271
  name
272
272
  key
@@ -278,10 +278,10 @@ const x = new Ca(), wa = f`
278
278
  name
279
279
  link
280
280
  }
281
- ${l && "...AssetMetadataFields" || ""}
281
+ ${g && "...AssetMetadataFields" || ""}
282
282
  }
283
283
  `, ha = f`
284
- ${Ie(!1)}
284
+ ${De(!1)}
285
285
  query GetAssets($keys: [String]!) {
286
286
  assets(keys: $keys) {
287
287
  ...AssetFields
@@ -355,35 +355,35 @@ const x = new Ca(), wa = f`
355
355
  }
356
356
  }
357
357
  }
358
- `, ma = f`
359
- ${Ie(!1)}
358
+ `, Qa = f`
359
+ ${De(!1)}
360
360
  mutation RemoveBackgroundFromAsset($key: String!) {
361
361
  assetRemoveBackground(key: $key) {
362
362
  ...AssetFields
363
363
  }
364
364
  }
365
- `, ot = async (l) => (await x.getShadowGraphqlClient().query({
365
+ `, ot = async (g) => (await x.getShadowGraphqlClient().query({
366
366
  query: ha,
367
367
  errorPolicy: "all",
368
368
  fetchPolicy: "no-cache",
369
369
  variables: {
370
- keys: l
370
+ keys: g
371
371
  }
372
- })).data.assets, Qa = async (l) => (await x.getShadowGraphqlClient().query({
372
+ })).data.assets, ma = async (g) => (await x.getShadowGraphqlClient().query({
373
373
  query: Ea,
374
374
  errorPolicy: "all",
375
375
  fetchPolicy: "no-cache",
376
376
  variables: {
377
- ids: l
377
+ ids: g
378
378
  }
379
- })).data.materials, pa = async (l, e, t, A, a) => {
379
+ })).data.materials, pa = async (g, 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: l,
386
+ name: g,
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 Qa([e]))[0])();
461
+ const A = (async () => (await ma([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: ma,
510
+ mutation: Qa,
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 me = new Ia(), sA = f`
683
+ const Qe = new Ia(), sA = f`
684
684
  fragment OptionFields on Option {
685
685
  id
686
686
  name
@@ -718,7 +718,7 @@ const me = new Ia(), sA = f`
718
718
  }
719
719
  }
720
720
  `, fa = f`
721
- ${Ie(!1)}
721
+ ${De(!1)}
722
722
  ${Et}
723
723
  ${sA}
724
724
  query GetOptions($ids: [String]!) {
@@ -726,13 +726,13 @@ const me = new Ia(), sA = f`
726
726
  ...OptionFields
727
727
  }
728
728
  }
729
- `, Fa = async (l) => {
729
+ `, Fa = async (g) => {
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: l
735
+ ids: g
736
736
  }
737
737
  });
738
738
  return e.data.options.forEach((t) => {
@@ -741,12 +741,12 @@ const me = 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 (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);
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);
746
746
  if (t.length === 0)
747
747
  return Promise.all(e);
748
748
  const A = Fa(t), a = t.map(
749
- (i) => me.set({ id: i }, ya(i, A))
749
+ (i) => Qe.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__ */ ((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 || {});
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 || {}), Ge = /* @__PURE__ */ ((g) => (g.Owner = "Owner", g.Approver = "Approver", g.Editor = "Editor", g.Viewer = "Viewer", g))(Ge || {});
801
801
  const oA = f`
802
802
  fragment ActiveIntegrationFields on Integration {
803
803
  id
@@ -1117,7 +1117,7 @@ const oA = f`
1117
1117
  precedence
1118
1118
  url
1119
1119
  }
1120
- `, Fe = f`
1120
+ `, fe = f`
1121
1121
  ${Be}
1122
1122
  ${rA}
1123
1123
  ${cA}
@@ -1333,14 +1333,14 @@ const Ja = f`
1333
1333
  }
1334
1334
  }
1335
1335
  }
1336
- `, lA = f`
1336
+ `, gA = f`
1337
1337
  query ReadWorkflowStates($ids: [String]!) {
1338
1338
  transactions(ids: $ids) {
1339
1339
  id
1340
1340
  workflowState
1341
1341
  }
1342
1342
  }
1343
- `, gA = f`
1343
+ `, lA = 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
- ${gA}
1406
+ ${lA}
1407
1407
  query GetIntegrationProducts($ids: [String!]!) {
1408
1408
  integrationProducts(ids: $ids) {
1409
1409
  ...IntegrationProductFields
1410
1410
  }
1411
1411
  }
1412
1412
  `, Oa = f`
1413
- ${gA}
1413
+ ${lA}
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 (l) => {
1434
+ `, Ce = [M.SilentIllustration, M.ProductOverlay], za = async (g) => {
1435
1435
  const e = [];
1436
- l.introduction && e.push({
1436
+ g.introduction && e.push({
1437
1437
  name: "Introduction",
1438
- title: l.name,
1438
+ title: g.name,
1439
1439
  renderableSteps: [
1440
1440
  {
1441
1441
  type: M.Introduction,
1442
1442
  stepName: "Introduction",
1443
- stepTitle: l.name,
1444
- helpText: l.introduction,
1443
+ stepTitle: g.name,
1444
+ helpText: g.introduction,
1445
1445
  data: {},
1446
1446
  conditions: []
1447
1447
  }
1448
1448
  ],
1449
1449
  silentSteps: []
1450
1450
  });
1451
- for (const A of l.steps) {
1452
- const a = Ka(A.stepName, l.stepGroups);
1451
+ for (const A of g.steps) {
1452
+ const a = Ka(A.stepName, g.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: l.finalizeStepConfig ? l.finalizeStepConfig.modelAnimation : void 0,
1482
- lookAtAnimation: l.finalizeStepConfig ? l.finalizeStepConfig.lookAtAnimation : void 0
1481
+ modelAnimation: g.finalizeStepConfig ? g.finalizeStepConfig.modelAnimation : void 0,
1482
+ lookAtAnimation: g.finalizeStepConfig ? g.finalizeStepConfig.lookAtAnimation : void 0
1483
1483
  },
1484
1484
  conditions: []
1485
1485
  }
1486
1486
  ],
1487
1487
  silentSteps: []
1488
1488
  }), e;
1489
- }, Ka = (l, e) => e.find((t) => t.stepNames.includes(l)), ae = (l, e) => (l.conditions || []).every((t) => {
1489
+ }, Ka = (g, e) => e.find((t) => t.stepNames.includes(g)), ae = (g, e) => (g.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 = (l, e) => {
1498
+ }), ja = (g, e) => {
1499
1499
  const t = {
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))
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))
1504
1504
  };
1505
1505
  return t.silentSteps.length === 0 && t.renderableSteps.length === 0 ? null : t;
1506
- }, ce = (l, e) => l.map((t) => ja(t, e)).filter((t) => t !== null), Va = async (l, e, t = !1) => {
1506
+ }, ce = (g, e) => g.map((t) => ja(t, e)).filter((t) => t !== null), Va = async (g, e, t = !1) => {
1507
1507
  var i;
1508
- const A = ce(l, e), a = [];
1508
+ const A = ce(g, 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(l, e, t, A) {
1599
- const a = t.width * l.zoom, n = t.height * l.zoom;
1598
+ function Wa(g, e, t, A) {
1599
+ const a = t.width * g.zoom, n = t.height * g.zoom;
1600
1600
  if (A) {
1601
- const s = l, o = Math.max(e.width / t.width, e.height / t.height);
1602
- s.zoom = Math.max(o, l.zoom);
1601
+ const s = g, o = Math.max(e.width / t.width, e.height / t.height);
1602
+ s.zoom = Math.max(o, g.zoom);
1603
1603
  const r = t.width * s.zoom, c = t.height * s.zoom;
1604
- return s.x = ye(l.x, e.width - r, 0), s.y = ye(l.y, e.height - c, 0), s;
1604
+ return s.x = Fe(g.x, e.width - r, 0), s.y = Fe(g.y, e.height - c, 0), s;
1605
1605
  }
1606
- const i = l;
1607
- return i.x = ye(i.x, -a, e.width), i.y = ye(i.y, -n, e.height), i;
1606
+ const i = g;
1607
+ return i.x = Fe(i.x, -a, e.width), i.y = Fe(i.y, -n, e.height), i;
1608
1608
  }
1609
- function ye(l, e, t) {
1610
- return Math.min(Math.max(l, e), t);
1609
+ function Fe(g, e, t) {
1610
+ return Math.min(Math.max(g, 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 gt(s), r = this.frameData ? this.frameData[i] : void 0;
1634
+ const s = a.currentFrameSources[i], o = await lt(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((g) => g.panelId === a.panelId);
1833
+ const n = this.layouts.find((l) => l.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 g = "";
1839
- if ((o = this.product) != null && o.overlayImageUrl && (g = this.product.overlayImageUrl), i = g, !g)
1840
- throw new Ge(this.configuration, "Couldn't find an asset for product overlay step");
1838
+ let l = "";
1839
+ if ((o = this.product) != null && o.overlayImageUrl && (l = this.product.overlayImageUrl), i = l, !l)
1840
+ throw new Ue(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 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)
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)
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: g,
1850
+ src: l,
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 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) {
1872
+ const l = this.configuration.type === M.SilentIllustration ? (B = this.configuration.data.asset) == null ? void 0 : B.fileLink : i, C = await Le(await (async () => new Promise((h, u) => {
1873
+ if (!l) {
1874
1874
  u("Undefined vector silent step source");
1875
1875
  return;
1876
1876
  }
1877
- _(g, !0).then((E) => {
1877
+ _(l, !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
- cachedObjectURL: await Re(C.svg),
1884
- src: g,
1883
+ cachedObjectURL: await ve(C.svg),
1884
+ src: l,
1885
1885
  svg: C.svg,
1886
1886
  colors: C.colors,
1887
1887
  type: s,
@@ -1908,7 +1908,7 @@ class kt {
1908
1908
  }
1909
1909
  async trigger() {
1910
1910
  if (!this.configuration.data.regions)
1911
- throw new Ge(this.configuration, "Missing regions.");
1911
+ throw new Ue(this.configuration, "Missing regions.");
1912
1912
  if (this.configuration.type === M.SilentIllustration) {
1913
1913
  const e = this.configuration.data.regions.map(this.processRegion);
1914
1914
  return Promise.all(e);
@@ -1927,18 +1927,18 @@ 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 (l) => {
1930
+ const qa = async (g) => {
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: l }),
1935
+ body: JSON.stringify({ longUrl: g }),
1936
1936
  headers: {
1937
1937
  "Content-Type": "application/json"
1938
1938
  }
1939
1939
  })).json()).shortUrl;
1940
1940
  } catch (t) {
1941
- throw console.error(t), new Ve("Failed to shorten URL, see console.");
1941
+ throw console.error(t), new je("Failed to shorten URL, see console.");
1942
1942
  }
1943
1943
  };
1944
1944
  class CA {
@@ -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, 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;
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;
1979
1979
  t.updateStorage(e.stepName, {
1980
1980
  videoShortUrl: r,
1981
1981
  videoUrl: c
@@ -2011,12 +2011,12 @@ class Za {
2011
2011
  o.searchParams.append("video", btoa(JSON.stringify([i]))), o.pathname = o.pathname + (o.pathname.slice(-1) === "/" ? "" : "/");
2012
2012
  const r = o.toString();
2013
2013
  if (r.length >= 2e3)
2014
- throw new Ve("Cannot create QR code, URL too long.");
2014
+ throw new je("Cannot create QR code, URL too long.");
2015
2015
  const c = await qa(r);
2016
2016
  if (!a.data || !a.data.regions)
2017
- throw new Ge(a, "Missing regions.");
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 () => {
2017
+ throw new Ue(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 () => {
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((g) => g.panelId === (c == null ? void 0 : c.panelId));
2032
+ const c = r.region, B = n.find((l) => l.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(), Qe = [
2059
+ const wA = new Za(), me = [
2060
2060
  "Yellow C",
2061
2061
  "Yellow 012 C",
2062
2062
  "Orange 021 C",
@@ -3398,7 +3398,7 @@ const wA = new Za(), Qe = [
3398
3398
  "Black 5 C",
3399
3399
  "Black 6 C",
3400
3400
  "Black 7 C"
3401
- ], ge = [
3401
+ ], le = [
3402
3402
  "FEDD00",
3403
3403
  "FFD700",
3404
3404
  "FE5000",
@@ -4740,55 +4740,55 @@ const wA = new Za(), Qe = [
4740
4740
  "3E2B2E",
4741
4741
  "101820",
4742
4742
  "3D3935"
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)
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)
4747
4747
  ]);
4748
- function ps(l) {
4749
- const e = Qe.indexOf(l);
4750
- return e >= 0 ? ge[e] : "";
4748
+ function ps(g) {
4749
+ const e = me.indexOf(g);
4750
+ return e >= 0 ? le[e] : "";
4751
4751
  }
4752
- function $a(l) {
4753
- const e = ge.indexOf(l);
4754
- return e >= 0 ? Qe[e] : "";
4752
+ function $a(g) {
4753
+ const e = le.indexOf(g);
4754
+ return e >= 0 ? me[e] : "";
4755
4755
  }
4756
- function Ds(l, e = 64) {
4757
- const t = [], A = [], a = $a(l);
4756
+ function Ds(g, e = 64) {
4757
+ const t = [], A = [], a = $a(g);
4758
4758
  a && t.push({
4759
4759
  pms: a,
4760
- hex: l,
4760
+ hex: g,
4761
4761
  distance: 0
4762
4762
  });
4763
- const n = parseInt(l.substring(0, 2), 16), i = parseInt(l.substring(2, 4), 16), s = parseInt(l.substring(4, 6), 16);
4763
+ const n = parseInt(g.substring(0, 2), 16), i = parseInt(g.substring(2, 4), 16), s = parseInt(g.substring(4, 6), 16);
4764
4764
  let o, r, c;
4765
- for (let B = 0; B < ge.length; B++) {
4765
+ for (let B = 0; B < le.length; B++) {
4766
4766
  o = qe[B][0], r = qe[B][1], c = qe[B][2];
4767
- const g = Math.sqrt(Math.pow(n - o, 2) + Math.pow(i - r, 2) + Math.pow(s - c, 2));
4768
- A.push(g);
4767
+ const l = Math.sqrt(Math.pow(n - o, 2) + Math.pow(i - r, 2) + Math.pow(s - c, 2));
4768
+ A.push(l);
4769
4769
  }
4770
4770
  for (let B = 0; B < A.length; B++)
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);
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);
4773
4773
  }
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);
4774
+ const _a = me.map((g, e) => ({ pms: g, hex: le[e] })), en = new ia(_a, { keys: ["pms"] });
4775
+ function Is(g, e) {
4776
+ return en.search(g, e ? { limit: e } : void 0);
4777
4777
  }
4778
4778
  let we = null;
4779
- function tn(l) {
4780
- if (l.startsWith("#"))
4781
- return Ut(l);
4779
+ function tn(g) {
4780
+ if (g.startsWith("#"))
4781
+ return Ut(g);
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 = l;
4786
+ we.fillStyle = g;
4787
4787
  const e = Ut(we.fillStyle);
4788
- return e || console.error(`Unknown browser color ${l}`), e;
4788
+ return e || console.error(`Unknown browser color ${g}`), e;
4789
4789
  }
4790
- function Ut(l) {
4791
- const e = l.substring(1).toUpperCase();
4790
+ function Ut(g) {
4791
+ const e = g.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, g = (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, l = (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: g
4857
- }), g) {
4856
+ framePatternSrc: l
4857
+ }), l) {
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(g, D, !0, B), t.updateMetadata(e.stepName, { image: g }), t.updateStorage(e.stepName, {
4862
- framePatternSrc: g
4861
+ await this.loadPatternFromString(l, D, !0, B), t.updateMetadata(e.stepName, { image: l }), t.updateStorage(e.stepName, {
4862
+ framePatternSrc: l
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 g = (r = e.option.variants) == null ? void 0 : r.find((d) => d.id === B);
4877
- g && await t.setSelectionsAndElements(
4876
+ const l = (r = e.option.variants) == null ? void 0 : r.find((d) => d.id === B);
4877
+ l && await t.setSelectionsAndElements(
4878
4878
  e.stepName,
4879
- [g],
4879
+ [l],
4880
4880
  o,
4881
4881
  async () => {
4882
4882
  const d = await Promise.all(
4883
- e.data.regions.map((C) => this.frameSourceSvg(g, C))
4883
+ e.data.regions.map((C) => this.frameSourceSvg(l, C))
4884
4884
  );
4885
4885
  t.updateStorage(e.stepName, { currentFrameSources: d }), await c();
4886
4886
  }
@@ -4923,7 +4923,7 @@ class An {
4923
4923
  });
4924
4924
  },
4925
4925
  () => {
4926
- throw new Ve("Failed to resolve transcoded PDF");
4926
+ throw new je("Failed to resolve transcoded PDF");
4927
4927
  }
4928
4928
  )
4929
4929
  );
@@ -4972,13 +4972,13 @@ 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 g = r.match(/<(image|linearGradient|radialGradient)(\s|>|\/>)/gim);
4976
- if (g && g.length > 0)
4975
+ const l = r.match(/<(image|linearGradient|radialGradient)(\s|>|\/>)/gim);
4976
+ if (l && l.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
  );
4980
4980
  }
4981
- const c = await ze(r), B = {
4981
+ const c = await Le(r), B = {
4982
4982
  src: e,
4983
4983
  width: s,
4984
4984
  height: o,
@@ -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 g = { browserValue: B.browserValue };
5049
- n[c] = g;
5048
+ const l = { browserValue: B.browserValue };
5049
+ n[c] = l;
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 g;
5058
- return B.toLowerCase() === ((g = c.color) == null ? void 0 : g.toLowerCase()) ? c.name : B;
5057
+ var l;
5058
+ return B.toLowerCase() === ((l = c.color) == null ? void 0 : l.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 g;
5076
- const s = (g = a.getStepSpecificServices(e.stepName)) == null ? void 0 : g.frameService;
5075
+ var l;
5076
+ const s = (l = a.getStepSpecificServices(e.stepName)) == null ? void 0 : l.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 gt(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 lt(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, Q = J(), m = a.getLayouts().find((I) => I.panelId === d.panelId);
5096
- if (!m)
5095
+ } : void 0, m = J(), Q = a.getLayouts().find((I) => I.panelId === d.panelId);
5096
+ if (!Q)
5097
5097
  throw new z(d);
5098
5098
  return {
5099
- command: this.getCreateElementCommand(Q, d, m, {
5099
+ command: this.getCreateElementCommand(m, d, Q, {
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: Q,
5109
+ id: m,
5110
5110
  region: d
5111
5111
  },
5112
5112
  removeExistingCommands: u
@@ -5214,7 +5214,7 @@ class an {
5214
5214
  if (A.length === 0)
5215
5215
  return [];
5216
5216
  try {
5217
- return He(
5217
+ return Re(
5218
5218
  A[0].id,
5219
5219
  t.getAllLayoutData()
5220
5220
  ).colors;
@@ -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((g) => g.id === c);
5248
+ const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5249
5249
  if (B) {
5250
- const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5250
+ const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5251
5251
  await t.setSelectionsAndElements(
5252
5252
  e.stepName,
5253
5253
  [B],
5254
- g,
5254
+ l,
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, g] of n.entries())
5281
- i[B] = { browserValue: g, spotColor: (c = i[B]) == null ? void 0 : c.spotColor };
5282
- const s = zA(e, t, A, i), o = await Re(s), r = [];
5280
+ for (const [B, l] of n.entries())
5281
+ i[B] = { browserValue: l, spotColor: (c = i[B]) == null ? void 0 : c.spotColor };
5282
+ const s = zA(e, t, A, i), o = await ve(s), r = [];
5283
5283
  for (const B of a) {
5284
- for (const [g, d] of n.entries())
5285
- r.push(new at(B, g, d));
5284
+ for (const [l, d] of n.entries())
5285
+ r.push(new at(B, l, d));
5286
5286
  r.push(new KA(B, s, o));
5287
5287
  }
5288
5288
  return new k(r);
@@ -5291,7 +5291,7 @@ class an {
5291
5291
  var d, C;
5292
5292
  if (t.length === 0)
5293
5293
  return;
5294
- const i = He(
5294
+ const i = Re(
5295
5295
  t[0].id,
5296
5296
  a().map((w) => w.layoutState)
5297
5297
  ), s = { ...i.colors }, o = {};
@@ -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 g = await this.changeColorsCommand(
5317
+ const l = 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()(g);
5326
+ }), A.getCommandDispatcher()(l);
5327
5327
  }
5328
5328
  async selectVariant(e, t, A, a, n) {
5329
5329
  const i = await this.selectVariantCommand(e, t, A, a, n);
@@ -5332,7 +5332,7 @@ class an {
5332
5332
  async selectVariantCommand(e, t, A, a, n) {
5333
5333
  var u;
5334
5334
  if (!e.data || !e.data.regions)
5335
- throw new Ge(e, "Missing regions.");
5335
+ throw new Ue(e, "Missing regions.");
5336
5336
  a(!0);
5337
5337
  const i = A.map((E) => new ne(E.id));
5338
5338
  e.mandatory && n.setMandatoryFulfilled(e.stepName, !1);
@@ -5342,27 +5342,27 @@ class an {
5342
5342
  const o = s.fileLink;
5343
5343
  if (!o)
5344
5344
  throw new ue(s);
5345
- const r = await ze(await this.getIllustrationBody(o)), c = await Re(r.svg), B = (E) => {
5345
+ const r = await Le(await this.getIllustrationBody(o)), c = await ve(r.svg), B = (E) => {
5346
5346
  const D = n.getLayouts().find((p) => p.panelId === E.panelId);
5347
5347
  if (!D)
5348
5348
  throw new z(E);
5349
- const Q = J();
5349
+ const m = J();
5350
5350
  return {
5351
- regionElement: { id: Q, region: E },
5352
- command: this.getCreateElementCommand(Q, E, D, {
5351
+ regionElement: { id: m, region: E },
5352
+ command: this.getCreateElementCommand(m, E, D, {
5353
5353
  stepName: e.stepName,
5354
5354
  src: o,
5355
5355
  objectURL: c,
5356
5356
  svg: r
5357
5357
  })
5358
5358
  };
5359
- }, g = e.data.regions.map(B), C = [...g.map((E) => E.command), ...i];
5359
+ }, l = e.data.regions.map(B), C = [...l.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 Q;
5365
- return D.toLowerCase() === ((Q = E.color) == null ? void 0 : Q.toLowerCase()) ? E.name : D;
5364
+ var m;
5365
+ return D.toLowerCase() === ((m = E.color) == null ? void 0 : m.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
- g.map((Q) => Q.regionElement),
5373
+ l.map((m) => m.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 Q = E[0], p = D[0];
5380
+ const m = E[0], p = D[0];
5381
5381
  await this.changeColors(
5382
5382
  e,
5383
- g.map((m) => m.regionElement),
5383
+ l.map((Q) => Q.regionElement),
5384
5384
  n,
5385
5385
  () => n.getCommandContext().getAllLayouts(),
5386
- /* @__PURE__ */ new Map([[p, Q.variant.color]])
5386
+ /* @__PURE__ */ new Map([[p, m.variant.color]])
5387
5387
  );
5388
5388
  } else
5389
5389
  e.data.colorPickerEnabled && await this.changeColors(
5390
5390
  e,
5391
- g.map((Q) => Q.regionElement),
5391
+ l.map((m) => m.regionElement),
5392
5392
  n,
5393
5393
  () => n.getCommandContext().getAllLayouts(),
5394
5394
  /* @__PURE__ */ new Map()
@@ -5397,12 +5397,12 @@ class an {
5397
5397
  };
5398
5398
  }
5399
5399
  }
5400
- const ve = new an();
5400
+ const Ne = new an();
5401
5401
  class nn {
5402
5402
  async init(e, t, A) {
5403
5403
  const a = e.option;
5404
5404
  if (!a)
5405
- throw new Ue(e);
5405
+ throw new ke(e);
5406
5406
  if (A)
5407
5407
  await this.reload(e, t, A);
5408
5408
  else {
@@ -5420,13 +5420,13 @@ class nn {
5420
5420
  A.serializableWorkflow.steps
5421
5421
  ), s = Object.values(A.layouts).map((c) => c.elements).flat().filter((c) => c.stepName === e.stepName), o = e.option;
5422
5422
  if (!o)
5423
- throw new Ue(e);
5423
+ throw new ke(e);
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((g) => g.id === c);
5427
+ const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5428
5428
  if (B) {
5429
- const g = B.material, d = s.map((C) => ({ id: C.id, region: C.stepRegion }));
5429
+ const l = 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
- g || {}
5440
+ l || {}
5441
5441
  ));
5442
5442
  Promise.all(w).then(
5443
5443
  () => t.setMandatoryFulfilled(e.stepName, !0)
@@ -5480,7 +5480,7 @@ class sn {
5480
5480
  async init(e, t, A) {
5481
5481
  const a = e.option;
5482
5482
  if (!a)
5483
- throw new Ue(e);
5483
+ throw new ke(e);
5484
5484
  if (A)
5485
5485
  await this.reload(e, t, A);
5486
5486
  else {
@@ -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((g) => g.id === c);
5503
+ const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5504
5504
  if (B) {
5505
- const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5505
+ const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5506
5506
  await t.setSelectionsAndElements(
5507
5507
  e.stepName,
5508
5508
  [B],
5509
- g,
5509
+ l,
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, g, d) => {
5600
- const C = d || J(), h = A.getLayouts().find((E) => E.panelId === g.panelId);
5599
+ const r = (B, l, d) => {
5600
+ const C = d || J(), h = A.getLayouts().find((E) => E.panelId === l.panelId);
5601
5601
  if (!h)
5602
- return console.error(`Can not find layout for region: ${g.panelId}`), null;
5602
+ return console.error(`Can not find layout for region: ${l.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: g,
5607
+ stepRegion: l,
5608
5608
  stepName: e.stepName,
5609
5609
  colors: {},
5610
5610
  id: C,
5611
5611
  svg: B,
5612
5612
  type: G.Illustration,
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
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
5621
5621
  },
5622
5622
  h
5623
5623
  )
5624
5624
  ), {
5625
5625
  id: C,
5626
- region: g,
5626
+ region: l,
5627
5627
  command: new k(u)
5628
5628
  };
5629
5629
  };
5630
5630
  if (i.length > 0) {
5631
- const g = i.map((d) => {
5631
+ const l = 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(g),
5638
+ command: new k(l),
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
- ), g = B.filter((d) => !!d).map((d) => d && d.command);
5645
+ ), l = B.filter((d) => !!d).map((d) => d && d.command);
5646
5646
  return {
5647
- command: new k(g),
5647
+ command: new k(l),
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((g) => g.id === c);
5699
+ const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5700
5700
  if (B) {
5701
- const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5701
+ const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5702
5702
  await t.setSelectionsAndElements(
5703
5703
  e.stepName,
5704
5704
  [B],
5705
- g,
5705
+ l,
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 mA = new rn();
5769
+ const QA = 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 QA = new cn();
5829
- class ln {
5828
+ const mA = new cn();
5829
+ class gn {
5830
5830
  constructor() {
5831
5831
  this.shapeFillId = "spiff-fill-shape";
5832
5832
  }
@@ -5852,7 +5852,7 @@ class ln {
5852
5852
  async init(e, t, A) {
5853
5853
  const a = e.option;
5854
5854
  if (!a)
5855
- throw new Ue(e);
5855
+ throw new ke(e);
5856
5856
  if (A)
5857
5857
  await this.reload(e, t, A);
5858
5858
  else {
@@ -5883,13 +5883,13 @@ class ln {
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((g) => g.id === c);
5886
+ const B = (r = o.variants) == null ? void 0 : r.find((l) => l.id === c);
5887
5887
  if (B) {
5888
- const g = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5888
+ const l = s.map((d) => ({ id: d.id, region: d.stepRegion }));
5889
5889
  await t.setSelectionsAndElements(
5890
5890
  e.stepName,
5891
5891
  [B],
5892
- g,
5892
+ l,
5893
5893
  async () => {
5894
5894
  var d;
5895
5895
  t.updateStorage(e.stepName, {
@@ -5913,9 +5913,9 @@ class ln {
5913
5913
  };
5914
5914
  if (A.length > 0) {
5915
5915
  const r = (B) => {
5916
- const g = B.region;
5917
- if (!n.find((w) => w.panelId === (g == null ? void 0 : g.panelId)))
5918
- throw new z(g);
5916
+ const l = B.region;
5917
+ if (!n.find((w) => w.panelId === (l == null ? void 0 : l.panelId)))
5918
+ throw new z(l);
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 ln {
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), g = 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), l = 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
- g,
5991
+ l,
5992
5992
  async () => {
5993
5993
  a.updateStorage(e.stepName, { colour: s() });
5994
5994
  }
@@ -5998,8 +5998,8 @@ class ln {
5998
5998
  }
5999
5999
  }
6000
6000
  }
6001
- const Ee = new ln();
6002
- class gn {
6001
+ const Ee = new gn();
6002
+ class ln {
6003
6003
  constructor() {
6004
6004
  this.latestToast = null, this.toastType = null, this.toastCallbacks = [];
6005
6005
  }
@@ -6024,17 +6024,17 @@ class gn {
6024
6024
  );
6025
6025
  }
6026
6026
  }
6027
- const Bn = new gn(), Ze = 30;
6028
- class Je extends Error {
6027
+ const Bn = new ln(), Ze = 30;
6028
+ class be extends Error {
6029
6029
  constructor(e) {
6030
- super(e), Object.setPrototypeOf(this, new.target.prototype), this.name = Je.name;
6030
+ super(e), Object.setPrototypeOf(this, new.target.prototype), this.name = be.name;
6031
6031
  }
6032
6032
  }
6033
6033
  const dn = ["‘", "’", "“", "”", `
6034
6034
  `];
6035
- class Te extends Error {
6035
+ class Je extends Error {
6036
6036
  constructor(e) {
6037
- super(e), Object.setPrototypeOf(this, new.target.prototype), this.name = Te.name;
6037
+ super(e), Object.setPrototypeOf(this, new.target.prototype), this.name = Je.name;
6038
6038
  }
6039
6039
  }
6040
6040
  class Cn {
@@ -6054,19 +6054,19 @@ class Cn {
6054
6054
  A = A.replaceAll(a[i], "");
6055
6055
  return A;
6056
6056
  }, this.textAlign = (e) => e.vertical ? "center" : e.textAlign || "center", this.getErrorsForText = (e, t, A) => {
6057
- const a = [];
6058
- t.data && t.data.maxLength && e.length > t.data.maxLength && a.push({ localizationKey: "workflow.steps.text.characterLimit" });
6057
+ let a;
6058
+ t.data && t.data.maxLength && e.length > t.data.maxLength && (a || (a = {}), a.hitCharacterLimit = !0);
6059
6059
  const n = A.getProfanities(), i = st(e.toLowerCase());
6060
6060
  for (const o of i)
6061
6061
  for (const r in n) {
6062
6062
  const c = n[r].toLowerCase().replace(/\s/g, "");
6063
6063
  if (o === c) {
6064
- a.push({ localizationKey: "workflow.steps.text.blockedProfanity" });
6064
+ a || (a = {}), a.blockedProfanity = !0;
6065
6065
  break;
6066
6066
  }
6067
6067
  }
6068
6068
  return !t.data.allowNewlines && (e.includes(`
6069
- `) || e.includes("\r")) && a.push({ localizationKey: "workflow.steps.text.multipleLines" }), a;
6069
+ `) || e.includes("\r")) && (a || (a = {}), a.illegalMultipleLines = !0), a;
6070
6070
  };
6071
6071
  }
6072
6072
  async init(e, t, A) {
@@ -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 g = V.getDefaultVariant(a);
6097
- if (g)
6096
+ const l = V.getDefaultVariant(a);
6097
+ if (l)
6098
6098
  return this.selectVariantCommand(
6099
6099
  e,
6100
- g,
6100
+ l,
6101
6101
  {},
6102
6102
  [],
6103
6103
  t,
@@ -6111,7 +6111,7 @@ class Cn {
6111
6111
  return null;
6112
6112
  }
6113
6113
  findLayoutElements(e, t) {
6114
- return e.getRegionElements(t.stepName).map((n) => He(n.id, e.getAllLayoutData()));
6114
+ return e.getRegionElements(t.stepName).map((n) => Re(n.id, e.getAllLayoutData()));
6115
6115
  }
6116
6116
  /**
6117
6117
  * Get the colors that can be used for a given text step.
@@ -6211,32 +6211,31 @@ class Cn {
6211
6211
  updateInputText(e, t, A, a) {
6212
6212
  const n = a.getStepStorage(A.stepName), i = this.getProcessedInput(e, A.data, !!n.customiseAllText), s = {
6213
6213
  command: void 0,
6214
- helperText: "",
6215
- errors: this.getErrorsForText(e, A, a)
6214
+ helperData: {},
6215
+ errorData: this.getErrorsForText(e, A, a)
6216
6216
  };
6217
- if (s.errors.length > 0)
6218
- return s.helperText = s.errors[0].localizationKey, s;
6219
- const o = (A.data.maxLength - i.length).toString();
6220
- s.helperText = `${o} characters remaining`;
6221
- const r = [], c = /* @__PURE__ */ new Map(), B = /* @__PURE__ */ new Map();
6222
- for (const g of t) {
6223
- if (!g.fontData)
6217
+ if (s.errorData)
6218
+ return s;
6219
+ s.helperData.charactersRemaining = A.data.maxLength - i.length;
6220
+ const o = [], r = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map();
6221
+ for (const B of t) {
6222
+ if (!B.fontData)
6224
6223
  throw new b("Failed to resolve font data for text.");
6225
- const [d, C] = Ne(
6226
- g.fontSize,
6227
- g.fontData,
6228
- { left: g.x, top: g.y, width: g.width, height: g.height, rotation: g.rotation, panelId: "" },
6224
+ const [l, d] = xe(
6225
+ B.fontSize,
6226
+ B.fontData,
6227
+ { left: B.x, top: B.y, width: B.width, height: B.height, rotation: B.rotation, panelId: "" },
6229
6228
  [i],
6230
6229
  { size: A.data.size, minSize: A.data.minSize, maxSize: A.data.maxSize }
6231
6230
  );
6232
- c.set(g.id, d), B.set(g.id, C);
6233
- const w = A.data.curved ? i : (C || []).join(`
6231
+ r.set(B.id, l), c.set(B.id, d);
6232
+ const C = A.data.curved ? i : (d || []).join(`
6234
6233
  `);
6235
- r.push(this.generateTextChangeCommandsForRegion(d, A.data, g.id, w));
6234
+ o.push(this.generateTextChangeCommandsForRegion(l, A.data, B.id, C));
6236
6235
  }
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, {
6236
+ return !A.data.curved && t.length > 0 && !Array.from(c.values()).every((l) => l) ? (s.errorData || (s.errorData = {}), s.errorData.doesNotFit = !0, s) : (a.updateStorage(A.stepName, { text: e }), a.updateMetadata(A.stepName, {
6238
6237
  text: i
6239
- }), (n.defaultCleared || !A.data.deleteDefaultOnFocus) && a.setMandatoryFulfilled(A.stepName, !0), s.command = new k(r), s);
6238
+ }), (n.defaultCleared || !A.data.deleteDefaultOnFocus) && a.setMandatoryFulfilled(A.stepName, !0), s.command = new k(o), s);
6240
6239
  }
6241
6240
  async selectVariant(e, t, A, a, n) {
6242
6241
  const i = await this.selectVariantCommand(
@@ -6267,11 +6266,11 @@ class Cn {
6267
6266
  const a = t.getSerializedStep(
6268
6267
  e.stepName,
6269
6268
  A.serializableWorkflow.steps
6270
- ), s = Object.values(A.layouts).map((g) => g.elements).flat().filter((g) => g.stepName === e.stepName), o = e.option;
6269
+ ), s = Object.values(A.layouts).map((l) => l.elements).flat().filter((l) => l.stepName === e.stepName), o = e.option;
6271
6270
  if (a != null && a.selectedVariants) {
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);
6271
+ const l = a.selectedVariants[0].id;
6272
+ if (o && l) {
6273
+ const d = (r = o.variants) == null ? void 0 : r.find((C) => C.id === l);
6275
6274
  if (d) {
6276
6275
  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
6276
  await t.setSelectionsAndElements(
@@ -6280,8 +6279,8 @@ class Cn {
6280
6279
  w,
6281
6280
  async () => {
6282
6281
  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)), Q = new k(D);
6284
- t.getCommandDispatcher()(Q);
6282
+ const D = s.map((p) => new St(p.id, C)), m = new k(D);
6283
+ t.getCommandDispatcher()(m);
6285
6284
  }
6286
6285
  );
6287
6286
  const { command: E } = j.updateInputText(
@@ -6329,10 +6328,10 @@ class Cn {
6329
6328
  var B;
6330
6329
  const r = n.markUpdatePending(), c = await this.fontDataFromVariant(t);
6331
6330
  if (a.length > 0) {
6332
- const g = a.map((w) => new St(w.id, c));
6331
+ const l = a.map((w) => new St(w.id, c));
6333
6332
  if (o) {
6334
6333
  const w = a.map((h) => new Xe(h.id, o));
6335
- g.push(...w);
6334
+ l.push(...w);
6336
6335
  }
6337
6336
  const d = await this.changeInputTextWithRegion(
6338
6337
  e,
@@ -6345,14 +6344,14 @@ class Cn {
6345
6344
  i,
6346
6345
  s
6347
6346
  );
6348
- return d && g.push(d), {
6349
- command: new k(g),
6347
+ return d && l.push(d), {
6348
+ command: new k(l),
6350
6349
  followup: async () => {
6351
6350
  n.markUpdateCompleted(r), await n.setSelectionsAndElements(e.stepName, [t], a);
6352
6351
  }
6353
6352
  };
6354
6353
  } else {
6355
- const g = await this.createTextboxRegions(
6354
+ const l = await this.createTextboxRegions(
6356
6355
  e.stepName,
6357
6356
  t,
6358
6357
  e.data,
@@ -6363,15 +6362,15 @@ class Cn {
6363
6362
  e,
6364
6363
  e.data.size || Ze,
6365
6364
  c,
6366
- ((B = g[0]) == null ? void 0 : B.newElement.input) || A.text || e.data.defaultText || "",
6365
+ ((B = l[0]) == null ? void 0 : B.newElement.input) || A.text || e.data.defaultText || "",
6367
6366
  A,
6368
6367
  n,
6369
6368
  !!A.customiseAllText,
6370
6369
  i,
6371
6370
  s
6372
- ), C = g.flatMap((h) => h.commands);
6371
+ ), C = l.flatMap((h) => h.commands);
6373
6372
  if (o) {
6374
- const h = g.map(
6373
+ const h = l.map(
6375
6374
  (u) => new Xe(u.regionElement.id, o)
6376
6375
  );
6377
6376
  C.push(...h);
@@ -6400,7 +6399,7 @@ class Cn {
6400
6399
  const d = i.getLayouts().find((h) => h.panelId === B.panelId), C = J();
6401
6400
  try {
6402
6401
  if (!d)
6403
- throw new Te("Failed to find layout for region: " + B.panelId);
6402
+ throw new Je("Failed to find layout for region: " + B.panelId);
6404
6403
  const h = A.colorOption;
6405
6404
  let u;
6406
6405
  if (h && h.variants) {
@@ -6412,7 +6411,7 @@ class Cn {
6412
6411
  colorProfileAssetKey: (w = h.colorProfile) == null ? void 0 : w.key
6413
6412
  });
6414
6413
  }
6415
- const E = await this.getDefaultColor(A), D = E || "#000000", Q = {
6414
+ const E = await this.getDefaultColor(A), D = E || "#000000", m = {
6416
6415
  stepRegion: B,
6417
6416
  stepName: e,
6418
6417
  align: this.textAlign(A),
@@ -6436,41 +6435,41 @@ class Cn {
6436
6435
  curved: A.curved,
6437
6436
  paths: A.paths,
6438
6437
  fillSpotColorDefinition: u
6439
- }, p = [], m = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map();
6440
- if (!Q.fontData)
6438
+ }, p = [], Q = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map();
6439
+ if (!m.fontData)
6441
6440
  throw new b("Failed to resolve font data for text.");
6442
- const [F, y] = Ne(
6443
- Q.fontSize,
6444
- Q.fontData,
6441
+ const [F, y] = xe(
6442
+ m.fontSize,
6443
+ m.fontData,
6445
6444
  {
6446
- left: Q.x,
6447
- top: Q.y,
6448
- width: Q.width,
6449
- height: Q.height,
6450
- rotation: Q.rotation,
6445
+ left: m.x,
6446
+ top: m.y,
6447
+ width: m.width,
6448
+ height: m.height,
6449
+ rotation: m.rotation,
6451
6450
  panelId: ""
6452
6451
  },
6453
6452
  [o],
6454
6453
  { size: A.size, minSize: A.minSize, maxSize: A.maxSize }
6455
6454
  );
6456
- m.set(Q.id, F), I.set(Q.id, y);
6455
+ Q.set(m.id, F), I.set(m.id, y);
6457
6456
  const Y = A.curved || A.vertical ? o : (y || []).join(`
6458
6457
  `);
6459
6458
  p.push(
6460
- this.generateTextChangeCommandsForRegion(F, A, Q.id, Y)
6459
+ this.generateTextChangeCommandsForRegion(F, A, m.id, Y)
6461
6460
  );
6462
- const N = new L(Q, d);
6461
+ const N = new L(m, d);
6463
6462
  return {
6464
6463
  regionElement: { id: C, region: B },
6465
6464
  commands: [N, ...p],
6466
- newElement: Q,
6465
+ newElement: m,
6467
6466
  fontData: a
6468
6467
  };
6469
6468
  } catch (h) {
6470
- throw console.log(h), new Je("Error adding font to region");
6469
+ throw console.log(h), new be("Error adding font to region");
6471
6470
  }
6472
6471
  }, c = await Promise.all(A.regions.map(r)).catch((B) => {
6473
- throw B instanceof Je ? (Bn.setLatestToast("Failed to load font.", pe.Error), B) : B instanceof Te ? B : new Error(B);
6472
+ throw B instanceof be ? (Bn.setLatestToast("Failed to load font.", Ve.Error), B) : B instanceof Je ? B : new Error(B);
6474
6473
  });
6475
6474
  return await i.setSelectionsAndElements(
6476
6475
  e,
@@ -6497,30 +6496,30 @@ class Cn {
6497
6496
  * @deprecated
6498
6497
  */
6499
6498
  async changeInputTextWithRegion(e, t, A, a, n, i, s, o, r, c) {
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(
6499
+ 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();
6500
+ for (const m of d)
6501
+ if (m.region) {
6502
+ const [p, Q] = xe(
6504
6503
  t,
6505
6504
  A,
6506
- Q.region,
6507
- [g],
6505
+ m.region,
6506
+ [l],
6508
6507
  { size: e.data.size, minSize: e.data.minSize, maxSize: e.data.maxSize }
6509
6508
  );
6510
- C.set(Q.id, p), w.set(Q.id, m);
6509
+ C.set(m.id, p), w.set(m.id, Q);
6511
6510
  }
6512
6511
  const u = (() => {
6513
- if (e.data && e.data.maxLength && g.length > e.data.maxLength)
6512
+ if (e.data && e.data.maxLength && l.length > e.data.maxLength)
6514
6513
  return c && c(!0), { info: "0" };
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)
6514
+ const m = i.getProfanities(), p = st(l.toLowerCase());
6515
+ for (const Q of p)
6516
+ for (const I in m) {
6517
+ const F = m[I].toLowerCase().replace(/\s/g, "");
6518
+ if (Q === F)
6520
6519
  return o(!0), { error: "Blocked profanity." };
6521
6520
  }
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() });
6521
+ return !e.data.vertical && !e.data.allowNewlines && (l.includes(`
6522
+ `) || 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() });
6524
6523
  })();
6525
6524
  if (u.error) {
6526
6525
  r(u.error);
@@ -6532,14 +6531,14 @@ class Cn {
6532
6531
  text: this.injectReplaceableText(B, e.data)
6533
6532
  }), (n.defaultCleared || !e.data.deleteDefaultOnFocus) && i.setMandatoryFulfilled(e.stepName, !0);
6534
6533
  const E = [];
6535
- for (const Q of d) {
6536
- const p = e.data.curved ? g : (w.get(Q.id) || []).join(`
6534
+ for (const m of d) {
6535
+ const p = e.data.curved ? l : (w.get(m.id) || []).join(`
6537
6536
  `);
6538
6537
  E.push(
6539
6538
  this.generateTextChangeCommandsForRegion(
6540
- C.get(Q.id) || 1,
6539
+ C.get(m.id) || 1,
6541
6540
  e.data,
6542
- Q.id,
6541
+ m.id,
6543
6542
  p
6544
6543
  )
6545
6544
  );
@@ -6548,7 +6547,7 @@ class Cn {
6548
6547
  }
6549
6548
  }
6550
6549
  const j = new Cn();
6551
- class mt {
6550
+ class Qt {
6552
6551
  }
6553
6552
  const wn = "data:application/font-woff;base64,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", hn = `<?xml version="1.0" encoding="iso-8859-1"?>
6554
6553
  <!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
@@ -7811,42 +7810,42 @@ IfnI8vaNAAAAAElFTkSuQmCC" transform="matrix(0.13 0.0141 -0.0141 0.1301 104.926 1
7811
7810
  </g>
7812
7811
  </svg>
7813
7812
 
7814
- `, v = (l) => ZA("http://www.w3.org/2000/svg", l), Qt = (l, e) => {
7813
+ `, v = (g) => ZA("http://www.w3.org/2000/svg", g), mt = (g, e) => {
7815
7814
  const t = v("rect");
7816
- return t.setAttribute("height", `${l}`), t.setAttribute("width", `${e}`), t;
7815
+ return t.setAttribute("height", `${g}`), t.setAttribute("width", `${e}`), t;
7817
7816
  }, En = () => {
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) => {
7817
+ const g = v("svg");
7818
+ 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;
7819
+ }, un = (g) => {
7821
7820
  const e = v("use");
7822
- return e.setAttribute("xlink:href", l), e.setAttribute("href", l), e;
7821
+ return e.setAttribute("xlink:href", g), e.setAttribute("href", g), e;
7823
7822
  };
7824
- function pA(l) {
7825
- const e = En(), t = /viewBox="0 0 (.+?) (.+?)"/.exec(l) || ["0", "0"], A = parseFloat(t[1]), a = parseFloat(t[2]);
7823
+ function pA(g) {
7824
+ const e = En(), t = /viewBox="0 0 (.+?) (.+?)"/.exec(g) || ["0", "0"], A = parseFloat(t[1]), a = parseFloat(t[2]);
7826
7825
  return e.setAttribute("height", `${a}`), e.setAttribute("width", `${A}`), [e, a, A];
7827
7826
  }
7828
- const mn = (l, e, t) => {
7827
+ const Qn = (g, e, t) => {
7829
7828
  const A = v("g");
7830
- l.appendChild(A), A.setAttribute("id", t), A.innerHTML = e;
7829
+ g.appendChild(A), A.setAttribute("id", t), A.innerHTML = e;
7831
7830
  };
7832
- function DA(l, e, t) {
7831
+ function DA(g, e, t) {
7833
7832
  const A = J();
7834
- mn(e, t, `bgdef-${A}`), l.appendChild(un(`#bgdef-${A}`));
7833
+ Qn(e, t, `bgdef-${A}`), g.appendChild(un(`#bgdef-${A}`));
7835
7834
  }
7836
- const IA = (l, e, t, A) => {
7837
- const a = fe("filter");
7835
+ const IA = (g, e, t, A) => {
7836
+ const a = Ie("filter");
7838
7837
  a.setAttribute("id", A), a.setAttribute("height", "200%"), a.setAttribute("width", "200%"), a.setAttribute("x", "-50%"), a.setAttribute("y", "-50%");
7839
- const n = fe("feOffset");
7840
- a.appendChild(n), n.setAttribute("result", "offOut"), n.setAttribute("in", "SourceAlpha"), n.setAttribute("dx", `${l}`), n.setAttribute("dy", `${e}`);
7841
- const i = fe("feGaussianBlur");
7838
+ const n = Ie("feOffset");
7839
+ a.appendChild(n), n.setAttribute("result", "offOut"), n.setAttribute("in", "SourceAlpha"), n.setAttribute("dx", `${g}`), n.setAttribute("dy", `${e}`);
7840
+ const i = Ie("feGaussianBlur");
7842
7841
  a.appendChild(i), i.setAttribute("result", "blurOut"), i.setAttribute("in", "offOut"), i.setAttribute("stdDeviation", `${t}`);
7843
- const s = fe("feBlend");
7842
+ const s = Ie("feBlend");
7844
7843
  return a.appendChild(s), s.setAttribute("in", "SourceGraphic"), s.setAttribute("in2", "blurOut"), s.setAttribute("mode", "normal"), a;
7845
- }, fA = (l) => {
7846
- let e = l;
7844
+ }, fA = (g) => {
7845
+ let e = g;
7847
7846
  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
7847
  };
7849
- function pt(l, e, t, A, a, n) {
7848
+ function pt(g, e, t, A, a, n) {
7850
7849
  const i = a || 1, s = n || 1, o = {
7851
7850
  x: e[0],
7852
7851
  y: e[1],
@@ -7855,11 +7854,11 @@ function pt(l, e, t, A, a, n) {
7855
7854
  };
7856
7855
  if (o.width <= 0)
7857
7856
  return;
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})`);
7857
+ 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;
7858
+ g.setAttribute("transform", `translate(${c} ${B}) scale(${r} ${r})`);
7860
7859
  }
7861
- function Qn(l, e, t, A) {
7862
- const a = t / l, n = A / e;
7860
+ function mn(g, e, t, A) {
7861
+ const a = t / g, n = A / e;
7863
7862
  return a > 1 && n > 1 ? Math.min(a, n) : a > 1 && n < 1 ? n : a < 1 && n > 1 ? a : Math.min(a, n);
7864
7863
  }
7865
7864
  const Gt = {
@@ -7896,18 +7895,18 @@ class Dt {
7896
7895
  o && (i.push(s), t = s);
7897
7896
  for (const c of r) {
7898
7897
  const B = n[c];
7899
- let g;
7898
+ let l;
7900
7899
  switch (typeof B) {
7901
7900
  case "boolean":
7902
- g = B | 0;
7901
+ l = B | 0;
7903
7902
  break;
7904
7903
  case "number":
7905
- g = (B * 100 | 0) / 100;
7904
+ l = (B * 100 | 0) / 100;
7906
7905
  break;
7907
7906
  default:
7908
7907
  throw new he("Failed to encode path.");
7909
7908
  }
7910
- o || i.push(" "), i.push(g), o = !1;
7909
+ o || i.push(" "), i.push(l), o = !1;
7911
7910
  }
7912
7911
  return i.join("");
7913
7912
  };
@@ -7929,8 +7928,8 @@ class Dt {
7929
7928
  );
7930
7929
  for (let c = 0; c < s.length / r.length; c++) {
7931
7930
  const B = { type: i, relative: o };
7932
- for (let g = 0; g < r.length; g++)
7933
- B[r[g]] = s[c * r.length + g];
7931
+ for (let l = 0; l < r.length; l++)
7932
+ B[r[l]] = s[c * r.length + l];
7934
7933
  a.push(B);
7935
7934
  }
7936
7935
  } else
@@ -7972,7 +7971,7 @@ class Dt {
7972
7971
  }
7973
7972
  }
7974
7973
  }
7975
- class pn extends mt {
7974
+ class pn extends Qt {
7976
7975
  constructor() {
7977
7976
  super(...arguments), this.moduleName = "Favourites";
7978
7977
  }
@@ -7988,8 +7987,8 @@ class pn extends mt {
7988
7987
  }
7989
7988
  brandSvg(e, t) {
7990
7989
  const A = e.toSVG(2), a = e.getBoundingBox(), n = a.x2 - a.x1, i = e.toPathData(3), s = () => {
7991
- const p = v("g"), m = v("defs");
7992
- p.appendChild(m), m.appendChild(IA(3, 7, 4, "shadow"));
7990
+ const p = v("g"), Q = v("defs");
7991
+ p.appendChild(Q), Q.appendChild(IA(3, 7, 4, "shadow"));
7993
7992
  const I = v("g");
7994
7993
  p.appendChild(I), I.setAttribute("filter", "url(#shadow)"), I.innerHTML = A;
7995
7994
  const F = v("g");
@@ -8003,20 +8002,20 @@ class pn extends mt {
8003
8002
  return "";
8004
8003
  const B = v("defs");
8005
8004
  o.appendChild(B), DA(o, B, t);
8006
- const g = r * 0.23, d = c * 0.94, C = c * 0.04, w = r * 0.53, h = v("g");
8005
+ const l = r * 0.23, d = c * 0.94, C = c * 0.04, w = r * 0.53, h = v("g");
8007
8006
  o.appendChild(h), h.setAttribute("transform", `translate(${C} ${w}) rotate(-21)`);
8008
- const u = Qt(g, d);
8007
+ const u = mt(l, d);
8009
8008
  u.setAttribute("opacity", "0"), h.appendChild(u);
8010
8009
  const E = v("g");
8011
8010
  h.appendChild(E);
8012
8011
  const D = s();
8013
8012
  E.appendChild(D);
8014
- const Q = wt(i);
8015
- return pt(E, Q, g, d), fA(o.outerHTML);
8013
+ const m = wt(i);
8014
+ return pt(E, m, l, d), fA(o.outerHTML);
8016
8015
  }
8017
8016
  }
8018
8017
  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 mt {
8018
+ class In extends Qt {
8020
8019
  constructor(e, t) {
8021
8020
  super(), this.moduleName = "Maltesers", this.shortLength = 5, this.indicator = (A) => A ? 1 : 0, this.backgroundSvg = e, this.backgroundShortSvg = t;
8022
8021
  }
@@ -8043,28 +8042,28 @@ class In extends mt {
8043
8042
  S,
8044
8043
  T + (s / 3 - S) ** 2 / s * this.indicator(S < s / 3)
8045
8044
  ]), N.transform(([S, T]) => [S - (i - T) * (s - S) / 800, T]), I;
8046
- }, [c, B, g] = pA(t);
8045
+ }, [c, B, l] = pA(t);
8047
8046
  if (!c)
8048
8047
  return "";
8049
8048
  const d = v("defs");
8050
8049
  c.appendChild(d), DA(c, d, t);
8051
8050
  let C, w, h, u;
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);
8051
+ 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);
8053
8052
  const E = v("g");
8054
8053
  c.appendChild(E), E.setAttribute("transform", `translate(${h} ${u}) rotate(-10)`);
8055
- const D = Qt(C, w);
8054
+ const D = mt(C, w);
8056
8055
  D.setAttribute("opacity", "0"), E.appendChild(D);
8057
- const Q = v("g");
8058
- E.appendChild(Q);
8056
+ const m = v("g");
8057
+ E.appendChild(m);
8059
8058
  const p = r();
8060
- Q.appendChild(p);
8061
- const m = wt(o);
8062
- return pt(Q, m, C, w), c.outerHTML;
8059
+ m.appendChild(p);
8060
+ const Q = wt(o);
8061
+ return pt(m, Q, C, w), c.outerHTML;
8063
8062
  }
8064
8063
  // 1 if true, 0 if false.
8065
8064
  }
8066
8065
  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 mt {
8066
+ class Fn extends Qt {
8068
8067
  constructor() {
8069
8068
  super(...arguments), this.moduleName = "Vegemite";
8070
8069
  }
@@ -8078,46 +8077,46 @@ class Fn extends mt {
8078
8077
  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
8078
  const D = v("g");
8080
8079
  D.classList.add("module-text-group");
8081
- const Q = v("defs");
8082
- D.appendChild(Q), Q.appendChild(IA(0, 2, 2, "shadow"));
8080
+ const m = v("defs");
8081
+ D.appendChild(m), m.appendChild(IA(0, 2, 2, "shadow"));
8083
8082
  const p = v("path");
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;
8083
+ p.setAttribute("d", c), p.setAttribute("stroke", "black"), p.setAttribute("stroke-width", "3"), m.appendChild(p);
8084
+ const Q = v("g");
8085
+ Q.classList.add("module-layer0"), D.appendChild(Q), Q.setAttribute("filter", "url(#shadow)"), Q.innerHTML = p.outerHTML;
8087
8086
  const I = v("g");
8088
8087
  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
8088
  const F = v("g");
8090
8089
  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
8090
  const y = v("g");
8092
8091
  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
- }, g = v("g");
8094
- g.classList.add("module-root");
8092
+ }, l = v("g");
8093
+ l.classList.add("module-root");
8095
8094
  const d = v("defs");
8096
- g.appendChild(d);
8095
+ l.appendChild(d);
8097
8096
  const C = v("g");
8098
- C.classList.add("module-bounds"), g.appendChild(C);
8099
- const w = Qt(t.height, t.width);
8097
+ C.classList.add("module-bounds"), l.appendChild(C);
8098
+ const w = mt(t.height, t.width);
8100
8099
  w.setAttribute("opacity", "0"), C.appendChild(w);
8101
8100
  const h = v("g");
8102
- h.classList.add("module-text-enclosure"), g.appendChild(h);
8101
+ h.classList.add("module-text-enclosure"), l.appendChild(h);
8103
8102
  const u = B();
8104
8103
  h.appendChild(u);
8105
8104
  const E = wt(c);
8106
- return pt(h, E, t.height, t.width, 0.35, 0.65), fA(g.outerHTML);
8105
+ return pt(h, E, t.height, t.width, 0.35, 0.65), fA(l.outerHTML);
8107
8106
  }
8108
8107
  }
8109
- async function FA(l) {
8110
- if (l === "Favourites")
8108
+ async function FA(g) {
8109
+ if (g === "Favourites")
8111
8110
  return new pn();
8112
- if (l === "Maltesers") {
8111
+ if (g === "Maltesers") {
8113
8112
  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
8113
  return new In(A[0], A[1]);
8115
8114
  }
8116
- if (l === "Vegemite")
8115
+ if (g === "Vegemite")
8117
8116
  return new Fn();
8118
- throw new b(`Failed to resolve Module, Module ${l} not found`);
8117
+ throw new b(`Failed to resolve Module, Module ${g} not found`);
8119
8118
  }
8120
- var pe = /* @__PURE__ */ ((l) => (l.Error = "Error", l.Warning = "Warning", l.Info = "Info", l))(pe || {});
8119
+ var Ve = /* @__PURE__ */ ((g) => (g.Error = "Error", g.Warning = "Warning", g.Info = "Info", g))(Ve || {});
8121
8120
  const yn = 1e3;
8122
8121
  class bt extends BA {
8123
8122
  constructor(e) {
@@ -8132,16 +8131,16 @@ class bt extends BA {
8132
8131
  }
8133
8132
  }
8134
8133
  class Mn {
8135
- constructor(e, t, A, a, n, i, s, o, r, c, B, g, d, C = !1, w, h = !1, u = !1, E = !1) {
8134
+ constructor(e, t, A, a, n, i, s, o, r, c, B, l, d, C = !1, w, h = !1, u = !1, E = !1) {
8136
8135
  this.workflowStatePromiseQueue = new dA(1), this.initialized = !1, this.readOnly = !1, this.isReloadedTransaction = !1, this.singleVariantsRenderable = !1, this.stepTags = {}, this.renderLayouts = () => {
8137
8136
  var p;
8138
8137
  if (!this.previewService)
8139
8138
  return;
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(() => {
8139
+ const D = this.getCommandContext().getAllLayouts(), m = (p = this.getLayoutPreviewService()) == null ? void 0 : p.getAll();
8140
+ if (m)
8141
+ for (const [, Q] of m)
8142
+ Q.render(D);
8143
+ }, 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(() => {
8145
8144
  this.initialized = !0;
8146
8145
  }), this.initializationPromise.catch((D) => {
8147
8146
  throw console.error(D), this.initialized = !1, new Error("Workflow initialization failed due to an error. See console.");
@@ -8378,8 +8377,8 @@ class Mn {
8378
8377
  throw new b(
8379
8378
  "We should always have a model container when injecting a preview!"
8380
8379
  );
8381
- const g = (B = o.asset) == null ? void 0 : B.fileLink;
8382
- if (!g) {
8380
+ const l = (B = o.asset) == null ? void 0 : B.fileLink;
8381
+ if (!l) {
8383
8382
  console.error(`Failed to read model url from variant: ${o.id} for step: ${i.stepName}`);
8384
8383
  return;
8385
8384
  }
@@ -8387,14 +8386,14 @@ class Mn {
8387
8386
  this.modelContainer.applyModelVariant(
8388
8387
  i.stepName,
8389
8388
  {
8390
- model: g,
8389
+ model: l,
8391
8390
  contextService: this.getLayoutPreviewService()
8392
8391
  },
8393
8392
  d.replaceProductModel || !1
8394
8393
  );
8395
8394
  } else {
8396
- const g = o.material;
8397
- if (!g) {
8395
+ const l = o.material;
8396
+ if (!l) {
8398
8397
  console.error(`Failed to read material from variant: ${o.id} for step: ${i.stepName}`);
8399
8398
  return;
8400
8399
  }
@@ -8403,7 +8402,7 @@ class Mn {
8403
8402
  throw new b(
8404
8403
  "We should always have a model container when injecting a preview!"
8405
8404
  );
8406
- this.modelContainer.applyMaterialVariant(C, i.option.id, g);
8405
+ this.modelContainer.applyMaterialVariant(C, i.option.id, l);
8407
8406
  });
8408
8407
  }
8409
8408
  }), await A.getInitializationPromise(), this.renderLayouts();
@@ -8475,7 +8474,7 @@ class Mn {
8475
8474
  const e = this.getCommandContext().getState();
8476
8475
  if (!e)
8477
8476
  throw new b("Attempted to serialize state before it was initialized.");
8478
- return { transaction: JSON.stringify(this.dehydrateState(le(e.transaction))) };
8477
+ return { transaction: JSON.stringify(this.dehydrateState(ge(e.transaction))) };
8479
8478
  }
8480
8479
  dehydrateState(e) {
8481
8480
  var t;
@@ -8516,15 +8515,15 @@ class Mn {
8516
8515
  return Promise.resolve({ stepElements: {}, commands: [] });
8517
8516
  const a = async (r, c, B) => {
8518
8517
  if (r.type === M.SilentIllustration) {
8519
- const g = await new kt(r, c).trigger();
8520
- return { step: r, results: g };
8518
+ const l = await new kt(r, c).trigger();
8519
+ return { step: r, results: l };
8521
8520
  } else if (r.type === M.ProductOverlay) {
8522
- const g = await new kt(
8521
+ const l = await new kt(
8523
8522
  r,
8524
8523
  c,
8525
8524
  B
8526
8525
  ).trigger();
8527
- return { step: r, results: g };
8526
+ return { step: r, results: l };
8528
8527
  }
8529
8528
  return Promise.reject("Unknown silent step. This is a bug");
8530
8529
  }, n = e.filter(
@@ -8587,32 +8586,32 @@ class Mn {
8587
8586
  this.stepSelections = {
8588
8587
  ...this.stepSelections,
8589
8588
  [e]: { selectedVariants: t }
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]);
8589
+ }, 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) => {
8590
+ ae(Q, this.stepSelections) || (this.stepInitialised[Q.stepName] = !1, delete this.stepMetadata[Q.stepName], delete this.stepSelections[Q.stepName], delete this.storage[Q.stepName]);
8592
8591
  });
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)
8592
+ 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(
8593
+ (Q) => !r.some((I) => I.stepName === Q.stepName)
8595
8594
  );
8596
- r.forEach((m) => {
8597
- ae(m, this.stepSelections) || (this.stepInitialised[m.stepName] = !1);
8595
+ r.forEach((Q) => {
8596
+ ae(Q, this.stepSelections) || (this.stepInitialised[Q.stepName] = !1);
8598
8597
  });
8599
- const g = this.getInvalidCanvasRegions(), { stepElements: d, commands: C } = await this.stepElementsForIntroducedSilentSteps(B, !1);
8598
+ const l = this.getInvalidCanvasRegions(), { stepElements: d, commands: C } = await this.stepElementsForIntroducedSilentSteps(B, !1);
8600
8599
  this.stepElements = {
8601
8600
  ...this.stepElements,
8602
8601
  ...d,
8603
8602
  [e]: A
8604
- }, this.removeElements(g);
8605
- const w = this.workflow.steps.find((m) => m.stepName === e);
8603
+ }, this.removeElements(l);
8604
+ const w = this.workflow.steps.find((Q) => Q.stepName === e);
8606
8605
  if ((w == null ? void 0 : w.type) === M.Frame) {
8607
- const m = this.getStepSpecificServices(e);
8608
- (p = m == null ? void 0 : m.frameService) == null || p.setTargetElements(A.map((I) => I.id));
8606
+ const Q = this.getStepSpecificServices(e);
8607
+ (p = Q == null ? void 0 : Q.frameService) == null || p.setTargetElements(A.map((I) => I.id));
8609
8608
  }
8610
- const h = g.map((m) => new ne(m.id)), u = new Yt(this.constructSerializableWorkflow()), E = [...C, ...h, u];
8609
+ const h = l.map((Q) => new ne(Q.id)), u = new Yt(this.constructSerializableWorkflow()), E = [...C, ...h, u];
8611
8610
  E.length > 0 && this.commandContext.apply(new k(E), !0), await this.ensureStepsAreLoaded(), this.onElementsChange();
8612
- const D = this.getInvalidModelVariants(), Q = this.modelContainer;
8613
- if (Q) {
8614
- const m = D.map(
8615
- (I) => Q.applyModelVariant(
8611
+ const D = this.getInvalidModelVariants(), m = this.modelContainer;
8612
+ if (m) {
8613
+ const Q = D.map(
8614
+ (I) => m.applyModelVariant(
8616
8615
  I,
8617
8616
  {
8618
8617
  contextService: this.getLayoutPreviewService()
@@ -8620,7 +8619,7 @@ class Mn {
8620
8619
  !1
8621
8620
  )
8622
8621
  );
8623
- await Promise.all(m);
8622
+ await Promise.all(Q);
8624
8623
  }
8625
8624
  await this.onSelectionChange(), a && await a();
8626
8625
  }
@@ -8650,7 +8649,7 @@ class Mn {
8650
8649
  break;
8651
8650
  case M.Illustration:
8652
8651
  A.push(
8653
- ve.init(o, this, this.reloadedState)
8652
+ Ne.init(o, this, this.reloadedState)
8654
8653
  );
8655
8654
  break;
8656
8655
  case M.Material:
@@ -8670,12 +8669,12 @@ class Mn {
8670
8669
  break;
8671
8670
  case M.Picture:
8672
8671
  A.push(
8673
- mA.init(o, this, this.reloadedState)
8672
+ QA.init(o, this, this.reloadedState)
8674
8673
  );
8675
8674
  break;
8676
8675
  case M.Question:
8677
8676
  A.push(
8678
- QA.init(o, this, this.reloadedState)
8677
+ mA.init(o, this, this.reloadedState)
8679
8678
  );
8680
8679
  break;
8681
8680
  case M.Shape:
@@ -8972,7 +8971,7 @@ class Sn extends X {
8972
8971
  */
8973
8972
  async selectVariant(e) {
8974
8973
  if (!this.getUpdateState() && this.getCurrentVariant() !== e)
8975
- return ve.selectVariant(
8974
+ return Ne.selectVariant(
8976
8975
  this.step,
8977
8976
  e.getResource(),
8978
8977
  this.manager.getRegionElements(this.step.stepName) || [],
@@ -8988,7 +8987,7 @@ class Sn extends X {
8988
8987
  const e = this.manager.getRegionElements(this.step.stepName) || [];
8989
8988
  if (e.length !== 0)
8990
8989
  try {
8991
- return He(e[0].id, this.manager.getAllLayoutData()).colors;
8990
+ return Re(e[0].id, this.manager.getAllLayoutData()).colors;
8992
8991
  } catch (t) {
8993
8992
  console.error(t);
8994
8993
  }
@@ -8998,7 +8997,7 @@ class Sn extends X {
8998
8997
  */
8999
8998
  setColor(e, t) {
9000
8999
  const A = /* @__PURE__ */ new Map();
9001
- return A.set(e, t), ve.changeColors(
9000
+ return A.set(e, t), Ne.changeColors(
9002
9001
  this.step,
9003
9002
  this.manager.getRegionElements(this.step.stepName),
9004
9003
  this.manager,
@@ -9010,7 +9009,7 @@ class Sn extends X {
9010
9009
  return this.step.data.colorOption;
9011
9010
  }
9012
9011
  getAvailableColors() {
9013
- return this.step.data.colorPickerEnabled ? ve.availableColors(this.step, this.manager) : Promise.resolve([]);
9012
+ return this.step.data.colorPickerEnabled ? Ne.availableColors(this.step, this.manager) : Promise.resolve([]);
9014
9013
  }
9015
9014
  isColorPickerEnabled() {
9016
9015
  return this.step.data.colorPickerEnabled ?? !1;
@@ -9052,7 +9051,7 @@ class xn extends X {
9052
9051
  * @returns A promise that can be awaited to ensure the new image asset has been updated on the design.
9053
9052
  */
9054
9053
  selectVariant(e) {
9055
- return mA.selectVariant(
9054
+ return QA.selectVariant(
9056
9055
  this.step,
9057
9056
  e.getResource(),
9058
9057
  this.manager,
@@ -9067,7 +9066,7 @@ class Nn extends X {
9067
9066
  async selectVariant(e) {
9068
9067
  if (!e.getId())
9069
9068
  throw new Error("Unable to select variant with a null ID");
9070
- await QA.selectVariant(this.step, e.getId(), this.manager);
9069
+ await mA.selectVariant(this.step, e.getId(), this.manager);
9071
9070
  }
9072
9071
  /**
9073
9072
  * The way that this step expects to be rendered.
@@ -9158,7 +9157,7 @@ class Rn extends X {
9158
9157
  ...this.manager.getInformationResults(),
9159
9158
  {
9160
9159
  message: "An issue has occurred with text",
9161
- messageType: pe.Error,
9160
+ messageType: Ve.Error,
9162
9161
  stepID: this.step.stepName
9163
9162
  }
9164
9163
  ]);
@@ -9230,38 +9229,24 @@ class Rn extends X {
9230
9229
  * @param userInput Input from the user.
9231
9230
  */
9232
9231
  setText(e) {
9233
- var d, C;
9232
+ var B;
9234
9233
  const t = {
9235
- input: e
9236
- }, A = j.findLayoutElements(this.manager, this.step), a = j.filterUnsupportedCharacters(e, (d = A[0]) == null ? void 0 : d.fontData);
9234
+ input: e,
9235
+ helperData: {}
9236
+ }, A = j.findLayoutElements(this.manager, this.step), a = j.filterUnsupportedCharacters(e, (B = A[0]) == null ? void 0 : B.fontData);
9237
9237
  !!this.step.data && !!this.step.data.maxLength && a.length > this.step.data.maxLength || (t.input = a);
9238
9238
  const i = A.length <= 0, s = i ? { inputText: a, text: a } : { inputText: a };
9239
9239
  if (this.manager.updateStorage(this.step.stepName, s), this.manager.updateMetadata(this.step.stepName, {
9240
9240
  text: a
9241
9241
  }), i)
9242
9242
  return t;
9243
- const { command: o, errors: r, helperText: c } = j.updateInputText(
9243
+ const { command: o, errorData: r, helperData: c } = j.updateInputText(
9244
9244
  a,
9245
9245
  A,
9246
9246
  this.step,
9247
9247
  this.manager
9248
9248
  );
9249
- o && this.manager.getCommandDispatcher()(o);
9250
- const B = this.manager.getInformationResults(), g = (C = r[0]) == null ? void 0 : C.localizationKey;
9251
- if (g)
9252
- this.manager.setInformationResults([
9253
- ...B,
9254
- {
9255
- message: `${g} - ${this.step.stepTitle}`,
9256
- messageType: pe.Error,
9257
- stepID: this.step.stepName
9258
- }
9259
- ]);
9260
- else {
9261
- const w = B.filter((h) => h.stepID !== this.step.stepName);
9262
- this.manager.setInformationResults(w);
9263
- }
9264
- return t.helperText = g || c, t.errorText = g, t;
9249
+ return o && this.manager.getCommandDispatcher()(o), t.helperData = c, t.errorData = r, t;
9265
9250
  }
9266
9251
  /**
9267
9252
  * Gets the text currently applied to the elements of this step.
@@ -9401,7 +9386,7 @@ class Un extends X {
9401
9386
  ...this.manager.getInformationResults(),
9402
9387
  {
9403
9388
  message: t,
9404
- messageType: pe.Error,
9389
+ messageType: Ve.Error,
9405
9390
  stepID: this.step.stepName
9406
9391
  }
9407
9392
  ]);
@@ -9412,7 +9397,7 @@ class Un extends X {
9412
9397
  });
9413
9398
  }
9414
9399
  }
9415
- class Me {
9400
+ class ye {
9416
9401
  static get(e, t) {
9417
9402
  switch (t.type) {
9418
9403
  case M.DigitalContent:
@@ -9514,40 +9499,40 @@ const MA = f`
9514
9499
  }
9515
9500
  }
9516
9501
  `;
9517
- function Oe(l) {
9518
- const e = JSON.parse(atob(l.split(".")[1])).exp;
9502
+ function Te(g) {
9503
+ const e = JSON.parse(atob(g.split(".")[1])).exp;
9519
9504
  return Math.floor((/* @__PURE__ */ new Date()).getTime() / 1e3) >= e;
9520
9505
  }
9521
- const Jn = async (l) => {
9506
+ const Jn = async (g) => {
9522
9507
  var i, s;
9523
9508
  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
- return A && !Oe(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
9509
+ return A && !Te(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
9525
9510
  mutation: Gn,
9526
9511
  errorPolicy: "all",
9527
9512
  fetchPolicy: "no-cache",
9528
9513
  variables: {
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
9514
+ name: g.name,
9515
+ layouts: g.layouts,
9516
+ workflowId: g.workflowId,
9517
+ transactionId: g.transactionId,
9518
+ previewImage: g.previewImage,
9519
+ useThreeDimPreview: g.useThreeDimPreview,
9520
+ metadata: g.metadata,
9521
+ selectedVariants: g.selectedVariants
9537
9522
  },
9538
9523
  context: {
9539
9524
  headers: a
9540
9525
  }
9541
9526
  })).data) == null ? void 0 : s.designCreate;
9542
- }, Tn = async (l) => {
9527
+ }, Tn = async (g) => {
9543
9528
  var i, s;
9544
9529
  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
- return A && !Oe(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
9530
+ return A && !Te(A) && (a.Authorization = `Bearer ${A}`), (s = (await x.getShadowGraphqlClient().mutate({
9546
9531
  mutation: bn,
9547
9532
  errorPolicy: "all",
9548
9533
  fetchPolicy: "no-cache",
9549
9534
  variables: {
9550
- inputs: l.map((o) => ({
9535
+ inputs: g.map((o) => ({
9551
9536
  name: o.name,
9552
9537
  layouts: o.layouts,
9553
9538
  workflowId: o.workflowId,
@@ -9562,17 +9547,17 @@ const Jn = async (l) => {
9562
9547
  headers: a
9563
9548
  }
9564
9549
  })).data) == null ? void 0 : s.designCreateMany;
9565
- }, ct = (l, e, t) => {
9550
+ }, ct = (g, e, t) => {
9566
9551
  const A = (n) => {
9567
9552
  const i = {};
9568
9553
  if (n.type === "Frame") {
9569
- const s = l[n.stepName], o = n.data;
9554
+ const s = g[n.stepName], o = n.data;
9570
9555
  if (!s || !s.image || o.hideImageInCart && t)
9571
9556
  return i;
9572
9557
  i[`${n.stepTitle} image`] = s.image;
9573
9558
  }
9574
9559
  if (n.type === "Illustration") {
9575
- const s = l[n.stepName], o = n.data;
9560
+ const s = g[n.stepName], o = n.data;
9576
9561
  if (!s || o.hideColorsInCart && t || !s.colors)
9577
9562
  return i;
9578
9563
  if (s.colors.length > 0) {
@@ -9581,13 +9566,13 @@ const Jn = async (l) => {
9581
9566
  }
9582
9567
  }
9583
9568
  if (n.type === "Module") {
9584
- const s = l[n.stepName], o = n.data;
9569
+ const s = g[n.stepName], o = n.data;
9585
9570
  if (!s || s.text === void 0 || s.text === null || o.hideTextInCart && t)
9586
9571
  return i;
9587
9572
  i[`${n.stepTitle} text`] = s.text;
9588
9573
  }
9589
9574
  if (n.type === "Text") {
9590
- const s = l[n.stepName];
9575
+ const s = g[n.stepName];
9591
9576
  if (!s)
9592
9577
  return i;
9593
9578
  const o = n.data;
@@ -9598,14 +9583,14 @@ const Jn = async (l) => {
9598
9583
  return e.steps.forEach((n) => {
9599
9584
  Object.assign(a, A(n));
9600
9585
  }), a;
9601
- }, On = (l, e, t, A) => {
9586
+ }, On = (g, e, t, A) => {
9602
9587
  const a = {};
9603
9588
  let n = {};
9604
9589
  t ? n = ct(t, e, !1) : A && (n = A);
9605
9590
  const s = e.steps.map((o) => o.stepTitle).filter((o, r, c) => c.indexOf(o) == r);
9606
9591
  for (const o of s) {
9607
- if (Object.keys(l).includes(o)) {
9608
- const r = l[o], c = e.steps.find((B) => B.stepTitle === o);
9592
+ if (Object.keys(g).includes(o)) {
9593
+ const r = g[o], c = e.steps.find((B) => B.stepTitle === o);
9609
9594
  a[`${c == null ? void 0 : c.stepTitle} selection`] = {
9610
9595
  value: r[0].name,
9611
9596
  priceModifier: r[0].priceModifier
@@ -9618,39 +9603,39 @@ const Jn = async (l) => {
9618
9603
  });
9619
9604
  }
9620
9605
  return a;
9621
- }, SA = (l, e, t, A, a, n, i, s) => {
9606
+ }, SA = (g, e, t, A, a, n, i, s) => {
9622
9607
  var C, w;
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,
9608
+ 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 = {
9609
+ additionalExternalProductId: (C = g.integrationProduct) == null ? void 0 : C.additionalExternalProductId,
9610
+ additionalExternalVariantId: (w = g.integrationProduct) == null ? void 0 : w.additionalExternalVariantId,
9626
9611
  baseCost: o,
9627
- designExternalVariants: l.designExternalVariants,
9628
- designProductId: l.externalDesignProductId,
9629
- designProductVariantId: l.externalDesignProductVariantId,
9612
+ designExternalVariants: g.designExternalVariants,
9613
+ designProductId: g.externalDesignProductId,
9614
+ designProductVariantId: g.externalDesignProductVariantId,
9630
9615
  event: "onComplete",
9631
9616
  exportedData: c,
9632
- externalCartProductId: l.externalCartProductId,
9633
- externalCartProductVariantId: l.externalCartProductVariantId,
9617
+ externalCartProductId: g.externalCartProductId,
9618
+ externalCartProductVariantId: g.externalCartProductVariantId,
9634
9619
  lineItemImageUrl: i || "",
9635
9620
  optionsCost: r,
9636
9621
  processExecutionId: s,
9637
- quantity: l.quantity,
9638
- transactionId: l.id,
9639
- transactionOwnerId: g,
9622
+ quantity: g.quantity,
9623
+ transactionId: g.id,
9624
+ transactionOwnerId: l,
9640
9625
  weight: e.weight,
9641
- workflowViewerLink: l.workflowViewerLink || "",
9642
- workflowViewerReadOnlyLink: l.workflowViewerReadOnlyLink || ""
9626
+ workflowViewerLink: g.workflowViewerLink || "",
9627
+ workflowViewerReadOnlyLink: g.workflowViewerReadOnlyLink || ""
9643
9628
  };
9644
9629
  return n && (d.metadata = n), A && (d.selectedVariants = A), a && (d.sku = a), d;
9645
- }, YA = async (l, e, t, A, a, n, i, s, o, r) => {
9630
+ }, YA = async (g, e, t, A, a, n, i, s, o, r) => {
9646
9631
  var F;
9647
9632
  await (async () => {
9648
9633
  var R;
9649
9634
  if (r !== void 0)
9650
9635
  return r;
9651
- await l.outstandingRequestsPromise();
9636
+ await g.outstandingRequestsPromise();
9652
9637
  const Y = (P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map()).get(a.id), S = await x.getShadowGraphqlClient().query({
9653
- query: lA,
9638
+ query: gA,
9654
9639
  variables: { ids: [a.id] },
9655
9640
  fetchPolicy: "no-cache",
9656
9641
  errorPolicy: "all",
@@ -9661,8 +9646,8 @@ const Jn = async (l) => {
9661
9646
  return S.errors ? (S.errors.forEach((W) => {
9662
9647
  S.errors && console.log("Server Error:", W.message);
9663
9648
  }), null) : T ?? null;
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) => {
9649
+ })() || (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"));
9650
+ 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) => {
9666
9651
  const Y = {};
9667
9652
  let N = 0;
9668
9653
  if (Object.keys(n).length > 0)
@@ -9690,16 +9675,16 @@ const Jn = async (l) => {
9690
9675
  return [Y, N];
9691
9676
  }, [E] = await u(!0), D = Object.fromEntries(
9692
9677
  Object.keys(E).map((y) => [y, E[y].map((Y) => Y.id)])
9693
- ), [Q] = await u(!1), p = Object.fromEntries(
9694
- Object.keys(Q).map((y) => [
9678
+ ), [m] = await u(!1), p = Object.fromEntries(
9679
+ Object.keys(m).map((y) => [
9695
9680
  y,
9696
- Q[y].map((Y) => Y.id)
9681
+ m[y].map((Y) => Y.id)
9697
9682
  ])
9698
9683
  );
9699
- let m = await s(C, a.id);
9700
- if (m) {
9701
- const y = await (await fetch(m)).blob();
9702
- m = (await U.uploadAsset(
9684
+ let Q = await s(C, a.id);
9685
+ if (Q) {
9686
+ const y = await (await fetch(Q)).blob();
9687
+ Q = (await U.uploadAsset(
9703
9688
  { name: `${a.id}-preview-image.png`, blob: y },
9704
9689
  At.Image,
9705
9690
  !0,
@@ -9717,7 +9702,7 @@ const Jn = async (l) => {
9717
9702
  workflowId: e.id,
9718
9703
  transactionId: a.id,
9719
9704
  useThreeDimPreview: !!C,
9720
- previewImage: m
9705
+ previewImage: Q
9721
9706
  };
9722
9707
  if (h) {
9723
9708
  const Y = [];
@@ -9736,11 +9721,11 @@ const Jn = async (l) => {
9736
9721
  cartSelectionsWithPrices: E,
9737
9722
  cartMetadata: w
9738
9723
  };
9739
- }, Ln = async (l, e, t, A, a, n, i, s, o, r, c) => {
9724
+ }, Ln = async (g, e, t, A, a, n, i, s, o, r, c) => {
9740
9725
  var u, E;
9741
9726
  o("workflow.steps.finish.finalize.buildingLayouts");
9742
- const { designDetails: B, cartSelectionsWithPrices: g, cartMetadata: d } = await YA(
9743
- l,
9727
+ const { designDetails: B, cartSelectionsWithPrices: l, cartMetadata: d } = await YA(
9728
+ g,
9744
9729
  e,
9745
9730
  t,
9746
9731
  A,
@@ -9760,23 +9745,23 @@ const Jn = async (l) => {
9760
9745
  h,
9761
9746
  a,
9762
9747
  e,
9763
- g,
9748
+ l,
9764
9749
  C == null ? void 0 : C.sku,
9765
9750
  d,
9766
9751
  w,
9767
9752
  (E = C == null ? void 0 : C.processExecution) == null ? void 0 : E.id
9768
9753
  );
9769
- }, zn = async (l, e, t) => {
9754
+ }, zn = async (g, e, t) => {
9770
9755
  e("workflow.steps.finish.finalize.buildingLayouts"), await Promise.all(
9771
- l.map(async (s) => {
9756
+ g.map(async (s) => {
9772
9757
  await s.workflowManager.outstandingRequestsPromise();
9773
9758
  })
9774
9759
  );
9775
9760
  const a = await (async () => {
9776
9761
  var r;
9777
9762
  const o = await x.getShadowGraphqlClient().query({
9778
- query: lA,
9779
- variables: { ids: l.map((c) => c.transaction.id) },
9763
+ query: gA,
9764
+ variables: { ids: g.map((c) => c.transaction.id) },
9780
9765
  fetchPolicy: "no-cache",
9781
9766
  errorPolicy: "all"
9782
9767
  });
@@ -9784,7 +9769,7 @@ const Jn = async (l) => {
9784
9769
  o.errors && console.log("Server Error:", c.message);
9785
9770
  }), null) : (r = o.data) != null && r.transactions ? o.data.transactions.map((c) => c.workflowState ?? null) : null;
9786
9771
  })(), n = await Promise.all(
9787
- l.map(async (s, o) => await YA(
9772
+ g.map(async (s, o) => await YA(
9788
9773
  s.workflowManager,
9789
9774
  s.workflow,
9790
9775
  s.layouts,
@@ -9802,8 +9787,8 @@ const Jn = async (l) => {
9802
9787
  if (!i)
9803
9788
  throw new Error("Failed to create designs");
9804
9789
  return e("workflow.steps.finish.finalize.updatingTransaction"), i.map((s, o) => {
9805
- var g;
9806
- const r = l[o], c = n[o], B = s.transaction;
9790
+ var l;
9791
+ const r = g[o], c = n[o], B = s.transaction;
9807
9792
  return SA(
9808
9793
  B,
9809
9794
  r.product,
@@ -9813,7 +9798,7 @@ const Jn = async (l) => {
9813
9798
  c.cartMetadata,
9814
9799
  //lineItemImageLink,
9815
9800
  void 0,
9816
- (g = s.processExecution) == null ? void 0 : g.id
9801
+ (l = s.processExecution) == null ? void 0 : l.id
9817
9802
  );
9818
9803
  });
9819
9804
  };
@@ -9899,8 +9884,8 @@ const $e = new Kn(), jn = f`
9899
9884
  }
9900
9885
  }
9901
9886
  `;
9902
- var Vn = /* @__PURE__ */ ((l) => (l.QuantityChanged = "QuantityChanged", l.PriceBreakChanged = "PriceBreakChanged", l))(Vn || {});
9903
- class Se {
9887
+ var Vn = /* @__PURE__ */ ((g) => (g.QuantityChanged = "QuantityChanged", g.PriceBreakChanged = "PriceBreakChanged", g))(Vn || {});
9888
+ class Me {
9904
9889
  constructor(e, t) {
9905
9890
  var a;
9906
9891
  if (this.cachedStepHandles = /* @__PURE__ */ new Map(), this.currentPriceBreak = 1, this.renderableScenes = [], this.renderableSceneCallbacks = [], this.eventCallbacks = /* @__PURE__ */ new Map(), this.debouncedSavedDesignUpdate = _t(async () => {
@@ -9989,9 +9974,9 @@ class Se {
9989
9974
  }
9990
9975
  let n = 2048;
9991
9976
  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((Q) => {
9977
+ const i = He(n, n), s = this.commandContext.getAllLayouts(), o = A.defaultPreviewPanelIndex || 0, r = A.panels[o], c = s.find((m) => {
9993
9978
  var p;
9994
- return ((p = Q.layoutState) == null ? void 0 : p.layout.panelId) === (r == null ? void 0 : r.name);
9979
+ return ((p = m.layoutState) == null ? void 0 : p.layout.panelId) === (r == null ? void 0 : r.name);
9995
9980
  }) || s[0], B = c.layoutState.layout.previewRegion ? {
9996
9981
  x: c.layoutState.layout.previewRegion.left,
9997
9982
  y: c.layoutState.layout.previewRegion.top,
@@ -10002,10 +9987,10 @@ class Se {
10002
9987
  y: 0,
10003
9988
  width: c.layoutState.layout.width,
10004
9989
  height: c.layoutState.layout.height
10005
- }, g = this.commandContext.getLayoutById(c.layoutState.layout.id), d = i.getContext("2d");
9990
+ }, l = this.commandContext.getLayoutById(c.layoutState.layout.id), d = i.getContext("2d");
10006
9991
  if (!d)
10007
- throw new Ve("Failed to obtain 2D context for preview image creation");
10008
- const C = zt(g.layoutState.layout, g.layoutState.elements, {
9992
+ throw new je("Failed to obtain 2D context for preview image creation");
9993
+ const C = zt(l.layoutState.layout, l.layoutState.elements, {
10009
9994
  renderingConfiguration: {
10010
9995
  purpose: Kt.Print,
10011
9996
  region: { left: B.x, top: B.y, width: B.width, height: B.height }
@@ -10014,10 +9999,10 @@ class Se {
10014
9999
  await (await $t.from(d, w, {
10015
10000
  anonymousCrossOrigin: !0,
10016
10001
  ignoreDimensions: !1,
10017
- createCanvas: ke,
10002
+ createCanvas: He,
10018
10003
  createImage: Vt,
10019
10004
  DOMParser: Wt(),
10020
- fetch: lt
10005
+ fetch: gt
10021
10006
  })).render();
10022
10007
  const u = await this.getCanvasObjectURLAsync(i);
10023
10008
  return i.toDataURL(u);
@@ -10029,7 +10014,7 @@ class Se {
10029
10014
  const A = this.cachedStepHandles.get(t.stepName);
10030
10015
  if (A)
10031
10016
  return A;
10032
- const a = Me.get(this.getWorkflowManager(), t);
10017
+ const a = ye.get(this.getWorkflowManager(), t);
10033
10018
  return this.cachedStepHandles.set(t.stepName, a), a;
10034
10019
  }
10035
10020
  getSteps() {
@@ -10113,17 +10098,17 @@ class Se {
10113
10098
  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
10099
  i.forEach((r) => {
10115
10100
  const c = /* @__PURE__ */ new Set(), B = r.getRaw().globalPropertyAspectConfigurations;
10116
- B !== void 0 && (B.forEach((g) => c.add(JSON.stringify(g))), s.forEach((g) => {
10117
- const d = g.getRaw().globalPropertyAspectConfigurations;
10101
+ B !== void 0 && (B.forEach((l) => c.add(JSON.stringify(l))), s.forEach((l) => {
10102
+ const d = l.getRaw().globalPropertyAspectConfigurations;
10118
10103
  d !== void 0 && d.forEach((C) => {
10119
10104
  const w = o(C), h = c.has(JSON.stringify(C));
10120
10105
  if (h && (w == null ? void 0 : w.getType()) === "Option") {
10121
- const u = g.getCurrentVariant();
10106
+ const u = l.getCurrentVariant();
10122
10107
  if (!u)
10123
10108
  return;
10124
10109
  r.selectVariant(u), c.delete(JSON.stringify(C));
10125
10110
  } else if (h && (w == null ? void 0 : w.getType()) === "Text") {
10126
- const u = g.getText();
10111
+ const u = l.getText();
10127
10112
  r.setText(u), c.delete(JSON.stringify(C));
10128
10113
  }
10129
10114
  });
@@ -10133,10 +10118,10 @@ class Se {
10133
10118
  getStepByName(e) {
10134
10119
  const t = this.getWorkflowManager().getWorkflow().steps.find((A) => A.stepTitle === e);
10135
10120
  if (!(!t || !this.stepHasHandle(t)))
10136
- return Me.get(this.getWorkflowManager(), t);
10121
+ return ye.get(this.getWorkflowManager(), t);
10137
10122
  }
10138
10123
  getStepsByType(e) {
10139
- return this.getWorkflowManager().getWorkflow().steps.filter((t) => t.type === e).map((t) => Me.get(this.getWorkflowManager(), t));
10124
+ return this.getWorkflowManager().getWorkflow().steps.filter((t) => t.type === e).map((t) => ye.get(this.getWorkflowManager(), t));
10140
10125
  }
10141
10126
  getStepsByScene(e) {
10142
10127
  if (!this.getWorkflowManager().getWorkflow().stepGroups.find((A) => A.name === e.name))
@@ -10145,7 +10130,7 @@ class Se {
10145
10130
  );
10146
10131
  return e.stepIds.map(
10147
10132
  (A) => this.getWorkflowManager().getWorkflow().steps.find((a) => a.stepName === A)
10148
- ).filter((A) => this.stepHasHandle(A)).map((A) => Me.get(this.getWorkflowManager(), A));
10133
+ ).filter((A) => this.stepHasHandle(A)).map((A) => ye.get(this.getWorkflowManager(), A));
10149
10134
  }
10150
10135
  async attachCustomerDetails(e) {
10151
10136
  return this.assignCustomerDetails({ emailAddress: e.email });
@@ -10203,7 +10188,7 @@ class Se {
10203
10188
  }
10204
10189
  async copy() {
10205
10190
  var s;
10206
- const e = le(this.getCommandContext().getState());
10191
+ const e = ge(this.getCommandContext().getState());
10207
10192
  if (!e)
10208
10193
  throw new b("Internal state is undefined! Cannot copy experience!");
10209
10194
  const t = JSON.stringify(e.transaction), A = this.getWorkflowManager().getWorkflow(), a = new is({}), n = (s = this.getWorkflowManager().getTransaction().integrationProduct) == null ? void 0 : s.id;
@@ -10303,11 +10288,11 @@ const Wn = [
10303
10288
  "textPath",
10304
10289
  "tref",
10305
10290
  "tspan"
10306
- ], Xn = async (l, e, t) => {
10291
+ ], Xn = async (g, e, t) => {
10307
10292
  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
10293
  s.searchParams.append("video", Pt(JSON.stringify([{ href: n }]))), s.pathname = s.pathname + (s.pathname.slice(-1) === "/" ? "" : "/");
10309
10294
  const o = s.toString(), c = `data:image/svg+xml;base64,${Pt(await tA(o, { type: "svg" }))}`, B = (d) => {
10310
- const C = l.find((h) => h.panelId === d.panelId);
10295
+ const C = g.find((h) => h.panelId === d.panelId);
10311
10296
  if (!C)
10312
10297
  throw new z(d);
10313
10298
  const w = J();
@@ -10324,13 +10309,13 @@ const Wn = [
10324
10309
  },
10325
10310
  C
10326
10311
  );
10327
- }, g = t.data.regions;
10312
+ }, l = t.data.regions;
10328
10313
  try {
10329
- return g.map(B);
10314
+ return l.map(B);
10330
10315
  } catch (d) {
10331
10316
  return console.error(d), [];
10332
10317
  }
10333
- }, qn = async (l, e, t, A) => {
10318
+ }, qn = async (g, e, t, A) => {
10334
10319
  const a = t.data, n = a.assetUrl, i = await nt(n);
10335
10320
  try {
10336
10321
  const s = _A(a, A.option);
@@ -10343,7 +10328,7 @@ const Wn = [
10343
10328
  height: 1
10344
10329
  },
10345
10330
  (w = s == null ? void 0 : s.asset) == null ? void 0 : w.fileLink
10346
- ), B = await gt(c), g = J(), d = l.find((h) => h.panelId === r.panelId);
10331
+ ), B = await lt(c), l = J(), d = g.find((h) => h.panelId === r.panelId);
10347
10332
  if (!d)
10348
10333
  throw new z(r);
10349
10334
  const C = Bt(i, B, {
@@ -10354,7 +10339,7 @@ const Wn = [
10354
10339
  return [
10355
10340
  new L(
10356
10341
  {
10357
- id: g,
10342
+ id: l,
10358
10343
  path: B.path,
10359
10344
  dataWidth: B.width,
10360
10345
  dataHeight: B.height,
@@ -10376,25 +10361,25 @@ const Wn = [
10376
10361
  },
10377
10362
  d
10378
10363
  ),
10379
- new Lt(g, i, C)
10364
+ new Lt(l, i, C)
10380
10365
  ];
10381
10366
  };
10382
10367
  return (await Promise.all(A.data.regions.map((r) => o(r)))).flat();
10383
10368
  } catch (s) {
10384
10369
  return console.error(s), [];
10385
10370
  }
10386
- }, Zn = async (l, e, t, A) => {
10387
- var p, m;
10371
+ }, Zn = async (g, e, t, A) => {
10372
+ var p, Q;
10388
10373
  const a = t.data, n = A.option;
10389
10374
  if (!n)
10390
10375
  return console.error(`No option for step ${A.stepName}.`), [];
10391
- const i = ((p = n.variants) == null ? void 0 : p.find((I) => I.id === a.illustrationVariantId)) || Ke(n);
10376
+ const i = ((p = n.variants) == null ? void 0 : p.find((I) => I.id === a.illustrationVariantId)) || ze(n);
10392
10377
  if (!i)
10393
10378
  return console.error(`No variant with ID: ${a.illustrationVariantId}`), [];
10394
10379
  if (!i.asset)
10395
10380
  return console.error(`No asset for variant with ID: ${a.illustrationVariantId}`), [];
10396
10381
  e[A.stepName] = { selectedVariants: [i] };
10397
- const s = (m = i.asset) == null ? void 0 : m.fileLink;
10382
+ const s = (Q = i.asset) == null ? void 0 : Q.fileLink;
10398
10383
  if (!s)
10399
10384
  return console.error(`No asset link for variant with ID: ${a.illustrationVariantId}`), [];
10400
10385
  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 +10410,7 @@ const Wn = [
10425
10410
  }
10426
10411
  }
10427
10412
  const D = (I) => {
10428
- const F = l.find((Y) => Y.panelId === I.panelId);
10413
+ const F = g.find((Y) => Y.panelId === I.panelId);
10429
10414
  if (!F)
10430
10415
  throw new z(I);
10431
10416
  const y = J();
@@ -10446,15 +10431,15 @@ const Wn = [
10446
10431
  },
10447
10432
  F
10448
10433
  );
10449
- }, Q = A.data.regions;
10434
+ }, m = A.data.regions;
10450
10435
  try {
10451
- return Q.map(D);
10436
+ return m.map(D);
10452
10437
  } catch (I) {
10453
10438
  return console.error(I), [];
10454
10439
  }
10455
- }, $n = async (l, e, t) => {
10440
+ }, $n = async (g, e, t) => {
10456
10441
  const A = await FA(t.data.module), a = e.data, n = (s, o) => {
10457
- const r = l.find((B) => B.panelId === o.panelId);
10442
+ const r = g.find((B) => B.panelId === o.panelId);
10458
10443
  if (!r)
10459
10444
  throw new z(o);
10460
10445
  const c = J();
@@ -10482,12 +10467,12 @@ const Wn = [
10482
10467
  } catch (s) {
10483
10468
  return console.error(s), [];
10484
10469
  }
10485
- }, _n = async (l, e, t, A) => {
10470
+ }, _n = async (g, e, t, A) => {
10486
10471
  var c, B;
10487
10472
  const a = t.data, n = A.option;
10488
10473
  if (!n)
10489
10474
  return console.error(`No option for step ${A.stepName}.`), [];
10490
- const i = ((c = n.variants) == null ? void 0 : c.find((g) => g.id === a.pictureVariantId)) || Ke(n);
10475
+ const i = ((c = n.variants) == null ? void 0 : c.find((l) => l.id === a.pictureVariantId)) || ze(n);
10491
10476
  if (!i)
10492
10477
  return console.error(`No variant with ID: ${a.pictureVariantId}`), [];
10493
10478
  if (!i.asset)
@@ -10496,24 +10481,24 @@ const Wn = [
10496
10481
  const s = (B = i.asset) == null ? void 0 : B.fileLink;
10497
10482
  if (!s)
10498
10483
  return console.error(`No asset link for variant with ID: ${a.pictureVariantId}`), [];
10499
- const o = (g) => {
10500
- const d = l.find((w) => w.panelId === g.panelId);
10484
+ const o = (l) => {
10485
+ const d = g.find((w) => w.panelId === l.panelId);
10501
10486
  if (!d)
10502
- throw new z(g);
10487
+ throw new z(l);
10503
10488
  const C = J();
10504
10489
  return new L(
10505
10490
  {
10506
10491
  id: C,
10507
10492
  src: s,
10508
10493
  type: G.Image,
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,
10494
+ y: l.top,
10495
+ x: l.left,
10496
+ rotation: l.rotation,
10497
+ width: l.width,
10498
+ height: l.height,
10499
+ layer: l.layer,
10500
+ layerIndex: l.layerIndex,
10501
+ immutable: l.immutable,
10517
10502
  preserveAspectRatio: "none"
10518
10503
  },
10519
10504
  d
@@ -10521,23 +10506,23 @@ const Wn = [
10521
10506
  }, r = A.data.regions;
10522
10507
  try {
10523
10508
  return r.map(o);
10524
- } catch (g) {
10525
- return console.error(g), [];
10509
+ } catch (l) {
10510
+ return console.error(l), [];
10526
10511
  }
10527
- }, ei = async (l, e, t, A) => {
10512
+ }, ei = async (g, e, t, A) => {
10528
10513
  var r;
10529
10514
  const a = t.data, n = A.option;
10530
10515
  if (!n)
10531
10516
  return console.error(`No option for step ${A.stepName}.`), [];
10532
- const i = ((r = n.variants) == null ? void 0 : r.find((c) => c.id === a.colorVariantId)) || Ke(n);
10517
+ const i = ((r = n.variants) == null ? void 0 : r.find((c) => c.id === a.colorVariantId)) || ze(n);
10533
10518
  if (!i)
10534
10519
  return console.error(`No variant with ID: ${a.colorVariantId}`), [];
10535
10520
  e[A.stepName] = { selectedVariants: [i] };
10536
10521
  const s = (c) => {
10537
- const B = l.find((h) => h.panelId === c.panelId);
10522
+ const B = g.find((h) => h.panelId === c.panelId);
10538
10523
  if (!B)
10539
10524
  throw new z(c);
10540
- const g = `
10525
+ const l = `
10541
10526
  <svg
10542
10527
  xmlns="http://www.w3.org/2000/svg"
10543
10528
  xmlnsXlink="http://www.w3.org/1999/xlink"
@@ -10562,7 +10547,7 @@ const Wn = [
10562
10547
  {
10563
10548
  colors: C,
10564
10549
  id: w,
10565
- svg: g,
10550
+ svg: l,
10566
10551
  type: G.Illustration,
10567
10552
  y: c.top,
10568
10553
  x: c.left,
@@ -10581,7 +10566,7 @@ const Wn = [
10581
10566
  } catch (c) {
10582
10567
  return console.error(c), [];
10583
10568
  }
10584
- }, ti = async (l, e, t) => {
10569
+ }, ti = async (g, e, t) => {
10585
10570
  const A = [], n = (() => {
10586
10571
  var r, c;
10587
10572
  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 +10574,7 @@ const Wn = [
10589
10574
  if (s === "image")
10590
10575
  try {
10591
10576
  o.forEach((r) => {
10592
- const c = l.find((g) => g.panelId === r.panelId);
10577
+ const c = g.find((l) => l.panelId === r.panelId);
10593
10578
  if (!c)
10594
10579
  throw new z(r);
10595
10580
  const B = {
@@ -10616,14 +10601,14 @@ const Wn = [
10616
10601
  }
10617
10602
  else {
10618
10603
  const r = await _(n, !0), c = (B) => {
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;
10604
+ 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;
10620
10605
  if (!u)
10621
10606
  throw new he("Failed to read SVG.");
10622
10607
  return qt(u), Zt().serializeToString(u);
10623
10608
  };
10624
10609
  o.forEach((B) => {
10625
- const g = l.find((C) => C.panelId === B.panelId);
10626
- if (!g)
10610
+ const l = g.find((C) => C.panelId === B.panelId);
10611
+ if (!l)
10627
10612
  throw new z(B);
10628
10613
  const d = {
10629
10614
  id: J(),
@@ -10644,17 +10629,17 @@ const Wn = [
10644
10629
  productOverlay: e.type === M.ProductOverlay ? !0 : void 0,
10645
10630
  excludeFromExport: e.data.excludeFromPrint
10646
10631
  };
10647
- A.push(new L(d, g));
10632
+ A.push(new L(d, l));
10648
10633
  });
10649
10634
  }
10650
10635
  return A;
10651
- }, Ai = async (l, e, t, A) => {
10636
+ }, Ai = async (g, e, t, A) => {
10652
10637
  const a = [], n = t.data, i = 30, s = (h) => h.vertical ? "center" : h.textAlign || "center", o = () => {
10653
10638
  var D;
10654
10639
  const h = A.option;
10655
10640
  if (!h)
10656
10641
  return;
10657
- const u = ((D = h.variants) == null ? void 0 : D.find((Q) => Q.id === n.fontVariantId)) || Ke(h);
10642
+ const u = ((D = h.variants) == null ? void 0 : D.find((m) => m.id === n.fontVariantId)) || ze(h);
10658
10643
  if (!u || !u.asset)
10659
10644
  return;
10660
10645
  e[A.stepName] = { selectedVariants: [u] };
@@ -10670,7 +10655,7 @@ const Wn = [
10670
10655
  assetUrl: h,
10671
10656
  name: u.names.fullName.en
10672
10657
  };
10673
- })(), B = (A.data.replaceableText ? A.data.replaceableText.replace("{{}}", n.text) : n.text) || "", g = it(B, {
10658
+ })(), B = (A.data.replaceableText ? A.data.replaceableText.replace("{{}}", n.text) : n.text) || "", l = it(B, {
10674
10659
  vertical: A.data.vertical,
10675
10660
  uppercase: A.data.uppercase
10676
10661
  }), d = async (h) => {
@@ -10681,7 +10666,7 @@ const Wn = [
10681
10666
  return E == null ? void 0 : E.color;
10682
10667
  }, C = n.color || await d(A.data), w = A.data.regions;
10683
10668
  for (const h of w) {
10684
- const u = l.find((D) => D.panelId === h.panelId);
10669
+ const u = g.find((D) => D.panelId === h.panelId);
10685
10670
  if (!u)
10686
10671
  continue;
10687
10672
  const E = {
@@ -10697,7 +10682,7 @@ const Wn = [
10697
10682
  layerIndex: h.layerIndex,
10698
10683
  paths: A.data.paths,
10699
10684
  rotation: h.rotation,
10700
- text: g,
10685
+ text: l,
10701
10686
  type: G.Textbox,
10702
10687
  vertical: A.data.vertical,
10703
10688
  verticalAlign: A.data.verticalAlign || "middle",
@@ -10706,12 +10691,12 @@ const Wn = [
10706
10691
  y: h.top
10707
10692
  };
10708
10693
  if (c) {
10709
- const [D, Q] = Ne(
10694
+ const [D, m] = xe(
10710
10695
  A.data.size || i,
10711
10696
  c,
10712
10697
  h,
10713
10698
  [
10714
- it(g, {
10699
+ it(l, {
10715
10700
  vertical: A.data.vertical,
10716
10701
  uppercase: A.data.uppercase
10717
10702
  })
@@ -10727,7 +10712,7 @@ const Wn = [
10727
10712
  {
10728
10713
  ...E,
10729
10714
  fontSize: D,
10730
- text: E.curved ? E.text : (Q || []).join(`
10715
+ text: E.curved ? E.text : (m || []).join(`
10731
10716
  `)
10732
10717
  },
10733
10718
  u
@@ -10737,7 +10722,7 @@ const Wn = [
10737
10722
  a.push(new L(E, u));
10738
10723
  }
10739
10724
  return a;
10740
- }, ai = (l, e) => l.conditions ? l.conditions.every((t) => {
10725
+ }, ai = (g, e) => g.conditions ? g.conditions.every((t) => {
10741
10726
  const A = e[t.targetStepName];
10742
10727
  if (A && A.selectedVariants) {
10743
10728
  const a = A.selectedVariants;
@@ -10746,9 +10731,9 @@ const Wn = [
10746
10731
  );
10747
10732
  }
10748
10733
  return !1;
10749
- }) : !0, ni = async (l, e, t, A) => {
10734
+ }) : !0, ni = async (g, e, t, A) => {
10750
10735
  const a = [], n = {};
10751
- for (const i of l) {
10736
+ for (const i of g) {
10752
10737
  const s = e.steps.find((o) => o.stepName === i.name);
10753
10738
  if (s)
10754
10739
  switch (s.type) {
@@ -10799,7 +10784,7 @@ const Wn = [
10799
10784
  );
10800
10785
  return a;
10801
10786
  };
10802
- class Ye {
10787
+ class Se {
10803
10788
  constructor(e) {
10804
10789
  this.handleCompleteRender = null;
10805
10790
  const t = /* @__PURE__ */ new Map();
@@ -10820,12 +10805,12 @@ class Ye {
10820
10805
  return this.layouts;
10821
10806
  }
10822
10807
  }
10823
- const ii = () => new Promise((l, e) => {
10808
+ const ii = () => new Promise((g, e) => {
10824
10809
  try {
10825
- const A = ke().getContext("webgl2");
10826
- l(!!A);
10810
+ const A = He().getContext("webgl2");
10811
+ g(!!A);
10827
10812
  } catch {
10828
- l(!1);
10813
+ g(!1);
10829
10814
  }
10830
10815
  }), si = ii();
10831
10816
  class oi {
@@ -10876,7 +10861,7 @@ class oi {
10876
10861
  * Actions to perform when a static render event is fired for this canvas.
10877
10862
  */
10878
10863
  async render(e) {
10879
- const t = le(e);
10864
+ const t = ge(e);
10880
10865
  this.lastRequestedRenderArguments = t;
10881
10866
  const A = this.getStaticContext();
10882
10867
  if (!A) {
@@ -10949,24 +10934,24 @@ class ri extends BA {
10949
10934
  o = n.width, r = n.height;
10950
10935
  const c = zt(e.layoutState.layout, t, {
10951
10936
  renderingConfiguration: { purpose: Kt.ThreeD }
10952
- }), B = jt(c), g = await $t.from(this.ctx, B, {
10937
+ }), B = jt(c), l = await $t.from(this.ctx, B, {
10953
10938
  anonymousCrossOrigin: !0,
10954
10939
  ignoreDimensions: !this.nonPOTSupport,
10955
10940
  ignoreAnimation: !0,
10956
10941
  ignoreClear: !0,
10957
10942
  ignoreMouse: !0,
10958
10943
  enableRedraw: !1,
10959
- createCanvas: ke,
10944
+ createCanvas: He,
10960
10945
  createImage: Vt,
10961
10946
  DOMParser: Wt(),
10962
- fetch: lt
10947
+ fetch: gt
10963
10948
  });
10964
- g.resize(o, r), await g.render(), this.onRender();
10949
+ l.resize(o, r), await l.render(), this.onRender();
10965
10950
  }
10966
10951
  }
10967
- const fs = (l, e) => {
10952
+ const fs = (g, e) => {
10968
10953
  const t = [];
10969
- return l.forEach((A) => {
10954
+ return g.forEach((A) => {
10970
10955
  const a = e.steps.find((n) => n.stepName === A.stepName);
10971
10956
  (a == null ? void 0 : a.type) === M.Text && A.stepAspectType === "Text" && t.push({
10972
10957
  name: a.stepName,
@@ -10975,13 +10960,13 @@ const fs = (l, e) => {
10975
10960
  }
10976
10961
  });
10977
10962
  }), t;
10978
- }, Fs = async (l, e, t, A) => {
10963
+ }, Fs = async (g, e, t, A) => {
10979
10964
  let a = {
10980
10965
  serializableWorkflow: { steps: [] },
10981
10966
  layouts: {}
10982
10967
  };
10983
10968
  a = new k(t.map((o) => new Aa(o))).apply(a);
10984
- const i = await ni(l, e, t, A);
10969
+ const i = await ni(g, e, t, A);
10985
10970
  return new k(i).apply(a);
10986
10971
  }, ci = f`
10987
10972
  ${Be}
@@ -11037,8 +11022,8 @@ const fs = (l, e) => {
11037
11022
  ...ProductFields
11038
11023
  }
11039
11024
  }
11040
- `, We = (l) => f`
11041
- ${l ? PA : ""}
11025
+ `, We = (g) => f`
11026
+ ${g ? PA : ""}
11042
11027
  fragment ProductCollectionFields on ProductCollection {
11043
11028
  id
11044
11029
  name
@@ -11057,7 +11042,7 @@ const fs = (l, e) => {
11057
11042
  }
11058
11043
  }
11059
11044
  }
11060
- ${l ? "productCollectionProducts { ...ProductCollectionProductFields }" : ""}
11045
+ ${g ? "productCollectionProducts { ...ProductCollectionProductFields }" : ""}
11061
11046
  transformCollection {
11062
11047
  id
11063
11048
  name
@@ -11082,8 +11067,8 @@ const fs = (l, e) => {
11082
11067
  }
11083
11068
  }
11084
11069
  }
11085
- `, li = (l) => f`
11086
- ${We(l)}
11070
+ `, gi = (g) => f`
11071
+ ${We(g)}
11087
11072
  query GetBundle($id: String!) {
11088
11073
  bundles(ids: [$id]) {
11089
11074
  id
@@ -11104,7 +11089,7 @@ const fs = (l, e) => {
11104
11089
  }
11105
11090
  }
11106
11091
  }
11107
- `, gi = f`
11092
+ `, li = f`
11108
11093
  query GetBundleStakeholders($id: String!) {
11109
11094
  bundles(ids: [$id]) {
11110
11095
  id
@@ -11155,8 +11140,8 @@ const fs = (l, e) => {
11155
11140
  }
11156
11141
  }
11157
11142
  }
11158
- `, Ci = (l) => f`
11159
- ${We(l)}
11143
+ `, Ci = (g) => f`
11144
+ ${We(g)}
11160
11145
  mutation CreateBundle(
11161
11146
  $collectionId: String
11162
11147
  $initialMetadata: [MetadataInput!]
@@ -11184,8 +11169,8 @@ const fs = (l, e) => {
11184
11169
  }
11185
11170
  }
11186
11171
  }
11187
- `, wi = (l) => f`
11188
- ${We(l)}
11172
+ `, wi = (g) => f`
11173
+ ${We(g)}
11189
11174
  mutation DuplicateBundle(
11190
11175
  $id: String!
11191
11176
  $template: Boolean
@@ -11233,7 +11218,7 @@ const fs = (l, e) => {
11233
11218
  id
11234
11219
  }
11235
11220
  }
11236
- `, mi = f`
11221
+ `, Qi = f`
11237
11222
  mutation BundleRemoveTransaction(
11238
11223
  $id: String!
11239
11224
  $transactionId: String!
@@ -11248,7 +11233,7 @@ const fs = (l, e) => {
11248
11233
  id
11249
11234
  }
11250
11235
  }
11251
- `, Qi = f`
11236
+ `, mi = f`
11252
11237
  mutation BundleRemoveTransactions(
11253
11238
  $id: String!
11254
11239
  $transactionIds: [String!]!
@@ -11315,8 +11300,8 @@ const fs = (l, e) => {
11315
11300
  id
11316
11301
  }
11317
11302
  }
11318
- `, Fi = (l) => f`
11319
- ${We(l)}
11303
+ `, Fi = (g) => f`
11304
+ ${We(g)}
11320
11305
  mutation BundleAssignProductCollection($id: String!, $productCollectionId: String!) {
11321
11306
  bundleAssignProductCollection(id: $id, collectionId: $productCollectionId) {
11322
11307
  id
@@ -11804,7 +11789,7 @@ class Ni {
11804
11789
  }
11805
11790
  async setGlobalPropertyState(e) {
11806
11791
  this.globalPropertyState || await this.initPromise;
11807
- const t = le(this.globalPropertyState);
11792
+ const t = ge(this.globalPropertyState);
11808
11793
  this.globalPropertyState = { ...e, id: t.id }, await this.updateGlobalPropertyState(), await this.onGlobalPropertyStateChange(t, this.globalPropertyState);
11809
11794
  }
11810
11795
  getAspect(e) {
@@ -11828,11 +11813,12 @@ class Ni {
11828
11813
  const a = this.configuration.aspects.find((s) => s.name === e);
11829
11814
  if (!a)
11830
11815
  throw new Error(`Failed to find configuration aspect with name: ${e}`);
11831
- const n = le(this.globalPropertyState), i = this.globalPropertyState.aspects.find((s) => s.name === e);
11832
- i ? (i.value = t, A !== void 0 && (i.type = a.type, i.storage = A !== null ? A : void 0)) : this.globalPropertyState.aspects.push({
11816
+ const n = ge(this.globalPropertyState), i = this.globalPropertyState.aspects.find((s) => s.name === e);
11817
+ i ? (i.value = t, i.type = a.type, A !== void 0 && (i.storage = A !== null ? A : void 0)) : this.globalPropertyState.aspects.push({
11833
11818
  name: e,
11834
11819
  value: t,
11835
- ...A === void 0 ? {} : { storage: A !== null ? A : void 0, type: a.type }
11820
+ type: a.type,
11821
+ storage: A !== null ? A : void 0
11836
11822
  }), await this.updateGlobalPropertyState(), await this.onGlobalPropertyStateChange(n, this.globalPropertyState);
11837
11823
  }
11838
11824
  async setAspectStorage(e, t) {
@@ -11843,7 +11829,7 @@ class Ni {
11843
11829
  const A = this.configuration.aspects.find((i) => i.name === e);
11844
11830
  if (!A)
11845
11831
  throw new Error(`Failed to find configuration aspect with name: ${e}`);
11846
- const a = le(this.globalPropertyState), n = this.globalPropertyState.aspects.find((i) => i.name === e);
11832
+ const a = ge(this.globalPropertyState), n = this.globalPropertyState.aspects.find((i) => i.name === e);
11847
11833
  n ? (n.storage = t !== null ? t : void 0, n.type = A.type) : this.globalPropertyState.aspects.push({
11848
11834
  name: e,
11849
11835
  value: "",
@@ -12122,7 +12108,7 @@ class _e {
12122
12108
  if (t) {
12123
12109
  const A = e.find((a) => a.workflowName === t);
12124
12110
  if (A)
12125
- return new Le(A);
12111
+ return new Oe(A);
12126
12112
  }
12127
12113
  throw new H(
12128
12114
  "Called getDefaultWorkflow() before fetching collection products. Use collection.fetchProducts() first to ensure the data is available."
@@ -12136,7 +12122,7 @@ class _e {
12136
12122
  throw new H(
12137
12123
  "No workflows on configured product. Ensure at least 1 workflow is assigned to this product."
12138
12124
  );
12139
- return this.product.workflows.sort((t, A) => (t.index ?? 0) - (A.index ?? 0)).map((t) => new Le(t));
12125
+ return this.product.workflows.sort((t, A) => (t.index ?? 0) - (A.index ?? 0)).map((t) => new Oe(t));
12140
12126
  }
12141
12127
  /**
12142
12128
  * A list of all integrations this product is connected to.
@@ -12183,7 +12169,7 @@ class _e {
12183
12169
  ), (s = A == null ? void 0 : A.additionalIntegrationProduct) != null && s.product ? t + (A.additionalIntegrationProduct.product.basePrice || 0) : t;
12184
12170
  }
12185
12171
  }
12186
- class Le {
12172
+ class Oe {
12187
12173
  constructor(e) {
12188
12174
  this.workflow = e;
12189
12175
  }
@@ -12415,7 +12401,7 @@ class et {
12415
12401
  (n) => n.getWorkflowManager().getTransaction().id === t.id
12416
12402
  );
12417
12403
  a.setBundle(void 0), this.previewService && a.getWorkflowManager().ejectFromPreviewService(), this.bundleStateManager.removeStateForTransaction(t.id), await x.getShadowGraphqlClient().mutate({
12418
- mutation: mi,
12404
+ mutation: Qi,
12419
12405
  variables: {
12420
12406
  id: this.id,
12421
12407
  transactionId: t.id,
@@ -12447,7 +12433,7 @@ class et {
12447
12433
  A.forEach((a) => a.setBundle(void 0)), [...this.workflowExperiences, ...A].forEach(
12448
12434
  (a) => a.checkForPriceBreakChanges()
12449
12435
  ), this.previewService && A.forEach((a) => a.getWorkflowManager().ejectFromPreviewService()), e.forEach((a) => this.bundleStateManager.removeStateForTransaction(a.id)), await x.getShadowGraphqlClient().mutate({
12450
- mutation: Qi,
12436
+ mutation: mi,
12451
12437
  variables: {
12452
12438
  id: this.id,
12453
12439
  transactionIds: e.map((a) => a.id),
@@ -12512,7 +12498,7 @@ class et {
12512
12498
  variables: {
12513
12499
  id: this.id,
12514
12500
  details: e,
12515
- type: t || be.Owner
12501
+ type: t || Ge.Owner
12516
12502
  },
12517
12503
  context: {
12518
12504
  bundleOwnerId: this.ownerId
@@ -12556,7 +12542,7 @@ class et {
12556
12542
  }
12557
12543
  async getAllStakeholders() {
12558
12544
  const e = await x.getShadowGraphqlClient().query({
12559
- query: gi,
12545
+ query: li,
12560
12546
  errorPolicy: "all",
12561
12547
  fetchPolicy: "no-cache",
12562
12548
  variables: {
@@ -12748,14 +12734,14 @@ class Gi {
12748
12734
  * @returns
12749
12735
  */
12750
12736
  async execute(e, t, A) {
12751
- var B, g, d;
12752
- const n = (g = (B = (await x.getShadowGraphqlClient().mutate({
12737
+ var B, l, d;
12738
+ const n = (l = (B = (await x.getShadowGraphqlClient().mutate({
12753
12739
  mutation: Ui,
12754
12740
  variables: {
12755
12741
  processFlowId: e,
12756
12742
  inputs: [...t.map((C) => C.getValueForTransmission())]
12757
12743
  }
12758
- })).data) == null ? void 0 : B.processExecutionCreate) == null ? void 0 : g.id;
12744
+ })).data) == null ? void 0 : B.processExecutionCreate) == null ? void 0 : l.id;
12759
12745
  if (!n)
12760
12746
  throw new Error("Failed to create process execution.");
12761
12747
  function i(C) {
@@ -12820,14 +12806,14 @@ class bi {
12820
12806
  * @returns The nodes contained within the execution.
12821
12807
  */
12822
12808
  getNodes() {
12823
- return this.execution.nodes.map((e) => new Pe(e));
12809
+ return this.execution.nodes.map((e) => new Ye(e));
12824
12810
  }
12825
12811
  /**
12826
12812
  * @param type The type of node to return.
12827
12813
  * @returns A list of nodes matching the requested type.
12828
12814
  */
12829
12815
  getNodesByType(e) {
12830
- return this.execution.nodes.filter((t) => t.type === e).map((t) => new Pe(t));
12816
+ return this.execution.nodes.filter((t) => t.type === e).map((t) => new Ye(t));
12831
12817
  }
12832
12818
  /**
12833
12819
  * @returns A list of input nodes that exist in this execution.
@@ -12836,7 +12822,7 @@ class bi {
12836
12822
  return this.execution.nodes.filter(
12837
12823
  (e) => e.type === "StartTerminal"
12838
12824
  /* StartTerminal */
12839
- ).map((e) => new Pe(e));
12825
+ ).map((e) => new Ye(e));
12840
12826
  }
12841
12827
  /**
12842
12828
  * @returns A list of out put nodes that exist in this execution.
@@ -12845,7 +12831,7 @@ class bi {
12845
12831
  return this.execution.nodes.filter(
12846
12832
  (e) => e.type === "EndTerminal"
12847
12833
  /* EndTerminal */
12848
- ).map((e) => new Pe(e));
12834
+ ).map((e) => new Ye(e));
12849
12835
  }
12850
12836
  /**
12851
12837
  * @returns A date object representing the point in time this execution completed.
@@ -12862,7 +12848,7 @@ class bi {
12862
12848
  return new Date(this.execution.failedAt);
12863
12849
  }
12864
12850
  }
12865
- class Pe {
12851
+ class Ye {
12866
12852
  constructor(e) {
12867
12853
  this.node = e;
12868
12854
  }
@@ -12891,7 +12877,7 @@ class Ft {
12891
12877
  return e.startsWith("[") ? JSON.stringify(JSON.parse(e)) : e;
12892
12878
  }
12893
12879
  }
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 || {});
12880
+ 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
12881
  class ys extends Ft {
12896
12882
  constructor(e) {
12897
12883
  super(`"${e}"`);
@@ -12941,7 +12927,7 @@ class Tt {
12941
12927
  throw new Error(
12942
12928
  "No workflows found on product. This is generally due to a configuration error. Please confirm at least one workflow is configured for this product."
12943
12929
  );
12944
- return new Le(e[0]);
12930
+ return new Oe(e[0]);
12945
12931
  }
12946
12932
  getAllWorkflows() {
12947
12933
  if (!this.integrationProduct.product)
@@ -12951,7 +12937,7 @@ class Tt {
12951
12937
  throw new Error(
12952
12938
  "No workflows found on product. This is generally due to a configuration error. Please confirm at least one workflow is configured for this product."
12953
12939
  );
12954
- return e.sort((t, A) => (t.index ?? 0) - (A.index ?? 0)).map((t) => new Le(t));
12940
+ return e.sort((t, A) => (t.index ?? 0) - (A.index ?? 0)).map((t) => new Oe(t));
12955
12941
  }
12956
12942
  }
12957
12943
  const Ti = f`
@@ -13171,8 +13157,8 @@ const Ti = f`
13171
13157
  loop
13172
13158
  name
13173
13159
  }
13174
- `, Zi = (l) => f`
13175
- ${Ie(l)}
13160
+ `, Zi = (g) => f`
13161
+ ${De(g)}
13176
13162
  ${Et}
13177
13163
  ${sA}
13178
13164
  ${Vi}
@@ -13585,7 +13571,7 @@ const Ti = f`
13585
13571
  }
13586
13572
  }
13587
13573
  `, _i = f`
13588
- ${Ie(!1)}
13574
+ ${De(!1)}
13589
13575
  query GetWorkflowForTheme($id: String!) {
13590
13576
  workflow(id: $id) {
13591
13577
  id
@@ -13618,56 +13604,56 @@ const Ti = f`
13618
13604
  ...TagFields
13619
13605
  }
13620
13606
  }
13621
- `, re = async (l) => {
13607
+ `, re = async (g) => {
13622
13608
  var e;
13623
- for (const t in l.layouts) {
13624
- const A = l.layouts[t].elements.filter(
13609
+ for (const t in g.layouts) {
13610
+ const A = g.layouts[t].elements.filter(
13625
13611
  (n) => n.type === G.Illustration
13626
13612
  );
13627
13613
  for (let n = 0; n < A.length; ++n) {
13628
13614
  const i = A[n];
13629
- i.src && i.svg && (i.cachedObjectURL = await Re(i.svg));
13615
+ i.src && i.svg && (i.cachedObjectURL = await ve(i.svg));
13630
13616
  }
13631
- const a = l.layouts[t].elements.filter((n) => n.type === G.Textbox);
13617
+ const a = g.layouts[t].elements.filter((n) => n.type === G.Textbox);
13632
13618
  for (let n = 0; n < a.length; ++n) {
13633
13619
  const i = a[n];
13634
13620
  (e = i.fontData) != null && e.assetUrl && await dt(i.fontData.assetUrl);
13635
13621
  }
13636
13622
  }
13637
- }, As = async (l, e) => {
13623
+ }, As = async (g, e) => {
13638
13624
  var a;
13639
13625
  const t = await x.getShadowGraphqlClient().query({
13640
13626
  query: Zi(((a = e == null ? void 0 : e.assets) == null ? void 0 : a.metadata) || !1),
13641
13627
  errorPolicy: "all",
13642
13628
  fetchPolicy: "no-cache",
13643
13629
  variables: {
13644
- ids: l
13630
+ ids: g
13645
13631
  }
13646
13632
  }), A = t.data.workflows;
13647
- if (A === void 0 || A.length !== l.length)
13633
+ if (A === void 0 || A.length !== g.length)
13648
13634
  throw new Error(`Unable to read workflows: ${t.errors ?? "Length mismatch in response"}`);
13649
13635
  return A.forEach((n) => {
13650
13636
  n.steps.forEach((i) => {
13651
13637
  var s, o, r;
13652
13638
  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) => {
13653
13639
  c.asset && U.cacheAsset(c.asset), c.thumbnail && U.cacheAsset(c.thumbnail), c.material && U.cacheMaterial(c.material);
13654
- }), me.set({ id: i.option.id }, Promise.resolve(i.option)));
13640
+ }), Qe.set({ id: i.option.id }, Promise.resolve(i.option)));
13655
13641
  }), n.finalizeStepConfig || (n.finalizeStepConfig = {}), n.finalizeStepConfig.termsMarkdown = n.partner.termsMarkdown;
13656
13642
  }), A;
13657
- }, as = async (l, e) => {
13658
- const A = (await e).find((a) => a.id === l);
13643
+ }, as = async (g, e) => {
13644
+ const A = (await e).find((a) => a.id === g);
13659
13645
  if (!A)
13660
- throw new Error(`Workflow not found: ${l}`);
13646
+ throw new Error(`Workflow not found: ${g}`);
13661
13647
  return A;
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);
13648
+ }, vA = async (g, e) => {
13649
+ const t = g.map((s) => Qe.get({ id: s, options: e })), A = g.filter((s, o) => t[o] === void 0);
13664
13650
  if (A.length === 0)
13665
13651
  return Promise.all(t);
13666
13652
  const a = As(A, e), n = A.map(
13667
- (s) => me.set({ id: s, options: e }, as(s, a))
13653
+ (s) => Qe.set({ id: s, options: e }, as(s, a))
13668
13654
  ), i = t.filter((s) => s !== void 0);
13669
13655
  return await Promise.all(i.concat(n));
13670
- }, xe = async (l, e) => (await vA([l], e))[0], ns = (l) => l.sort((e, t) => e.index - t.index).map((e) => ({
13656
+ }, Pe = async (g, e) => (await vA([g], e))[0], ns = (g) => g.sort((e, t) => e.index - t.index).map((e) => ({
13671
13657
  id: J(),
13672
13658
  panelId: e.name,
13673
13659
  name: e.name,
@@ -13680,8 +13666,8 @@ const Ti = f`
13680
13666
  previewRegion: e.previewRegion,
13681
13667
  useEditableArea: e.useEditableArea,
13682
13668
  editableArea: e.editableArea
13683
- })), tt = (l, e) => {
13684
- const t = l.workflowState, A = t ? JSON.parse(t) : void 0;
13669
+ })), tt = (g, e) => {
13670
+ const t = g.workflowState, A = t ? JSON.parse(t) : void 0;
13685
13671
  return A ? Object.values(A.layouts).map((a) => a.layout) : ns(e.panels);
13686
13672
  };
13687
13673
  class is {
@@ -13695,14 +13681,14 @@ class is {
13695
13681
  } catch (A) {
13696
13682
  throw console.error(A), new H("Critical - Unable to synchronize workflow state with server.");
13697
13683
  }
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.1"), console.debug(`Application Key Provided: ${!!this.options.applicationKey}`), console.debug("------------------------");
13684
+ }, 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.10.0"), console.debug(`Application Key Provided: ${!!this.options.applicationKey}`), console.debug("------------------------");
13699
13685
  }
13700
13686
  /** @deprecated Use `configure` instead */
13701
13687
  configureUrls(e, t, A) {
13702
13688
  q.setHubUrl(e), q.setServerUrl(t), q.setServicesApiUrl(A), this.options.applicationKey && this.getIntegration();
13703
13689
  }
13704
13690
  configure(e) {
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();
13691
+ 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();
13706
13692
  }
13707
13693
  /**
13708
13694
  * @returns The asset manager allows for common operations related to assets
@@ -13717,7 +13703,7 @@ class is {
13717
13703
  return this.currencyCode;
13718
13704
  }
13719
13705
  getFlowService() {
13720
- if (!la())
13706
+ if (!ga())
13721
13707
  throw new Error("Application key required to use Flow Service.");
13722
13708
  return new Gi();
13723
13709
  }
@@ -13751,15 +13737,15 @@ class is {
13751
13737
  var a, n;
13752
13738
  const t = P.getMap("bundleOwnerIds");
13753
13739
  if (t != null && t.has(e))
13754
- return Promise.resolve({ success: !0, stakeholderType: be.Owner });
13740
+ return Promise.resolve({ success: !0, stakeholderType: Ge.Owner });
13755
13741
  const A = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
13756
13742
  if (A.has(e)) {
13757
13743
  const i = A.get(e), o = (P.getMap("partnerCustomerIds") || /* @__PURE__ */ new Map()).get(i);
13758
13744
  if (o && await this.authenticateCustomerId(o)) {
13759
13745
  const c = (n = (a = this.customer) == null ? void 0 : a.bundleStakeholders) == null ? void 0 : n.find(
13760
13746
  (B) => {
13761
- var g;
13762
- return ((g = B.bundle) == null ? void 0 : g.id) === e;
13747
+ var l;
13748
+ return ((l = B.bundle) == null ? void 0 : l.id) === e;
13763
13749
  }
13764
13750
  );
13765
13751
  if (c)
@@ -13782,7 +13768,7 @@ class is {
13782
13768
  * @throws An error if the transaction is not found.
13783
13769
  */
13784
13770
  async authenticateTransactionFromLocalStorage(e) {
13785
- var c, B, g, d, C, w;
13771
+ var c, B, l, d, C, w;
13786
13772
  const t = x.getShadowGraphqlClient(), A = await t.query({
13787
13773
  query: $i,
13788
13774
  errorPolicy: "all",
@@ -13800,20 +13786,20 @@ class is {
13800
13786
  return Promise.resolve({ success: !1, transactionReadOnly: !0 });
13801
13787
  const i = P.getMap("transactionOwnerIds");
13802
13788
  if (i != null && i.has(e))
13803
- return Promise.resolve({ success: !0, stakeholderType: be.Owner });
13789
+ return Promise.resolve({ success: !0, stakeholderType: Ge.Owner });
13804
13790
  const s = P.getMap("transactionCustomerIds");
13805
13791
  if (s != null && s.has(e)) {
13806
13792
  const h = s.get(e);
13807
13793
  if (h && await this.authenticateCustomerId(h)) {
13808
- const E = ((d = (g = this.customer) == null ? void 0 : g.bundleStakeholders) == null ? void 0 : d.find(
13794
+ const E = ((d = (l = this.customer) == null ? void 0 : l.bundleStakeholders) == null ? void 0 : d.find(
13809
13795
  (D) => {
13810
- var Q, p;
13811
- return (p = (Q = D.bundle) == null ? void 0 : Q.transactions) == null ? void 0 : p.some((m) => m.id === e);
13796
+ var m, p;
13797
+ return (p = (m = D.bundle) == null ? void 0 : m.transactions) == null ? void 0 : p.some((Q) => Q.id === e);
13812
13798
  }
13813
13799
  )) || ((w = (C = this.customer) == null ? void 0 : C.stakeholders) == null ? void 0 : w.find(
13814
13800
  (D) => {
13815
- var Q;
13816
- return ((Q = D.transaction) == null ? void 0 : Q.id) === e;
13801
+ var m;
13802
+ return ((m = D.transaction) == null ? void 0 : m.id) === e;
13817
13803
  }
13818
13804
  ));
13819
13805
  if (E)
@@ -13970,7 +13956,7 @@ class is {
13970
13956
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
13971
13957
  */
13972
13958
  async getNewBundle(e, t, A) {
13973
- var r, c, B, g, d;
13959
+ var r, c, B, l, d;
13974
13960
  const n = (B = (await x.getShadowGraphqlClient().mutate({
13975
13961
  mutation: Ci(((c = (r = A == null ? void 0 : A.graphql) == null ? void 0 : r.productCollection) == null ? void 0 : c.eagerFetchProducts) || !1),
13976
13962
  variables: {
@@ -13988,7 +13974,7 @@ class is {
13988
13974
  const s = P.getMap("bundleOwnerIds") || /* @__PURE__ */ new Map();
13989
13975
  s.set(n.id, n.bundleOwnerId), P.setMap("bundleOwnerIds", s);
13990
13976
  const o = new et(this, n, void 0, void 0, n.bundleOwnerId, {
13991
- eagerFetchProducts: (d = (g = A == null ? void 0 : A.graphql) == null ? void 0 : g.productCollection) == null ? void 0 : d.eagerFetchProducts
13977
+ eagerFetchProducts: (d = (l = A == null ? void 0 : A.graphql) == null ? void 0 : l.productCollection) == null ? void 0 : d.eagerFetchProducts
13992
13978
  });
13993
13979
  return await o.getInitializationPromise(), o;
13994
13980
  }
@@ -14000,15 +13986,15 @@ class is {
14000
13986
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
14001
13987
  */
14002
13988
  async getExistingBundle(e, t, A, a) {
14003
- var h, u, E, D, Q, p, m, I, F, y, Y;
13989
+ var h, u, E, D, m, p, Q, I, F, y, Y;
14004
13990
  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 = {};
14005
- r && !Oe(r) && (c.Authorization = `Bearer ${r}`);
13991
+ r && !Te(r) && (c.Authorization = `Bearer ${r}`);
14006
13992
  const B = {
14007
13993
  bundleOwnerId: i,
14008
13994
  ...c,
14009
13995
  ...(u = a == null ? void 0 : a.graphql) == null ? void 0 : u.additionalHeaders
14010
- }, g = await x.getShadowGraphqlClient().query({
14011
- query: li(((D = (E = a == null ? void 0 : a.graphql) == null ? void 0 : E.productCollection) == null ? void 0 : D.eagerFetchProducts) || !1),
13996
+ }, l = await x.getShadowGraphqlClient().query({
13997
+ query: gi(((D = (E = a == null ? void 0 : a.graphql) == null ? void 0 : E.productCollection) == null ? void 0 : D.eagerFetchProducts) || !1),
14012
13998
  variables: {
14013
13999
  id: e
14014
14000
  },
@@ -14017,9 +14003,9 @@ class is {
14017
14003
  headers: B
14018
14004
  }
14019
14005
  });
14020
- if (!((Q = g.data) != null && Q.bundles) || ((p = g.data) == null ? void 0 : p.bundles.length) === 0 || !((m = g.data) != null && m.bundles[0]))
14006
+ if (!((m = l.data) != null && m.bundles) || ((p = l.data) == null ? void 0 : p.bundles.length) === 0 || !((Q = l.data) != null && Q.bundles[0]))
14021
14007
  throw new Error(`Unable to find bundle: ${e}`);
14022
- const d = (I = g.data) == null ? void 0 : I.bundles[0], C = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
14008
+ const d = (I = l.data) == null ? void 0 : I.bundles[0], C = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
14023
14009
  C.set(d.id, d.partner.id), P.setMap("bundlePartnerIds", C);
14024
14010
  const w = new et(this, d, t, A, i, {
14025
14011
  additionalHeaders: (F = a == null ? void 0 : a.graphql) == null ? void 0 : F.additionalHeaders,
@@ -14034,15 +14020,15 @@ class is {
14034
14020
  * @returns A bundle to be used for grouping and operating on large amounts of workflow experiences.
14035
14021
  */
14036
14022
  async duplicateBundle(e, t, A, a) {
14037
- var h, u, E, D, Q, p, m, I;
14023
+ var h, u, E, D, m, p, Q, I;
14038
14024
  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 = {};
14039
- o && !Oe(o) && (r.Authorization = `Bearer ${o}`);
14025
+ o && !Te(o) && (r.Authorization = `Bearer ${o}`);
14040
14026
  const c = {
14041
14027
  bundleOwnerId: n,
14042
14028
  ...r,
14043
14029
  ...(E = a == null ? void 0 : a.graphql) == null ? void 0 : E.additionalHeaders
14044
- }, g = (p = (await x.getShadowGraphqlClient().mutate({
14045
- mutation: wi(((Q = (D = a == null ? void 0 : a.graphql) == null ? void 0 : D.productCollection) == null ? void 0 : Q.eagerFetchProducts) || !1),
14030
+ }, l = (p = (await x.getShadowGraphqlClient().mutate({
14031
+ mutation: wi(((m = (D = a == null ? void 0 : a.graphql) == null ? void 0 : D.productCollection) == null ? void 0 : m.eagerFetchProducts) || !1),
14046
14032
  variables: {
14047
14033
  id: e,
14048
14034
  template: t,
@@ -14055,14 +14041,14 @@ class is {
14055
14041
  },
14056
14042
  fetchPolicy: "no-cache"
14057
14043
  })).data) == null ? void 0 : p.bundleDuplicate;
14058
- if (!(g != null && g.id))
14044
+ if (!(l != null && l.id))
14059
14045
  throw new Error("Unable to duplicate bundle");
14060
14046
  const d = P.getMap("bundlePartnerIds") || /* @__PURE__ */ new Map();
14061
- d.set(g.id, g.partner.id), P.setMap("bundlePartnerIds", d);
14047
+ d.set(l.id, l.partner.id), P.setMap("bundlePartnerIds", d);
14062
14048
  const C = P.getMap("bundleOwnerIds") || /* @__PURE__ */ new Map();
14063
- C.set(g.id, g.bundleOwnerId), P.setMap("bundleOwnerIds", C);
14064
- const w = new et(this, g, void 0, void 0, g.bundleOwnerId, {
14065
- eagerFetchProducts: (I = (m = a == null ? void 0 : a.graphql) == null ? void 0 : m.productCollection) == null ? void 0 : I.eagerFetchProducts
14049
+ C.set(l.id, l.bundleOwnerId), P.setMap("bundleOwnerIds", C);
14050
+ const w = new et(this, l, void 0, void 0, l.bundleOwnerId, {
14051
+ eagerFetchProducts: (I = (Q = a == null ? void 0 : a.graphql) == null ? void 0 : Q.productCollection) == null ? void 0 : I.eagerFetchProducts
14066
14052
  });
14067
14053
  return await w.getInitializationPromise(), w;
14068
14054
  }
@@ -14115,15 +14101,15 @@ class is {
14115
14101
  * @returns A workflow experience configured as requested.
14116
14102
  */
14117
14103
  async getWorkflowExperience(e, t, A, a) {
14118
- var g, d, C, w, h;
14104
+ var l, d, C, w, h;
14119
14105
  if (!a)
14120
14106
  return await this.getWorkflowExperienceDeprecated(e, t, A);
14121
14107
  const n = async () => {
14122
- var E, D, Q;
14108
+ var E, D, m;
14123
14109
  const u = x.getShadowGraphqlClient();
14124
14110
  if (a.type === "transaction") {
14125
- const { transactionId: p, readOnly: m } = a, I = await u.query({
14126
- query: Fe,
14111
+ const { transactionId: p, readOnly: Q } = a, I = await u.query({
14112
+ query: fe,
14127
14113
  variables: {
14128
14114
  ids: [p]
14129
14115
  },
@@ -14135,12 +14121,12 @@ class is {
14135
14121
  const F = (D = I.data) == null ? void 0 : D.transactions[0];
14136
14122
  if (!F.workflowId)
14137
14123
  throw new H("Existing transaction has no workflow ID.");
14138
- const y = await xe(F.workflowId);
14124
+ const y = await Pe(F.workflowId);
14139
14125
  if (!F.product)
14140
14126
  throw new H("Failed to load transaction, product not available.");
14141
- !this.activeIntegration && ((Q = F.integrationProduct) != null && Q.integration) && (this.activeIntegration = Promise.resolve(F.integrationProduct.integration));
14127
+ !this.activeIntegration && ((m = F.integrationProduct) != null && m.integration) && (this.activeIntegration = Promise.resolve(F.integrationProduct.integration));
14142
14128
  const Y = await this.getStepTags(y);
14143
- return { transaction: F, workflow: y, stepTags: Y, readOnly: m };
14129
+ return { transaction: F, workflow: y, stepTags: Y, readOnly: Q };
14144
14130
  }
14145
14131
  if (a.type === "integration" || a.type === "external") {
14146
14132
  const p = async () => {
@@ -14168,12 +14154,12 @@ class is {
14168
14154
  if (!S.product)
14169
14155
  throw new H("Failed to create transaction, product not available.");
14170
14156
  return S;
14171
- }, m = xe(a.workflowId, a == null ? void 0 : a.graphql), [I, F] = await Promise.all([p(), m]), y = await this.getStepTags(F);
14157
+ }, Q = Pe(a.workflowId, a == null ? void 0 : a.graphql), [I, F] = await Promise.all([p(), Q]), y = await this.getStepTags(F);
14172
14158
  return { transaction: I, workflow: F, stepTags: y };
14173
14159
  }
14174
14160
  throw new H("No workflow ID provided.");
14175
14161
  }, { transaction: i, workflow: s, stepTags: o, readOnly: r } = await n();
14176
- this.currencyCode = (g = i.product.partner) == null ? void 0 : g.currencyCode;
14162
+ this.currencyCode = (l = i.product.partner) == null ? void 0 : l.currencyCode;
14177
14163
  const c = {
14178
14164
  product: i.product,
14179
14165
  transaction: i,
@@ -14200,7 +14186,7 @@ class is {
14200
14186
  c.transaction,
14201
14187
  c.workflow
14202
14188
  );
14203
- if (c.renderableContextService = new Ye(
14189
+ if (c.renderableContextService = new Se(
14204
14190
  c.layouts
14205
14191
  ), a.previewService ? (c.previewService = a.previewService, (C = c.product) != null && C.modelUrl && (c.modelContainer = c.previewService.loadModel({
14206
14192
  model: c.product.modelUrl,
@@ -14214,7 +14200,7 @@ class is {
14214
14200
  } else
14215
14201
  c.isReloadedTransaction = !0;
14216
14202
  this.initialized = !0, this.experienceOptions = c;
14217
- const B = new Se(this, c);
14203
+ const B = new Me(this, c);
14218
14204
  return await B.getWorkflowManager().getInitializationPromise(), a.type !== "transaction" && this.customer && await B.attachCustomerDetails({ email: this.customer.emailAddress }), B;
14219
14205
  }
14220
14206
  /**
@@ -14231,10 +14217,10 @@ class is {
14231
14217
  var y, Y, N;
14232
14218
  if (p.length === 0)
14233
14219
  return [];
14234
- const m = p.map((S) => S.option.transactionId), I = await A.query({
14235
- query: Fe,
14220
+ const Q = p.map((S) => S.option.transactionId), I = await A.query({
14221
+ query: fe,
14236
14222
  variables: {
14237
- ids: m
14223
+ ids: Q
14238
14224
  },
14239
14225
  errorPolicy: "all",
14240
14226
  fetchPolicy: "no-cache"
@@ -14256,7 +14242,7 @@ class is {
14256
14242
  var F, y, Y;
14257
14243
  if (p.length === 0)
14258
14244
  return [];
14259
- const m = await A.mutate({
14245
+ const Q = await A.mutate({
14260
14246
  mutation: Ha,
14261
14247
  variables: {
14262
14248
  inputs: p.map((N) => ({
@@ -14272,9 +14258,9 @@ class is {
14272
14258
  },
14273
14259
  errorPolicy: "all",
14274
14260
  fetchPolicy: "no-cache"
14275
- }), I = (F = m.data) == null ? void 0 : F.transactionCreateMany;
14261
+ }), I = (F = Q.data) == null ? void 0 : F.transactionCreateMany;
14276
14262
  if (!I || I.length === 0) {
14277
- const N = ((Y = (y = m.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
14263
+ const N = ((Y = (y = Q.errors) == null ? void 0 : y[0]) == null ? void 0 : Y.message) || "Unknown error";
14278
14264
  throw new H(`Failed to create transactions: ${N}`);
14279
14265
  }
14280
14266
  return I.map((N, S) => ({
@@ -14283,18 +14269,18 @@ class is {
14283
14269
  readOnly: !1,
14284
14270
  index: p[S].index
14285
14271
  }));
14286
- }, i = e.map((p, m) => ({ option: p, index: m })), s = i.filter((p) => p.option.type === "transaction"), o = i.filter(
14272
+ }, i = e.map((p, Q) => ({ option: p, index: Q })), s = i.filter((p) => p.option.type === "transaction"), o = i.filter(
14287
14273
  (p) => p.option.type === "integration" || p.option.type === "external"
14288
14274
  ), r = xt(s, 10), c = xt(o, 10), B = (await Promise.all([
14289
14275
  ...r.map(a),
14290
14276
  ...c.map(n)
14291
- ])).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) => {
14277
+ ])).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) => {
14292
14278
  var W;
14293
- const { transaction: m, workflowId: I, readOnly: F, index: y } = p, Y = C.get(I), N = await this.getStepTags(Y), S = e[y];
14294
- !w.get(m.id) && m.transactionOwnerId && w.set(m.id, m.transactionOwnerId);
14295
- const T = w.get(m.id) || void 0, R = {
14296
- product: m.product,
14297
- transaction: m,
14279
+ const { transaction: Q, workflowId: I, readOnly: F, index: y } = p, Y = C.get(I), N = await this.getStepTags(Y), S = e[y];
14280
+ !w.get(Q.id) && Q.transactionOwnerId && w.set(Q.id, Q.transactionOwnerId);
14281
+ const T = w.get(Q.id) || void 0, R = {
14282
+ product: Q.product,
14283
+ transaction: Q,
14298
14284
  stepTags: N,
14299
14285
  layouts: [],
14300
14286
  singleVariantsRenderable: (W = S == null ? void 0 : S.workflowConfiguration) == null ? void 0 : W.singleVariantsRenderable,
@@ -14305,8 +14291,8 @@ class is {
14305
14291
  workflow: Y,
14306
14292
  isReloadedTransaction: S.type === "transaction"
14307
14293
  };
14308
- if (S.type === "transaction" && m.workflowState) {
14309
- const O = JSON.parse(m.workflowState);
14294
+ if (S.type === "transaction" && Q.workflowState) {
14295
+ const O = JSON.parse(Q.workflowState);
14310
14296
  R.layouts = Object.values(O.layouts || {}).map((ee) => ee.layout), await se(O), await re(O), R.reloadedState = O;
14311
14297
  } else if (!F && S.workflowState) {
14312
14298
  const O = JSON.parse(S.workflowState);
@@ -14316,16 +14302,16 @@ class is {
14316
14302
  R.transaction,
14317
14303
  R.workflow
14318
14304
  );
14319
- return R.renderableContextService = new Ye(
14305
+ return R.renderableContextService = new Se(
14320
14306
  R.layouts
14321
14307
  ), R.delayWorkflowStateSync = !0, this.initialized = !0, this.experienceOptions = R, { experienceOptions: R, index: y, options: S };
14322
14308
  }), u = await Promise.all(h);
14323
14309
  P.setMap("transactionOwnerIds", w);
14324
- const D = u.sort((p, m) => p.index - m.index).map(async (p) => {
14325
- const { experienceOptions: m, options: I } = p, F = new Se(this, m);
14310
+ const D = u.sort((p, Q) => p.index - Q.index).map(async (p) => {
14311
+ const { experienceOptions: Q, options: I } = p, F = new Me(this, Q);
14326
14312
  return await F.getWorkflowManager().getInitializationPromise(), I.type !== "transaction" && this.customer && await F.attachCustomerDetails({ email: this.customer.emailAddress }), F;
14327
- }), Q = await Promise.all(D);
14328
- return Q.forEach((p) => p.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), Q;
14313
+ }), m = await Promise.all(D);
14314
+ return m.forEach((p) => p.getWorkflowManager().setWorkflowStateSyncEnabled(!0)), m;
14329
14315
  }
14330
14316
  /**
14331
14317
  * Initialize the client from an integration product.
@@ -14378,19 +14364,19 @@ class is {
14378
14364
  throw new H("No transaction ID provided.");
14379
14365
  const A = x.getShadowGraphqlClient(), a = async () => {
14380
14366
  var d, C;
14381
- const g = (d = (await A.query({
14382
- query: Fe,
14367
+ const l = (d = (await A.query({
14368
+ query: fe,
14383
14369
  variables: { ids: [e] },
14384
14370
  fetchPolicy: "no-cache",
14385
14371
  errorPolicy: "all"
14386
14372
  })).data) == null ? void 0 : d.transactions[0];
14387
- if (!g)
14373
+ if (!l)
14388
14374
  throw new H("Failed to read transaction.");
14389
- if (!g.product)
14375
+ if (!l.product)
14390
14376
  throw new H("Failed to load transaction, product not available.");
14391
- this.currencyCode = (C = g.product.partner) == null ? void 0 : C.currencyCode, this.experienceOptions = {
14392
- product: g.product,
14393
- transaction: g,
14377
+ this.currencyCode = (C = l.product.partner) == null ? void 0 : C.currencyCode, this.experienceOptions = {
14378
+ product: l.product,
14379
+ transaction: l,
14394
14380
  layouts: [],
14395
14381
  stateMutationFunc: async () => {
14396
14382
  throw new b("State mutation is forbidden in read only mode!");
@@ -14402,20 +14388,20 @@ class is {
14402
14388
  return await a();
14403
14389
  const n = P.getMap("transactionOwnerIds") || /* @__PURE__ */ new Map(), i = n.get(e);
14404
14390
  if (i) {
14405
- const g = (s = (await A.query({
14406
- query: Fe,
14391
+ const l = (s = (await A.query({
14392
+ query: fe,
14407
14393
  variables: {
14408
14394
  ids: [e]
14409
14395
  },
14410
14396
  errorPolicy: "all"
14411
14397
  })).data) == null ? void 0 : s.transactions[0];
14412
- if (!g)
14398
+ if (!l)
14413
14399
  throw new H("Failed to read transaction.");
14414
- if (!g.product)
14400
+ if (!l.product)
14415
14401
  throw new H("Failed to load transaction, product not available.");
14416
- this.currencyCode = (o = g.product.partner) == null ? void 0 : o.currencyCode, this.experienceOptions = {
14417
- product: g.product,
14418
- transaction: g,
14402
+ this.currencyCode = (o = l.product.partner) == null ? void 0 : o.currencyCode, this.experienceOptions = {
14403
+ product: l.product,
14404
+ transaction: l,
14419
14405
  layouts: [],
14420
14406
  stateMutationFunc: async (d) => this.updateTransactionState({ ...d, context: { transactionOwnerId: i } }),
14421
14407
  readOnly: t
@@ -14423,22 +14409,22 @@ class is {
14423
14409
  return;
14424
14410
  }
14425
14411
  try {
14426
- const g = (r = (await A.mutate({
14412
+ const l = (r = (await A.mutate({
14427
14413
  mutation: ka,
14428
14414
  variables: { id: e },
14429
14415
  errorPolicy: "all"
14430
14416
  })).data) == null ? void 0 : r.transactionClaim;
14431
- if (!g)
14417
+ if (!l)
14432
14418
  throw new H("Failed to read transaction.");
14433
- if (!g.product)
14419
+ if (!l.product)
14434
14420
  throw new H("Failed to load transaction, product not available.");
14435
- 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 = {
14436
- product: g.product,
14437
- transaction: g,
14421
+ 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 = {
14422
+ product: l.product,
14423
+ transaction: l,
14438
14424
  layouts: [],
14439
14425
  stateMutationFunc: async (d) => this.updateTransactionState({
14440
14426
  ...d,
14441
- context: { transactionOwnerId: g.transactionOwnerId }
14427
+ context: { transactionOwnerId: l.transactionOwnerId }
14442
14428
  }),
14443
14429
  readOnly: t
14444
14430
  }, this.initialized = !0;
@@ -14454,16 +14440,16 @@ class is {
14454
14440
  if (!this.initialized || !this.experienceOptions)
14455
14441
  throw new H("Cannot launch experience: Not initialized.");
14456
14442
  if (this.experienceOptions.transaction.workflowId) {
14457
- const o = await xe(this.experienceOptions.transaction.workflowId);
14443
+ const o = await Pe(this.experienceOptions.transaction.workflowId);
14458
14444
  if (this.experienceOptions.workflow = o, this.experienceOptions.transaction.workflowState) {
14459
14445
  const c = JSON.parse(this.experienceOptions.transaction.workflowState);
14460
14446
  this.experienceOptions.layouts = Object.values(c.layouts).map((B) => B.layout), await se(c), await re(c), this.experienceOptions.reloadedState = c;
14461
14447
  }
14462
- this.experienceOptions.previewService = A && A(o), this.experienceOptions.renderableContextService = new Ye(this.experienceOptions.layouts), (a = this.experienceOptions.product) != null && a.modelUrl && (this.experienceOptions.modelContainer = (n = this.experienceOptions.previewService) == null ? void 0 : n.loadModel({
14448
+ this.experienceOptions.previewService = A && A(o), this.experienceOptions.renderableContextService = new Se(this.experienceOptions.layouts), (a = this.experienceOptions.product) != null && a.modelUrl && (this.experienceOptions.modelContainer = (n = this.experienceOptions.previewService) == null ? void 0 : n.loadModel({
14463
14449
  model: this.experienceOptions.product.modelUrl,
14464
14450
  contextService: this.experienceOptions.renderableContextService
14465
14451
  }));
14466
- const r = new Se(this, this.experienceOptions);
14452
+ const r = new Me(this, this.experienceOptions);
14467
14453
  return await r.getWorkflowManager().getInitializationPromise(), r;
14468
14454
  }
14469
14455
  if (e) {
@@ -14476,7 +14462,7 @@ class is {
14476
14462
  context: {
14477
14463
  transactionOwnerId: r
14478
14464
  }
14479
- }), B = xe(e);
14465
+ }), B = Pe(e);
14480
14466
  if (await Promise.all([c, B]), this.experienceOptions.workflow = await B, t) {
14481
14467
  const d = JSON.parse(t);
14482
14468
  this.experienceOptions.layouts = Object.values(d.layouts).map((C) => C.layout), await se(d), await re(d), this.experienceOptions.reloadedState = d;
@@ -14485,12 +14471,12 @@ class is {
14485
14471
  this.experienceOptions.transaction,
14486
14472
  this.experienceOptions.workflow
14487
14473
  );
14488
- this.experienceOptions.previewService = A && A(await B), this.experienceOptions.renderableContextService = new Ye(this.experienceOptions.layouts), (i = this.experienceOptions.product) != null && i.modelUrl && (this.experienceOptions.modelContainer = (s = this.experienceOptions.previewService) == null ? void 0 : s.loadModel({
14474
+ this.experienceOptions.previewService = A && A(await B), this.experienceOptions.renderableContextService = new Se(this.experienceOptions.layouts), (i = this.experienceOptions.product) != null && i.modelUrl && (this.experienceOptions.modelContainer = (s = this.experienceOptions.previewService) == null ? void 0 : s.loadModel({
14489
14475
  model: this.experienceOptions.product.modelUrl,
14490
14476
  contextService: this.experienceOptions.renderableContextService
14491
14477
  }));
14492
- const g = new Se(this, this.experienceOptions);
14493
- return await g.getWorkflowManager().getInitializationPromise(), g;
14478
+ const l = new Me(this, this.experienceOptions);
14479
+ return await l.getWorkflowManager().getInitializationPromise(), l;
14494
14480
  }
14495
14481
  throw new H("No workflow ID provided.");
14496
14482
  }
@@ -14726,7 +14712,7 @@ class Ss {
14726
14712
  return [];
14727
14713
  }
14728
14714
  }
14729
- var ss = /* @__PURE__ */ ((l) => (l.SelectFrame = "SelectFrame", l.SelectImage = "SelectImage", l.Position = "Position", l))(ss || {});
14715
+ var ss = /* @__PURE__ */ ((g) => (g.SelectFrame = "SelectFrame", g.SelectImage = "SelectImage", g.Position = "Position", g))(ss || {});
14730
14716
  class os extends X {
14731
14717
  constructor(e, t, A) {
14732
14718
  var a;
@@ -14823,7 +14809,7 @@ class os extends X {
14823
14809
  }
14824
14810
  async getOriginalImageColors() {
14825
14811
  const e = this.getImageData();
14826
- return e != null && e.svg ? (await ze(e.svg)).colors : void 0;
14812
+ return e != null && e.svg ? (await Le(e.svg)).colors : void 0;
14827
14813
  }
14828
14814
  getMaxAllowedColors() {
14829
14815
  return this.step.data.maxColors;
@@ -14919,7 +14905,7 @@ export {
14919
14905
  Js as DeleteElementCommand,
14920
14906
  kn as DigitalContentStepHandle,
14921
14907
  Mi as FileUploadGlobalPropertyHandle,
14922
- Pe as FlowExecutionNodeResult,
14908
+ Ye as FlowExecutionNodeResult,
14923
14909
  bi as FlowExecutionResult,
14924
14910
  Gi as FlowService,
14925
14911
  Ts as FontAlignmentCommand,
@@ -14932,7 +14918,7 @@ export {
14932
14918
  It as GlobalPropertyHandle,
14933
14919
  Ks as GroupCommand,
14934
14920
  Sn as IllustrationStepHandle,
14935
- pe as InformationMessageType,
14921
+ Ve as InformationMessageType,
14936
14922
  Hn as InformationStepHandle,
14937
14923
  Tt as IntegrationProduct,
14938
14924
  Pa as IntegrationType,
@@ -14940,7 +14926,7 @@ export {
14940
14926
  Vs as LayoutElementType,
14941
14927
  z as LayoutNotFoundError,
14942
14928
  Yn as MaterialStepHandle,
14943
- Ge as MisconfigurationError,
14929
+ Ue as MisconfigurationError,
14944
14930
  Ss as MockWorkflowManager,
14945
14931
  Pn as ModelStepHandle,
14946
14932
  Un as ModuleStepHandle,
@@ -14948,13 +14934,13 @@ export {
14948
14934
  NA as ObjectInput,
14949
14935
  Ji as ObjectInputType,
14950
14936
  xA as OptionGlobalPropertyHandle,
14951
- Ue as OptionNotFoundError,
14937
+ ke as OptionNotFoundError,
14952
14938
  he as ParseError,
14953
14939
  xn as PictureStepHandle,
14954
14940
  xa as ProductCameraRig,
14955
14941
  Ri as ProductCollection,
14956
- Le as ProductWorkflow,
14957
- me as PromiseCache,
14942
+ Oe as ProductWorkflow,
14943
+ Qe as PromiseCache,
14958
14944
  dA as PromiseQueue,
14959
14945
  Nn as QuestionStepHandle,
14960
14946
  BA as QueueablePromise,
@@ -14964,7 +14950,7 @@ export {
14964
14950
  Zs as SendBackwardsCommand,
14965
14951
  vn as ShapeStepHandle,
14966
14952
  is as SpiffCommerceClient,
14967
- be as StakeholderType,
14953
+ Ge as StakeholderType,
14968
14954
  $s as StepAspectType,
14969
14955
  X as StepHandle,
14970
14956
  _s as StepType,
@@ -14980,7 +14966,7 @@ export {
14980
14966
  Ao as UpdateImageSourceCommand,
14981
14967
  Z as Variant,
14982
14968
  Vn as WorkflowExperienceEventType,
14983
- Se as WorkflowExperienceImpl,
14969
+ Me as WorkflowExperienceImpl,
14984
14970
  U as assetService,
14985
14971
  tn as browserColorToHex,
14986
14972
  Ln as createDesign,
@@ -14997,14 +14983,14 @@ export {
14997
14983
  ro as generateSVGWithUnknownColors,
14998
14984
  Fs as generateStateFromDesignInputSteps,
14999
14985
  co as getAttributesFromArrayBuffer,
15000
- lo as getAxisAlignedBoundingBox,
14986
+ go as getAxisAlignedBoundingBox,
15001
14987
  Wa as getBoundedOffsets,
15002
- go as getFrameData,
14988
+ lo as getFrameData,
15003
14989
  Bo as getSvgElement,
15004
- xe as getWorkflow,
14990
+ Pe as getWorkflow,
15005
14991
  vA as getWorkflows,
15006
14992
  x as graphQlManager,
15007
- ve as illustrationStepService,
14993
+ Ne as illustrationStepService,
15008
14994
  Co as loadFont,
15009
14995
  Ds as matchHexToPms,
15010
14996
  hA as materialStepService,
@@ -15013,20 +14999,20 @@ export {
15013
14999
  V as optionService,
15014
15000
  wo as patternImageDataCache,
15015
15001
  P as persistenceService,
15016
- mA as pictureStepService,
15002
+ QA as pictureStepService,
15017
15003
  ps as pmsToRgb,
15018
- QA as questionStepService,
15004
+ mA as questionStepService,
15019
15005
  ho as registerFetchImplementation,
15020
15006
  Eo as registerWindowImplementation,
15021
15007
  uo as rehydrateSerializedLayout,
15022
15008
  $a as rgbToPms,
15023
- ga as setBearerAuthenticationToken,
15024
- mo as setCanvasModule,
15009
+ la as setBearerAuthenticationToken,
15010
+ Qo as setCanvasModule,
15025
15011
  Ee as shapeStepService,
15026
15012
  qa as shortenUrl,
15027
15013
  q as spiffCoreConfiguration,
15028
15014
  fs as stepAspectValuesToDesignInputSteps,
15029
- Qo as svgToDataUrl,
15015
+ mo as svgToDataUrl,
15030
15016
  j as textStepService,
15031
15017
  Bn as toast
15032
15018
  };