@telia-ace/knowledge-widget-components-guide 1.0.45 → 1.0.46-next.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.
@@ -1,16 +1,16 @@
1
- var be = Object.defineProperty, fe = Object.defineProperties;
2
- var ye = Object.getOwnPropertyDescriptors;
1
+ var be = Object.defineProperty, ye = Object.defineProperties;
2
+ var pe = Object.getOwnPropertyDescriptors;
3
3
  var W = Object.getOwnPropertySymbols;
4
4
  var ee = Object.prototype.hasOwnProperty, te = Object.prototype.propertyIsEnumerable;
5
- var _ = (e, t, n) => t in e ? be(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, S = (e, t) => {
5
+ var _ = (e, t, n) => t in e ? be(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, N = (e, t) => {
6
6
  for (var n in t || (t = {}))
7
7
  ee.call(t, n) && _(e, n, t[n]);
8
8
  if (W)
9
9
  for (var n of W(t))
10
10
  te.call(t, n) && _(e, n, t[n]);
11
11
  return e;
12
- }, D = (e, t) => fe(e, ye(t));
13
- var F = (e, t) => {
12
+ }, D = (e, t) => ye(e, pe(t));
13
+ var R = (e, t) => {
14
14
  var n = {};
15
15
  for (var o in e)
16
16
  ee.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);
@@ -21,11 +21,11 @@ var F = (e, t) => {
21
21
  };
22
22
  import { css as G } from "@emotion/react";
23
23
  import r from "@emotion/styled";
24
- import { ContactList as oe, contactLink as pe } from "@telia-ace/knowledge-widget-adapters";
25
- import { useRouteData as q, List as $e, TextLink as le, paddedBorderTabStyle as re, Feedback as Ee, StyledHeaderText as ke, useDispatch as se, useProperties as J, useContainer as ie, Tooltip as we, Text as K, SymbolBadge as O, StyledListButton as T, useFavorites as xe, StyledText as ne, FavoriteButton as Le, DrawerList as ce, DrawerAnimationType as me, DropdownList as de, useChildren as ze, Lightbox as Se, DialogLink as Be, embeddedLinkMapper as Ne, createEmptyComponent as Ce, Loader as ve, loadingOpacity as De, Paragraph as Re, genericHtml as Fe, headingElement as Te, DialogList as Oe, contentBox as Ie, Metadata as We, Button as He, linkTabStyle as Pe } from "@telia-ace/knowledge-widget-ui";
26
- import { NotFound as Me, Component as je } from "@telia-ace/widget-types-grid";
27
- import { appendClassNames as H, buildCategoryTrail as Ae, createParams as Ve } from "@telia-ace/widget-utilities";
28
- import a, { useMemo as P, useState as Ge, useEffect as qe, useCallback as V, forwardRef as Je } from "react";
24
+ import { ContactList as oe, contactLink as $e } from "@telia-ace/knowledge-widget-adapters";
25
+ import { useRouteData as q, List as Ee, TextLink as le, paddedBorderTabStyle as re, Feedback as ke, StyledHeaderText as we, useDispatch as se, useProperties as J, useContainer as ie, Tooltip as xe, Text as K, SymbolBadge as O, StyledListButton as T, useFavorites as Le, StyledText as ne, FavoriteButton as ze, DrawerList as ce, DrawerAnimationType as me, DropdownList as de, useChildren as Se, Lightbox as Be, DialogLink as Ne, embeddedLinkMapper as Ce, createEmptyComponent as ve, Loader as De, loadingOpacity as Fe, Paragraph as Re, genericHtml as Te, headingElement as Oe, DialogList as Ie, contentBox as We, Metadata as He, Button as Pe, linkTabStyle as Me } from "@telia-ace/knowledge-widget-ui";
26
+ import { NotFound as je, Component as Ae } from "@telia-ace/widget-types-grid";
27
+ import { appendClassNames as H, buildCategoryTrail as Ve, createParams as Ge } from "@telia-ace/widget-utilities";
28
+ import a, { useMemo as P, useState as ue, useEffect as qe, useCallback as V, forwardRef as Je } from "react";
29
29
  import { PickerTypes as p } from "@telia-ace/knowledge-widget-core";
30
30
  const Ke = ({
31
31
  className: e,
@@ -40,18 +40,18 @@ const Ke = ({
40
40
  className: H(e, "humany-guide-answer-version-picker"),
41
41
  items: h,
42
42
  renderItem: (m) => {
43
- const d = m.label === "Default" ? t : m.label, g = n === m.connection, b = g && (!l.connection || n === l.connection);
43
+ const d = m.label === "Default" ? t : m.label, g = n === m.connection, f = g && (!l.connection || n === l.connection);
44
44
  return /* @__PURE__ */ a.createElement("li", { key: m.connection, "data-version": m.connection }, /* @__PURE__ */ a.createElement(
45
45
  Xe,
46
46
  {
47
47
  key: m.connection,
48
- as: b ? "span" : void 0,
48
+ as: f ? "span" : void 0,
49
49
  text: d,
50
50
  routeName: c,
51
51
  selected: g,
52
52
  "aria-label": d,
53
53
  title: d,
54
- params: D(S({}, l), {
54
+ params: D(N({}, l), {
55
55
  connection: m.connection
56
56
  })
57
57
  }
@@ -59,7 +59,7 @@ const Ke = ({
59
59
  }
60
60
  }
61
61
  );
62
- }, Qe = Ke, Ue = r($e)`
62
+ }, Qe = Ke, Ue = r(Ee)`
63
63
  display: flex;
64
64
  align-items: center;
65
65
  flex-wrap: wrap;
@@ -97,12 +97,12 @@ const Ke = ({
97
97
  `, Ye = r(oe)`
98
98
  border-top: ${(e) => e.theme.border};
99
99
  ${(e) => e.backButtonShown === "true" && `border-bottom: ${e.theme.border};`}
100
- `, Ze = r(Ee)`
100
+ `, Ze = r(ke)`
101
101
  ${(e) => {
102
102
  var t, n;
103
103
  return `padding: ${(t = e.theme.sizes) == null ? void 0 : t.large} ${(n = e.theme.sizes) == null ? void 0 : n.large};`;
104
104
  }}
105
- `, _e = r(ke)`
105
+ `, _e = r(we)`
106
106
  ${(e) => {
107
107
  var t, n;
108
108
  return `padding: ${(t = e.theme.sizes) == null ? void 0 : t.large} ${(n = e.theme.sizes) == null ? void 0 : n.large};`;
@@ -124,13 +124,23 @@ const Ke = ({
124
124
  showFeedback: m,
125
125
  feedbackDirection: d = "horizontal",
126
126
  feedbackRecognitionLabel: g,
127
- feedbackGiven: b,
127
+ feedbackGiven: f,
128
128
  feedbackHeader: $,
129
129
  positiveFeedbackLabel: E,
130
- negativeFeedbackLabel: f,
130
+ negativeFeedbackLabel: b,
131
131
  contactFeedbackLabel: s
132
- } = J();
133
- return !m || !c || !c.allowFeedback || o && !b || u.length ? null : b && g && !l.length ? /* @__PURE__ */ a.createElement(_e, { accordion: t ? "true" : "false" }, g) : c.hasHandover && l.length ? /* @__PURE__ */ a.createElement(
132
+ } = J(), [k, x] = ue(!1);
133
+ return !m || !c || !c.allowFeedback || o && !f || u.length ? null : f && g && !l.length ? /* @__PURE__ */ a.createElement(
134
+ _e,
135
+ {
136
+ accordion: t ? "true" : "false",
137
+ tabindex: -1,
138
+ ref: (w) => {
139
+ !k && w && (x(!0), w.focus());
140
+ }
141
+ },
142
+ g
143
+ ) : c.hasHandover && l.length ? /* @__PURE__ */ a.createElement(
134
144
  Ye,
135
145
  {
136
146
  backButtonShown: e ? "true" : "false",
@@ -144,10 +154,10 @@ const Ke = ({
144
154
  {
145
155
  accordion: t ? "true" : "false",
146
156
  positive: E,
147
- negative: c.hasHandover ? s : f,
157
+ negative: c.hasHandover ? s : b,
148
158
  header: $,
149
- selected: b,
150
- onFeedback: (k) => n("feedback", k),
159
+ selected: f,
160
+ onFeedback: (w) => n("feedback", w),
151
161
  direction: d
152
162
  }
153
163
  );
@@ -155,9 +165,9 @@ const Ke = ({
155
165
  guide: { categories: e = [] },
156
166
  toolbar: { picker: t = p.NONE }
157
167
  }) => {
158
- const [n, o] = Ge([]), u = ie();
168
+ const [n, o] = ue([]), u = ie();
159
169
  return qe(() => {
160
- Ae(
170
+ Ve(
161
171
  "index",
162
172
  e.map((c) => c.toString()),
163
173
  u
@@ -165,7 +175,7 @@ const Ke = ({
165
175
  o(c);
166
176
  });
167
177
  }, [e]), n.length ? /* @__PURE__ */ a.createElement(
168
- we,
178
+ xe,
169
179
  {
170
180
  className: "humany-guide-category-tooltip",
171
181
  sticky: t === p.DRAWER,
@@ -237,23 +247,23 @@ const Ke = ({
237
247
  removeFavoriteLabel: m,
238
248
  removeFavoriteTooltip: d,
239
249
  toolbarFunctionsCloseButtonAriaLabel: g,
240
- allowCopy: b = !1,
250
+ allowCopy: f = !1,
241
251
  allowPrint: $ = !1,
242
252
  showFavoriteToggle: E = !1,
243
- picker: f = p.NONE,
253
+ picker: b = p.NONE,
244
254
  guide: s,
245
255
  dispatch: k
246
256
  }) => {
247
- const [B, C] = xe(), i = V(
257
+ const [x, w] = Le(), i = V(
248
258
  (y) => {
249
259
  s && k("copy", s);
250
260
  },
251
261
  [s, k]
252
- ), L = V(() => {
262
+ ), S = V(() => {
253
263
  s && k("print");
254
- }, [s, k]), z = P(() => {
255
- const { id: y, title: R } = s, v = [];
256
- if (b && v.push({
264
+ }, [s, k]), B = P(() => {
265
+ const { id: y, title: F } = s, v = [];
266
+ if (f && v.push({
257
267
  type: "copy",
258
268
  child: /* @__PURE__ */ a.createElement(
259
269
  T,
@@ -276,20 +286,20 @@ const Ke = ({
276
286
  "data-has-symbol": "true",
277
287
  title: n,
278
288
  "aria-label": n,
279
- onClick: L
289
+ onClick: S
280
290
  },
281
291
  /* @__PURE__ */ a.createElement(A, { size: 16, symbol: { type: "Svg", content: "print" } }),
282
292
  n && /* @__PURE__ */ a.createElement(ne, null, n)
283
293
  )
284
294
  }), E) {
285
- const I = B.indexOf(y) > -1;
295
+ const I = x.indexOf(y) > -1;
286
296
  v.push({
287
297
  type: "favorite",
288
298
  child: /* @__PURE__ */ a.createElement(
289
- Le,
299
+ ze,
290
300
  {
291
301
  id: y,
292
- guideTitle: R,
302
+ guideTitle: F,
293
303
  isFavorite: I,
294
304
  buttonLabel: I ? d : u,
295
305
  addFavoriteTooltip: u,
@@ -298,16 +308,16 @@ const Ke = ({
298
308
  removeFavoriteHeader: h,
299
309
  removeFavoriteLabel: m,
300
310
  removeFavoriteTooltip: d,
301
- actions: C
311
+ actions: w
302
312
  }
303
313
  )
304
314
  });
305
315
  }
306
316
  return v;
307
317
  }, [
308
- B,
318
+ x,
309
319
  s,
310
- b,
320
+ f,
311
321
  $,
312
322
  E,
313
323
  n,
@@ -319,9 +329,9 @@ const Ke = ({
319
329
  m,
320
330
  d
321
331
  ]);
322
- if (!z.length)
332
+ if (!B.length)
323
333
  return null;
324
- const w = /* @__PURE__ */ a.createElement(
334
+ const L = /* @__PURE__ */ a.createElement(
325
335
  ct,
326
336
  {
327
337
  tabIndex: 0,
@@ -330,26 +340,26 @@ const Ke = ({
330
340
  "data-has-label": "false"
331
341
  },
332
342
  /* @__PURE__ */ a.createElement(A, { symbol: { type: "Svg", content: "options" }, size: 18 })
333
- ), N = ({ type: y, child: R }) => /* @__PURE__ */ a.createElement("li", { key: y, "data-function-type": y }, R);
334
- return f === p.DROPDOWN ? /* @__PURE__ */ a.createElement(
343
+ ), C = ({ type: y, child: F }) => /* @__PURE__ */ a.createElement("li", { key: y, "data-function-type": y }, F);
344
+ return b === p.DROPDOWN ? /* @__PURE__ */ a.createElement(
335
345
  it,
336
346
  {
337
347
  className: "humany-guide-functions-dropdown-list",
338
348
  header: e,
339
- items: z,
340
- trigger: w,
341
- renderItem: N,
349
+ items: B,
350
+ trigger: L,
351
+ renderItem: C,
342
352
  closeButtonAriaLabel: g
343
353
  }
344
- ) : f === p.DRAWER ? /* @__PURE__ */ a.createElement(
354
+ ) : b === p.DRAWER ? /* @__PURE__ */ a.createElement(
345
355
  ce,
346
356
  {
347
357
  className: "humany-guide-functions-drawer-list",
348
358
  animation: { type: me.SlideInBottom },
349
359
  header: e,
350
- items: z,
351
- trigger: w,
352
- renderItem: N,
360
+ items: B,
361
+ trigger: L,
362
+ renderItem: C,
353
363
  closeButtonAriaLabel: g
354
364
  }
355
365
  ) : null;
@@ -386,19 +396,19 @@ const Ke = ({
386
396
  tooltip: t,
387
397
  picker: n = p.NONE,
388
398
  guide: o
389
- } = l, u = F(l, [
399
+ } = l, u = R(l, [
390
400
  "header",
391
401
  "tooltip",
392
402
  "picker",
393
403
  "guide"
394
404
  ]);
395
- const { name: h, params: m } = q(), d = P(() => Object.keys(o.translations || {}).reduce((E, f) => {
405
+ const { name: h, params: m } = q(), d = P(() => Object.keys(o.translations || {}).reduce((E, b) => {
396
406
  const s = {};
397
- return s.key = f, s.id = (o.translations || {})[f], s.label = u[`${f}LanguageLabel`], (s.id || s.label) && E.push(s), E;
407
+ return s.key = b, s.id = (o.translations || {})[b], s.label = u[`${b}LanguageLabel`], (s.id || s.label) && E.push(s), E;
398
408
  }, []), [o, u]);
399
409
  if (!d.length)
400
410
  return null;
401
- const g = mt(o, d), b = /* @__PURE__ */ a.createElement(
411
+ const g = mt(o, d), f = /* @__PURE__ */ a.createElement(
402
412
  ht,
403
413
  {
404
414
  tabIndex: 0,
@@ -406,22 +416,22 @@ const Ke = ({
406
416
  "data-has-symbol": "true",
407
417
  "data-has-label": n === p.DROPDOWN && g ? "true" : "false"
408
418
  },
409
- n === p.DROPDOWN && /* @__PURE__ */ a.createElement(a.Fragment, null, g && /* @__PURE__ */ a.createElement(bt, null, g), /* @__PURE__ */ a.createElement(
410
- ft,
419
+ n === p.DROPDOWN && /* @__PURE__ */ a.createElement(a.Fragment, null, g && /* @__PURE__ */ a.createElement(ft, null, g), /* @__PURE__ */ a.createElement(
420
+ bt,
411
421
  {
412
422
  symbol: { type: "Svg", content: "caret-down" },
413
423
  size: 11
414
424
  }
415
425
  )),
416
426
  n === p.DRAWER && /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(gt, { symbol: { type: "Svg", content: "language" }, size: 20 }))
417
- ), $ = ({ label: E, key: f, id: s }) => /* @__PURE__ */ a.createElement("li", { key: f, "data-language": f }, /* @__PURE__ */ a.createElement(
427
+ ), $ = ({ label: E, key: b, id: s }) => /* @__PURE__ */ a.createElement("li", { key: b, "data-language": b }, /* @__PURE__ */ a.createElement(
418
428
  pt,
419
429
  {
420
430
  tabIndex: 0,
421
431
  text: E,
422
432
  routeName: h,
423
433
  selected: o.id === s,
424
- params: Ve(D(S({}, m), {
434
+ params: Ge(D(N({}, m), {
425
435
  connection: void 0,
426
436
  guide: s
427
437
  }))
@@ -433,7 +443,7 @@ const Ke = ({
433
443
  className: "humany-guide-languages-dropdown-list",
434
444
  header: e,
435
445
  items: d,
436
- trigger: b,
446
+ trigger: f,
437
447
  renderItem: $
438
448
  }
439
449
  ) : n === p.DRAWER ? /* @__PURE__ */ a.createElement(
@@ -443,7 +453,7 @@ const Ke = ({
443
453
  animation: { type: me.SlideInBottom },
444
454
  header: e,
445
455
  items: d,
446
- trigger: b,
456
+ trigger: f,
447
457
  renderItem: $
448
458
  }
449
459
  ) : null;
@@ -470,7 +480,7 @@ const Ke = ({
470
480
  return (t = e.theme.colors) == null ? void 0 : t.text;
471
481
  }};
472
482
  }
473
- `, bt = r(K)`
483
+ `, ft = r(K)`
474
484
  margin: 0 ${(e) => {
475
485
  var t;
476
486
  return (t = e.theme.sizes) == null ? void 0 : t.small;
@@ -479,7 +489,7 @@ const Ke = ({
479
489
  var t;
480
490
  return (t = e.theme.fonts) == null ? void 0 : t.normal;
481
491
  }};
482
- `, ft = r(O)`
492
+ `, bt = r(O)`
483
493
  align-self: flex-end;
484
494
  stroke-width: 2px;
485
495
  stroke-linecap: round;
@@ -530,13 +540,13 @@ const Ke = ({
530
540
  copyActionLabel: m,
531
541
  addFavoriteTooltip: d,
532
542
  removeFavoriteCancelLabel: g,
533
- removeFavoriteConfirmLabel: b,
543
+ removeFavoriteConfirmLabel: f,
534
544
  removeFavoriteHeader: $,
535
545
  removeFavoriteLabel: E,
536
- removeFavoriteTooltip: f,
546
+ removeFavoriteTooltip: b,
537
547
  guide: s,
538
548
  toolbar: k
539
- } = y, B = F(y, [
549
+ } = y, x = R(y, [
540
550
  "toolbarLanguageHeader",
541
551
  "toolbarFunctionsHeader",
542
552
  "toolbarLanguageTooltip",
@@ -555,16 +565,16 @@ const Ke = ({
555
565
  ]);
556
566
  if (!s || !k || $t(k))
557
567
  return null;
558
- const { language: C, guideCategories: i, allowCopy: L, allowPrint: z, showFavoriteToggle: w, picker: N } = k;
559
- return /* @__PURE__ */ a.createElement(wt, { className: H("humany-guide-toolbar", e) }, C && Object.keys(s.translations || {}).length > 1 && /* @__PURE__ */ a.createElement(
568
+ const { language: w, guideCategories: i, allowCopy: S, allowPrint: B, showFavoriteToggle: L, picker: C } = k;
569
+ return /* @__PURE__ */ a.createElement(wt, { className: H("humany-guide-toolbar", e) }, w && Object.keys(s.translations || {}).length > 1 && /* @__PURE__ */ a.createElement(
560
570
  ut,
561
- S({
571
+ N({
562
572
  guide: s,
563
573
  header: n,
564
574
  tooltip: u,
565
- picker: N
566
- }, B)
567
- ), i && /* @__PURE__ */ a.createElement(at, { guide: s, toolbar: k }), (L || z || w) && /* @__PURE__ */ a.createElement(
575
+ picker: C
576
+ }, x)
577
+ ), i && /* @__PURE__ */ a.createElement(at, { guide: s, toolbar: k }), (S || B || L) && /* @__PURE__ */ a.createElement(
568
578
  st,
569
579
  {
570
580
  guide: s,
@@ -574,15 +584,15 @@ const Ke = ({
574
584
  copyActionLabel: m,
575
585
  addFavoriteTooltip: d,
576
586
  removeFavoriteCancelLabel: g,
577
- removeFavoriteConfirmLabel: b,
587
+ removeFavoriteConfirmLabel: f,
578
588
  removeFavoriteHeader: $,
579
589
  removeFavoriteLabel: E,
580
- removeFavoriteTooltip: f,
590
+ removeFavoriteTooltip: b,
581
591
  toolbarFunctionsCloseButtonAriaLabel: l,
582
- allowCopy: L,
583
- allowPrint: z,
584
- showFavoriteToggle: w,
585
- picker: N,
592
+ allowCopy: S,
593
+ allowPrint: B,
594
+ showFavoriteToggle: L,
595
+ picker: C,
586
596
  dispatch: t
587
597
  }
588
598
  ));
@@ -600,54 +610,54 @@ const Ke = ({
600
610
  }
601
611
  `, Gt = Je(
602
612
  (u, o) => {
603
- var c = u, { className: e, accordion: t = !1 } = c, n = F(c, ["className", "accordion"]);
613
+ var c = u, { className: e, accordion: t = !1 } = c, n = R(c, ["className", "accordion"]);
604
614
  const {
605
615
  loading: l = !1,
606
616
  dialog: h = [],
607
617
  contactMethods: m = [],
608
618
  showHeader: d = !0,
609
619
  showAnswerVersions: g = !1,
610
- defaultAnswerVersionLabel: b = "Default",
620
+ defaultAnswerVersionLabel: f = "Default",
611
621
  backButtonLabel: $,
612
622
  metadataByLabel: E,
613
- metadataModifiedLabel: f,
623
+ metadataModifiedLabel: b,
614
624
  metadataPublishedLabel: s,
615
625
  availablePerspectives: k,
616
- metadata: B,
617
- toolbar: C,
626
+ metadata: x,
627
+ toolbar: w,
618
628
  guide: i,
619
- error: L
629
+ error: S
620
630
  } = J(), {
621
- params: { connection: z }
622
- } = q(), w = ie(), N = ze(), y = se(), R = P(() => ({
631
+ params: { connection: B }
632
+ } = q(), L = ie(), C = Se(), y = se(), F = P(() => ({
623
633
  transform: {
624
- img: (x) => /* @__PURE__ */ a.createElement(Se, { attrs: x, htmlBody: (i == null ? void 0 : i.body) || "" }),
625
- a: (x) => {
626
- const Y = x, { children: he } = Y, X = F(Y, ["children"])["data-target"];
634
+ img: (z) => /* @__PURE__ */ a.createElement(Be, { attrs: z, htmlBody: (i == null ? void 0 : i.body) || "" }),
635
+ a: (z) => {
636
+ const Y = z, { children: ge } = Y, X = R(Y, ["children"])["data-target"];
627
637
  if (X && h.length) {
628
638
  const Z = h.find(
629
- ({ connection: ge }) => ge === X
639
+ ({ connection: fe }) => fe === X
630
640
  );
631
641
  if (Z)
632
- return /* @__PURE__ */ a.createElement(Be, S({}, Z), he);
642
+ return /* @__PURE__ */ a.createElement(Ne, N({}, Z), ge);
633
643
  }
634
- return Ne(w)(x);
644
+ return Ce(L)(z);
635
645
  }
636
646
  }
637
- }), [i, w, h]), v = V(() => {
647
+ }), [i, L, h]), v = V(() => {
638
648
  y("back");
639
649
  }, [y]);
640
- if (!i && !L && !l)
641
- return Ce(w, D(S({}, n), {
650
+ if (!i && !S && !l)
651
+ return ve(L, D(N({}, n), {
642
652
  className: H(e, "humany-guide")
643
653
  }));
644
654
  const { id: I = "", title: Q = "", body: M = "", translations: U = {} } = i || {};
645
- if (L && L.status === 404)
646
- return /* @__PURE__ */ a.createElement(Me, { showSearch: !1 });
647
- const j = !!t && !!z, ue = Object.keys(U).find((x) => U[x] === `${I}`);
655
+ if (S && S.status === 404)
656
+ return /* @__PURE__ */ a.createElement(je, { showSearch: !1 });
657
+ const j = !!t && !!B, he = Object.keys(U).find((z) => U[z] === `${I}`);
648
658
  return /* @__PURE__ */ a.createElement(
649
659
  xt,
650
- D(S({
660
+ D(N({
651
661
  ref: o
652
662
  }, n), {
653
663
  "data-loading": l,
@@ -660,14 +670,14 @@ const Ke = ({
660
670
  accordion: t ? "true" : "false",
661
671
  className: "humany-guide-content"
662
672
  },
663
- (g && i || !!C) && /* @__PURE__ */ a.createElement(Bt, { className: "humany-guide-top" }, g && i && /* @__PURE__ */ a.createElement(
673
+ (g && i || !!w) && /* @__PURE__ */ a.createElement(Bt, { className: "humany-guide-top" }, g && i && /* @__PURE__ */ a.createElement(
664
674
  Qe,
665
675
  {
666
- defaultAnswerVersionLabel: b,
676
+ defaultAnswerVersionLabel: f,
667
677
  availablePerspectives: k,
668
678
  guide: i
669
679
  }
670
- ), !!C && /* @__PURE__ */ a.createElement(kt, { dispatch: y })),
680
+ ), !!w && /* @__PURE__ */ a.createElement(kt, { dispatch: y })),
671
681
  !!(Q || M) && /* @__PURE__ */ a.createElement(
672
682
  Lt,
673
683
  {
@@ -675,8 +685,8 @@ const Ke = ({
675
685
  accordion: t ? "true" : "false",
676
686
  header: d && Q || void 0,
677
687
  html: M,
678
- htmlParseInstruction: R,
679
- lang: ue
688
+ htmlParseInstruction: F,
689
+ lang: he
680
690
  }
681
691
  ),
682
692
  h && M.indexOf("h-option-link") === -1 && /* @__PURE__ */ a.createElement(St, { dialog: h }),
@@ -691,7 +701,7 @@ const Ke = ({
691
701
  ),
692
702
  !m.length && /* @__PURE__ */ a.createElement(tt, { backButtonShown: j, accordion: t }),
693
703
  j && /* @__PURE__ */ a.createElement(Dt, { "aria-label": $, onClick: v }, /* @__PURE__ */ a.createElement(
694
- Rt,
704
+ Ft,
695
705
  {
696
706
  width: "7",
697
707
  height: "13",
@@ -702,36 +712,36 @@ const Ke = ({
702
712
  /* @__PURE__ */ a.createElement("line", { x1: "6.64645", y1: "12.5513", x2: "0.648357", y2: "6.55319" }),
703
713
  /* @__PURE__ */ a.createElement("line", { x1: "0.646447", y1: "6.64455", x2: "6.64454", y2: "0.646465" })
704
714
  ), $ && /* @__PURE__ */ a.createElement("span", null, $)),
705
- B && /* @__PURE__ */ a.createElement(
715
+ x && /* @__PURE__ */ a.createElement(
706
716
  Ct,
707
- D(S({}, B), {
717
+ D(N({}, x), {
708
718
  modified: i == null ? void 0 : i.modified,
709
719
  published: i == null ? void 0 : i.published,
710
720
  modifiedBy: i == null ? void 0 : i.modifiedBy,
711
721
  publishedBy: i == null ? void 0 : i.publishedBy,
712
722
  byLabel: E,
713
- modifiedLabel: f,
723
+ modifiedLabel: b,
714
724
  publishedLabel: s
715
725
  })
716
726
  ),
717
- N.map((x) => /* @__PURE__ */ a.createElement(
727
+ C.map((z) => /* @__PURE__ */ a.createElement(
718
728
  vt,
719
729
  {
720
- key: x.id,
721
- id: x.id,
730
+ key: z.id,
731
+ id: z.id,
722
732
  branch: "default",
723
733
  embedded: !0
724
734
  }
725
735
  ))
726
736
  ),
727
- /* @__PURE__ */ a.createElement(ve, { loading: l })
737
+ /* @__PURE__ */ a.createElement(De, { loading: l })
728
738
  );
729
739
  }
730
740
  ), xt = r.div`
731
- ${De}
741
+ ${Fe}
732
742
  min-width: 0;
733
743
  `, Lt = r(Re)`
734
- ${Fe}
744
+ ${Te}
735
745
  ${(e) => {
736
746
  var t;
737
747
  return `padding: ${(t = e.theme.sizes) == null ? void 0 : t.large};`;
@@ -741,7 +751,7 @@ const Ke = ({
741
751
 
742
752
  ${(e) => {
743
753
  var t, n;
744
- return Te(e)(
754
+ return Oe(e)(
745
755
  "h1",
746
756
  G`
747
757
  font-size: ${(t = e.theme.fonts) == null ? void 0 : t.large};
@@ -770,7 +780,7 @@ const Ke = ({
770
780
  `, zt = r(oe)`
771
781
  border-top: ${(e) => e.theme.border};
772
782
  ${(e) => e.backButtonShown === "true" && `border-bottom: ${e.theme.border};`}
773
- `, St = r(Oe)`
783
+ `, St = r(Ie)`
774
784
  ${(e) => {
775
785
  var t, n;
776
786
  return `padding: 0 ${(t = e.theme.sizes) == null ? void 0 : t.large} ${(n = e.theme.sizes) == null ? void 0 : n.large};`;
@@ -788,10 +798,10 @@ const Ke = ({
788
798
  border-radius: ${(e) => `${e.theme.borderRadius} ${e.theme.borderRadius}`} 0 0;
789
799
  background-color: #ffffff;
790
800
  `, Nt = r.div`
791
- ${Ie}
801
+ ${We}
792
802
  display: block;
793
803
  > a {
794
- ${pe}
804
+ ${$e}
795
805
  }
796
806
 
797
807
  ${(e) => e.accordion === "true" && G`
@@ -799,7 +809,7 @@ const Ke = ({
799
809
  box-shadow: none;
800
810
  background-color: #fafafa;
801
811
  `}
802
- `, Ct = r(We)`
812
+ `, Ct = r(He)`
803
813
  display: block;
804
814
  ${(e) => {
805
815
  var t, n;
@@ -815,9 +825,9 @@ const Ke = ({
815
825
  return (t = e.theme.colors) == null ? void 0 : t.text;
816
826
  }};
817
827
  border-top: ${(e) => e.theme.border};
818
- `, vt = r(je)`
828
+ `, vt = r(Ae)`
819
829
  border-top: ${(e) => e.theme.border};
820
- `, Dt = r(He)`
830
+ `, Dt = r(Pe)`
821
831
  ${(e) => {
822
832
  var t, n;
823
833
  return `padding: ${(t = e.theme.sizes) == null ? void 0 : t.normal} calc(${(n = e.theme.sizes) == null ? void 0 : n.normal} * 2);`;
@@ -835,13 +845,13 @@ const Ke = ({
835
845
  font-weight: 300;
836
846
  }
837
847
  &:focus-visible {
838
- ${Pe}
848
+ ${Me}
839
849
  padding: ${(e) => {
840
850
  var t, n;
841
851
  return `calc(${(t = e.theme.sizes) == null ? void 0 : t.small} / 2) ${(n = e.theme.sizes) == null ? void 0 : n.small}`;
842
852
  }};
843
853
  }
844
- `, Rt = r.svg`
854
+ `, Ft = r.svg`
845
855
  margin-right: ${(e) => {
846
856
  var t;
847
857
  return (t = e.theme.sizes) == null ? void 0 : t.small;
@@ -856,4 +866,4 @@ const Ke = ({
856
866
  export {
857
867
  Gt as default
858
868
  };
859
- //# sourceMappingURL=guide.429e61d5.js.map
869
+ //# sourceMappingURL=guide.a457e015.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guide.a457e015.js","sources":["../src/answer-version-picker.tsx","../src/feedback.tsx","../src/categories.tsx","../src/functions.tsx","../src/languages.tsx","../src/toolbar.tsx","../src/guide.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { List, paddedBorderTabStyle, TextLink, useRouteData } from '@telia-ace/knowledge-widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { useMemo } from 'react';\nimport { AvailablePerspectives, GuideProps } from './guide-component';\n\ntype Props = {\n className?: string;\n defaultAnswerVersionLabel: string;\n availablePerspectives?: AvailablePerspectives[];\n guide: GuideProps;\n};\n\ntype Perspective = { label: string; connection: string };\n\nconst AnswerVersionPicker: React.FC<Props> = ({\n className,\n defaultAnswerVersionLabel,\n guide: { perspective: selectedPerspective, perspectives: guidePerspectives },\n availablePerspectives = [],\n}) => {\n const { name, params } = useRouteData();\n\n const perspectives: Perspective[] = useMemo(() => {\n if (!guidePerspectives || !availablePerspectives.length) {\n return [];\n }\n\n return availablePerspectives\n .filter(({ name }) => !!guidePerspectives[name])\n .map(({ name, title }) => {\n return { label: title, connection: guidePerspectives[name] };\n });\n }, [guidePerspectives, availablePerspectives]);\n\n return (\n <StyledList\n className={appendClassNames(className, 'humany-guide-answer-version-picker')}\n items={perspectives}\n renderItem={(perspective: Perspective) => {\n const label =\n perspective.label === 'Default' ? defaultAnswerVersionLabel : perspective.label;\n const selected = selectedPerspective === perspective.connection;\n const isRoot =\n selected && (!params.connection || selectedPerspective === params.connection);\n\n return (\n <li key={perspective.connection} data-version={perspective.connection}>\n <VersionLink\n key={perspective.connection}\n as={isRoot ? 'span' : undefined}\n text={label}\n routeName={name}\n selected={selected}\n aria-label={label}\n title={label}\n params={{\n ...params,\n connection: perspective.connection,\n }}\n />\n </li>\n );\n }}\n />\n );\n};\n\nexport default AnswerVersionPicker;\n\nconst StyledList = styled(List)`\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n\n list-style: none;\n padding: 0;\n margin: 0;\n\n li:not(:last-child) {\n margin: 0 calc(${(p) => p.theme.sizes?.small} * 2) 0 0;\n }\n\n li > span {\n cursor: default;\n }\n`;\n\nconst VersionLink = styled(TextLink)<{ selected: boolean }>`\n font-weight: 300;\n color: ${(p) => p.theme.colors?.text};\n text-decoration: none;\n\n ${(p) =>\n p.selected &&\n css`\n font-weight: bold;\n text-decoration: underline;\n `}\n\n &:focus-visible {\n ${paddedBorderTabStyle};\n }\n`;\n","import styled from '@emotion/styled';\nimport { ContactList } from '@telia-ace/knowledge-widget-adapters';\nimport {\n Feedback as FeedbackUi,\n StyledHeaderText,\n useDispatch,\n useProperties,\n} from '@telia-ace/knowledge-widget-ui';\nimport React, { useState } from 'react';\nimport { GuideComponentProps } from './guide-component';\n\ntype Props = { backButtonShown?: boolean; accordion?: boolean };\n\nconst StyledContactList = styled(ContactList)<{\n accordion: 'true' | 'false';\n backButtonShown: 'true' | 'false';\n}>`\n border-top: ${(p) => p.theme.border};\n ${(p) => p.backButtonShown === 'true' && `border-bottom: ${p.theme.border};`}\n`;\n\nconst StyledFeedback = styled(FeedbackUi)<{ accordion: 'true' | 'false' }>`\n ${(p) => `padding: ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n`;\n\nconst Recognition = styled(StyledHeaderText)<{ accordion: 'true' | 'false' }>`\n ${(p) => `padding: ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n\n display: block;\n font-size: ${(p) => p.theme.fonts?.normal};\n font-weight: bold;\n`;\n\nconst Feedback: React.FC<Props> = ({ backButtonShown = false, accordion = false }) => {\n const dispatch = useDispatch();\n const {\n loading = false,\n dialog = [],\n guide,\n\n handoverContactMethods = [],\n contactHeader,\n\n showFeedback,\n feedbackDirection = 'horizontal',\n feedbackRecognitionLabel,\n feedbackGiven,\n feedbackHeader,\n positiveFeedbackLabel,\n negativeFeedbackLabel,\n contactFeedbackLabel,\n } = useProperties<GuideComponentProps>();\n const [focused, setFocused] = useState(false);\n\n if (\n !showFeedback ||\n !guide ||\n !guide.allowFeedback ||\n (loading && !feedbackGiven) ||\n dialog.length\n ) {\n return null;\n }\n\n if (feedbackGiven && feedbackRecognitionLabel && !handoverContactMethods.length) {\n return (\n <Recognition\n accordion={accordion ? 'true' : 'false'}\n tabindex={-1}\n ref={(node: HTMLElement) => {\n if (!focused && node) {\n setFocused(true);\n // this is needed due to accessability reasons,\n // ensuring that screen readers reads the confirmation message\n node.focus();\n }\n }}\n >\n {feedbackRecognitionLabel}\n </Recognition>\n );\n }\n\n return guide.hasHandover && handoverContactMethods.length ? (\n <StyledContactList\n backButtonShown={backButtonShown ? 'true' : 'false'}\n accordion={accordion ? 'true' : 'false'}\n header={contactHeader}\n contactMethods={handoverContactMethods}\n dispatch={dispatch}\n />\n ) : (\n <StyledFeedback\n accordion={accordion ? 'true' : 'false'}\n positive={positiveFeedbackLabel}\n negative={guide.hasHandover ? contactFeedbackLabel : negativeFeedbackLabel}\n header={feedbackHeader}\n selected={feedbackGiven}\n onFeedback={(feedback: any) => dispatch('feedback', feedback)}\n direction={feedbackDirection}\n />\n );\n};\n\nexport default Feedback;\n","import styled from '@emotion/styled';\nimport { Category, PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n StyledListButton,\n SymbolBadge,\n Text,\n Tooltip,\n useContainer,\n} from '@telia-ace/knowledge-widget-ui';\nimport { buildCategoryTrail } from '@telia-ace/widget-utilities';\nimport React, { useEffect, useState } from 'react';\nimport { GuideProps, ToolbarProps } from './guide-component';\n\ntype Props = {\n guide: GuideProps;\n toolbar: ToolbarProps;\n};\n\nconst Categories: React.FC<Props> = ({\n guide: { categories = [] },\n toolbar: { picker = PickerTypes.NONE },\n}) => {\n const [trail, setTrail] = useState<Category[][]>([]);\n const container = useContainer();\n\n useEffect(() => {\n buildCategoryTrail(\n 'index',\n categories.map((id) => id.toString()),\n container\n ).then((result) => {\n setTrail(result);\n });\n }, [categories]);\n\n if (!trail.length) {\n return null;\n }\n\n return (\n <Tooltip\n className=\"humany-guide-category-tooltip\"\n sticky={picker === PickerTypes.DRAWER}\n content={\n <>\n {trail.map((segments) => {\n return (\n <CategoryTrail\n className=\"humany-guide-category-trail\"\n key={segments.map((c) => c.id).join('.')}\n >\n {segments.map((category, index: number) => {\n return (\n <Text\n className=\"humany-guide-category-trail-segment\"\n key={category.id}\n >\n {category.symbol && index === 0 && (\n <SymbolBadge size={14} symbol={category.symbol} />\n )}\n {category.title}\n {index !== segments.length - 1 && (\n <CategorySeparator className=\"humany-category-separator\">\n /\n </CategorySeparator>\n )}\n </Text>\n );\n })}\n </CategoryTrail>\n );\n })}\n </>\n }\n >\n {picker === PickerTypes.DRAWER ? (\n <StyledListButton\n className=\"humany-guide-category-tooltip-button\"\n data-has-label=\"false\"\n data-has-symbol=\"true\"\n >\n <CategoriesSymbolBadge\n size={19}\n symbol={{ type: 'Svg', content: 'information' }}\n />\n </StyledListButton>\n ) : (\n <CategoriesSymbolBadge size={19} symbol={{ type: 'Svg', content: 'information' }} />\n )}\n </Tooltip>\n );\n};\n\nexport default Categories;\n\nconst CategoryTrail = styled.div`\n i,\n svg {\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n }\n\n &:not(:last-child) {\n margin: 0 0 ${(p) => p.theme.sizes?.small};\n }\n`;\n\nconst CategorySeparator = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small};\n`;\n\nconst CategoriesSymbolBadge = styled(SymbolBadge)`\n display: block;\n`;\n","import styled from '@emotion/styled';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n DispatchAction,\n DrawerAnimationType,\n DrawerList,\n DropdownList,\n FavoriteButton,\n StyledListButton,\n StyledText,\n SymbolBadge,\n useFavorites,\n} from '@telia-ace/knowledge-widget-ui';\nimport React, { useCallback, useMemo } from 'react';\nimport { GuideProps } from './guide-component';\n\nexport type FunctionListItem = {\n type: string;\n child: React.ReactNode;\n};\n\ntype Props = {\n header?: string;\n tooltip?: string;\n printActionLabel?: string;\n copyActionLabel?: string;\n addFavoriteTooltip?: string;\n removeFavoriteCancelLabel?: string;\n removeFavoriteConfirmLabel?: string;\n removeFavoriteHeader?: string;\n removeFavoriteLabel?: string;\n removeFavoriteTooltip?: string;\n toolbarFunctionsCloseButtonAriaLabel?: string;\n guide: GuideProps;\n allowCopy?: boolean;\n allowPrint?: boolean;\n showFavoriteToggle?: boolean;\n picker?: PickerTypes;\n dispatch: DispatchAction;\n};\n\nconst Functions: React.FC<Props> = ({\n header,\n tooltip,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n toolbarFunctionsCloseButtonAriaLabel,\n allowCopy = false,\n allowPrint = false,\n showFavoriteToggle = false,\n picker = PickerTypes.NONE,\n guide,\n dispatch,\n}) => {\n const [favorites, actions] = useFavorites();\n\n const handleCopy = useCallback(\n (event: any) => {\n if (guide) {\n dispatch('copy', guide);\n }\n },\n [guide, dispatch]\n );\n\n const handlePrint = useCallback(() => {\n if (guide) {\n dispatch('print');\n }\n }, [guide, dispatch]);\n\n const items = useMemo(() => {\n const { id, title } = guide;\n\n const items: FunctionListItem[] = [];\n\n if (allowCopy) {\n items.push({\n type: 'copy',\n child: (\n <StyledListButton\n data-has-label={copyActionLabel ? 'true' : 'false'}\n data-has-symbol=\"true\"\n title={copyActionLabel}\n aria-label={printActionLabel}\n onClick={handleCopy}\n >\n <ColoredSymbolBadge size={16} symbol={{ type: 'Svg', content: 'copy' }} />\n {copyActionLabel && <StyledText>{copyActionLabel}</StyledText>}\n </StyledListButton>\n ),\n });\n }\n\n if (allowPrint) {\n items.push({\n type: 'print',\n child: (\n <StyledListButton\n data-has-label={printActionLabel ? 'true' : 'false'}\n data-has-symbol=\"true\"\n title={printActionLabel}\n aria-label={printActionLabel}\n onClick={handlePrint}\n >\n <ColoredSymbolBadge size={16} symbol={{ type: 'Svg', content: 'print' }} />\n {printActionLabel && <StyledText>{printActionLabel}</StyledText>}\n </StyledListButton>\n ),\n });\n }\n\n if (showFavoriteToggle) {\n const isFavorite = favorites.indexOf(id) > -1;\n items.push({\n type: 'favorite',\n child: (\n <FavoriteButton\n id={id}\n guideTitle={title}\n isFavorite={isFavorite}\n buttonLabel={isFavorite ? removeFavoriteTooltip : addFavoriteTooltip}\n addFavoriteTooltip={addFavoriteTooltip}\n removeFavoriteCancelLabel={removeFavoriteCancelLabel}\n removeFavoriteConfirmLabel={removeFavoriteConfirmLabel}\n removeFavoriteHeader={removeFavoriteHeader}\n removeFavoriteLabel={removeFavoriteLabel}\n removeFavoriteTooltip={removeFavoriteTooltip}\n actions={actions}\n />\n ),\n });\n }\n\n return items;\n }, [\n favorites,\n guide,\n allowCopy,\n allowPrint,\n showFavoriteToggle,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n ]);\n\n if (!items.length) {\n return null;\n }\n\n const trigger = (\n <StyledTriggerButton\n tabIndex={0}\n title={tooltip}\n data-has-symbol=\"true\"\n data-has-label=\"false\"\n >\n <ColoredSymbolBadge symbol={{ type: 'Svg', content: 'options' }} size={18} />\n </StyledTriggerButton>\n );\n\n const renderListItem = ({ type, child }: FunctionListItem) => {\n return (\n <li key={type} data-function-type={type}>\n {child}\n </li>\n );\n };\n\n if (picker === PickerTypes.DROPDOWN) {\n return (\n <StyledDropdownList\n className=\"humany-guide-functions-dropdown-list\"\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n closeButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n />\n );\n }\n\n if (picker === PickerTypes.DRAWER) {\n return (\n <DrawerList\n className=\"humany-guide-functions-drawer-list\"\n animation={{ type: DrawerAnimationType.SlideInBottom }}\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n closeButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n />\n );\n }\n\n return null;\n};\n\nexport default Functions;\n\nconst ColoredSymbolBadge = styled(SymbolBadge)`\n circle {\n fill: ${(p) => p.theme.colors?.text};\n }\n\n line,\n path,\n rect {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst StyledDropdownList = styled(DropdownList)`\n display: block;\n min-height: auto;\n`;\n\nconst StyledTriggerButton = styled(StyledListButton)<any>`\n padding: calc(${(p) => p.theme.sizes?.small} * 2) 0;\n`;\n","import styled from '@emotion/styled';\nimport { LanguageProperties } from '@telia-ace/knowledge-widget-component-utilities';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n DrawerAnimationType,\n DrawerList,\n DropdownList,\n paddedBorderTabStyle,\n StyledListButton,\n SymbolBadge,\n Text,\n TextLink,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport { createParams } from '@telia-ace/widget-utilities';\nimport React, { useMemo } from 'react';\nimport { GuideProps } from './guide-component';\n\nexport type LanguageListItem = {\n id: string;\n key: string;\n label: string;\n};\n\ntype Props = Merge<\n {\n header?: string;\n tooltip?: string;\n guide: GuideProps;\n picker?: PickerTypes;\n },\n LanguageProperties\n>;\n\nconst getCurrentLanguageLabel = (guide: GuideProps, languages: LanguageListItem[]) => {\n return languages.find((l) => l.id === guide.id)?.label || '';\n};\n\nconst Languages: React.FC<Props> = ({\n header,\n tooltip,\n picker = PickerTypes.NONE,\n guide,\n ...other\n}) => {\n const { name, params } = useRouteData();\n\n const items = useMemo(() => {\n return Object.keys(guide.translations || {}).reduce((acc: LanguageListItem[], key) => {\n const item: Partial<LanguageListItem> = {};\n item.key = key;\n item.id = (guide.translations || {})[key];\n item.label = (other as { [key: string]: string })[`${key}LanguageLabel`];\n\n if (item.id || item.label) {\n acc.push(item as LanguageListItem);\n }\n\n return acc;\n }, []);\n }, [guide, other]);\n\n if (!items.length) {\n return null;\n }\n\n const currentLanguage = getCurrentLanguageLabel(guide, items);\n\n const trigger = (\n <Trigger\n tabIndex={0}\n title={tooltip}\n data-has-symbol=\"true\"\n data-has-label={picker === PickerTypes.DROPDOWN && currentLanguage ? 'true' : 'false'}\n >\n {picker === PickerTypes.DROPDOWN && (\n <>\n {currentLanguage && <LanguageButtonText>{currentLanguage}</LanguageButtonText>}\n <LanguageCaretSymbolBadge\n symbol={{ type: 'Svg', content: 'caret-down' }}\n size={11}\n />\n </>\n )}\n {picker === PickerTypes.DRAWER && (\n <>\n <ColoredSymbolBadge symbol={{ type: 'Svg', content: 'language' }} size={20} />\n </>\n )}\n </Trigger>\n );\n\n const renderListItem = ({ label, key, id }: LanguageListItem) => {\n return (\n <li key={key} data-language={key}>\n <LanguageLink\n tabIndex={0}\n text={label}\n routeName={name}\n selected={guide.id === id}\n params={createParams({\n ...params,\n connection: undefined,\n guide: id,\n })}\n />\n </li>\n );\n };\n\n if (picker === PickerTypes.DROPDOWN) {\n return (\n <StyledDropdownList\n className=\"humany-guide-languages-dropdown-list\"\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n />\n );\n }\n\n if (picker === PickerTypes.DRAWER) {\n return (\n <DrawerList\n className=\"humany-guide-languages-drawer-list\"\n animation={{ type: DrawerAnimationType.SlideInBottom }}\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n />\n );\n }\n\n return null;\n};\n\nexport default Languages;\n\nconst Trigger = styled(StyledListButton)`\n &&& {\n margin: 0 ${(p) => `calc(${p.theme.sizes?.small} * 2)`} 0 0;\n }\n`;\n\nconst ColoredSymbolBadge = styled(SymbolBadge)`\n circle {\n fill: ${(p) => p.theme.colors?.text};\n }\n\n line,\n path,\n rect {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst LanguageButtonText = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n font-size: ${(p) => p.theme.fonts?.normal};\n`;\n\nconst LanguageCaretSymbolBadge = styled(SymbolBadge)`\n align-self: flex-end;\n stroke-width: 2px;\n stroke-linecap: round;\n\n && {\n width: 0.6em;\n height: 1em;\n }\n line {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst StyledDropdownList = styled(DropdownList)`\n display: block;\n min-height: auto;\n`;\n\nconst LanguageLink = styled(TextLink)<any>`\n color: ${(p) => (p.selected ? p.theme.colors?.primary : p.theme.colors?.text)};\n ${(p) => p.selected && 'font-weight: bold;'}\n\n outline: none;\n &:focus-visible {\n ${paddedBorderTabStyle}\n text-decoration: underline;\n }\n`;\n","import styled from '@emotion/styled';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport { DispatchAction, useProperties } from '@telia-ace/knowledge-widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React from 'react';\nimport Categories from './categories';\nimport Functions from './functions';\nimport { GuideComponentProps, ToolbarProps } from './guide-component';\nimport Languages from './languages';\n\ntype Props = {\n className?: string;\n dispatch: DispatchAction;\n};\n\nconst isEmpty = (toolbar: ToolbarProps) => {\n const {\n allowCopy = false,\n allowPrint = false,\n guideCategories = false,\n language = false,\n showFavoriteToggle = false,\n picker = PickerTypes.NONE,\n } = toolbar;\n\n if (\n (!allowCopy && !allowPrint && !language && !showFavoriteToggle && !guideCategories) ||\n picker === PickerTypes.NONE\n ) {\n return true;\n }\n\n return false;\n};\n\nconst Toolbar: React.FC<Props> = ({ className = '', dispatch }) => {\n const {\n toolbarLanguageHeader,\n toolbarFunctionsHeader,\n toolbarLanguageTooltip,\n toolbarFunctionsTooltip,\n toolbarFunctionsCloseButtonAriaLabel,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n guide,\n toolbar,\n ...other\n } = useProperties<GuideComponentProps>();\n\n if (!guide || !toolbar || isEmpty(toolbar)) {\n return null;\n }\n\n const { language, guideCategories, allowCopy, allowPrint, showFavoriteToggle, picker } =\n toolbar;\n\n return (\n <Wrapper className={appendClassNames('humany-guide-toolbar', className)}>\n {language && Object.keys(guide.translations || {}).length > 1 && (\n <Languages\n guide={guide}\n header={toolbarLanguageHeader}\n tooltip={toolbarLanguageTooltip}\n picker={picker}\n {...other}\n />\n )}\n {guideCategories && <Categories guide={guide} toolbar={toolbar} />}\n {(allowCopy || allowPrint || showFavoriteToggle) && (\n <Functions\n guide={guide}\n header={toolbarFunctionsHeader}\n tooltip={toolbarFunctionsTooltip}\n printActionLabel={printActionLabel}\n copyActionLabel={copyActionLabel}\n addFavoriteTooltip={addFavoriteTooltip}\n removeFavoriteCancelLabel={removeFavoriteCancelLabel}\n removeFavoriteConfirmLabel={removeFavoriteConfirmLabel}\n removeFavoriteHeader={removeFavoriteHeader}\n removeFavoriteLabel={removeFavoriteLabel}\n removeFavoriteTooltip={removeFavoriteTooltip}\n toolbarFunctionsCloseButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n allowCopy={allowCopy}\n allowPrint={allowPrint}\n showFavoriteToggle={showFavoriteToggle}\n picker={picker}\n dispatch={dispatch}\n />\n )}\n </Wrapper>\n );\n};\n\nexport default Toolbar;\n\nconst Wrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0 0 0 auto;\n\n > :not(:last-child) {\n margin: 0 calc(${(p) => p.theme.sizes?.small} * 2) 0 0;\n }\n`;\n","import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { contactLink, ContactList } from '@telia-ace/knowledge-widget-adapters';\nimport {\n Button,\n contentBox,\n createEmptyComponent,\n DialogLink,\n DialogList,\n embeddedLinkMapper,\n genericHtml,\n headingElement,\n Lightbox,\n linkTabStyle,\n Loader,\n loadingOpacity,\n Metadata,\n Paragraph,\n useChildren,\n useContainer,\n useDispatch,\n useProperties,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport { Component, NotFound } from '@telia-ace/widget-types-grid';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { forwardRef, useCallback, useMemo } from 'react';\nimport AnswerVersionPicker from './answer-version-picker';\nimport Feedback from './feedback';\nimport { GuideComponentProps } from './guide-component';\nimport Toolbar from './toolbar';\n\ntype Props = { className: string; accordion?: boolean };\n\nconst Guide = forwardRef<HTMLDivElement, Props>(\n ({ className, accordion = false, ...other }, ref) => {\n const {\n loading = false,\n dialog = [],\n contactMethods = [],\n showHeader = true,\n showAnswerVersions = false,\n defaultAnswerVersionLabel = 'Default',\n backButtonLabel,\n metadataByLabel,\n metadataModifiedLabel,\n metadataPublishedLabel,\n availablePerspectives,\n metadata,\n toolbar,\n guide,\n error,\n } = useProperties<GuideComponentProps>();\n const {\n params: { connection },\n } = useRouteData();\n const container = useContainer();\n const children = useChildren();\n const dispatch = useDispatch();\n\n const transform = useMemo(() => {\n return {\n transform: {\n img: (attrs: any) => (\n <Lightbox attrs={attrs} htmlBody={guide?.body || ''}></Lightbox>\n ),\n a: (attr: any) => {\n const { children, ...otherAttr } = attr;\n const connectionId = otherAttr['data-target'];\n if (connectionId && dialog.length) {\n const item = dialog.find(\n ({ connection }: any) => connection === connectionId\n );\n if (item) {\n return <DialogLink {...item}>{children}</DialogLink>;\n }\n }\n\n const defaultInstructions = embeddedLinkMapper(container);\n\n return defaultInstructions(attr);\n },\n },\n };\n }, [guide, container, dialog]);\n\n const handleBackButtonClick = useCallback(() => {\n dispatch('back');\n }, [dispatch]);\n\n if (!guide && !error && !loading) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-guide'),\n });\n }\n\n const { id = '', title = '', body = '', translations = {} } = guide || {};\n\n if (error && error.status === 404) {\n return <NotFound showSearch={false} />;\n }\n\n const showBackButton = !!accordion && !!connection;\n const language = Object.keys(translations).find((key) => translations[key] === `${id}`);\n\n return (\n <Wrapper\n ref={ref}\n {...other}\n data-loading={loading}\n className={appendClassNames(className, 'humany-guide')}\n >\n <Content\n data-loading={loading}\n accordion={accordion ? 'true' : 'false'}\n className=\"humany-guide-content\"\n >\n {((showAnswerVersions && guide) || !!toolbar) && (\n <Top className=\"humany-guide-top\">\n {showAnswerVersions && guide && (\n <AnswerVersionPicker\n defaultAnswerVersionLabel={defaultAnswerVersionLabel}\n availablePerspectives={availablePerspectives}\n guide={guide}\n />\n )}\n {!!toolbar && <Toolbar dispatch={dispatch} />}\n </Top>\n )}\n {!!(title || body) && (\n <Body\n className=\"humany-guide-body\"\n accordion={accordion ? 'true' : 'false'}\n header={(showHeader && title) || undefined}\n html={body}\n htmlParseInstruction={transform}\n lang={language}\n />\n )}\n {dialog && body.indexOf('h-option-link') === -1 && (\n <StyledDialogList dialog={dialog} />\n )}\n <StyledContactList\n backButtonShown={showBackButton ? 'true' : 'false'}\n contactMethods={contactMethods}\n dispatch={dispatch}\n guideId={guide && guide.id}\n />\n {!contactMethods.length && (\n <Feedback backButtonShown={showBackButton} accordion={accordion} />\n )}\n {showBackButton && (\n <BackButton aria-label={backButtonLabel} onClick={handleBackButtonClick}>\n <Caret\n width=\"7\"\n height=\"13\"\n viewBox=\"0 0 7 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line x1=\"6.64645\" y1=\"12.5513\" x2=\"0.648357\" y2=\"6.55319\" />\n <line x1=\"0.646447\" y1=\"6.64455\" x2=\"6.64454\" y2=\"0.646465\" />\n </Caret>\n {backButtonLabel && <span>{backButtonLabel}</span>}\n </BackButton>\n )}\n {metadata && (\n <StyledMetadata\n {...metadata}\n modified={guide?.modified}\n published={guide?.published}\n modifiedBy={guide?.modifiedBy}\n publishedBy={guide?.publishedBy}\n byLabel={metadataByLabel}\n modifiedLabel={metadataModifiedLabel}\n publishedLabel={metadataPublishedLabel}\n />\n )}\n {children.map((child) => (\n <StyledComponents\n key={child.id}\n id={child.id}\n branch=\"default\"\n {...{ embedded: true }}\n />\n ))}\n </Content>\n\n <Loader loading={loading} />\n </Wrapper>\n );\n }\n);\n\nexport default Guide;\n\nconst Wrapper = styled.div<{ 'data-loading': boolean }>`\n ${loadingOpacity}\n min-width: 0;\n`;\n\nconst Body = styled(Paragraph)<{ accordion: 'true' | 'false' }>`\n ${genericHtml}\n ${(p) => `padding: ${p.theme.sizes?.large};`}\n display: block;\n line-height: 1.6em;\n\n ${(p) =>\n headingElement(p)(\n 'h1',\n css`\n font-size: ${p.theme.fonts?.large};\n font-weight: normal;\n line-height: 1.6em;\n line-height: 1.6em;\n margin: 0 0 ${p.theme.sizes?.small};\n `\n )}\n\n p {\n font-weight: 300;\n font-size: ${(p) => p.theme.fonts?.normal};\n color: ${(p) => p.theme.colors?.text};\n a {\n display: inline;\n }\n }\n`;\n\nconst StyledContactList = styled(ContactList)<{ backButtonShown: 'true' | 'false' }>`\n border-top: ${(p) => p.theme.border};\n ${(p) => p.backButtonShown === 'true' && `border-bottom: ${p.theme.border};`}\n`;\n\nconst StyledDialogList = styled(DialogList)`\n ${(p) => `padding: 0 ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n display: block;\n`;\n\nconst Top = styled.div`\n ${(p) => `padding: calc(${p.theme.sizes?.normal}*2) ${p.theme.sizes?.large};`}\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: ${(p) => p.theme.border};\n border-radius: ${(p) => `${p.theme.borderRadius} ${p.theme.borderRadius}`} 0 0;\n background-color: #ffffff;\n`;\n\nconst Content = styled.div<{ 'data-loading': boolean; accordion: 'true' | 'false' } & any>`\n ${contentBox}\n display: block;\n > a {\n ${contactLink}\n }\n\n ${(p) =>\n p.accordion === 'true' &&\n css`\n white-space: normal;\n box-shadow: none;\n background-color: #fafafa;\n `}\n`;\n\nconst StyledMetadata = styled(Metadata)`\n display: block;\n ${(p) => `padding: calc(${p.theme.sizes?.normal}*2) ${p.theme.sizes?.large};`}\n font-weight: 300;\n font-size: ${(p) => p.theme.fonts?.normal};\n color: ${(p) => p.theme.colors?.text};\n border-top: ${(p) => p.theme.border};\n`;\n\nconst StyledComponents = styled(Component)`\n border-top: ${(p) => p.theme.border};\n`;\n\nconst BackButton = styled(Button)`\n ${(p) => `padding: ${p.theme.sizes?.normal} calc(${p.theme.sizes?.normal} * 2);`}\n color: ${(p) => p.theme.colors?.primary};\n text-decoration: underline;\n font-size: ${(p) => p.theme.fonts?.normal};\n span {\n font-weight: 300;\n }\n &:focus-visible {\n ${linkTabStyle}\n padding: ${(p) => `calc(${p.theme.sizes?.small} / 2) ${p.theme.sizes?.small}`};\n }\n`;\n\nconst Caret = styled.svg`\n margin-right: ${(p) => p.theme.sizes?.small};\n line {\n stroke: ${(p) => p.theme.colors?.primary};\n }\n`;\n"],"names":["AnswerVersionPicker","className","defaultAnswerVersionLabel","selectedPerspective","guidePerspectives","availablePerspectives","name","params","useRouteData","perspectives","useMemo","title","React","StyledList","appendClassNames","perspective","label","selected","isRoot","VersionLink","__spreadProps","__spreadValues","AnswerVersionPicker$1","styled","List","p","_a","TextLink","css","paddedBorderTabStyle","StyledContactList","ContactList","StyledFeedback","FeedbackUi","_b","Recognition","StyledHeaderText","Feedback","backButtonShown","accordion","dispatch","useDispatch","loading","dialog","guide","handoverContactMethods","contactHeader","showFeedback","feedbackDirection","feedbackRecognitionLabel","feedbackGiven","feedbackHeader","positiveFeedbackLabel","negativeFeedbackLabel","contactFeedbackLabel","useProperties","focused","setFocused","useState","node","feedback","Feedback$1","Categories","categories","picker","PickerTypes","trail","setTrail","container","useContainer","useEffect","buildCategoryTrail","id","result","Tooltip","segments","CategoryTrail","c","category","index","Text","SymbolBadge","CategorySeparator","StyledListButton","CategoriesSymbolBadge","Categories$1","Functions","header","tooltip","printActionLabel","copyActionLabel","addFavoriteTooltip","removeFavoriteCancelLabel","removeFavoriteConfirmLabel","removeFavoriteHeader","removeFavoriteLabel","removeFavoriteTooltip","toolbarFunctionsCloseButtonAriaLabel","allowCopy","allowPrint","showFavoriteToggle","favorites","actions","useFavorites","handleCopy","useCallback","event","handlePrint","items","ColoredSymbolBadge","StyledText","isFavorite","FavoriteButton","trigger","StyledTriggerButton","renderListItem","type","child","StyledDropdownList","DrawerList","DrawerAnimationType","Functions$1","DropdownList","getCurrentLanguageLabel","languages","l","Languages","other","__objRest","acc","key","item","currentLanguage","Trigger","LanguageButtonText","LanguageCaretSymbolBadge","LanguageLink","createParams","Languages$1","isEmpty","toolbar","guideCategories","language","Toolbar","toolbarLanguageHeader","toolbarFunctionsHeader","toolbarLanguageTooltip","toolbarFunctionsTooltip","Wrapper","Toolbar$1","Guide","forwardRef","ref","contactMethods","showHeader","showAnswerVersions","backButtonLabel","metadataByLabel","metadataModifiedLabel","metadataPublishedLabel","metadata","error","connection","children","useChildren","transform","attrs","Lightbox","attr","connectionId","DialogLink","embeddedLinkMapper","handleBackButtonClick","createEmptyComponent","body","translations","NotFound","showBackButton","Content","Top","Body","StyledDialogList","BackButton","Caret","StyledMetadata","StyledComponents","Loader","loadingOpacity","Paragraph","genericHtml","headingElement","DialogList","contentBox","contactLink","Metadata","Component","Button","linkTabStyle"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -58,7 +58,7 @@ ${e.trim()}`);
58
58
  return t && t.length && (i = `<h2>${t.trim()}</h2>`), e && e.length && (i = `${i.trim()}${e.trim()}`), i.trim();
59
59
  }, N = (t) => {
60
60
  const { events: e } = t.get("$widget"), [i, d] = H(e);
61
- return D(t, "guide", import("./guide.429e61d5.js"), (a) => {
61
+ return D(t, "guide", import("./guide.a457e015.js"), (a) => {
62
62
  const s = (r) => {
63
63
  a.writeProperties({
64
64
  loading: !0,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telia-ace/knowledge-widget-components-guide",
3
- "version": "1.0.45",
3
+ "version": "1.0.46-next.0",
4
4
  "description": "Guide component for ACE Knowledge Widgets.",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "Telia Company AB",
@@ -21,11 +21,11 @@
21
21
  },
22
22
  "sideEffects": false,
23
23
  "dependencies": {
24
- "@telia-ace/knowledge-data-client": "1.0.8",
25
- "@telia-ace/knowledge-widget-adapters": "1.0.51",
26
- "@telia-ace/knowledge-widget-component-utilities": "1.0.45",
27
- "@telia-ace/knowledge-widget-core": "1.0.41",
28
- "@telia-ace/knowledge-widget-ui": "1.0.47",
24
+ "@telia-ace/knowledge-data-client": "1.0.9-next.0",
25
+ "@telia-ace/knowledge-widget-adapters": "1.0.52-next.0",
26
+ "@telia-ace/knowledge-widget-component-utilities": "1.0.46-next.0",
27
+ "@telia-ace/knowledge-widget-core": "1.0.42-next.0",
28
+ "@telia-ace/knowledge-widget-ui": "1.0.48-next.0",
29
29
  "@telia-ace/widget-forms": "^1.0.33",
30
30
  "@telia-ace/widget-routing": "^1.0.27",
31
31
  "@telia-ace/widget-types-grid": "^1.0.35",
@@ -1 +0,0 @@
1
- {"version":3,"file":"guide.429e61d5.js","sources":["../src/answer-version-picker.tsx","../src/feedback.tsx","../src/categories.tsx","../src/functions.tsx","../src/languages.tsx","../src/toolbar.tsx","../src/guide.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { List, paddedBorderTabStyle, TextLink, useRouteData } from '@telia-ace/knowledge-widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { useMemo } from 'react';\nimport { AvailablePerspectives, GuideProps } from './guide-component';\n\ntype Props = {\n className?: string;\n defaultAnswerVersionLabel: string;\n availablePerspectives?: AvailablePerspectives[];\n guide: GuideProps;\n};\n\ntype Perspective = { label: string; connection: string };\n\nconst AnswerVersionPicker: React.FC<Props> = ({\n className,\n defaultAnswerVersionLabel,\n guide: { perspective: selectedPerspective, perspectives: guidePerspectives },\n availablePerspectives = [],\n}) => {\n const { name, params } = useRouteData();\n\n const perspectives: Perspective[] = useMemo(() => {\n if (!guidePerspectives || !availablePerspectives.length) {\n return [];\n }\n\n return availablePerspectives\n .filter(({ name }) => !!guidePerspectives[name])\n .map(({ name, title }) => {\n return { label: title, connection: guidePerspectives[name] };\n });\n }, [guidePerspectives, availablePerspectives]);\n\n return (\n <StyledList\n className={appendClassNames(className, 'humany-guide-answer-version-picker')}\n items={perspectives}\n renderItem={(perspective: Perspective) => {\n const label =\n perspective.label === 'Default' ? defaultAnswerVersionLabel : perspective.label;\n const selected = selectedPerspective === perspective.connection;\n const isRoot =\n selected && (!params.connection || selectedPerspective === params.connection);\n\n return (\n <li key={perspective.connection} data-version={perspective.connection}>\n <VersionLink\n key={perspective.connection}\n as={isRoot ? 'span' : undefined}\n text={label}\n routeName={name}\n selected={selected}\n aria-label={label}\n title={label}\n params={{\n ...params,\n connection: perspective.connection,\n }}\n />\n </li>\n );\n }}\n />\n );\n};\n\nexport default AnswerVersionPicker;\n\nconst StyledList = styled(List)`\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n\n list-style: none;\n padding: 0;\n margin: 0;\n\n li:not(:last-child) {\n margin: 0 calc(${(p) => p.theme.sizes?.small} * 2) 0 0;\n }\n\n li > span {\n cursor: default;\n }\n`;\n\nconst VersionLink = styled(TextLink)<{ selected: boolean }>`\n font-weight: 300;\n color: ${(p) => p.theme.colors?.text};\n text-decoration: none;\n\n ${(p) =>\n p.selected &&\n css`\n font-weight: bold;\n text-decoration: underline;\n `}\n\n &:focus-visible {\n ${paddedBorderTabStyle};\n }\n`;\n","import styled from '@emotion/styled';\nimport { ContactList } from '@telia-ace/knowledge-widget-adapters';\nimport {\n Feedback as FeedbackUi,\n StyledHeaderText,\n useDispatch,\n useProperties,\n} from '@telia-ace/knowledge-widget-ui';\nimport React from 'react';\nimport { GuideComponentProps } from './guide-component';\n\ntype Props = { backButtonShown?: boolean; accordion?: boolean };\n\nconst StyledContactList = styled(ContactList)<{\n accordion: 'true' | 'false';\n backButtonShown: 'true' | 'false';\n}>`\n border-top: ${(p) => p.theme.border};\n ${(p) => p.backButtonShown === 'true' && `border-bottom: ${p.theme.border};`}\n`;\n\nconst StyledFeedback = styled(FeedbackUi)<{ accordion: 'true' | 'false' }>`\n ${(p) => `padding: ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n`;\n\nconst Recognition = styled(StyledHeaderText)<{ accordion: 'true' | 'false' }>`\n ${(p) => `padding: ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n\n display: block;\n font-size: ${(p) => p.theme.fonts?.normal};\n font-weight: bold;\n`;\n\nconst Feedback: React.FC<Props> = ({ backButtonShown = false, accordion = false }) => {\n const dispatch = useDispatch();\n const {\n loading = false,\n dialog = [],\n guide,\n\n handoverContactMethods = [],\n contactHeader,\n\n showFeedback,\n feedbackDirection = 'horizontal',\n feedbackRecognitionLabel,\n feedbackGiven,\n feedbackHeader,\n positiveFeedbackLabel,\n negativeFeedbackLabel,\n contactFeedbackLabel,\n } = useProperties<GuideComponentProps>();\n\n if (\n !showFeedback ||\n !guide ||\n !guide.allowFeedback ||\n (loading && !feedbackGiven) ||\n dialog.length\n ) {\n return null;\n }\n\n if (feedbackGiven && feedbackRecognitionLabel && !handoverContactMethods.length) {\n return (\n <Recognition accordion={accordion ? 'true' : 'false'}>\n {feedbackRecognitionLabel}\n </Recognition>\n );\n }\n\n return guide.hasHandover && handoverContactMethods.length ? (\n <StyledContactList\n backButtonShown={backButtonShown ? 'true' : 'false'}\n accordion={accordion ? 'true' : 'false'}\n header={contactHeader}\n contactMethods={handoverContactMethods}\n dispatch={dispatch}\n />\n ) : (\n <StyledFeedback\n accordion={accordion ? 'true' : 'false'}\n positive={positiveFeedbackLabel}\n negative={guide.hasHandover ? contactFeedbackLabel : negativeFeedbackLabel}\n header={feedbackHeader}\n selected={feedbackGiven}\n onFeedback={(feedback: any) => dispatch('feedback', feedback)}\n direction={feedbackDirection}\n />\n );\n};\n\nexport default Feedback;\n","import styled from '@emotion/styled';\nimport { Category, PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n StyledListButton,\n SymbolBadge,\n Text,\n Tooltip,\n useContainer,\n} from '@telia-ace/knowledge-widget-ui';\nimport { buildCategoryTrail } from '@telia-ace/widget-utilities';\nimport React, { useEffect, useState } from 'react';\nimport { GuideProps, ToolbarProps } from './guide-component';\n\ntype Props = {\n guide: GuideProps;\n toolbar: ToolbarProps;\n};\n\nconst Categories: React.FC<Props> = ({\n guide: { categories = [] },\n toolbar: { picker = PickerTypes.NONE },\n}) => {\n const [trail, setTrail] = useState<Category[][]>([]);\n const container = useContainer();\n\n useEffect(() => {\n buildCategoryTrail(\n 'index',\n categories.map((id) => id.toString()),\n container\n ).then((result) => {\n setTrail(result);\n });\n }, [categories]);\n\n if (!trail.length) {\n return null;\n }\n\n return (\n <Tooltip\n className=\"humany-guide-category-tooltip\"\n sticky={picker === PickerTypes.DRAWER}\n content={\n <>\n {trail.map((segments) => {\n return (\n <CategoryTrail\n className=\"humany-guide-category-trail\"\n key={segments.map((c) => c.id).join('.')}\n >\n {segments.map((category, index: number) => {\n return (\n <Text\n className=\"humany-guide-category-trail-segment\"\n key={category.id}\n >\n {category.symbol && index === 0 && (\n <SymbolBadge size={14} symbol={category.symbol} />\n )}\n {category.title}\n {index !== segments.length - 1 && (\n <CategorySeparator className=\"humany-category-separator\">\n /\n </CategorySeparator>\n )}\n </Text>\n );\n })}\n </CategoryTrail>\n );\n })}\n </>\n }\n >\n {picker === PickerTypes.DRAWER ? (\n <StyledListButton\n className=\"humany-guide-category-tooltip-button\"\n data-has-label=\"false\"\n data-has-symbol=\"true\"\n >\n <CategoriesSymbolBadge\n size={19}\n symbol={{ type: 'Svg', content: 'information' }}\n />\n </StyledListButton>\n ) : (\n <CategoriesSymbolBadge size={19} symbol={{ type: 'Svg', content: 'information' }} />\n )}\n </Tooltip>\n );\n};\n\nexport default Categories;\n\nconst CategoryTrail = styled.div`\n i,\n svg {\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n }\n\n &:not(:last-child) {\n margin: 0 0 ${(p) => p.theme.sizes?.small};\n }\n`;\n\nconst CategorySeparator = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small};\n`;\n\nconst CategoriesSymbolBadge = styled(SymbolBadge)`\n display: block;\n`;\n","import styled from '@emotion/styled';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n DispatchAction,\n DrawerAnimationType,\n DrawerList,\n DropdownList,\n FavoriteButton,\n StyledListButton,\n StyledText,\n SymbolBadge,\n useFavorites,\n} from '@telia-ace/knowledge-widget-ui';\nimport React, { useCallback, useMemo } from 'react';\nimport { GuideProps } from './guide-component';\n\nexport type FunctionListItem = {\n type: string;\n child: React.ReactNode;\n};\n\ntype Props = {\n header?: string;\n tooltip?: string;\n printActionLabel?: string;\n copyActionLabel?: string;\n addFavoriteTooltip?: string;\n removeFavoriteCancelLabel?: string;\n removeFavoriteConfirmLabel?: string;\n removeFavoriteHeader?: string;\n removeFavoriteLabel?: string;\n removeFavoriteTooltip?: string;\n toolbarFunctionsCloseButtonAriaLabel?: string;\n guide: GuideProps;\n allowCopy?: boolean;\n allowPrint?: boolean;\n showFavoriteToggle?: boolean;\n picker?: PickerTypes;\n dispatch: DispatchAction;\n};\n\nconst Functions: React.FC<Props> = ({\n header,\n tooltip,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n toolbarFunctionsCloseButtonAriaLabel,\n allowCopy = false,\n allowPrint = false,\n showFavoriteToggle = false,\n picker = PickerTypes.NONE,\n guide,\n dispatch,\n}) => {\n const [favorites, actions] = useFavorites();\n\n const handleCopy = useCallback(\n (event: any) => {\n if (guide) {\n dispatch('copy', guide);\n }\n },\n [guide, dispatch]\n );\n\n const handlePrint = useCallback(() => {\n if (guide) {\n dispatch('print');\n }\n }, [guide, dispatch]);\n\n const items = useMemo(() => {\n const { id, title } = guide;\n\n const items: FunctionListItem[] = [];\n\n if (allowCopy) {\n items.push({\n type: 'copy',\n child: (\n <StyledListButton\n data-has-label={copyActionLabel ? 'true' : 'false'}\n data-has-symbol=\"true\"\n title={copyActionLabel}\n aria-label={printActionLabel}\n onClick={handleCopy}\n >\n <ColoredSymbolBadge size={16} symbol={{ type: 'Svg', content: 'copy' }} />\n {copyActionLabel && <StyledText>{copyActionLabel}</StyledText>}\n </StyledListButton>\n ),\n });\n }\n\n if (allowPrint) {\n items.push({\n type: 'print',\n child: (\n <StyledListButton\n data-has-label={printActionLabel ? 'true' : 'false'}\n data-has-symbol=\"true\"\n title={printActionLabel}\n aria-label={printActionLabel}\n onClick={handlePrint}\n >\n <ColoredSymbolBadge size={16} symbol={{ type: 'Svg', content: 'print' }} />\n {printActionLabel && <StyledText>{printActionLabel}</StyledText>}\n </StyledListButton>\n ),\n });\n }\n\n if (showFavoriteToggle) {\n const isFavorite = favorites.indexOf(id) > -1;\n items.push({\n type: 'favorite',\n child: (\n <FavoriteButton\n id={id}\n guideTitle={title}\n isFavorite={isFavorite}\n buttonLabel={isFavorite ? removeFavoriteTooltip : addFavoriteTooltip}\n addFavoriteTooltip={addFavoriteTooltip}\n removeFavoriteCancelLabel={removeFavoriteCancelLabel}\n removeFavoriteConfirmLabel={removeFavoriteConfirmLabel}\n removeFavoriteHeader={removeFavoriteHeader}\n removeFavoriteLabel={removeFavoriteLabel}\n removeFavoriteTooltip={removeFavoriteTooltip}\n actions={actions}\n />\n ),\n });\n }\n\n return items;\n }, [\n favorites,\n guide,\n allowCopy,\n allowPrint,\n showFavoriteToggle,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n ]);\n\n if (!items.length) {\n return null;\n }\n\n const trigger = (\n <StyledTriggerButton\n tabIndex={0}\n title={tooltip}\n data-has-symbol=\"true\"\n data-has-label=\"false\"\n >\n <ColoredSymbolBadge symbol={{ type: 'Svg', content: 'options' }} size={18} />\n </StyledTriggerButton>\n );\n\n const renderListItem = ({ type, child }: FunctionListItem) => {\n return (\n <li key={type} data-function-type={type}>\n {child}\n </li>\n );\n };\n\n if (picker === PickerTypes.DROPDOWN) {\n return (\n <StyledDropdownList\n className=\"humany-guide-functions-dropdown-list\"\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n closeButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n />\n );\n }\n\n if (picker === PickerTypes.DRAWER) {\n return (\n <DrawerList\n className=\"humany-guide-functions-drawer-list\"\n animation={{ type: DrawerAnimationType.SlideInBottom }}\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n closeButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n />\n );\n }\n\n return null;\n};\n\nexport default Functions;\n\nconst ColoredSymbolBadge = styled(SymbolBadge)`\n circle {\n fill: ${(p) => p.theme.colors?.text};\n }\n\n line,\n path,\n rect {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst StyledDropdownList = styled(DropdownList)`\n display: block;\n min-height: auto;\n`;\n\nconst StyledTriggerButton = styled(StyledListButton)<any>`\n padding: calc(${(p) => p.theme.sizes?.small} * 2) 0;\n`;\n","import styled from '@emotion/styled';\nimport { LanguageProperties } from '@telia-ace/knowledge-widget-component-utilities';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport {\n DrawerAnimationType,\n DrawerList,\n DropdownList,\n paddedBorderTabStyle,\n StyledListButton,\n SymbolBadge,\n Text,\n TextLink,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport { createParams } from '@telia-ace/widget-utilities';\nimport React, { useMemo } from 'react';\nimport { GuideProps } from './guide-component';\n\nexport type LanguageListItem = {\n id: string;\n key: string;\n label: string;\n};\n\ntype Props = Merge<\n {\n header?: string;\n tooltip?: string;\n guide: GuideProps;\n picker?: PickerTypes;\n },\n LanguageProperties\n>;\n\nconst getCurrentLanguageLabel = (guide: GuideProps, languages: LanguageListItem[]) => {\n return languages.find((l) => l.id === guide.id)?.label || '';\n};\n\nconst Languages: React.FC<Props> = ({\n header,\n tooltip,\n picker = PickerTypes.NONE,\n guide,\n ...other\n}) => {\n const { name, params } = useRouteData();\n\n const items = useMemo(() => {\n return Object.keys(guide.translations || {}).reduce((acc: LanguageListItem[], key) => {\n const item: Partial<LanguageListItem> = {};\n item.key = key;\n item.id = (guide.translations || {})[key];\n item.label = (other as { [key: string]: string })[`${key}LanguageLabel`];\n\n if (item.id || item.label) {\n acc.push(item as LanguageListItem);\n }\n\n return acc;\n }, []);\n }, [guide, other]);\n\n if (!items.length) {\n return null;\n }\n\n const currentLanguage = getCurrentLanguageLabel(guide, items);\n\n const trigger = (\n <Trigger\n tabIndex={0}\n title={tooltip}\n data-has-symbol=\"true\"\n data-has-label={picker === PickerTypes.DROPDOWN && currentLanguage ? 'true' : 'false'}\n >\n {picker === PickerTypes.DROPDOWN && (\n <>\n {currentLanguage && <LanguageButtonText>{currentLanguage}</LanguageButtonText>}\n <LanguageCaretSymbolBadge\n symbol={{ type: 'Svg', content: 'caret-down' }}\n size={11}\n />\n </>\n )}\n {picker === PickerTypes.DRAWER && (\n <>\n <ColoredSymbolBadge symbol={{ type: 'Svg', content: 'language' }} size={20} />\n </>\n )}\n </Trigger>\n );\n\n const renderListItem = ({ label, key, id }: LanguageListItem) => {\n return (\n <li key={key} data-language={key}>\n <LanguageLink\n tabIndex={0}\n text={label}\n routeName={name}\n selected={guide.id === id}\n params={createParams({\n ...params,\n connection: undefined,\n guide: id,\n })}\n />\n </li>\n );\n };\n\n if (picker === PickerTypes.DROPDOWN) {\n return (\n <StyledDropdownList\n className=\"humany-guide-languages-dropdown-list\"\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n />\n );\n }\n\n if (picker === PickerTypes.DRAWER) {\n return (\n <DrawerList\n className=\"humany-guide-languages-drawer-list\"\n animation={{ type: DrawerAnimationType.SlideInBottom }}\n header={header}\n items={items}\n trigger={trigger}\n renderItem={renderListItem}\n />\n );\n }\n\n return null;\n};\n\nexport default Languages;\n\nconst Trigger = styled(StyledListButton)`\n &&& {\n margin: 0 ${(p) => `calc(${p.theme.sizes?.small} * 2)`} 0 0;\n }\n`;\n\nconst ColoredSymbolBadge = styled(SymbolBadge)`\n circle {\n fill: ${(p) => p.theme.colors?.text};\n }\n\n line,\n path,\n rect {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst LanguageButtonText = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n font-size: ${(p) => p.theme.fonts?.normal};\n`;\n\nconst LanguageCaretSymbolBadge = styled(SymbolBadge)`\n align-self: flex-end;\n stroke-width: 2px;\n stroke-linecap: round;\n\n && {\n width: 0.6em;\n height: 1em;\n }\n line {\n stroke: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst StyledDropdownList = styled(DropdownList)`\n display: block;\n min-height: auto;\n`;\n\nconst LanguageLink = styled(TextLink)<any>`\n color: ${(p) => (p.selected ? p.theme.colors?.primary : p.theme.colors?.text)};\n ${(p) => p.selected && 'font-weight: bold;'}\n\n outline: none;\n &:focus-visible {\n ${paddedBorderTabStyle}\n text-decoration: underline;\n }\n`;\n","import styled from '@emotion/styled';\nimport { PickerTypes } from '@telia-ace/knowledge-widget-core';\nimport { DispatchAction, useProperties } from '@telia-ace/knowledge-widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React from 'react';\nimport Categories from './categories';\nimport Functions from './functions';\nimport { GuideComponentProps, ToolbarProps } from './guide-component';\nimport Languages from './languages';\n\ntype Props = {\n className?: string;\n dispatch: DispatchAction;\n};\n\nconst isEmpty = (toolbar: ToolbarProps) => {\n const {\n allowCopy = false,\n allowPrint = false,\n guideCategories = false,\n language = false,\n showFavoriteToggle = false,\n picker = PickerTypes.NONE,\n } = toolbar;\n\n if (\n (!allowCopy && !allowPrint && !language && !showFavoriteToggle && !guideCategories) ||\n picker === PickerTypes.NONE\n ) {\n return true;\n }\n\n return false;\n};\n\nconst Toolbar: React.FC<Props> = ({ className = '', dispatch }) => {\n const {\n toolbarLanguageHeader,\n toolbarFunctionsHeader,\n toolbarLanguageTooltip,\n toolbarFunctionsTooltip,\n toolbarFunctionsCloseButtonAriaLabel,\n printActionLabel,\n copyActionLabel,\n addFavoriteTooltip,\n removeFavoriteCancelLabel,\n removeFavoriteConfirmLabel,\n removeFavoriteHeader,\n removeFavoriteLabel,\n removeFavoriteTooltip,\n guide,\n toolbar,\n ...other\n } = useProperties<GuideComponentProps>();\n\n if (!guide || !toolbar || isEmpty(toolbar)) {\n return null;\n }\n\n const { language, guideCategories, allowCopy, allowPrint, showFavoriteToggle, picker } =\n toolbar;\n\n return (\n <Wrapper className={appendClassNames('humany-guide-toolbar', className)}>\n {language && Object.keys(guide.translations || {}).length > 1 && (\n <Languages\n guide={guide}\n header={toolbarLanguageHeader}\n tooltip={toolbarLanguageTooltip}\n picker={picker}\n {...other}\n />\n )}\n {guideCategories && <Categories guide={guide} toolbar={toolbar} />}\n {(allowCopy || allowPrint || showFavoriteToggle) && (\n <Functions\n guide={guide}\n header={toolbarFunctionsHeader}\n tooltip={toolbarFunctionsTooltip}\n printActionLabel={printActionLabel}\n copyActionLabel={copyActionLabel}\n addFavoriteTooltip={addFavoriteTooltip}\n removeFavoriteCancelLabel={removeFavoriteCancelLabel}\n removeFavoriteConfirmLabel={removeFavoriteConfirmLabel}\n removeFavoriteHeader={removeFavoriteHeader}\n removeFavoriteLabel={removeFavoriteLabel}\n removeFavoriteTooltip={removeFavoriteTooltip}\n toolbarFunctionsCloseButtonAriaLabel={toolbarFunctionsCloseButtonAriaLabel}\n allowCopy={allowCopy}\n allowPrint={allowPrint}\n showFavoriteToggle={showFavoriteToggle}\n picker={picker}\n dispatch={dispatch}\n />\n )}\n </Wrapper>\n );\n};\n\nexport default Toolbar;\n\nconst Wrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0 0 0 auto;\n\n > :not(:last-child) {\n margin: 0 calc(${(p) => p.theme.sizes?.small} * 2) 0 0;\n }\n`;\n","import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { contactLink, ContactList } from '@telia-ace/knowledge-widget-adapters';\nimport {\n Button,\n contentBox,\n createEmptyComponent,\n DialogLink,\n DialogList,\n embeddedLinkMapper,\n genericHtml,\n headingElement,\n Lightbox,\n linkTabStyle,\n Loader,\n loadingOpacity,\n Metadata,\n Paragraph,\n useChildren,\n useContainer,\n useDispatch,\n useProperties,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport { Component, NotFound } from '@telia-ace/widget-types-grid';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { forwardRef, useCallback, useMemo } from 'react';\nimport AnswerVersionPicker from './answer-version-picker';\nimport Feedback from './feedback';\nimport { GuideComponentProps } from './guide-component';\nimport Toolbar from './toolbar';\n\ntype Props = { className: string; accordion?: boolean };\n\nconst Guide = forwardRef<HTMLDivElement, Props>(\n ({ className, accordion = false, ...other }, ref) => {\n const {\n loading = false,\n dialog = [],\n contactMethods = [],\n showHeader = true,\n showAnswerVersions = false,\n defaultAnswerVersionLabel = 'Default',\n backButtonLabel,\n metadataByLabel,\n metadataModifiedLabel,\n metadataPublishedLabel,\n availablePerspectives,\n metadata,\n toolbar,\n guide,\n error,\n } = useProperties<GuideComponentProps>();\n const {\n params: { connection },\n } = useRouteData();\n const container = useContainer();\n const children = useChildren();\n const dispatch = useDispatch();\n\n const transform = useMemo(() => {\n return {\n transform: {\n img: (attrs: any) => (\n <Lightbox attrs={attrs} htmlBody={guide?.body || ''}></Lightbox>\n ),\n a: (attr: any) => {\n const { children, ...otherAttr } = attr;\n const connectionId = otherAttr['data-target'];\n if (connectionId && dialog.length) {\n const item = dialog.find(\n ({ connection }: any) => connection === connectionId\n );\n if (item) {\n return <DialogLink {...item}>{children}</DialogLink>;\n }\n }\n\n const defaultInstructions = embeddedLinkMapper(container);\n\n return defaultInstructions(attr);\n },\n },\n };\n }, [guide, container, dialog]);\n\n const handleBackButtonClick = useCallback(() => {\n dispatch('back');\n }, [dispatch]);\n\n if (!guide && !error && !loading) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-guide'),\n });\n }\n\n const { id = '', title = '', body = '', translations = {} } = guide || {};\n\n if (error && error.status === 404) {\n return <NotFound showSearch={false} />;\n }\n\n const showBackButton = !!accordion && !!connection;\n const language = Object.keys(translations).find((key) => translations[key] === `${id}`);\n\n return (\n <Wrapper\n ref={ref}\n {...other}\n data-loading={loading}\n className={appendClassNames(className, 'humany-guide')}\n >\n <Content\n data-loading={loading}\n accordion={accordion ? 'true' : 'false'}\n className=\"humany-guide-content\"\n >\n {((showAnswerVersions && guide) || !!toolbar) && (\n <Top className=\"humany-guide-top\">\n {showAnswerVersions && guide && (\n <AnswerVersionPicker\n defaultAnswerVersionLabel={defaultAnswerVersionLabel}\n availablePerspectives={availablePerspectives}\n guide={guide}\n />\n )}\n {!!toolbar && <Toolbar dispatch={dispatch} />}\n </Top>\n )}\n {!!(title || body) && (\n <Body\n className=\"humany-guide-body\"\n accordion={accordion ? 'true' : 'false'}\n header={(showHeader && title) || undefined}\n html={body}\n htmlParseInstruction={transform}\n lang={language}\n />\n )}\n {dialog && body.indexOf('h-option-link') === -1 && (\n <StyledDialogList dialog={dialog} />\n )}\n <StyledContactList\n backButtonShown={showBackButton ? 'true' : 'false'}\n contactMethods={contactMethods}\n dispatch={dispatch}\n guideId={guide && guide.id}\n />\n {!contactMethods.length && (\n <Feedback backButtonShown={showBackButton} accordion={accordion} />\n )}\n {showBackButton && (\n <BackButton aria-label={backButtonLabel} onClick={handleBackButtonClick}>\n <Caret\n width=\"7\"\n height=\"13\"\n viewBox=\"0 0 7 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line x1=\"6.64645\" y1=\"12.5513\" x2=\"0.648357\" y2=\"6.55319\" />\n <line x1=\"0.646447\" y1=\"6.64455\" x2=\"6.64454\" y2=\"0.646465\" />\n </Caret>\n {backButtonLabel && <span>{backButtonLabel}</span>}\n </BackButton>\n )}\n {metadata && (\n <StyledMetadata\n {...metadata}\n modified={guide?.modified}\n published={guide?.published}\n modifiedBy={guide?.modifiedBy}\n publishedBy={guide?.publishedBy}\n byLabel={metadataByLabel}\n modifiedLabel={metadataModifiedLabel}\n publishedLabel={metadataPublishedLabel}\n />\n )}\n {children.map((child) => (\n <StyledComponents\n key={child.id}\n id={child.id}\n branch=\"default\"\n {...{ embedded: true }}\n />\n ))}\n </Content>\n\n <Loader loading={loading} />\n </Wrapper>\n );\n }\n);\n\nexport default Guide;\n\nconst Wrapper = styled.div<{ 'data-loading': boolean }>`\n ${loadingOpacity}\n min-width: 0;\n`;\n\nconst Body = styled(Paragraph)<{ accordion: 'true' | 'false' }>`\n ${genericHtml}\n ${(p) => `padding: ${p.theme.sizes?.large};`}\n display: block;\n line-height: 1.6em;\n\n ${(p) =>\n headingElement(p)(\n 'h1',\n css`\n font-size: ${p.theme.fonts?.large};\n font-weight: normal;\n line-height: 1.6em;\n line-height: 1.6em;\n margin: 0 0 ${p.theme.sizes?.small};\n `\n )}\n\n p {\n font-weight: 300;\n font-size: ${(p) => p.theme.fonts?.normal};\n color: ${(p) => p.theme.colors?.text};\n a {\n display: inline;\n }\n }\n`;\n\nconst StyledContactList = styled(ContactList)<{ backButtonShown: 'true' | 'false' }>`\n border-top: ${(p) => p.theme.border};\n ${(p) => p.backButtonShown === 'true' && `border-bottom: ${p.theme.border};`}\n`;\n\nconst StyledDialogList = styled(DialogList)`\n ${(p) => `padding: 0 ${p.theme.sizes?.large} ${p.theme.sizes?.large};`}\n display: block;\n`;\n\nconst Top = styled.div`\n ${(p) => `padding: calc(${p.theme.sizes?.normal}*2) ${p.theme.sizes?.large};`}\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: ${(p) => p.theme.border};\n border-radius: ${(p) => `${p.theme.borderRadius} ${p.theme.borderRadius}`} 0 0;\n background-color: #ffffff;\n`;\n\nconst Content = styled.div<{ 'data-loading': boolean; accordion: 'true' | 'false' } & any>`\n ${contentBox}\n display: block;\n > a {\n ${contactLink}\n }\n\n ${(p) =>\n p.accordion === 'true' &&\n css`\n white-space: normal;\n box-shadow: none;\n background-color: #fafafa;\n `}\n`;\n\nconst StyledMetadata = styled(Metadata)`\n display: block;\n ${(p) => `padding: calc(${p.theme.sizes?.normal}*2) ${p.theme.sizes?.large};`}\n font-weight: 300;\n font-size: ${(p) => p.theme.fonts?.normal};\n color: ${(p) => p.theme.colors?.text};\n border-top: ${(p) => p.theme.border};\n`;\n\nconst StyledComponents = styled(Component)`\n border-top: ${(p) => p.theme.border};\n`;\n\nconst BackButton = styled(Button)`\n ${(p) => `padding: ${p.theme.sizes?.normal} calc(${p.theme.sizes?.normal} * 2);`}\n color: ${(p) => p.theme.colors?.primary};\n text-decoration: underline;\n font-size: ${(p) => p.theme.fonts?.normal};\n span {\n font-weight: 300;\n }\n &:focus-visible {\n ${linkTabStyle}\n padding: ${(p) => `calc(${p.theme.sizes?.small} / 2) ${p.theme.sizes?.small}`};\n }\n`;\n\nconst Caret = styled.svg`\n margin-right: ${(p) => p.theme.sizes?.small};\n line {\n stroke: ${(p) => p.theme.colors?.primary};\n }\n`;\n"],"names":["AnswerVersionPicker","className","defaultAnswerVersionLabel","selectedPerspective","guidePerspectives","availablePerspectives","name","params","useRouteData","perspectives","useMemo","title","React","StyledList","appendClassNames","perspective","label","selected","isRoot","VersionLink","__spreadProps","__spreadValues","AnswerVersionPicker$1","styled","List","p","_a","TextLink","css","paddedBorderTabStyle","StyledContactList","ContactList","StyledFeedback","FeedbackUi","_b","Recognition","StyledHeaderText","Feedback","backButtonShown","accordion","dispatch","useDispatch","loading","dialog","guide","handoverContactMethods","contactHeader","showFeedback","feedbackDirection","feedbackRecognitionLabel","feedbackGiven","feedbackHeader","positiveFeedbackLabel","negativeFeedbackLabel","contactFeedbackLabel","useProperties","feedback","Feedback$1","Categories","categories","picker","PickerTypes","trail","setTrail","useState","container","useContainer","useEffect","buildCategoryTrail","id","result","Tooltip","segments","CategoryTrail","c","category","index","Text","SymbolBadge","CategorySeparator","StyledListButton","CategoriesSymbolBadge","Categories$1","Functions","header","tooltip","printActionLabel","copyActionLabel","addFavoriteTooltip","removeFavoriteCancelLabel","removeFavoriteConfirmLabel","removeFavoriteHeader","removeFavoriteLabel","removeFavoriteTooltip","toolbarFunctionsCloseButtonAriaLabel","allowCopy","allowPrint","showFavoriteToggle","favorites","actions","useFavorites","handleCopy","useCallback","event","handlePrint","items","ColoredSymbolBadge","StyledText","isFavorite","FavoriteButton","trigger","StyledTriggerButton","renderListItem","type","child","StyledDropdownList","DrawerList","DrawerAnimationType","Functions$1","DropdownList","getCurrentLanguageLabel","languages","l","Languages","other","__objRest","acc","key","item","currentLanguage","Trigger","LanguageButtonText","LanguageCaretSymbolBadge","LanguageLink","createParams","Languages$1","isEmpty","toolbar","guideCategories","language","Toolbar","toolbarLanguageHeader","toolbarFunctionsHeader","toolbarLanguageTooltip","toolbarFunctionsTooltip","Wrapper","Toolbar$1","Guide","forwardRef","ref","contactMethods","showHeader","showAnswerVersions","backButtonLabel","metadataByLabel","metadataModifiedLabel","metadataPublishedLabel","metadata","error","connection","children","useChildren","transform","attrs","Lightbox","attr","connectionId","DialogLink","embeddedLinkMapper","handleBackButtonClick","createEmptyComponent","body","translations","NotFound","showBackButton","Content","Top","Body","StyledDialogList","BackButton","Caret","StyledMetadata","StyledComponents","Loader","loadingOpacity","Paragraph","genericHtml","headingElement","DialogList","contentBox","contactLink","Metadata","Component","Button","linkTabStyle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAMA,KAAuC,CAAC;AAAA,EAC1C,WAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,OAAO,EAAE,aAAaC,GAAqB,cAAcC,EAAkB;AAAA,EAC3E,uBAAAC,IAAwB,CAAC;AAC7B,MAAM;AACF,QAAM,EAAE,MAAAC,GAAM,QAAAC,EAAO,IAAIC,EAAa,GAEhCC,IAA8BC,EAAQ,MACpC,CAACN,KAAqB,CAACC,EAAsB,SACtC,KAGJA,EACF,OAAO,CAAC,EAAE,MAAAC,QAAW,CAAC,CAACF,EAAkBE,EAAK,EAC9C,IAAI,CAAC,EAAE,MAAAA,GAAM,OAAAK,SACH,EAAE,OAAOA,GAAO,YAAYP,EAAkBE,KACxD,GACN,CAACF,GAAmBC,CAAqB,CAAC;AAGzC,SAAA,gBAAAO,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,WAAWC,EAAiBb,GAAW,oCAAoC;AAAA,MAC3E,OAAOQ;AAAA,MACP,YAAY,CAACM,MAA6B;AACtC,cAAMC,IACFD,EAAY,UAAU,YAAYb,IAA4Ba,EAAY,OACxEE,IAAWd,MAAwBY,EAAY,YAC/CG,IACFD,MAAa,CAACV,EAAO,cAAcJ,MAAwBI,EAAO;AAEtE,+CACK,MAAG,EAAA,KAAKQ,EAAY,YAAY,gBAAcA,EAAY,WACvD,GAAA,gBAAAH,EAAA;AAAA,UAACO;AAAA,UAAA;AAAA,YACG,KAAKJ,EAAY;AAAA,YACjB,IAAIG,IAAS,SAAS;AAAA,YACtB,MAAMF;AAAA,YACN,WAAWV;AAAA,YACX,UAAAW;AAAA,YACA,cAAYD;AAAA,YACZ,OAAOA;AAAA,YACP,QAAQI,EAAAC,EAAA,IACDd,IADC;AAAA,cAEJ,YAAYQ,EAAY;AAAA,YAC5B;AAAA,UAAA;AAAA,QAAA,CAER;AAAA,MAER;AAAA,IAAA;AAAA,EAAA;AAGZ,GAEAO,KAAetB,IAETa,KAAaU,EAAOC,EAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAUL,CAACC,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQzCP,KAAcI,EAAOI,EAAQ;AAAA;AAAA,aAEtB,CAACF,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA;AAAA,MAG9B,CAACD,MACCA,EAAE,YACFG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMEC;AAAA;AAAA,GCzFJC,KAAoBP,EAAOQ,EAAW;AAAA,kBAI1B,CAACN,MAAMA,EAAE,MAAM;AAAA,MAC3B,CAACA,MAAMA,EAAE,oBAAoB,UAAU,kBAAkBA,EAAE,MAAM;AAAA,GAGjEO,KAAiBT,EAAOU,EAAU;AAAA,MAClC,CAACR,MAAM;;AAAA,sBAAYC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,UAASQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA,GAG1DC,KAAcZ,EAAOa,EAAgB;AAAA,MACrC,CAACX,MAAM;;AAAA,sBAAYC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,UAASQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA;AAAA;AAAA,iBAG/C,CAACT,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA,GAIjCW,KAA4B,CAAC,EAAE,iBAAAC,IAAkB,IAAO,WAAAC,IAAY,SAAY;AAClF,QAAMC,IAAWC,MACX;AAAA,IACF,SAAAC,IAAU;AAAA,IACV,QAAAC,IAAS,CAAC;AAAA,IACV,OAAAC;AAAA,IAEA,wBAAAC,IAAyB,CAAC;AAAA,IAC1B,eAAAC;AAAA,IAEA,cAAAC;AAAA,IACA,mBAAAC,IAAoB;AAAA,IACpB,0BAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,sBAAAC;AAAA,MACAC,EAAmC;AAGnC,SAAA,CAACR,KACD,CAACH,KACD,CAACA,EAAM,iBACNF,KAAW,CAACQ,KACbP,EAAO,SAEA,OAGPO,KAAiBD,KAA4B,CAACJ,EAAuB,yCAEhEV,IAAY,EAAA,WAAWI,IAAY,SAAS,WACxCU,CACL,IAIDL,EAAM,eAAeC,EAAuB,SAC/C,gBAAAjC,EAAA;AAAA,IAACkB;AAAAA,IAAA;AAAA,MACG,iBAAiBQ,IAAkB,SAAS;AAAA,MAC5C,WAAWC,IAAY,SAAS;AAAA,MAChC,QAAQO;AAAA,MACR,gBAAgBD;AAAA,MAChB,UAAAL;AAAA,IAAA;AAAA,EAGJ,IAAA,gBAAA5B,EAAA;AAAA,IAACoB;AAAA,IAAA;AAAA,MACG,WAAWO,IAAY,SAAS;AAAA,MAChC,UAAUa;AAAA,MACV,UAAUR,EAAM,cAAcU,IAAuBD;AAAA,MACrD,QAAQF;AAAA,MACR,UAAUD;AAAA,MACV,YAAY,CAACM,MAAkBhB,EAAS,YAAYgB,CAAQ;AAAA,MAC5D,WAAWR;AAAA,IAAA;AAAA,EAAA;AAGvB,GAEAS,KAAepB,IC1ETqB,KAA8B,CAAC;AAAA,EACjC,OAAO,EAAE,YAAAC,IAAa,GAAG;AAAA,EACzB,SAAS,EAAE,QAAAC,IAASC,EAAY,KAAK;AACzC,MAAM;AACF,QAAM,CAACC,GAAOC,CAAQ,IAAIC,GAAuB,CAAE,CAAA,GAC7CC,IAAYC;AAYd,SAVJC,GAAU,MAAM;AACZ,IAAAC;AAAA,MACI;AAAA,MACAT,EAAW,IAAI,CAACU,MAAOA,EAAG,UAAU;AAAA,MACpCJ;AAAA,IAAA,EACF,KAAK,CAACK,MAAW;AACf,MAAAP,EAASO,CAAM;AAAA,IAAA,CAClB;AAAA,EAAA,GACF,CAACX,CAAU,CAAC,GAEVG,EAAM,SAKP,gBAAAlD,EAAA;AAAA,IAAC2D;AAAA,IAAA;AAAA,MACG,WAAU;AAAA,MACV,QAAQX,MAAWC,EAAY;AAAA,MAC/B,SACI,gBAAAjD,EAAA,cAAAA,EAAA,UAAA,MACKkD,EAAM,IAAI,CAACU,MAEJ,gBAAA5D,EAAA;AAAA,QAAC6D;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,KAAKD,EAAS,IAAI,CAACE,MAAMA,EAAE,EAAE,EAAE,KAAK,GAAG;AAAA,QAAA;AAAA,QAEtCF,EAAS,IAAI,CAACG,GAAUC,MAEjB,gBAAAhE,EAAA;AAAA,UAACiE;AAAA,UAAA;AAAA,YACG,WAAU;AAAA,YACV,KAAKF,EAAS;AAAA,UAAA;AAAA,UAEbA,EAAS,UAAUC,MAAU,KAC1B,gBAAAhE,EAAA,cAACkE,KAAY,MAAM,IAAI,QAAQH,EAAS,OAAQ,CAAA;AAAA,UAEnDA,EAAS;AAAA,UACTC,MAAUJ,EAAS,SAAS,qCACxBO,IAAkB,EAAA,WAAU,+BAA4B,GAEzD;AAAA,QAAA,CAIf;AAAA,MAAA,CAGZ,CACL;AAAA,IAAA;AAAA,IAGHnB,MAAWC,EAAY,SACpB,gBAAAjD,EAAA;AAAA,MAACoE;AAAA,MAAA;AAAA,QACG,WAAU;AAAA,QACV,kBAAe;AAAA,QACf,mBAAgB;AAAA,MAAA;AAAA,MAEhB,gBAAApE,EAAA;AAAA,QAACqE;AAAA,QAAA;AAAA,UACG,MAAM;AAAA,UACN,QAAQ,EAAE,MAAM,OAAO,SAAS,cAAc;AAAA,QAAA;AAAA,MAClD;AAAA,IACJ,IAEC,gBAAArE,EAAA,cAAAqE,IAAA,EAAsB,MAAM,IAAI,QAAQ,EAAE,MAAM,OAAO,SAAS,cAAiB,EAAA,CAAA;AAAA,EAAA,IAnDnF;AAuDf,GAEAC,KAAexB,IAETe,KAAgBlD,EAAO;AAAA;AAAA;AAAA,oBAGT,CAACE,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA,sBAIpB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA,GAItCqD,KAAoBxD,EAAOsD,CAAI;AAAA,gBACrB,CAACpD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,GAGhCuD,KAAwB1D,EAAOuD,CAAW;AAAA;AAAA,GCrE1CK,KAA6B,CAAC;AAAA,EAChC,QAAAC;AAAA,EACA,SAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,4BAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,uBAAAC;AAAA,EACA,sCAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,YAAAC,IAAa;AAAA,EACb,oBAAAC,IAAqB;AAAA,EACrB,QAAArC,IAASC,EAAY;AAAA,EACrB,OAAAjB;AAAA,EACA,UAAAJ;AACJ,MAAM;AACF,QAAM,CAAC0D,GAAWC,CAAO,IAAIC,GAAa,GAEpCC,IAAaC;AAAA,IACf,CAACC,MAAe;AACZ,MAAI3D,KACAJ,EAAS,QAAQI,CAAK;AAAA,IAE9B;AAAA,IACA,CAACA,GAAOJ,CAAQ;AAAA,EAAA,GAGdgE,IAAcF,EAAY,MAAM;AAClC,IAAI1D,KACAJ,EAAS,OAAO;AAAA,EACpB,GACD,CAACI,GAAOJ,CAAQ,CAAC,GAEdiE,IAAQ/F,EAAQ,MAAM;AAClB,UAAA,EAAE,IAAA2D,GAAI,OAAA1D,EAAU,IAAAiC,GAEhB6D,IAA4B,CAAA;AAsClC,QApCIV,KACAU,EAAM,KAAK;AAAA,MACP,MAAM;AAAA,MACN,OACI,gBAAA7F,EAAA;AAAA,QAACoE;AAAA,QAAA;AAAA,UACG,kBAAgBO,IAAkB,SAAS;AAAA,UAC3C,mBAAgB;AAAA,UAChB,OAAOA;AAAA,UACP,cAAYD;AAAA,UACZ,SAASe;AAAA,QAAA;AAAA,QAET,gBAAAzF,EAAA,cAAC8F,GAAmB,EAAA,MAAM,IAAI,QAAQ,EAAE,MAAM,OAAO,SAAS,OAAU,EAAA,CAAA;AAAA,QACvEnB,KAAoB,gBAAA3E,EAAA,cAAA+F,IAAA,MAAYpB,CAAgB;AAAA,MACrD;AAAA,IAAA,CAEP,GAGDS,KACAS,EAAM,KAAK;AAAA,MACP,MAAM;AAAA,MACN,OACI,gBAAA7F,EAAA;AAAA,QAACoE;AAAA,QAAA;AAAA,UACG,kBAAgBM,IAAmB,SAAS;AAAA,UAC5C,mBAAgB;AAAA,UAChB,OAAOA;AAAA,UACP,cAAYA;AAAA,UACZ,SAASkB;AAAA,QAAA;AAAA,QAET,gBAAA5F,EAAA,cAAC8F,GAAmB,EAAA,MAAM,IAAI,QAAQ,EAAE,MAAM,OAAO,SAAS,QAAW,EAAA,CAAA;AAAA,QACxEpB,KAAqB,gBAAA1E,EAAA,cAAA+F,IAAA,MAAYrB,CAAiB;AAAA,MACvD;AAAA,IAAA,CAEP,GAGDW,GAAoB;AACpB,YAAMW,IAAaV,EAAU,QAAQ7B,CAAE,IAAI;AAC3CoC,MAAAA,EAAM,KAAK;AAAA,QACP,MAAM;AAAA,QACN,OACI,gBAAA7F,EAAA;AAAA,UAACiG;AAAA,UAAA;AAAA,YACG,IAAAxC;AAAA,YACA,YAAY1D;AAAA,YACZ,YAAAiG;AAAA,YACA,aAAaA,IAAaf,IAAwBL;AAAA,YAClD,oBAAAA;AAAA,YACA,2BAAAC;AAAA,YACA,4BAAAC;AAAA,YACA,sBAAAC;AAAA,YACA,qBAAAC;AAAA,YACA,uBAAAC;AAAA,YACA,SAAAM;AAAA,UAAA;AAAA,QACJ;AAAA,MAAA,CAEP;AAAA,IACL;AAEOM,WAAAA;AAAAA,EAAA,GACR;AAAA,IACCP;AAAA,IACAtD;AAAA,IACAmD;AAAA,IACAC;AAAA,IACAC;AAAA,IACAX;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,EAAA,CACH;AAEG,MAAA,CAACY,EAAM;AACA,WAAA;AAGX,QAAMK,IACF,gBAAAlG,EAAA;AAAA,IAACmG;AAAA,IAAA;AAAA,MACG,UAAU;AAAA,MACV,OAAO1B;AAAA,MACP,mBAAgB;AAAA,MAChB,kBAAe;AAAA,IAAA;AAAA,IAEf,gBAAAzE,EAAA,cAAC8F,GAAmB,EAAA,QAAQ,EAAE,MAAM,OAAO,SAAS,UAAA,GAAa,MAAM,GAAI,CAAA;AAAA,EAAA,GAI7EM,IAAiB,CAAC,EAAE,MAAAC,GAAM,OAAAC,wCAEvB,MAAG,EAAA,KAAKD,GAAM,sBAAoBA,KAC9BC,CACL;AAIJ,SAAAtD,MAAWC,EAAY,WAEnB,gBAAAjD,EAAA;AAAA,IAACuG;AAAAA,IAAA;AAAA,MACG,WAAU;AAAA,MACV,QAAA/B;AAAA,MACA,OAAAqB;AAAA,MACA,SAAAK;AAAA,MACA,YAAYE;AAAA,MACZ,sBAAsBlB;AAAA,IAAA;AAAA,EAAA,IAK9BlC,MAAWC,EAAY,SAEnB,gBAAAjD,EAAA;AAAA,IAACwG;AAAA,IAAA;AAAA,MACG,WAAU;AAAA,MACV,WAAW,EAAE,MAAMC,GAAoB,cAAc;AAAA,MACrD,QAAAjC;AAAA,MACA,OAAAqB;AAAA,MACA,SAAAK;AAAA,MACA,YAAYE;AAAA,MACZ,sBAAsBlB;AAAA,IAAA;AAAA,EAAA,IAK3B;AACX,GAEAwB,KAAenC,IAETuB,IAAqBnF,EAAOuD,CAAW;AAAA;AAAA,gBAE7B,CAACrD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAMrB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA,GAInCyF,KAAqB5F,EAAOgG,EAAY;AAAA;AAAA;AAAA,GAKxCR,KAAsBxF,EAAOyD,CAAgB;AAAA,oBAC/B,CAACvD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,GCpMpC8F,KAA0B,CAAC5E,GAAmB6E,MAAkC;;AAC3E,WAAA/F,IAAA+F,EAAU,KAAK,CAACC,MAAMA,EAAE,OAAO9E,EAAM,EAAE,MAAvC,gBAAAlB,EAA0C,UAAS;AAC9D,GAEMiG,KAA6B,CAACjG,MAM9B;AAN8B,MAAAQ,IAAAR,GAChC;AAAA,YAAA0D;AAAA,IACA,SAAAC;AAAA,IACA,QAAAzB,IAASC,EAAY;AAAA,IACrB,OAAAjB;AAAA,MAJgCV,GAK7B0F,IAAAC,EAL6B3F,GAK7B;AAAA,IAJH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,EAAE,MAAA5B,GAAM,QAAAC,EAAO,IAAIC,EAAa,GAEhCiG,IAAQ/F,EAAQ,MACX,OAAO,KAAKkC,EAAM,gBAAgB,CAAE,CAAA,EAAE,OAAO,CAACkF,GAAyBC,MAAQ;AAClF,UAAMC,IAAkC,CAAA;AACxC,WAAAA,EAAK,MAAMD,GACXC,EAAK,MAAMpF,EAAM,gBAAgB,CAAA,GAAImF,IAChCC,EAAA,QAASJ,EAAoC,GAAGG,oBAEjDC,EAAK,MAAMA,EAAK,UAChBF,EAAI,KAAKE,CAAwB,GAG9BF;AAAA,EACX,GAAG,CAAE,CAAA,GACN,CAAClF,GAAOgF,CAAK,CAAC;AAEb,MAAA,CAACnB,EAAM;AACA,WAAA;AAGL,QAAAwB,IAAkBT,GAAwB5E,GAAO6D,CAAK,GAEtDK,IACF,gBAAAlG,EAAA;AAAA,IAACsH;AAAA,IAAA;AAAA,MACG,UAAU;AAAA,MACV,OAAO7C;AAAA,MACP,mBAAgB;AAAA,MAChB,kBAAgBzB,MAAWC,EAAY,YAAYoE,IAAkB,SAAS;AAAA,IAAA;AAAA,IAE7ErE,MAAWC,EAAY,YACpB,gBAAAjD,EAAA,cAAAA,EAAA,UAAA,MACKqH,KAAoB,gBAAArH,EAAA,cAAAuH,IAAA,MAAoBF,CAAgB,GACzD,gBAAArH,EAAA;AAAA,MAACwH;AAAA,MAAA;AAAA,QACG,QAAQ,EAAE,MAAM,OAAO,SAAS,aAAa;AAAA,QAC7C,MAAM;AAAA,MAAA;AAAA,IAAA,CAEd;AAAA,IAEHxE,MAAWC,EAAY,UACpB,gBAAAjD,EAAA,cAAAA,EAAA,UAAA,sCACK8F,IAAmB,EAAA,QAAQ,EAAE,MAAM,OAAO,SAAS,cAAc,MAAM,IAAI,CAChF;AAAA,EAAA,GAKNM,IAAiB,CAAC,EAAE,OAAAhG,GAAO,KAAA+G,GAAK,IAAA1D,QAE7B,gBAAAzD,EAAA,cAAA,MAAA,EAAG,KAAAmH,GAAU,iBAAeA,KACzB,gBAAAnH,EAAA;AAAA,IAACyH;AAAA,IAAA;AAAA,MACG,UAAU;AAAA,MACV,MAAMrH;AAAA,MACN,WAAWV;AAAA,MACX,UAAUsC,EAAM,OAAOyB;AAAA,MACvB,QAAQiE,GAAalH,EAAAC,EAAA,IACdd,IADc;AAAA,QAEjB,YAAY;AAAA,QACZ,OAAO8D;AAAA,MAAA,EACV;AAAA,IAAA;AAAA,EAAA,CAET;AAIJ,SAAAT,MAAWC,EAAY,WAEnB,gBAAAjD,EAAA;AAAA,IAACuG;AAAA,IAAA;AAAA,MACG,WAAU;AAAA,MACV,QAAA/B;AAAA,MACA,OAAAqB;AAAA,MACA,SAAAK;AAAA,MACA,YAAYE;AAAA,IAAA;AAAA,EAAA,IAKpBpD,MAAWC,EAAY,SAEnB,gBAAAjD,EAAA;AAAA,IAACwG;AAAA,IAAA;AAAA,MACG,WAAU;AAAA,MACV,WAAW,EAAE,MAAMC,GAAoB,cAAc;AAAA,MACrD,QAAAjC;AAAA,MACA,OAAAqB;AAAA,MACA,SAAAK;AAAA,MACA,YAAYE;AAAA,IAAA;AAAA,EAAA,IAKjB;AACX,GAEAuB,KAAeZ,IAETO,KAAU3G,EAAOyD,CAAgB;AAAA;AAAA,oBAEnB,CAACvD,MAAM;;AAAA,kBAAQC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA,GAI5CgF,KAAqBnF,EAAOuD,CAAW;AAAA;AAAA,gBAE7B,CAACrD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAMrB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA,GAInCyG,KAAqB5G,EAAOsD,CAAI;AAAA,gBACtB,CAACpD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,iBACrB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,GAGjC0G,KAA2B7G,EAAOuD,CAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAUjC,CAACrD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA,GAInCyF,KAAqB5F,EAAOgG,EAAY;AAAA;AAAA;AAAA,GAKxCc,KAAe9G,EAAOI,EAAQ;AAAA,aACvB,CAACF,MAAO;;AAAA,SAAAA,EAAE,YAAWC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB,WAAUQ,IAAAT,EAAE,MAAM,WAAR,gBAAAS,EAAgB;AAAA;AAAA,MACtE,CAACT,MAAMA,EAAE,YAAY;AAAA;AAAA;AAAA;AAAA,UAIjBI;AAAA;AAAA;AAAA,GC7KJ2G,KAAU,CAACC,MAA0B;AACjC,QAAA;AAAA,IACF,WAAA1C,IAAY;AAAA,IACZ,YAAAC,IAAa;AAAA,IACb,iBAAA0C,IAAkB;AAAA,IAClB,UAAAC,IAAW;AAAA,IACX,oBAAA1C,IAAqB;AAAA,IACrB,QAAArC,IAASC,EAAY;AAAA,EACrB,IAAA4E;AAEJ,SACK,CAAC1C,KAAa,CAACC,KAAc,CAAC2C,KAAY,CAAC1C,KAAsB,CAACyC,KACnE9E,MAAWC,EAAY;AAM/B,GAEM+E,KAA2B,CAAC,EAAE,WAAA3I,IAAY,IAAI,UAAAuC,QAAe;AACzD,QAiBFd,IAAA6B,EAAmC,GAhBnC;AAAA,2BAAAsF;AAAA,IACA,wBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,sCAAAlD;AAAA,IACA,kBAAAR;AAAA,IACA,iBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,2BAAAC;AAAA,IACA,4BAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,OAAAjD;AAAA,IACA,SAAA6F;AAAA,MAEA/G,GADGkG,IAAAC,EACHnG,GADG;AAAA,IAfH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAIJ,MAAI,CAACkB,KAAS,CAAC6F,KAAWD,GAAQC,CAAO;AAC9B,WAAA;AAGX,QAAM,EAAE,UAAAE,GAAU,iBAAAD,GAAiB,WAAA3C,GAAW,YAAAC,GAAY,oBAAAC,GAAoB,QAAArC,EAC1E,IAAA6E;AAEJ,yCACKQ,IAAQ,EAAA,WAAWnI,EAAiB,wBAAwBb,CAAS,EACjE,GAAA0I,KAAY,OAAO,KAAK/F,EAAM,gBAAgB,CAAE,CAAA,EAAE,SAAS,KACxD,gBAAAhC,EAAA;AAAA,IAAC+G;AAAAA,IAAAtG,EAAA;AAAA,MACG,OAAAuB;AAAA,MACA,QAAQiG;AAAA,MACR,SAASE;AAAA,MACT,QAAAnF;AAAA,OACIgE;AAAA,EACR,GAEHc,KAAoB,gBAAA9H,EAAA,cAAA8C,IAAA,EAAW,OAAAd,GAAc,SAAA6F,EAAkB,CAAA,IAC9D1C,KAAaC,KAAcC,MACzB,gBAAArF,EAAA;AAAA,IAACuE;AAAAA,IAAA;AAAA,MACG,OAAAvC;AAAA,MACA,QAAQkG;AAAA,MACR,SAASE;AAAA,MACT,kBAAA1D;AAAA,MACA,iBAAAC;AAAA,MACA,oBAAAC;AAAA,MACA,2BAAAC;AAAA,MACA,4BAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,qBAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,sCAAAC;AAAA,MACA,WAAAC;AAAA,MACA,YAAAC;AAAA,MACA,oBAAAC;AAAA,MACA,QAAArC;AAAA,MACA,UAAApB;AAAA,IAAA;AAAA,EAAA,CAGZ;AAER,GAEA0G,KAAeN,IAETK,KAAU1H,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAOE,CAACE,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA,GC1EzCyH,KAAQC;AAAA,EACV,CAAC1H,GAA4C2H,MAAQ;AAApD,QAAAnH,IAAAR,GAAE,aAAAzB,GAAW,WAAAsC,IAAY,OAAzBL,GAAmC0F,IAAAC,EAAnC3F,GAAmC,CAAjC,aAAW;AACJ,UAAA;AAAA,MACF,SAAAQ,IAAU;AAAA,MACV,QAAAC,IAAS,CAAC;AAAA,MACV,gBAAA2G,IAAiB,CAAC;AAAA,MAClB,YAAAC,IAAa;AAAA,MACb,oBAAAC,IAAqB;AAAA,MACrB,2BAAAtJ,IAA4B;AAAA,MAC5B,iBAAAuJ;AAAA,MACA,iBAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,wBAAAC;AAAA,MACA,uBAAAvJ;AAAA,MACA,UAAAwJ;AAAA,MACA,SAAApB;AAAA,MACA,OAAA7F;AAAA,MACA,OAAAkH;AAAA,QACAvG,EAAmC,GACjC;AAAA,MACF,QAAQ,EAAE,YAAAwG,EAAW;AAAA,QACrBvJ,EAAa,GACXyD,IAAYC,MACZ8F,IAAWC,MACXzH,IAAWC,MAEXyH,IAAYxJ,EAAQ,OACf;AAAA,MACH,WAAW;AAAA,QACP,KAAK,CAACyJ,MACF,gBAAAvJ,EAAA,cAACwJ,MAAS,OAAAD,GAAc,WAAUvH,KAAA,gBAAAA,EAAO,SAAQ,GAAI,CAAA;AAAA,QAEzD,GAAG,CAACyH,MAAc;AACd,gBAAmC3I,IAAA2I,GAA3B,YAAAL,OAA2BtI,GAC7B4I,IADezC,EAAcnG,GAAd,CAAb,aACuB;AAC3B,cAAA4I,KAAgB3H,EAAO,QAAQ;AAC/B,kBAAMqF,IAAOrF,EAAO;AAAA,cAChB,CAAC,EAAE,YAAAoH,SAAsBA,OAAeO;AAAA,YAAA;AAE5C,gBAAItC;AACA,qBAAQ,gBAAApH,EAAA,cAAA2J,IAAAlJ,EAAA,IAAe2G,IAAOgC,EAAS;AAAA,UAE/C;AAIA,iBAF4BQ,GAAmBvG,CAAS,EAE7BoG,CAAI;AAAA,QACnC;AAAA,MACJ;AAAA,IAAA,IAEL,CAACzH,GAAOqB,GAAWtB,CAAM,CAAC,GAEvB8H,IAAwBnE,EAAY,MAAM;AAC5C,MAAA9D,EAAS,MAAM;AAAA,IAAA,GAChB,CAACA,CAAQ,CAAC;AAEb,QAAI,CAACI,KAAS,CAACkH,KAAS,CAACpH;AACrB,aAAOgI,GAAqBzG,GAAW7C,EAAAC,EAAA,IAChCuG,IADgC;AAAA,QAEnC,WAAW9G,EAAiBb,GAAW,cAAc;AAAA,MAAA,EACxD;AAGL,UAAM,EAAE,IAAAoE,IAAK,IAAI,OAAA1D,IAAQ,IAAI,MAAAgK,IAAO,IAAI,cAAAC,IAAe,CAAA,MAAOhI,KAAS,CAAA;AAEnE,QAAAkH,KAASA,EAAM,WAAW;AACnB,aAAA,gBAAAlJ,EAAA,cAACiK,IAAS,EAAA,YAAY,GAAO,CAAA;AAGxC,UAAMC,IAAiB,CAAC,CAACvI,KAAa,CAAC,CAACwH,GAClCpB,KAAW,OAAO,KAAKiC,CAAY,EAAE,KAAK,CAAC7C,MAAQ6C,EAAa7C,OAAS,GAAG1D,GAAI;AAGlF,WAAA,gBAAAzD,EAAA;AAAA,MAACqI;AAAA,MAAA7H,EAAAC,EAAA;AAAA,QACG,KAAAgI;AAAA,SACIzB,IAFP;AAAA,QAGG,gBAAclF;AAAA,QACd,WAAW5B,EAAiBb,GAAW,cAAc;AAAA,MAAA;AAAA,MAErD,gBAAAW,EAAA;AAAA,QAACmK;AAAA,QAAA;AAAA,UACG,gBAAcrI;AAAA,UACd,WAAWH,IAAY,SAAS;AAAA,UAChC,WAAU;AAAA,QAAA;AAAA,SAEPiH,KAAsB5G,KAAU,CAAC,CAAC6F,sCAChCuC,IAAI,EAAA,WAAU,mBACV,GAAAxB,KAAsB5G,KACnB,gBAAAhC,EAAA;AAAA,UAACZ;AAAAA,UAAA;AAAA,YACG,2BAAAE;AAAA,YACA,uBAAAG;AAAA,YACA,OAAAuC;AAAA,UAAA;AAAA,QAAA,GAGP,CAAC,CAAC6F,KAAY,gBAAA7H,EAAA,cAAAgI,IAAA,EAAQ,UAAApG,GAAoB,CAC/C;AAAA,QAEH,CAAC,EAAE7B,KAASgK,MACT,gBAAA/J,EAAA;AAAA,UAACqK;AAAA,UAAA;AAAA,YACG,WAAU;AAAA,YACV,WAAW1I,IAAY,SAAS;AAAA,YAChC,QAASgH,KAAc5I,KAAU;AAAA,YACjC,MAAMgK;AAAA,YACN,sBAAsBT;AAAA,YACtB,MAAMvB;AAAA,UAAA;AAAA,QACV;AAAA,QAEHhG,KAAUgI,EAAK,QAAQ,eAAe,MAAM,MACzC,gBAAA/J,EAAA,cAACsK,MAAiB,QAAAvI,EAAgB,CAAA;AAAA,QAEtC,gBAAA/B,EAAA;AAAA,UAACkB;AAAA,UAAA;AAAA,YACG,iBAAiBgJ,IAAiB,SAAS;AAAA,YAC3C,gBAAAxB;AAAA,YACA,UAAA9G;AAAA,YACA,SAASI,KAASA,EAAM;AAAA,UAAA;AAAA,QAC5B;AAAA,QACC,CAAC0G,EAAe,0CACZjH,IAAS,EAAA,iBAAiByI,GAAgB,WAAAvI,GAAsB;AAAA,QAEpEuI,KACI,gBAAAlK,EAAA,cAAAuK,IAAA,EAAW,cAAY1B,GAAiB,SAASgB,KAC9C,gBAAA7J,EAAA;AAAA,UAACwK;AAAA,UAAA;AAAA,YACG,OAAM;AAAA,YACN,QAAO;AAAA,YACP,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,OAAM;AAAA,UAAA;AAAA,UAEN,gBAAAxK,EAAA,cAAC,UAAK,IAAG,WAAU,IAAG,WAAU,IAAG,YAAW,IAAG,UAAU,CAAA;AAAA,UAC3D,gBAAAA,EAAA,cAAC,UAAK,IAAG,YAAW,IAAG,WAAU,IAAG,WAAU,IAAG,WAAW,CAAA;AAAA,QAAA,GAE/D6I,KAAoB,gBAAA7I,EAAA,cAAA,QAAA,MAAM6I,CAAgB,CAC/C;AAAA,QAEHI,KACG,gBAAAjJ,EAAA;AAAA,UAACyK;AAAA,UAAAjK,EAAAC,EAAA,IACOwI,IADP;AAAA,YAEG,UAAUjH,KAAA,gBAAAA,EAAO;AAAA,YACjB,WAAWA,KAAA,gBAAAA,EAAO;AAAA,YAClB,YAAYA,KAAA,gBAAAA,EAAO;AAAA,YACnB,aAAaA,KAAA,gBAAAA,EAAO;AAAA,YACpB,SAAS8G;AAAA,YACT,eAAeC;AAAA,YACf,gBAAgBC;AAAA,UAAA;AAAA,QACpB;AAAA,QAEHI,EAAS,IAAI,CAAC9C,MACX,gBAAAtG,EAAA;AAAA,UAAC0K;AAAA,UAAA;AAAA,YACG,KAAKpE,EAAM;AAAA,YACX,IAAIA,EAAM;AAAA,YACV,QAAO;AAAA,YACD,UAAU;AAAA,UAAK;AAAA,QAAA,CAE5B;AAAA,MACL;AAAA,MAEA,gBAAAtG,EAAA,cAAC2K,MAAO,SAAA7I,EAAkB,CAAA;AAAA,IAAA;AAAA,EAGtC;AACJ,GAIMuG,KAAU1H,EAAO;AAAA,MACjBiK;AAAA;AAAA,GAIAP,KAAO1J,EAAOkK,EAAS;AAAA,MACvBC;AAAA,MACA,CAACjK,MAAM;;AAAA,sBAAYC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA,MAIlC,CAACD;;AACC,SAAAkK,GAAelK,CAAC;AAAA,IACZ;AAAA,IACAG;AAAA,8BACiBF,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA;AAAA,+BAIdQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA,EAErC;AAAA;AAAA;AAAA;AAAA;AAAA,qBAIa,CAACT,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,iBAC1B,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAOlCI,KAAoBP,EAAOQ,EAAW;AAAA,kBAC1B,CAACN,MAAMA,EAAE,MAAM;AAAA,MAC3B,CAACA,MAAMA,EAAE,oBAAoB,UAAU,kBAAkBA,EAAE,MAAM;AAAA,GAGjEyJ,KAAmB3J,EAAOqK,EAAU;AAAA,MACpC,CAACnK,MAAM;;AAAA,wBAAcC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,UAASQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA;AAAA,GAI5D8I,KAAMzJ,EAAO;AAAA,MACb,CAACE,MAAM;;AAAA,2BAAiBC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,cAAaQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA,qBAIpD,CAACT,MAAMA,EAAE,MAAM;AAAA,qBACf,CAACA,MAAM,GAAGA,EAAE,MAAM,gBAAgBA,EAAE,MAAM;AAAA;AAAA,GAIzDsJ,KAAUxJ,EAAO;AAAA,MACjBsK;AAAA;AAAA;AAAA,UAGIC;AAAA;AAAA;AAAA,MAGJ,CAACrK,MACCA,EAAE,cAAc,UAChBG;AAAA;AAAA;AAAA;AAAA;AAAA,GAOFyJ,KAAiB9J,EAAOwK,EAAQ;AAAA;AAAA,MAEhC,CAACtK,MAAM;;AAAA,2BAAiBC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,cAAaQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA;AAAA,iBAExD,CAACT,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA,aAC1B,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA,kBAClB,CAACD,MAAMA,EAAE,MAAM;AAAA,GAG3B6J,KAAmB/J,EAAOyK,EAAS;AAAA,kBACvB,CAACvK,MAAMA,EAAE,MAAM;AAAA,GAG3B0J,KAAa5J,EAAO0K,EAAM;AAAA,MAC1B,CAACxK,MAAM;;AAAA,sBAAYC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,gBAAeQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA,aACzD,CAACT,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA,iBAEnB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAK7BwK;AAAA,mBACS,CAACzK,MAAM;;AAAA,kBAAQC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe,eAAcQ,IAAAT,EAAE,MAAM,UAAR,gBAAAS,EAAe;AAAA;AAAA;AAAA,GAIxEkJ,KAAQ7J,EAAO;AAAA,oBACD,CAACE,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,UAAR,gBAAAC,EAAe;AAAA;AAAA;AAAA,kBAExB,CAACD,MAAM;;AAAA,UAAAC,IAAAD,EAAE,MAAM,WAAR,gBAAAC,EAAgB;AAAA;AAAA;AAAA;"}