@visma-swno/vsn-navigation 1.2.0-beta.6 → 1.2.0-beta.8

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.
@@ -275,40 +275,40 @@ function De(e) {
275
275
  function w(e) {
276
276
  window.dispatchEvent(new CustomEvent(y, { detail: e }));
277
277
  }
278
- var T = "", E, Oe, D, O, ke, k = new ye();
279
- k.resolve();
280
- var A = 0, Ae = (e) => (ge(((e, t) => Ee(ke, e, t))), T = Oe = e.sourceLocale, D = new Set(e.targetLocales), D.add(e.sourceLocale), O = e.loadLocale, {
281
- getLocale: je,
282
- setLocale: Me
283
- }), je = () => T, Me = (e) => {
284
- if (e === (E ?? T)) return k.promise;
285
- if (!D || !O) throw Error("Internal error");
278
+ var T = "", E, Oe, D, ke, Ae, O = new ye();
279
+ O.resolve();
280
+ var k = 0, je = (e) => (ge(((e, t) => Ee(Ae, e, t))), T = Oe = e.sourceLocale, D = new Set(e.targetLocales), D.add(e.sourceLocale), ke = e.loadLocale, {
281
+ getLocale: Me,
282
+ setLocale: Ne
283
+ }), Me = () => T, Ne = (e) => {
284
+ if (e === (E ?? T)) return O.promise;
285
+ if (!D || !ke) throw Error("Internal error");
286
286
  if (!D.has(e)) throw Error("Invalid locale code");
287
- A++;
288
- let t = A;
289
- return E = e, k.settled && (k = new ye()), w({
287
+ k++;
288
+ let t = k;
289
+ return E = e, O.settled && (O = new ye()), w({
290
290
  status: "loading",
291
291
  loadingLocale: e
292
- }), (e === Oe ? Promise.resolve({ templates: void 0 }) : O(e)).then((n) => {
293
- A === t && (T = e, E = void 0, ke = n.templates, w({
292
+ }), (e === Oe ? Promise.resolve({ templates: void 0 }) : ke(e)).then((n) => {
293
+ k === t && (T = e, E = void 0, Ae = n.templates, w({
294
294
  status: "ready",
295
295
  readyLocale: e
296
- }), k.resolve());
296
+ }), O.resolve());
297
297
  }, (n) => {
298
- A === t && (w({
298
+ k === t && (w({
299
299
  status: "error",
300
300
  errorLocale: e,
301
301
  errorMessage: n.toString()
302
- }), k.reject(n));
303
- }), k.promise;
304
- }, Ne = () => {
302
+ }), O.reject(n));
303
+ }), O.promise;
304
+ }, Pe = () => {
305
305
  if (typeof navigator > "u") return !1;
306
306
  let e = navigator.userAgentData?.platform ?? navigator.platform ?? "";
307
307
  return /mac/i.test(e);
308
- }, Pe = (e) => !e.shiftKey && !e.altKey && (Ne() ? e.metaKey && !e.ctrlKey : e.ctrlKey && !e.metaKey), j = (e) => e.shiftKey || e.altKey || e.ctrlKey || e.metaKey, M = (e) => !j(e), Fe = () => x("Choose a service"), Ie = () => x("Search"), Le = () => Ne() ? "Cmd+K" : "CTRL+K", Re = (e) => x(b`Type at least ${e} characters to search`), ze = () => x("Menu items"), Be = (e) => x(b`Load ${e} more`), Ve = () => x("VSN"), He = "survicate-sdk", Ue = "ui-components-feedback", We = (e) => `https://survey.survicate.com/workspaces/${e}/web_surveys.js`;
308
+ }, Fe = (e) => !e.shiftKey && !e.altKey && (Pe() ? e.metaKey && !e.ctrlKey : e.ctrlKey && !e.metaKey), A = (e) => e.shiftKey || e.altKey || e.ctrlKey || e.metaKey, j = (e) => !A(e), Ie = () => x("Choose a service"), Le = () => x("Search"), Re = () => Pe() ? "Cmd+K" : "CTRL+K", ze = (e) => x(b`Type at least ${e} characters to search`), Be = () => x("Menu items"), Ve = (e) => x(b`Load ${e} more`), He = () => x("VSN"), Ue = "survicate-sdk", We = "ui-components-feedback", Ge = (e) => `https://survey.survicate.com/workspaces/${e}/web_surveys.js`;
309
309
  //#endregion
310
310
  //#region src/shared/icons.ts
311
- function N(e, t = 24, r) {
311
+ function M(e, t = 24, r) {
312
312
  return n`<svg
313
313
  xmlns="http://www.w3.org/2000/svg"
314
314
  width="${t}"
@@ -323,23 +323,23 @@ function N(e, t = 24, r) {
323
323
  class=${r ?? ""}
324
324
  >${e}</svg>`;
325
325
  }
326
- var Ge = i`
326
+ var Ke = i``, qe = i`
327
327
  <path d="M4 5h16"/>
328
328
  <path d="M4 12h16"/>
329
329
  <path d="M4 19h16"/>
330
- `, Ke = i`
330
+ `, Je = i`
331
331
  <path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"/>
332
332
  <path d="M20 2v4"/>
333
333
  <path d="M22 4h-4"/>
334
334
  <circle cx="4" cy="20" r="2"/>
335
- `, qe = i`
335
+ `, Ye = i`
336
336
  <path d="M10.268 21a2 2 0 0 0 3.464 0"/>
337
337
  <path d="M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"/>
338
- `, Je = i`
338
+ `, Xe = i`
339
339
  <path d="M10.268 21a2 2 0 0 0 3.464 0"/>
340
340
  <path d="M11.68 2.009A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673c-.824-.85-1.678-1.731-2.21-3.348"/>
341
341
  <circle cx="18" cy="5" r="3"/>
342
- `, Ye = i`
342
+ `, Ze = i`
343
343
  <path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/>
344
344
  <path d="M7 10v12"/>
345
345
  `;
@@ -350,14 +350,14 @@ i`
350
350
  <path d="M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2"/>
351
351
  <path d="M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16"/>
352
352
  `;
353
- var Xe = i`
353
+ var Qe = i`
354
354
  <path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/>
355
355
  <path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>
356
- `, Ze = i`
356
+ `, $e = i`
357
357
  <circle cx="12" cy="12" r="10"/>
358
358
  <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/>
359
359
  <path d="M12 17h.01"/>
360
- `, Qe = i`
360
+ `, et = i`
361
361
  <circle cx="12" cy="8" r="5"/>
362
362
  <path d="M20 21a8 8 0 0 0-16 0"/>
363
363
  `;
@@ -368,11 +368,11 @@ i`
368
368
  <path d="M12 17v5"/>
369
369
  <path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"/>
370
370
  `;
371
- var $e = i`
371
+ var tt = i`
372
372
  <path d="m16 17 5-5-5-5"/>
373
373
  <path d="M21 12H9"/>
374
374
  <path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/>
375
- `, et = i`
375
+ `, nt = i`
376
376
  <path d="M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6"/>
377
377
  <path d="m21 3-9 9"/>
378
378
  <path d="M15 3h6v6"/>
@@ -381,17 +381,17 @@ i`
381
381
  <circle cx="12" cy="12" r="10"/>
382
382
  <circle cx="12" cy="12" r="1"/>
383
383
  `;
384
- var tt = i`
384
+ var rt = i`
385
385
  <path d="m7 15 5 5 5-5"/>
386
386
  <path d="m7 9 5-5 5 5"/>
387
- `, nt = i`
387
+ `, it = i`
388
388
  <path d="m18 15-6-6-6 6"/>
389
- `, P = i`
389
+ `, N = i`
390
390
  <path d="m6 9 6 6 6-6"/>
391
- `, rt = i`
391
+ `, at = i`
392
392
  <circle cx="11" cy="11" r="8"/>
393
393
  <path d="m21 21-4.3-4.3"/>
394
- `, it = i`
394
+ `, ot = i`
395
395
  <circle cx="12" cy="12" r="10"/>
396
396
  <path d="m15 9-6 6"/>
397
397
  <path d="m9 9 6 6"/>
@@ -401,7 +401,7 @@ i`
401
401
  <line x1="12" x2="12" y1="8" y2="12"/>
402
402
  <line x1="12" x2="12.01" y1="16" y2="16"/>
403
403
  `;
404
- var at = i`
404
+ var st = i`
405
405
  <path d="M12 16h.01"/>
406
406
  <path d="M12 8v4"/>
407
407
  <path d="M15.312 2a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2z"/>
@@ -412,12 +412,12 @@ i`
412
412
  `, i`
413
413
  <path fill-rule="evenodd" clip-rule="evenodd" d="M2.60982 1.03843C2.99778 0.96126 3.39992 1.00087 3.76537 1.15224C4.13082 1.30362 4.44318 1.55996 4.66294 1.88886C4.8827 2.21776 5 2.60444 5 3V4H7V3C7 2.60444 7.1173 2.21776 7.33706 1.88886C7.55682 1.55996 7.86918 1.30362 8.23463 1.15224C8.60009 1.00087 9.00222 0.96126 9.39018 1.03843C9.77814 1.1156 10.1345 1.30608 10.4142 1.58579C10.6939 1.86549 10.8844 2.22186 10.9616 2.60982C11.0387 2.99778 10.9991 3.39992 10.8478 3.76537C10.6964 4.13082 10.44 4.44318 10.1111 4.66294C9.78224 4.8827 9.39556 5 9 5H8V7H9C9.39556 7 9.78224 7.1173 10.1111 7.33706C10.44 7.55682 10.6964 7.86918 10.8478 8.23463C10.9991 8.60009 11.0387 9.00222 10.9616 9.39018C10.8844 9.77814 10.6939 10.1345 10.4142 10.4142C10.1345 10.6939 9.77814 10.8844 9.39018 10.9616C9.00222 11.0387 8.60009 10.9991 8.23463 10.8478C7.86918 10.6964 7.55682 10.44 7.33706 10.1111C7.1173 9.78224 7 9.39556 7 9V8H5V9C5 9.39556 4.8827 9.78224 4.66294 10.1111C4.44318 10.44 4.13082 10.6964 3.76537 10.8478C3.39992 10.9991 2.99778 11.0387 2.60982 10.9616C2.22186 10.8844 1.86549 10.6939 1.58579 10.4142C1.30608 10.1345 1.1156 9.77814 1.03843 9.39018C0.96126 9.00222 1.00087 8.60009 1.15224 8.23463C1.30362 7.86918 1.55996 7.55682 1.88886 7.33706C2.21776 7.1173 2.60444 7 3 7H4V5H3C2.60444 5 2.21776 4.8827 1.88886 4.66294C1.55996 4.44318 1.30362 4.13082 1.15224 3.76537C1.00087 3.39992 0.96126 2.99778 1.03843 2.60982C1.1156 2.22186 1.30608 1.86549 1.58579 1.58579C1.86549 1.30608 2.22186 1.1156 2.60982 1.03843ZM4 4V3C4 2.80222 3.94135 2.60888 3.83147 2.44443C3.72159 2.27998 3.56541 2.15181 3.38268 2.07612C3.19996 2.00043 2.99889 1.98063 2.80491 2.01922C2.61093 2.0578 2.43275 2.15304 2.29289 2.29289C2.15304 2.43275 2.0578 2.61093 2.01922 2.80491C1.98063 2.99889 2.00043 3.19996 2.07612 3.38268C2.15181 3.56541 2.27998 3.72159 2.44443 3.83147C2.60888 3.94135 2.80222 4 3 4H4ZM5 5V7H7V5H5ZM4 8H3C2.80222 8 2.60888 8.05865 2.44443 8.16853C2.27998 8.27841 2.15181 8.43459 2.07612 8.61732C2.00043 8.80004 1.98063 9.00111 2.01922 9.19509C2.0578 9.38907 2.15304 9.56726 2.29289 9.70711C2.43275 9.84696 2.61093 9.9422 2.80491 9.98079C2.99889 10.0194 3.19996 9.99957 3.38268 9.92388C3.56541 9.84819 3.72159 9.72002 3.83147 9.55557C3.94135 9.39112 4 9.19778 4 9V8ZM8 8V9C8 9.19778 8.05865 9.39112 8.16853 9.55557C8.27841 9.72002 8.43459 9.84819 8.61732 9.92388C8.80004 9.99957 9.00111 10.0194 9.19509 9.98079C9.38907 9.9422 9.56726 9.84696 9.70711 9.70711C9.84696 9.56726 9.9422 9.38907 9.98079 9.19509C10.0194 9.00111 9.99957 8.80004 9.92388 8.61732C9.84819 8.43459 9.72002 8.27841 9.55557 8.16853C9.39112 8.05865 9.19778 8 9 8H8ZM8 4H9C9.19778 4 9.39112 3.94135 9.55557 3.83147C9.72002 3.72159 9.84819 3.56541 9.92388 3.38268C9.99957 3.19996 10.0194 2.99889 9.98079 2.80491C9.9422 2.61093 9.84696 2.43275 9.70711 2.29289C9.56726 2.15304 9.38907 2.0578 9.19509 2.01922C9.00111 1.98063 8.80004 2.00043 8.61732 2.07612C8.43459 2.15181 8.27841 2.27998 8.16853 2.44443C8.05865 2.60888 8 2.80222 8 3V4Z"/>
414
414
  `;
415
- var ot = i`
415
+ var ct = i`
416
416
  <path d="m9 18 6-6-6-6"/>
417
417
  `;
418
418
  //#endregion
419
419
  //#region \0@oxc-project+runtime@0.127.0/helpers/decorate.js
420
- function F(e, t, n, r) {
420
+ function P(e, t, n, r) {
421
421
  var i = arguments.length, a = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, o;
422
422
  if (typeof Reflect == "object" && typeof Reflect.decorate == "function") a = Reflect.decorate(e, t, n, r);
423
423
  else for (var s = e.length - 1; s >= 0; s--) (o = e[s]) && (a = (i < 3 ? o(a) : i > 3 ? o(t, n, a) : o(t, n)) || a);
@@ -425,12 +425,9 @@ function F(e, t, n, r) {
425
425
  }
426
426
  //#endregion
427
427
  //#region src/components/vsn-side-bar/vsn-menu/vsn-menu-item.ts
428
- var I, L = class extends e {
428
+ var F, I = class extends e {
429
429
  static {
430
- I = this;
431
- }
432
- static {
433
- this.styles = [h];
430
+ F = this;
434
431
  }
435
432
  static {
436
433
  this._idCounter = 0;
@@ -452,7 +449,7 @@ var I, L = class extends e {
452
449
  }
453
450
  }, this._onItemMouseLeave = () => {
454
451
  this._showTooltip = !1;
455
- }, this._tooltipId = `vsn-side-menu-item-tooltip-${I._idCounter++}`;
452
+ }, this._tooltipId = `vsn-side-menu-item-tooltip-${F._idCounter++}`;
456
453
  }
457
454
  willUpdate(e) {
458
455
  let t = this.tree;
@@ -477,7 +474,7 @@ var I, L = class extends e {
477
474
  <div class="ga-tooltip ga-tooltip--right-center w-34 max-w-135">${this.tree?.label}</div>
478
475
  </div>
479
476
  <span class="ga-side-navigation__item-icon">
480
- ${e ? this._isExpanded ? N(P, 16) : N(ot, 16) : ""}
477
+ ${e ? this._isExpanded ? M(N, 16) : M(ct, 16) : ""}
481
478
  </span>
482
479
  <div class="ga-side-navigation__item-content">
483
480
  <div class="ga-side-navigation__item-label">${this.tree?.label}</div>
@@ -511,7 +508,7 @@ var I, L = class extends e {
511
508
  this._isExpanded = !this._isExpanded, e.preventDefault(), e.stopPropagation();
512
509
  return;
513
510
  }
514
- if (e.button !== 0 || j(e)) return;
511
+ if (e.button !== 0 || A(e)) return;
515
512
  e.preventDefault(), e.stopPropagation();
516
513
  let n = new CustomEvent("vsn-menu-item-changed", {
517
514
  bubbles: !0,
@@ -521,19 +518,16 @@ var I, L = class extends e {
521
518
  this.dispatchEvent(n);
522
519
  }
523
520
  };
524
- F([s({ attribute: !1 })], L.prototype, "tree", void 0), F([s({ type: Number })], L.prototype, "level", void 0), F([ue({
521
+ P([s({ attribute: !1 })], I.prototype, "tree", void 0), P([s({ type: Number })], I.prototype, "level", void 0), P([ue({
525
522
  context: de,
526
523
  subscribe: !0
527
- }), l()], L.prototype, "_currentActiveId", void 0), F([l()], L.prototype, "_isActive", void 0), F([l()], L.prototype, "_isExpanded", void 0), F([l()], L.prototype, "_showTooltip", void 0), F([l()], L.prototype, "_tooltipPos", void 0), F([c(".ga-side-navigation__item-label")], L.prototype, "_labelEl", void 0), L = I = F([o("vsn-menu-item")], L);
524
+ }), l()], I.prototype, "_currentActiveId", void 0), P([l()], I.prototype, "_isActive", void 0), P([l()], I.prototype, "_isExpanded", void 0), P([l()], I.prototype, "_showTooltip", void 0), P([l()], I.prototype, "_tooltipPos", void 0), P([c(".ga-side-navigation__item-label")], I.prototype, "_labelEl", void 0), I = F = P([o("vsn-menu-item")], I);
528
525
  //#endregion
529
526
  //#region src/components/vsn-side-bar/vsn-menu/vsn-menu.ts
530
- var R = class extends e {
527
+ var L = class extends e {
531
528
  constructor(...e) {
532
529
  super(...e), this.items = [], this._currentActiveId = "", this.currentItem = "";
533
530
  }
534
- static {
535
- this.styles = [h];
536
- }
537
531
  createRenderRoot() {
538
532
  return this;
539
533
  }
@@ -542,29 +536,30 @@ var R = class extends e {
542
536
  }
543
537
  render() {
544
538
  return n`
545
- <div class="flex flex-col ga-side-navigation__body h-full">
546
- <div class="flex-1 overflow-y-auto">
547
- ${d(this.items, (e) => this.menuItem(e))}
548
- </div>
549
- <div>
550
- <slot name="nav-footer"></slot>
551
- </div>
539
+ <div class="flex flex-col ga-side-navigation__body h-full">
540
+ <div class="flex-1 overflow-y-auto ga-scroll">
541
+ ${d(this.items, (e) => this.menuItem(e))}
542
+ </div>
543
+ <div>
544
+ <slot name="nav-footer"></slot>
552
545
  </div>
546
+ </div>
553
547
  `;
554
548
  }
555
549
  menuItem(e) {
556
- return n`<vsn-menu-item .tree=${e}></vsn-menu-item>`;
550
+ return n`
551
+ <vsn-menu-item .tree=${e}></vsn-menu-item>`;
557
552
  }
558
553
  };
559
- F([s({ attribute: !1 })], R.prototype, "items", void 0), F([le({ context: de }), l()], R.prototype, "_currentActiveId", void 0), F([s()], R.prototype, "currentItem", void 0), R = F([o("vsn-menu")], R);
554
+ P([s({ attribute: !1 })], L.prototype, "items", void 0), P([le({ context: de }), l()], L.prototype, "_currentActiveId", void 0), P([s()], L.prototype, "currentItem", void 0), L = P([o("vsn-menu")], L);
560
555
  //#endregion
561
556
  //#region src/components/vsn-side-bar/vsn-menu/vsn-menu-button.ts
562
- var z = class extends e {
557
+ var R = class extends e {
563
558
  constructor(...e) {
564
559
  super(...e), this.label = "", this.closeOnClick = !1, this._onKeydown = (e) => {
565
- e.defaultPrevented || M(e) && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), e.stopImmediatePropagation(), this.click());
560
+ e.defaultPrevented || j(e) && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), e.stopImmediatePropagation(), this.click());
566
561
  }, this._onClick = (e) => {
567
- e.defaultPrevented || e.button !== 0 || j(e) || this.closeOnClick && this.dispatchEvent(new CustomEvent("vsn-side-bar-close", {
562
+ e.defaultPrevented || e.button !== 0 || A(e) || this.closeOnClick && this.dispatchEvent(new CustomEvent("vsn-side-bar-close", {
568
563
  bubbles: !0,
569
564
  composed: !0
570
565
  }));
@@ -671,13 +666,13 @@ var z = class extends e {
671
666
  `;
672
667
  }
673
668
  };
674
- F([s()], z.prototype, "label", void 0), F([s({
669
+ P([s()], R.prototype, "label", void 0), P([s({
675
670
  type: Boolean,
676
671
  attribute: "close-on-click"
677
- })], z.prototype, "closeOnClick", void 0), z = F([o("vsn-menu-button")], z);
672
+ })], R.prototype, "closeOnClick", void 0), R = P([o("vsn-menu-button")], R);
678
673
  //#endregion
679
674
  //#region src/components/vsn-side-bar/vsn-menu/vsn-menu-separator.ts
680
- var st = class extends e {
675
+ var lt = class extends e {
681
676
  static {
682
677
  this.styles = [t`
683
678
  /* flow-root establishes a BFC so the .line's margins stay contained.
@@ -700,30 +695,30 @@ var st = class extends e {
700
695
  return n`<div class="line"></div>`;
701
696
  }
702
697
  };
703
- st = F([o("vsn-menu-separator")], st);
698
+ lt = P([o("vsn-menu-separator")], lt);
704
699
  //#endregion
705
700
  //#region src/components/vsn-side-bar/vsn-footer/vsn-footer.keyboard.ts
706
- var ct = class {
701
+ var ut = class {
707
702
  constructor(e) {
708
703
  this._prevExpanded = !1, this.onUserKeydown = (e) => {
709
- e.defaultPrevented || (M(e) && (e.key === "Enter" || e.key === " ") ? (e.preventDefault(), this.host.expanded = !this.host.expanded) : M(e) && e.key === "Escape" && this.host.expanded && (e.preventDefault(), this.host.expanded = !1));
704
+ e.defaultPrevented || (j(e) && (e.key === "Enter" || e.key === " ") ? (e.preventDefault(), this.host.expanded = !this.host.expanded) : j(e) && e.key === "Escape" && this.host.expanded && (e.preventDefault(), this.host.expanded = !1));
710
705
  }, this.onDropdownKeydown = (e) => {
711
706
  if (e.defaultPrevented) return;
712
- if (M(e) && e.key === "Escape") {
707
+ if (j(e) && e.key === "Escape") {
713
708
  e.preventDefault(), this._closeAndRefocus();
714
709
  return;
715
710
  }
716
- if (M(e) && (e.key === "Enter" || e.key === " ")) {
711
+ if (j(e) && (e.key === "Enter" || e.key === " ")) {
717
712
  let t = e.target;
718
713
  t instanceof HTMLElement && t.classList.contains("ga-side-navigation__footer-dropdown-item") && (e.preventDefault(), t.click());
719
714
  return;
720
715
  }
721
- if (M(e) && e.key === "Tab") {
716
+ if (j(e) && e.key === "Tab") {
722
717
  let t = Array.from(this.host.querySelectorAll(".ga-side-navigation__footer-dropdown-item")), n = t[t.length - 1];
723
718
  n && e.target === n && (this.host.expanded = !1);
724
719
  return;
725
720
  }
726
- if (j(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
721
+ if (A(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
727
722
  e.preventDefault();
728
723
  let t = this.host.querySelector(".ga-side-navigation__footer-dropdown");
729
724
  if (!t) return;
@@ -743,7 +738,7 @@ var ct = class {
743
738
  this.host.querySelector(".ga-side-navigation__user")?.focus();
744
739
  });
745
740
  }
746
- }, lt = class {
741
+ }, dt = class {
747
742
  constructor(e, t, n) {
748
743
  this._onPointerDown = (e) => {
749
744
  let t = e.composedPath();
@@ -760,79 +755,40 @@ var ct = class {
760
755
  hostDisconnected() {
761
756
  document.removeEventListener("pointerdown", this._onPointerDown, !0);
762
757
  }
763
- }, ut = t`
764
- @layer components {
765
- :where(.ga-side-navigation__user),
766
- :where(.ga-side-navigation__footer-dropdown-item) {
767
- width: 100%;
768
- cursor: pointer;
769
- }
770
-
771
- .ga-side-navigation__footer-dropdown-item:focus-visible {
772
- outline: 2px solid var(--ga-color-border-focus);
773
- outline-offset: 4px;
774
- }
775
-
776
- .vsn-side-navigation__user-info {
777
- display: flex;
778
- flex-direction: column;
779
- flex: 1;
780
- min-width: 0;
781
- }
782
-
783
- .vsn-side-navigation__user-info > .ga-side-navigation__user-name {
784
- flex: initial;
785
- }
786
-
787
- .vsn-side-navigation__user-email {
788
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
789
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
790
- font-weight: 400;
791
- }
792
-
793
- .vsn-side-navigation__user-avatar--icon {
794
- display: inline-flex;
795
- align-items: center;
796
- justify-content: center;
797
- }
798
- }
799
- `, dt = "initials";
800
- function ft(e, t, n, r) {
758
+ }, ft = "initials";
759
+ function pt(e, t, n, r) {
801
760
  if (!t) return;
802
761
  let i = new URLSearchParams({
803
- type: dt,
762
+ type: ft,
804
763
  size: r
805
764
  });
806
765
  return n && i.set("client_id", n), `${e}${t}?${i}`;
807
766
  }
808
767
  //#endregion
809
768
  //#region src/components/vsn-side-bar/vsn-footer/vsn-footer.ts
810
- var pt = {
811
- profile: Qe,
812
- logout: $e
813
- }, mt = () => ({
769
+ var mt = {
770
+ profile: et,
771
+ logout: tt
772
+ }, ht = () => ({
814
773
  profile: x("My profile"),
815
774
  logout: x("Log out")
816
- }), B = class extends e {
817
- static {
818
- this.styles = [h, ut];
819
- }
775
+ }), z = class extends e {
820
776
  createRenderRoot() {
821
777
  return this;
822
778
  }
823
779
  get _items() {
824
780
  return [{
825
781
  id: "profile",
826
- label: mt().profile,
782
+ label: ht().profile,
827
783
  url: this.myProfileUrl
828
784
  }, {
829
785
  id: "logout",
830
- label: mt().logout,
786
+ label: ht().logout,
831
787
  url: "/logout"
832
788
  }];
833
789
  }
834
790
  constructor() {
835
- super(), this.expanded = !1, this._avatarFailed = !1, this._keyboard = new ct(this), new lt(this, [".ga-side-navigation__footer-dropdown", ".ga-side-navigation__user"], () => {
791
+ super(), this.expanded = !1, this._avatarFailed = !1, this._keyboard = new ut(this), new dt(this, [".ga-side-navigation__footer-dropdown", ".ga-side-navigation__user"], () => {
836
792
  this.expanded = !1;
837
793
  });
838
794
  }
@@ -844,62 +800,63 @@ var pt = {
844
800
  }
845
801
  render() {
846
802
  return n`
847
- <div class="ga-side-navigation__footer">
848
- ${this.expanded ? this.renderDropdown() : r}
803
+ <div class="ga-side-navigation__footer">
804
+ ${this.expanded ? this.renderDropdown() : r}
849
805
 
850
- <div
851
- role="button"
852
- tabindex="0"
853
- aria-expanded="${this.expanded}"
854
- aria-haspopup="menu"
855
- class="ga-side-navigation__user
806
+ <div
807
+ role="button"
808
+ tabindex="0"
809
+ aria-expanded="${this.expanded}"
810
+ aria-haspopup="menu"
811
+ class="ga-side-navigation__user
856
812
  ${this.expanded ? "ga-side-navigation__user--active" : ""}"
857
- @click=${this._toggle}
858
- @keydown=${this._keyboard.onUserKeydown}>
813
+ @click=${this._toggle}
814
+ @keydown=${this._keyboard.onUserKeydown}>
859
815
 
860
- ${this.renderAvatar()}
816
+ ${this.renderAvatar()}
861
817
 
862
- <div class="vsn-side-navigation__user-info">
818
+ <div class="vsn-side-navigation__user-info">
863
819
  <span class="ga-side-navigation__user-name">
864
820
  ${this.user.userName}
865
821
  </span>
866
- ${this.user.userEmail ? n`<span class="vsn-side-navigation__user-email">
822
+ ${this.user.userEmail ? n`<span class="vsn-side-navigation__user-email">
867
823
  ${this.user.userEmail}
868
824
  </span>` : r}
869
- </div>
825
+ </div>
870
826
 
871
- <span class="ga-side-navigation__user-action">
872
- ${this.expanded ? N(nt, 16) : N(tt, 16)}
827
+ <span class="ga-side-navigation__user-action">
828
+ ${this.expanded ? M(it, 16) : M(rt, 16)}
873
829
  </span>
874
830
 
875
- </div>
876
831
  </div>
832
+ </div>
877
833
  `;
878
834
  }
879
835
  renderDropdown() {
880
836
  return n`
881
837
  <div class="ga-side-navigation__footer-dropdown" @keydown=${this._keyboard.onDropdownKeydown}>
882
838
 
883
- ${this._items.map((e) => {
839
+ ${this._items.map((e) => {
884
840
  let t = n`
885
- <span class="ga-side-navigation__footer-dropdown-icon">
886
- ${N(pt[e.id], 16)}
841
+ <span class="ga-side-navigation__footer-dropdown-icon">
842
+ ${M(mt[e.id], 16)}
887
843
  </span>
888
- <span class="ga-side-navigation__footer-dropdown-title">
844
+ <span class="ga-side-navigation__footer-dropdown-title">
889
845
  ${e.label}
890
846
  </span>
891
- ${e.external ? n`
892
- <span class="ga-side-navigation__footer-dropdown-trail">
893
- ${N(et, 16)}
847
+ ${e.external ? n`
848
+ <span class="ga-side-navigation__footer-dropdown-trail">
849
+ ${M(nt, 16)}
894
850
  </span>
895
- ` : r}
896
- `;
851
+ ` : r}
852
+ `;
897
853
  return e.id === "profile" ? n`<a
898
- class="ga-side-navigation__footer-dropdown-item"
899
- href=${e.url ?? ""}
900
- @click=${(t) => this._handleProfileClick(t, e)}>
901
- ${t}
902
- </a>` : n`<div
854
+ class="ga-side-navigation__footer-dropdown-item"
855
+ href=${e.url ?? ""}
856
+ @click=${(t) => this._handleProfileClick(t, e)}>
857
+ ${t}
858
+ </a>` : n`
859
+ <div
903
860
  role="button"
904
861
  tabindex="0"
905
862
  class="ga-side-navigation__footer-dropdown-item"
@@ -930,39 +887,39 @@ var pt = {
930
887
  }));
931
888
  }
932
889
  renderAvatar() {
933
- let e = ft(this.profilePictureBaseUrl, this.user.userId, this.user.clientId, "small");
890
+ let e = pt(this.profilePictureBaseUrl, this.user.userId, this.user.clientId, "small");
934
891
  return e && !this._avatarFailed ? n`<img
935
892
  class="ga-side-navigation__user-avatar"
936
893
  src=${e}
937
894
  alt=""
938
895
  @error=${() => {
939
896
  this._avatarFailed = !0;
940
- }} />` : n`<span class="ga-side-navigation__user-avatar vsn-side-navigation__user-avatar--icon">
941
- ${N(Qe, 24)}
897
+ }}/>` : n`<span class="ga-side-navigation__user-avatar vsn-side-navigation__user-avatar--icon">
898
+ ${M(et, 24)}
942
899
  </span>`;
943
900
  }
944
901
  };
945
- F([s({ attribute: !1 })], B.prototype, "user", void 0), F([s()], B.prototype, "profilePictureBaseUrl", void 0), F([s()], B.prototype, "myProfileUrl", void 0), F([s({
902
+ P([s({ attribute: !1 })], z.prototype, "user", void 0), P([s()], z.prototype, "profilePictureBaseUrl", void 0), P([s()], z.prototype, "myProfileUrl", void 0), P([s({
946
903
  type: Boolean,
947
904
  reflect: !0
948
- })], B.prototype, "expanded", void 0), F([l()], B.prototype, "_avatarFailed", void 0), B = F([S(), o("vsn-footer")], B);
905
+ })], z.prototype, "expanded", void 0), P([l()], z.prototype, "_avatarFailed", void 0), z = P([S(), o("vsn-footer")], z);
949
906
  //#endregion
950
907
  //#region src/components/vsn-side-bar/vsn-header/vsn-header.keyboard.ts
951
- var ht = class {
908
+ var gt = class {
952
909
  constructor(e) {
953
910
  this.onSwitcherKeydown = (e) => {
954
911
  if (!e.defaultPrevented) {
955
- if (M(e) && (e.key === "Enter" || e.key === " ")) {
912
+ if (j(e) && (e.key === "Enter" || e.key === " ")) {
956
913
  if (e.preventDefault(), this.host.expanded && !this.host.canClose) return;
957
914
  (this.host.expanded || this.host.hasAvailableItems || this.host.modulesLoading) && (this.host.expanded = !this.host.expanded);
958
915
  return;
959
916
  }
960
- if (M(e) && e.key === "ArrowDown" && !this.host.expanded) {
917
+ if (j(e) && e.key === "ArrowDown" && !this.host.expanded) {
961
918
  if (!this.host.hasAvailableItems) return;
962
919
  e.preventDefault(), this.host.expanded = !0;
963
920
  return;
964
921
  }
965
- if (M(e) && e.key === "Escape" && this.host.expanded) {
922
+ if (j(e) && e.key === "Escape" && this.host.expanded) {
966
923
  if (!this.host.canClose) return;
967
924
  e.preventDefault(), this.host.expanded = !1;
968
925
  }
@@ -970,23 +927,23 @@ var ht = class {
970
927
  }, this.host = e, e.addController(this);
971
928
  }
972
929
  hostConnected() {}
973
- }, gt = ".ga-side-navigation__switcher:focus{outline-offset:2px;outline:2px solid #3b82f6}", V = class extends e {
930
+ }, B = class extends e {
974
931
  constructor(...e) {
975
- super(...e), this.items = [], this.loading = !1, this._handleKeydown = (e) => {
932
+ super(...e), this.items = [], this.loading = !1, this.maxHeight = 0, this._handleKeydown = (e) => {
976
933
  if (e.defaultPrevented) return;
977
- if (M(e) && e.key === "Escape") {
934
+ if (j(e) && e.key === "Escape") {
978
935
  e.preventDefault(), this.dispatchEvent(new CustomEvent("close-request", {
979
936
  bubbles: !0,
980
937
  composed: !0
981
938
  }));
982
939
  return;
983
940
  }
984
- if (M(e) && (e.key === "Enter" || e.key === " ")) {
941
+ if (j(e) && (e.key === "Enter" || e.key === " ")) {
985
942
  let t = e.target;
986
943
  t instanceof HTMLElement && t.classList.contains("ga-side-navigation__switcher-dropdown-item") && (e.preventDefault(), t.click());
987
944
  return;
988
945
  }
989
- if (M(e) && e.key === "Tab") {
946
+ if (j(e) && e.key === "Tab") {
990
947
  let t = Array.from(this.querySelectorAll(".ga-side-navigation__switcher-dropdown-item")), n = t[t.length - 1];
991
948
  n && e.target === n && this.dispatchEvent(new CustomEvent("tab-exit", {
992
949
  bubbles: !0,
@@ -994,7 +951,7 @@ var ht = class {
994
951
  }));
995
952
  return;
996
953
  }
997
- if (j(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
954
+ if (A(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
998
955
  e.preventDefault();
999
956
  let t = Array.from(this.querySelectorAll(".ga-side-navigation__switcher-dropdown-item"));
1000
957
  if (t.length === 0) return;
@@ -1035,11 +992,12 @@ var ht = class {
1035
992
  <span class="vsn-spinner"></span>
1036
993
  </div>
1037
994
  ` : n`
1038
- <div class="ga-side-navigation__switcher-dropdown"
995
+ <div class="ga-side-navigation__switcher-dropdown ga-scroll"
1039
996
  role="menu"
1040
- aria-label=${Fe()}
997
+ style=${`max-height: ${Math.max(0, this.maxHeight)}px`}
998
+ aria-label=${Ie()}
1041
999
  @keydown=${this._handleKeydown}>
1042
- <span class="ga-side-navigation__switcher-dropdown-header">${Fe()}</span>
1000
+ <span class="ga-side-navigation__switcher-dropdown-header">${Ie()}</span>
1043
1001
  ${this.items.map((e) => n`
1044
1002
  <a class="ga-side-navigation__switcher-dropdown-item"
1045
1003
  href=${e.url ?? ""}
@@ -1052,59 +1010,10 @@ var ht = class {
1052
1010
  `;
1053
1011
  }
1054
1012
  };
1055
- F([s({ attribute: !1 })], V.prototype, "items", void 0), F([s({ type: Boolean })], V.prototype, "loading", void 0), V = F([S(), o("vsn-switcher-menu")], V);
1013
+ P([s({ attribute: !1 })], B.prototype, "items", void 0), P([s({ type: Boolean })], B.prototype, "loading", void 0), P([s({ attribute: !1 })], B.prototype, "maxHeight", void 0), B = P([S(), o("vsn-switcher-menu")], B);
1056
1014
  //#endregion
1057
- //#region src/components/vsn-side-bar/vsn-search/vsn-search.css.ts
1058
- var _t = t`
1059
- .vsn-search__trigger,
1060
- .vsn-search__clear {
1061
- display: inline-flex;
1062
- align-items: center;
1063
- background: none;
1064
- border: none;
1065
- padding: 0;
1066
- cursor: pointer;
1067
- flex-shrink: 0;
1068
- }
1069
-
1070
- .vsn-search__trigger {
1071
- color: var(--ga-color-icon-primary);
1072
- }
1073
-
1074
- .vsn-search__clear {
1075
- color: var(--ga-color-icon-action);
1076
- }
1077
-
1078
- .vsn-search__trigger:disabled {
1079
- cursor: default;
1080
- opacity: 0.5;
1081
- }
1082
-
1083
- .vsn-search__helper {
1084
- display: -webkit-box;
1085
- -webkit-box-orient: vertical;
1086
- -webkit-line-clamp: 3;
1087
- flex: 1 0 0;
1088
- max-width: 550px;
1089
- margin-inline: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1));
1090
- padding: 0 calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1));
1091
- overflow: hidden;
1092
- text-overflow: ellipsis;
1093
- font-family: var(--ga-font-family-primary);
1094
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1095
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1096
- font-weight: 400;
1097
- color: var(--ga-color-text-body);
1098
- }
1099
-
1100
- .ga-side-navigation__search input {
1101
- color: var(--ga-color-text-body);
1102
- }
1103
-
1104
- .ga-side-navigation__search input::placeholder {
1105
- color: var(--ga-color-text-disable-selected);
1106
- }
1107
- `, H = class extends e {
1015
+ //#region src/components/vsn-side-bar/vsn-search/vsn-search.ts
1016
+ var V = class extends e {
1108
1017
  constructor(...e) {
1109
1018
  super(...e), this.shortcut = "", this.value = "", this.loading = !1, this._emitSearch = () => {
1110
1019
  this._canSearch && this.dispatchEvent(new CustomEvent("vsn-search-submit", {
@@ -1118,15 +1027,12 @@ var _t = t`
1118
1027
  composed: !0
1119
1028
  }));
1120
1029
  }, this._handleEscape = (e) => {
1121
- e.defaultPrevented || M(e) && e.key === "Escape" && this.value.length > 0 && (e.preventDefault(), this._emitSearchCleared());
1030
+ e.defaultPrevented || j(e) && e.key === "Escape" && this.value.length > 0 && (e.preventDefault(), this._emitSearchCleared());
1122
1031
  };
1123
1032
  }
1124
1033
  createRenderRoot() {
1125
1034
  return this;
1126
1035
  }
1127
- static {
1128
- this.styles = [h, _t];
1129
- }
1130
1036
  focus() {
1131
1037
  let e = this.querySelector("input");
1132
1038
  e?.focus(), e?.select();
@@ -1143,7 +1049,7 @@ var _t = t`
1143
1049
  }));
1144
1050
  }
1145
1051
  _handleEnter(e) {
1146
- e.defaultPrevented || M(e) && e.key === "Enter" && this._emitSearch();
1052
+ e.defaultPrevented || j(e) && e.key === "Enter" && this._emitSearch();
1147
1053
  }
1148
1054
  render() {
1149
1055
  let e = this.value.length > 0 && this.value.length < 3;
@@ -1155,17 +1061,17 @@ var _t = t`
1155
1061
  aria-label=${x("Search")}
1156
1062
  ?disabled=${!this._canSearch}
1157
1063
  @click=${this._emitSearch}>
1158
- ${N(rt, 24)}
1064
+ ${M(at, 24)}
1159
1065
  </button>
1160
1066
  <input type="search"
1161
- .placeholder=${Ie()}
1067
+ .placeholder=${Le()}
1162
1068
  .value=${this.value}
1163
1069
  @input=${this._handleInput}
1164
1070
  @keydown=${this._handleEnter}/>
1165
1071
  ${this._trailingSlot()}
1166
1072
  </div>
1167
1073
  ${u(e, () => n`
1168
- <div class="vsn-search__helper">${Re(3)}</div>`)}
1074
+ <div class="vsn-search__helper">${ze(3)}</div>`)}
1169
1075
  `;
1170
1076
  }
1171
1077
  _trailingSlot() {
@@ -1183,7 +1089,7 @@ var _t = t`
1183
1089
  return n`
1184
1090
  <button class="vsn-search__clear" aria-label=${x("Clear search")}
1185
1091
  @click=${this._emitSearchCleared}>
1186
- ${N(it, 16)}
1092
+ ${M(ot, 16)}
1187
1093
  </button>
1188
1094
  `;
1189
1095
  }
@@ -1191,18 +1097,15 @@ var _t = t`
1191
1097
  return n`<kbd class="ga-side-navigation__search-shortcut">${this.shortcut}</kbd>`;
1192
1098
  }
1193
1099
  };
1194
- F([s()], H.prototype, "shortcut", void 0), F([s()], H.prototype, "value", void 0), F([s({ type: Boolean })], H.prototype, "loading", void 0), H = F([S(), o("vsn-search")], H);
1100
+ P([s()], V.prototype, "shortcut", void 0), P([s()], V.prototype, "value", void 0), P([s({ type: Boolean })], V.prototype, "loading", void 0), V = P([S(), o("vsn-search")], V);
1195
1101
  //#endregion
1196
1102
  //#region src/components/vsn-side-bar/vsn-header/vsn-header.ts
1197
- var U = class extends e {
1103
+ var H = class extends e {
1198
1104
  createRenderRoot() {
1199
1105
  return this;
1200
1106
  }
1201
- static {
1202
- this.styles = [h, a(gt)];
1203
- }
1204
1107
  constructor() {
1205
- super(), this.modules = [], this.modulesLoading = !1, this.hasMenu = !1, this.searchValue = "", this.searchLoading = !1, this.expanded = !1, this._keyboard = new ht(this), new lt(this, [".ga-side-navigation__switcher-dropdown", ".ga-side-navigation__switcher"], () => {
1108
+ super(), this.modules = [], this.modulesLoading = !1, this.hasMenu = !1, this.moduleSwitcherMaxHeight = 0, this.searchValue = "", this.searchLoading = !1, this.expanded = !1, this._keyboard = new gt(this), new dt(this, [".ga-side-navigation__switcher-dropdown", ".ga-side-navigation__switcher"], () => {
1206
1109
  this.canClose && (this.expanded = !1);
1207
1110
  });
1208
1111
  }
@@ -1220,29 +1123,28 @@ var U = class extends e {
1220
1123
  @keydown=${this._keyboard.onSwitcherKeydown}
1221
1124
  title="">
1222
1125
  <span class="ga-side-navigation__switcher-title">${e.title}</span>
1223
- ${u(this.canClose, () => n`
1224
- <span class="ga-side-navigation__switcher-action">
1225
- ${this.expanded ? N(P, 16) : N(tt, 16)}
1226
- </span>
1227
- `)}
1126
+ <span class="ga-side-navigation__switcher-action">
1127
+ ${this.canClose ? this.expanded ? M(N, 16) : M(rt, 16) : M(Ke, 16)}
1128
+ </span>
1228
1129
  </div>
1229
1130
 
1230
1131
  ${u(this.expanded, () => n`
1231
1132
  <vsn-switcher-menu
1232
- .items=${e.kind === "loading" ? [] : e.available}
1233
- .loading=${e.kind === "loading"}
1234
- @item-select=${this._onItemSelect}
1235
- @close-request=${this._onCloseRequest}
1236
- @focus-switcher=${this._onFocusSwitcher}
1237
- @tab-exit=${this._onTabExit}>
1133
+ .items=${e.kind === "loading" ? [] : e.available}
1134
+ .loading=${e.kind === "loading"}
1135
+ .maxHeight=${this.moduleSwitcherMaxHeight}
1136
+ @item-select=${this._onItemSelect}
1137
+ @close-request=${this._onCloseRequest}
1138
+ @focus-switcher=${this._onFocusSwitcher}
1139
+ @tab-exit=${this._onTabExit}>
1238
1140
  </vsn-switcher-menu>`)}
1239
1141
  </div>
1240
1142
 
1241
1143
  ${u(this.search?.enabled, () => n`
1242
1144
  <vsn-search
1243
- .shortcut=${Le()}
1244
- .value=${this.searchValue}
1245
- .loading=${this.searchLoading}>
1145
+ .shortcut=${Re()}
1146
+ .value=${this.searchValue}
1147
+ .loading=${this.searchLoading}>
1246
1148
  </vsn-search>`)}
1247
1149
  </div>
1248
1150
  `;
@@ -1250,7 +1152,7 @@ var U = class extends e {
1250
1152
  get _state() {
1251
1153
  if (this.modulesLoading) return {
1252
1154
  kind: "loading",
1253
- title: this.activeModuleLabel || Ve()
1155
+ title: this.activeModuleLabel || He()
1254
1156
  };
1255
1157
  let e = this.modules.find((e) => e.id === this.activeModuleId);
1256
1158
  return e ? {
@@ -1259,7 +1161,7 @@ var U = class extends e {
1259
1161
  available: this.modules.filter((t) => t.id !== e.id)
1260
1162
  } : {
1261
1163
  kind: "no-active",
1262
- title: Ve(),
1164
+ title: He(),
1263
1165
  available: this.modules
1264
1166
  };
1265
1167
  }
@@ -1303,85 +1205,16 @@ var U = class extends e {
1303
1205
  this.canClose && (this.expanded = !1);
1304
1206
  }
1305
1207
  };
1306
- F([s({ attribute: !1 })], U.prototype, "modules", void 0), F([s()], U.prototype, "activeModuleId", void 0), F([s()], U.prototype, "activeModuleLabel", void 0), F([s({ type: Boolean })], U.prototype, "modulesLoading", void 0), F([s({ type: Boolean })], U.prototype, "hasMenu", void 0), F([s({ attribute: !1 })], U.prototype, "search", void 0), F([s()], U.prototype, "searchValue", void 0), F([s({ type: Boolean })], U.prototype, "searchLoading", void 0), F([s({
1208
+ P([s({ attribute: !1 })], H.prototype, "modules", void 0), P([s()], H.prototype, "activeModuleId", void 0), P([s()], H.prototype, "activeModuleLabel", void 0), P([s({ type: Boolean })], H.prototype, "modulesLoading", void 0), P([s({ type: Boolean })], H.prototype, "hasMenu", void 0), P([s({ attribute: !1 })], H.prototype, "moduleSwitcherMaxHeight", void 0), P([s({ attribute: !1 })], H.prototype, "search", void 0), P([s()], H.prototype, "searchValue", void 0), P([s({ type: Boolean })], H.prototype, "searchLoading", void 0), P([s({
1307
1209
  type: Boolean,
1308
1210
  reflect: !0
1309
- })], U.prototype, "expanded", void 0), U = F([S(), o("vsn-header")], U);
1211
+ })], H.prototype, "expanded", void 0), H = P([S(), o("vsn-header")], H);
1310
1212
  //#endregion
1311
- //#region src/components/vsn-side-bar/vsn-search-results/vsn-search-results.css.ts
1312
- var vt = t`
1313
- .vsn-search-results__empty {
1314
- display: flex;
1315
- flex-direction: column;
1316
- align-items: center;
1317
- padding: calc(2rem * var(--ga-base-scaling-factor, 1)) calc(1.5rem * var(--ga-base-scaling-factor, 1));
1318
- text-align: center;
1319
- gap: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1320
- }
1321
-
1322
- .vsn-search-results__empty-title {
1323
- font-family: var(--ga-font-family-primary);
1324
- font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1325
- line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1326
- font-weight: 600;
1327
- margin-bottom: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1328
- }
1329
-
1330
- .vsn-search-results__empty-message,
1331
- .vsn-search-results__empty-hint {
1332
- font-family: var(--ga-font-family-primary);
1333
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1334
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1335
- font-weight: 400;
1336
- color: var(--ga-color-text-disable-selected);
1337
- }
1338
-
1339
- .vsn-search-results__empty-support {
1340
- margin-top: calc(1.5rem * var(--ga-base-scaling-factor, 1));
1341
- font-family: var(--ga-font-family-primary);
1342
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1343
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1344
- font-weight: 400;
1345
- color: var(--ga-color-text-on-disabled);
1346
- }
1347
-
1348
- .vsn-search-results__error {
1349
- display: flex;
1350
- flex-direction: column;
1351
- align-items: center;
1352
- padding: calc(2rem * var(--ga-base-scaling-factor, 1)) calc(1.5rem * var(--ga-base-scaling-factor, 1));
1353
- text-align: center;
1354
- font-family: var(--ga-font-family-primary);
1355
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1356
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1357
- font-weight: 400;
1358
- color: var(--ga-color-text-body);
1359
- }
1360
-
1361
- .vsn-search-results__load-more {
1362
- width: 100%;
1363
- padding: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1)) calc(0.25rem * 4 * var(--ga-base-scaling-factor, 1));
1364
- background: none;
1365
- border: none;
1366
- cursor: pointer;
1367
- color: var(--ga-color-text-action);
1368
- text-align: center;
1369
- font-family: var(--ga-font-family-primary);
1370
- font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1371
- font-style: normal;
1372
- font-weight: 500;
1373
- line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1374
- letter-spacing: var(--ga-text-md-letter-spacing);
1375
- }
1376
-
1377
- .vsn-search-results__load-more:disabled {
1378
- cursor: not-allowed;
1379
- opacity: 0.5;
1380
- }
1381
- `, yt = class {
1213
+ //#region src/components/vsn-side-bar/vsn-search-results/vsn-search-results.keyboard.ts
1214
+ var _t = class {
1382
1215
  constructor(e) {
1383
1216
  this.onResultsKeydown = (e) => {
1384
- if (e.defaultPrevented || j(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
1217
+ if (e.defaultPrevented || A(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
1385
1218
  e.preventDefault();
1386
1219
  let t = Array.from(this.host.querySelectorAll(".ga-side-navigation__search-results-item"));
1387
1220
  if (t.length === 0) return;
@@ -1392,16 +1225,13 @@ var vt = t`
1392
1225
  }, this.host = e, e.addController(this);
1393
1226
  }
1394
1227
  hostConnected() {}
1395
- }, W = class extends e {
1228
+ }, U = class extends e {
1396
1229
  constructor(...e) {
1397
- super(...e), this.loadingMore = !1, this._keyboard = new yt(this);
1230
+ super(...e), this.loadingMore = !1, this._keyboard = new _t(this);
1398
1231
  }
1399
1232
  createRenderRoot() {
1400
1233
  return this;
1401
1234
  }
1402
- static {
1403
- this.styles = [h, vt];
1404
- }
1405
1235
  render() {
1406
1236
  return this.errorMessage ? this._errorState(this.errorMessage) : this.results === void 0 ? n`${r}` : this.results.length === 0 ? this._emptyState() : this._resultsList(this.results);
1407
1237
  }
@@ -1425,7 +1255,8 @@ var vt = t`
1425
1255
  _resultsList(e) {
1426
1256
  let t = e.length;
1427
1257
  return n`
1428
- <div class="ga-side-navigation__body h-full" @keydown=${this._keyboard.onResultsKeydown}>
1258
+ <div class="ga-side-navigation__body h-full ga-scroll"
1259
+ @keydown=${this._keyboard.onResultsKeydown}>
1429
1260
  <div class="ga-side-navigation__search-results-title">
1430
1261
  ${x(t === 1 ? b`${t} result` : b`${t} results`)}
1431
1262
  </div>
@@ -1436,7 +1267,7 @@ var vt = t`
1436
1267
  class="vsn-search-results__load-more"
1437
1268
  ?disabled=${this.loadingMore}
1438
1269
  @click=${this._onLoadMore}>
1439
- ${Be(30)}
1270
+ ${Ve(30)}
1440
1271
  </button>
1441
1272
  `)}
1442
1273
  </div>
@@ -1471,44 +1302,26 @@ var vt = t`
1471
1302
  }));
1472
1303
  }
1473
1304
  };
1474
- F([s({ attribute: !1 })], W.prototype, "results", void 0), F([s()], W.prototype, "errorMessage", void 0), F([s()], W.prototype, "nextCursor", void 0), F([s({ type: Boolean })], W.prototype, "loadingMore", void 0), W = F([S(), o("vsn-search-results")], W);
1305
+ P([s({ attribute: !1 })], U.prototype, "results", void 0), P([s()], U.prototype, "errorMessage", void 0), P([s()], U.prototype, "nextCursor", void 0), P([s({ type: Boolean })], U.prototype, "loadingMore", void 0), U = P([S(), o("vsn-search-results")], U);
1475
1306
  //#endregion
1476
- //#region src/components/vsn-side-bar/vsn-template/vsn-template.css.ts
1477
- var bt = t`
1478
- .vsn-template__row {
1479
- display: flex;
1480
- flex-direction: column;
1481
- align-items: flex-start;
1482
- align-self: stretch;
1483
- padding: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1)) 0;
1484
- }
1485
-
1486
- .vsn-template__bar {
1487
- height: calc(1rem * var(--ga-base-scaling-factor, 1));
1488
- border-radius: var(--ga-radius);
1489
- background: var(--ga-color-miscellaneous-skeleton-element, #F2F3F5);
1490
- flex-shrink: 0;
1491
- }
1492
- `, xt = [
1307
+ //#region src/components/vsn-side-bar/vsn-template/vsn-template.ts
1308
+ var vt = [
1493
1309
  160,
1494
1310
  96,
1495
1311
  144,
1496
1312
  192,
1497
1313
  160
1498
- ], St = class extends e {
1314
+ ], yt = class extends e {
1499
1315
  createRenderRoot() {
1500
1316
  return this;
1501
1317
  }
1502
- static {
1503
- this.styles = [h, bt];
1504
- }
1505
1318
  render() {
1506
1319
  return n`
1507
1320
  <div class="ga-side-navigation__body h-full"
1508
- role="status"
1509
- aria-busy="true"
1510
- aria-label=${x("Loading results")}>
1511
- ${xt.map((e) => n`
1321
+ role="status"
1322
+ aria-busy="true"
1323
+ aria-label=${x("Loading results")}>
1324
+ ${vt.map((e) => n`
1512
1325
  <div class="vsn-template__row">
1513
1326
  <div class="vsn-template__bar" style="width: ${e}px"></div>
1514
1327
  </div>
@@ -1517,59 +1330,17 @@ var bt = t`
1517
1330
  `;
1518
1331
  }
1519
1332
  };
1520
- St = F([S(), o("vsn-template")], St);
1333
+ yt = P([S(), o("vsn-template")], yt);
1521
1334
  //#endregion
1522
- //#region src/components/vsn-side-bar/vsn-error-state/vsn-error-state.css.ts
1523
- var Ct = t`
1524
- .vsn-error-state {
1525
- display: flex;
1526
- flex-direction: column;
1527
- align-items: flex-start;
1528
- padding: calc(1.5rem * var(--ga-base-scaling-factor, 1)) calc(1rem * var(--ga-base-scaling-factor, 1));
1529
- gap: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1530
- }
1531
-
1532
- .vsn-error-state__icon {
1533
- display: inline-flex;
1534
- color: var(--ga-color-icon-error);
1535
- margin-bottom: calc(0.5rem * var(--ga-base-scaling-factor, 1));
1536
- }
1537
-
1538
- .vsn-error-state__title {
1539
- font-family: var(--ga-font-family-primary);
1540
- font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1541
- line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1542
- font-weight: 600;
1543
- margin-bottom: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1544
- }
1545
-
1546
- .vsn-error-state__message,
1547
- .vsn-error-state__hint {
1548
- font-family: var(--ga-font-family-primary);
1549
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1550
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1551
- font-weight: 400;
1552
- }
1553
-
1554
- .vsn-error-state__support {
1555
- margin-top: calc(1.5rem * var(--ga-base-scaling-factor, 1));
1556
- font-family: var(--ga-font-family-primary);
1557
- font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1558
- line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1559
- font-weight: 400;
1560
- color: var(--ga-color-text-on-disabled);
1561
- }
1562
- `, wt = class extends e {
1335
+ //#region src/components/vsn-side-bar/vsn-error-state/vsn-error-state.ts
1336
+ var bt = class extends e {
1563
1337
  createRenderRoot() {
1564
1338
  return this;
1565
1339
  }
1566
- static {
1567
- this.styles = [h, Ct];
1568
- }
1569
1340
  render() {
1570
1341
  return n`
1571
1342
  <div class="vsn-error-state" role="alert" aria-live="assertive">
1572
- <div class="vsn-error-state__icon">${N(at, 24)}</div>
1343
+ <div class="vsn-error-state__icon">${M(st, 24)}</div>
1573
1344
  <div class="vsn-error-state__title">${x("Loading error")}</div>
1574
1345
  <div class="vsn-error-state__message">${x("We're unable to load the menu.")}</div>
1575
1346
  <div class="vsn-error-state__hint">${x("Please check your internet connection and try again.")}</div>
@@ -1578,43 +1349,19 @@ var Ct = t`
1578
1349
  `;
1579
1350
  }
1580
1351
  };
1581
- wt = F([S(), o("vsn-error-state")], wt);
1352
+ bt = P([S(), o("vsn-error-state")], bt);
1582
1353
  //#endregion
1583
- //#region src/components/vsn-side-bar/vsn-search-scopes/vsn-search-scopes.css.ts
1584
- var Tt = t`
1585
- @layer components {
1586
- vsn-search-scopes {
1587
- display: block;
1588
- flex-shrink: 0;
1589
- padding: calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1)) calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1));
1590
- }
1591
-
1592
- vsn-search-scopes .ga-radio-group {
1593
- gap: calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1));
1594
- }
1595
-
1596
- vsn-search-scopes .ga-radio-button__label {
1597
- line-height: calc(0.25rem * 6 * var(--ga-base-scaling-factor, 1));
1598
- display: -webkit-box;
1599
- -webkit-box-orient: vertical;
1600
- -webkit-line-clamp: 1;
1601
- overflow: hidden;
1602
- text-overflow: ellipsis;
1603
- }
1604
- }
1605
- `, Et, G = class extends e {
1354
+ //#region src/components/vsn-side-bar/vsn-search-scopes/vsn-search-scopes.ts
1355
+ var W, G = class extends e {
1606
1356
  static {
1607
- Et = this;
1357
+ W = this;
1608
1358
  }
1609
1359
  constructor(...e) {
1610
- super(...e), this.scopes = [], this.selectedScopeId = "", this._name = `vsn-search-scope-${++Et._counter}`;
1360
+ super(...e), this.scopes = [], this.selectedScopeId = "", this._name = `vsn-search-scope-${++W._counter}`;
1611
1361
  }
1612
1362
  createRenderRoot() {
1613
1363
  return this;
1614
1364
  }
1615
- static {
1616
- this.styles = [h, Tt];
1617
- }
1618
1365
  static {
1619
1366
  this._counter = 0;
1620
1367
  }
@@ -1649,16 +1396,16 @@ var Tt = t`
1649
1396
  }));
1650
1397
  }
1651
1398
  };
1652
- F([s({ attribute: !1 })], G.prototype, "scopes", void 0), F([s()], G.prototype, "selectedScopeId", void 0), G = Et = F([S(), o("vsn-search-scopes")], G);
1399
+ P([s({ attribute: !1 })], G.prototype, "scopes", void 0), P([s()], G.prototype, "selectedScopeId", void 0), G = W = P([S(), o("vsn-search-scopes")], G);
1653
1400
  //#endregion
1654
1401
  //#region src/shared/lang/locale-codes.ts
1655
- var Dt = "en", Ot = [
1402
+ var xt = "en", St = [
1656
1403
  "da",
1657
1404
  "fi",
1658
1405
  "nl",
1659
1406
  "no",
1660
1407
  "sv"
1661
- ], kt = /* @__PURE__ */ p({ templates: () => At }), At = {
1408
+ ], Ct = /* @__PURE__ */ p({ templates: () => wt }), wt = {
1662
1409
  s09a45db408570a7a: "Min profil",
1663
1410
  s119f9875b7d4cdfc: "Har du brug for hjælp? Kontakt support.",
1664
1411
  s1228605ee65ddefa: b`${0} resultat`,
@@ -1688,7 +1435,7 @@ var Dt = "en", Ot = [
1688
1435
  sfbf31f663cef6cc2: "Prøv andre søgeord eller tjek stavningen.",
1689
1436
  s7c510419ea376840: "VSN",
1690
1437
  s38385cd359b17f7a: "Loading modules"
1691
- }, jt = /* @__PURE__ */ p({ templates: () => Mt }), Mt = {
1438
+ }, Tt = /* @__PURE__ */ p({ templates: () => Et }), Et = {
1692
1439
  s09a45db408570a7a: "Oma profiili",
1693
1440
  s119f9875b7d4cdfc: "Tarvitsetko apua? Ota yhteyttä tukeen.",
1694
1441
  s1228605ee65ddefa: b`${0} tulos`,
@@ -1718,7 +1465,7 @@ var Dt = "en", Ot = [
1718
1465
  sfbf31f663cef6cc2: "Kokeile eri hakusanoja tai tarkista kirjoitusasu.",
1719
1466
  s7c510419ea376840: "VSN",
1720
1467
  s38385cd359b17f7a: "Loading modules"
1721
- }, Nt = /* @__PURE__ */ p({ templates: () => Pt }), Pt = {
1468
+ }, Dt = /* @__PURE__ */ p({ templates: () => Ot }), Ot = {
1722
1469
  s09a45db408570a7a: "Mijn profiel",
1723
1470
  s119f9875b7d4cdfc: "Hulp nodig? Neem contact op met ondersteuning.",
1724
1471
  s1228605ee65ddefa: b`${0} resultaat`,
@@ -1748,7 +1495,7 @@ var Dt = "en", Ot = [
1748
1495
  sfbf31f663cef6cc2: "Probeer andere zoekwoorden of controleer de spelling.",
1749
1496
  s7c510419ea376840: "VSN",
1750
1497
  s38385cd359b17f7a: "Loading modules"
1751
- }, Ft = /* @__PURE__ */ p({ templates: () => It }), It = {
1498
+ }, kt = /* @__PURE__ */ p({ templates: () => At }), At = {
1752
1499
  s09a45db408570a7a: "Min profil",
1753
1500
  s119f9875b7d4cdfc: "Trenger du hjelp? Kontakt støtte.",
1754
1501
  s1228605ee65ddefa: b`${0} resultat`,
@@ -1778,7 +1525,7 @@ var Dt = "en", Ot = [
1778
1525
  sfbf31f663cef6cc2: "Prøv andre søkeord eller sjekk stavemåten.",
1779
1526
  s7c510419ea376840: "VSN",
1780
1527
  s38385cd359b17f7a: "Loading modules"
1781
- }, Lt = /* @__PURE__ */ p({ templates: () => Rt }), Rt = {
1528
+ }, jt = /* @__PURE__ */ p({ templates: () => Mt }), Mt = {
1782
1529
  s09a45db408570a7a: "Min profil",
1783
1530
  s119f9875b7d4cdfc: "Behöver du hjälp? Kontakta support.",
1784
1531
  s1228605ee65ddefa: b`${0} resultat`,
@@ -1808,17 +1555,53 @@ var Dt = "en", Ot = [
1808
1555
  sfbf31f663cef6cc2: "Prova andra sökord eller kontrollera stavningen.",
1809
1556
  s7c510419ea376840: "VSN",
1810
1557
  s38385cd359b17f7a: "Loading modules"
1811
- }, zt = {
1812
- da: kt,
1813
- fi: jt,
1814
- nl: Nt,
1815
- no: Ft,
1816
- sv: Lt
1817
- }, { getLocale: Bt, setLocale: Vt } = Ae({
1818
- sourceLocale: Dt,
1819
- targetLocales: Ot,
1820
- loadLocale: (e) => zt[e] ? Promise.resolve(zt[e]) : Promise.reject(/* @__PURE__ */ Error(`Unknown locale: ${e}`))
1821
- }), Ht = t`
1558
+ }, Nt = {
1559
+ da: Ct,
1560
+ fi: Tt,
1561
+ nl: Dt,
1562
+ no: kt,
1563
+ sv: jt
1564
+ }, { getLocale: Pt, setLocale: Ft } = je({
1565
+ sourceLocale: xt,
1566
+ targetLocales: St,
1567
+ loadLocale: (e) => Nt[e] ? Promise.resolve(Nt[e]) : Promise.reject(/* @__PURE__ */ Error(`Unknown locale: ${e}`))
1568
+ }), It = t`
1569
+ @layer components {
1570
+ :where(.ga-side-navigation__user),
1571
+ :where(.ga-side-navigation__footer-dropdown-item) {
1572
+ width: 100%;
1573
+ cursor: pointer;
1574
+ }
1575
+
1576
+ .ga-side-navigation__footer-dropdown-item:focus-visible {
1577
+ outline: 2px solid var(--ga-color-border-focus);
1578
+ outline-offset: 4px;
1579
+ }
1580
+
1581
+ .vsn-side-navigation__user-info {
1582
+ display: flex;
1583
+ flex-direction: column;
1584
+ flex: 1;
1585
+ min-width: 0;
1586
+ }
1587
+
1588
+ .vsn-side-navigation__user-info > .ga-side-navigation__user-name {
1589
+ flex: initial;
1590
+ }
1591
+
1592
+ .vsn-side-navigation__user-email {
1593
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1594
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1595
+ font-weight: 400;
1596
+ }
1597
+
1598
+ .vsn-side-navigation__user-avatar--icon {
1599
+ display: inline-flex;
1600
+ align-items: center;
1601
+ justify-content: center;
1602
+ }
1603
+ }
1604
+ `, Lt = t`
1822
1605
  @layer components {
1823
1606
  .vsn-switcher-anchor {
1824
1607
  position: relative;
@@ -1832,6 +1615,199 @@ var Dt = "en", Ot = [
1832
1615
  z-index: 10;
1833
1616
  }
1834
1617
  }
1618
+ `, Rt = t`
1619
+ .vsn-search__trigger,
1620
+ .vsn-search__clear {
1621
+ display: inline-flex;
1622
+ align-items: center;
1623
+ background: none;
1624
+ border: none;
1625
+ padding: 0;
1626
+ cursor: pointer;
1627
+ flex-shrink: 0;
1628
+ }
1629
+
1630
+ .vsn-search__trigger {
1631
+ color: var(--ga-color-icon-primary);
1632
+ }
1633
+
1634
+ .vsn-search__clear {
1635
+ color: var(--ga-color-icon-action);
1636
+ }
1637
+
1638
+ .vsn-search__trigger:disabled {
1639
+ cursor: default;
1640
+ opacity: 0.5;
1641
+ }
1642
+
1643
+ .vsn-search__helper {
1644
+ display: -webkit-box;
1645
+ -webkit-box-orient: vertical;
1646
+ -webkit-line-clamp: 3;
1647
+ flex: 1 0 0;
1648
+ max-width: 550px;
1649
+ margin-inline: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1));
1650
+ padding: 0 calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1));
1651
+ overflow: hidden;
1652
+ text-overflow: ellipsis;
1653
+ font-family: var(--ga-font-family-primary);
1654
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1655
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1656
+ font-weight: 400;
1657
+ color: var(--ga-color-text-body);
1658
+ }
1659
+
1660
+ .ga-side-navigation__search input {
1661
+ color: var(--ga-color-text-body);
1662
+ }
1663
+
1664
+ .ga-side-navigation__search input::placeholder {
1665
+ color: var(--ga-color-text-disable-selected);
1666
+ }
1667
+ `, zt = t`
1668
+ .vsn-search-results__empty {
1669
+ display: flex;
1670
+ flex-direction: column;
1671
+ align-items: center;
1672
+ padding: calc(2rem * var(--ga-base-scaling-factor, 1)) calc(1.5rem * var(--ga-base-scaling-factor, 1));
1673
+ text-align: center;
1674
+ gap: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1675
+ }
1676
+
1677
+ .vsn-search-results__empty-title {
1678
+ font-family: var(--ga-font-family-primary);
1679
+ font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1680
+ line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1681
+ font-weight: 600;
1682
+ margin-bottom: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1683
+ }
1684
+
1685
+ .vsn-search-results__empty-message,
1686
+ .vsn-search-results__empty-hint {
1687
+ font-family: var(--ga-font-family-primary);
1688
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1689
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1690
+ font-weight: 400;
1691
+ color: var(--ga-color-text-disable-selected);
1692
+ }
1693
+
1694
+ .vsn-search-results__empty-support {
1695
+ margin-top: calc(1.5rem * var(--ga-base-scaling-factor, 1));
1696
+ font-family: var(--ga-font-family-primary);
1697
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1698
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1699
+ font-weight: 400;
1700
+ color: var(--ga-color-text-on-disabled);
1701
+ }
1702
+
1703
+ .vsn-search-results__error {
1704
+ display: flex;
1705
+ flex-direction: column;
1706
+ align-items: center;
1707
+ padding: calc(2rem * var(--ga-base-scaling-factor, 1)) calc(1.5rem * var(--ga-base-scaling-factor, 1));
1708
+ text-align: center;
1709
+ font-family: var(--ga-font-family-primary);
1710
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1711
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1712
+ font-weight: 400;
1713
+ color: var(--ga-color-text-body);
1714
+ }
1715
+
1716
+ .vsn-search-results__load-more {
1717
+ width: 100%;
1718
+ padding: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1)) calc(0.25rem * 4 * var(--ga-base-scaling-factor, 1));
1719
+ background: none;
1720
+ border: none;
1721
+ cursor: pointer;
1722
+ color: var(--ga-color-text-action);
1723
+ text-align: center;
1724
+ font-family: var(--ga-font-family-primary);
1725
+ font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1726
+ font-style: normal;
1727
+ font-weight: 500;
1728
+ line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1729
+ letter-spacing: var(--ga-text-md-letter-spacing);
1730
+ }
1731
+
1732
+ .vsn-search-results__load-more:disabled {
1733
+ cursor: not-allowed;
1734
+ opacity: 0.5;
1735
+ }
1736
+ `, Bt = t`
1737
+ @layer components {
1738
+ vsn-search-scopes {
1739
+ display: block;
1740
+ flex-shrink: 0;
1741
+ padding: calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1)) calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1));
1742
+ }
1743
+
1744
+ vsn-search-scopes .ga-radio-group {
1745
+ gap: calc(0.25rem * 2 * var(--ga-base-scaling-factor, 1));
1746
+ }
1747
+
1748
+ vsn-search-scopes .ga-radio-button__label {
1749
+ line-height: calc(0.25rem * 6 * var(--ga-base-scaling-factor, 1));
1750
+ display: -webkit-box;
1751
+ -webkit-box-orient: vertical;
1752
+ -webkit-line-clamp: 1;
1753
+ overflow: hidden;
1754
+ text-overflow: ellipsis;
1755
+ }
1756
+ }
1757
+ `, Vt = t`
1758
+ .vsn-template__row {
1759
+ display: flex;
1760
+ flex-direction: column;
1761
+ align-items: flex-start;
1762
+ align-self: stretch;
1763
+ padding: calc(0.25rem * 3 * var(--ga-base-scaling-factor, 1)) 0;
1764
+ }
1765
+
1766
+ .vsn-template__bar {
1767
+ height: calc(1rem * var(--ga-base-scaling-factor, 1));
1768
+ border-radius: var(--ga-radius);
1769
+ background: var(--ga-color-miscellaneous-skeleton-element, #F2F3F5);
1770
+ flex-shrink: 0;
1771
+ }
1772
+ `, Ht = t`
1773
+ .vsn-error-state {
1774
+ display: flex;
1775
+ flex-direction: column;
1776
+ align-items: flex-start;
1777
+ padding: calc(1.5rem * var(--ga-base-scaling-factor, 1)) calc(1rem * var(--ga-base-scaling-factor, 1));
1778
+ gap: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1779
+ }
1780
+
1781
+ .vsn-error-state__icon {
1782
+ display: inline-flex;
1783
+ color: var(--ga-color-icon-error);
1784
+ margin-bottom: calc(0.5rem * var(--ga-base-scaling-factor, 1));
1785
+ }
1786
+
1787
+ .vsn-error-state__title {
1788
+ font-family: var(--ga-font-family-primary);
1789
+ font-size: calc(var(--ga-text-md-font-size) * var(--ga-base-scaling-factor, 1));
1790
+ line-height: calc(var(--ga-text-md-line-height) * var(--ga-base-scaling-factor, 1));
1791
+ font-weight: 600;
1792
+ margin-bottom: calc(0.25rem * var(--ga-base-scaling-factor, 1));
1793
+ }
1794
+
1795
+ .vsn-error-state__message,
1796
+ .vsn-error-state__hint {
1797
+ font-family: var(--ga-font-family-primary);
1798
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1799
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1800
+ font-weight: 400;
1801
+ }
1802
+
1803
+ .vsn-error-state__support {
1804
+ margin-top: calc(1.5rem * var(--ga-base-scaling-factor, 1));
1805
+ font-family: var(--ga-font-family-primary);
1806
+ font-size: calc(var(--ga-text-sm-font-size) * var(--ga-base-scaling-factor, 1));
1807
+ line-height: calc(var(--ga-text-sm-line-height) * var(--ga-base-scaling-factor, 1));
1808
+ font-weight: 400;
1809
+ color: var(--ga-color-text-on-disabled);
1810
+ }
1835
1811
  `, Ut = t`
1836
1812
  .vsn-spinner {
1837
1813
  display: inline-block;
@@ -1868,7 +1844,7 @@ var Dt = "en", Ot = [
1868
1844
  }, Gt = "button:not([disabled]), a[href], [tabindex]:not([tabindex=\"-1\"])", Kt = class {
1869
1845
  constructor(e) {
1870
1846
  this.onKeydown = (e) => {
1871
- if (e.defaultPrevented || j(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
1847
+ if (e.defaultPrevented || A(e) || e.key !== "ArrowDown" && e.key !== "ArrowUp") return;
1872
1848
  let t = this.host.renderRoot.querySelector("slot[name=\"nav-footer\"]");
1873
1849
  if (!t) return;
1874
1850
  let n = [];
@@ -1884,17 +1860,23 @@ var Dt = "en", Ot = [
1884
1860
  }, this.host = e, e.addController(this);
1885
1861
  }
1886
1862
  hostConnected() {}
1887
- }, K = class extends e {
1863
+ }, K = t`
1864
+ .ga-scroll {
1865
+ scrollbar-color: var(--ga-color-text-disabled) var(--ga-color-surface-page);
1866
+ scrollbar-width: thin;
1867
+ }
1868
+ `, q = class extends e {
1888
1869
  static {
1889
1870
  this.styles = [
1890
1871
  h,
1872
+ K,
1873
+ Lt,
1874
+ It,
1875
+ Rt,
1876
+ zt,
1877
+ Bt,
1878
+ Vt,
1891
1879
  Ht,
1892
- ut,
1893
- _t,
1894
- vt,
1895
- Tt,
1896
- bt,
1897
- Ct,
1898
1880
  Ut,
1899
1881
  t`
1900
1882
  :host {
@@ -1910,7 +1892,7 @@ var Dt = "en", Ot = [
1910
1892
  ];
1911
1893
  }
1912
1894
  constructor() {
1913
- super(), this.modules = [], this.modulesLoading = !1, this.lang = "en", this.error = !1, this.open = !1, this._searchQuery = "", this._searchLoading = !1, this._activeScopeId = "menu", this._searchLoadingMore = !1, this._navFooterKeyboard = new Kt(this), this._onNavigate = (e) => {
1895
+ super(), this.modules = [], this.modulesLoading = !1, this.lang = "en", this.error = !1, this.open = !1, this._searchQuery = "", this._searchLoading = !1, this._activeScopeId = "menu", this._searchLoadingMore = !1, this._moduleSwitcherMaxHeight = 0, this._navFooterKeyboard = new Kt(this), this._onNavigate = (e) => {
1914
1896
  this._searchQuery = "", this._searchResults = void 0, this.dispatchEvent(new CustomEvent("vsn-side-bar-close", {
1915
1897
  bubbles: !0,
1916
1898
  composed: !0
@@ -1930,10 +1912,15 @@ var Dt = "en", Ot = [
1930
1912
  }, new Wt(this, ".ga-side-navigation", () => this.dispatchEvent(new CustomEvent("vsn-side-bar-close", {
1931
1913
  bubbles: !0,
1932
1914
  composed: !0
1933
- })));
1915
+ }))), this._resizeObserver = new ResizeObserver((e) => {
1916
+ this._observeMenuSize(e);
1917
+ }), this._resizeObserver.observe(this);
1918
+ }
1919
+ _observeMenuSize(e) {
1920
+ this._moduleSwitcherMaxHeight = Math.max(0, e[0].contentRect.height - 134);
1934
1921
  }
1935
1922
  willUpdate(e) {
1936
- e.has("lang") && Vt(this.lang).catch(console.error), e.has("open") && e.get("open") && !this.open && (this._searchQuery = "", this._activeScopeId = "menu", this._clearSearchState(), this.renderRoot.querySelector("vsn-header")?.reset(), this.renderRoot.querySelector("vsn-footer")?.reset());
1923
+ e.has("lang") && Ft(this.lang).catch(console.error), e.has("open") && e.get("open") && !this.open && (this._searchQuery = "", this._activeScopeId = "menu", this._clearSearchState(), this.renderRoot.querySelector("vsn-header")?.reset(), this.renderRoot.querySelector("vsn-footer")?.reset());
1937
1924
  }
1938
1925
  async focusSearch() {
1939
1926
  await this.updateComplete, this.menu?.search?.enabled && this.renderRoot.querySelector("vsn-search")?.focus();
@@ -2067,6 +2054,7 @@ var Dt = "en", Ot = [
2067
2054
  .search=${e}
2068
2055
  .searchValue=${this._searchQuery}
2069
2056
  .searchLoading=${this._searchLoading}
2057
+ .moduleSwitcherMaxHeight=${this._moduleSwitcherMaxHeight}
2070
2058
  @vsn-search-input=${this._onSearchInput}
2071
2059
  @vsn-search-submit=${this._onSearchSubmit}
2072
2060
  @vsn-search-cleared=${this._onSearchCleared}
@@ -2080,7 +2068,7 @@ var Dt = "en", Ot = [
2080
2068
  <vsn-search-scopes
2081
2069
  .scopes=${[{
2082
2070
  id: "menu",
2083
- label: ze()
2071
+ label: Be()
2084
2072
  }, ...e.map((e) => ({
2085
2073
  id: e.id,
2086
2074
  label: e.label
@@ -2104,18 +2092,15 @@ var Dt = "en", Ot = [
2104
2092
  `;
2105
2093
  }
2106
2094
  };
2107
- F([s({ attribute: !1 })], K.prototype, "modules", void 0), F([s()], K.prototype, "activeModuleId", void 0), F([s()], K.prototype, "activeModuleLabel", void 0), F([s({ type: Boolean })], K.prototype, "modulesLoading", void 0), F([s()], K.prototype, "lang", void 0), F([s({ attribute: !1 })], K.prototype, "auth", void 0), F([s({ type: Boolean })], K.prototype, "error", void 0), F([s({
2095
+ P([s({ attribute: !1 })], q.prototype, "modules", void 0), P([s()], q.prototype, "activeModuleId", void 0), P([s()], q.prototype, "activeModuleLabel", void 0), P([s({ type: Boolean })], q.prototype, "modulesLoading", void 0), P([s()], q.prototype, "lang", void 0), P([s({ attribute: !1 })], q.prototype, "auth", void 0), P([s({ type: Boolean })], q.prototype, "error", void 0), P([s({
2108
2096
  type: Boolean,
2109
2097
  reflect: !0
2110
- })], K.prototype, "open", void 0), F([s({ attribute: !1 })], K.prototype, "menu", void 0), F([l()], K.prototype, "_searchQuery", void 0), F([l()], K.prototype, "_searchResults", void 0), F([l()], K.prototype, "_searchLoading", void 0), F([l()], K.prototype, "_activeScopeId", void 0), F([l()], K.prototype, "_searchError", void 0), F([l()], K.prototype, "_searchNextCursor", void 0), F([l()], K.prototype, "_searchLoadingMore", void 0), K = F([o("vsn-side-bar")], K);
2098
+ })], q.prototype, "open", void 0), P([s({ attribute: !1 })], q.prototype, "menu", void 0), P([l()], q.prototype, "_searchQuery", void 0), P([l()], q.prototype, "_searchResults", void 0), P([l()], q.prototype, "_searchLoading", void 0), P([l()], q.prototype, "_activeScopeId", void 0), P([l()], q.prototype, "_searchError", void 0), P([l()], q.prototype, "_searchNextCursor", void 0), P([l()], q.prototype, "_searchLoadingMore", void 0), P([l()], q.prototype, "_moduleSwitcherMaxHeight", void 0), q = P([o("vsn-side-bar")], q);
2111
2099
  //#endregion
2112
2100
  //#region src/components/vsn-top-bar/vsn-breadcrumb-menu-item.ts
2113
- var q, J = class extends e {
2101
+ var J, Y = class extends e {
2114
2102
  static {
2115
- q = this;
2116
- }
2117
- static {
2118
- this.styles = h;
2103
+ J = this;
2119
2104
  }
2120
2105
  static {
2121
2106
  this._idCounter = 0;
@@ -2139,7 +2124,7 @@ var q, J = class extends e {
2139
2124
  e.preventDefault(), e.stopPropagation(), this._isExpanded = !this._isExpanded;
2140
2125
  return;
2141
2126
  }
2142
- if (!this.tree || e.button !== 0 || j(e)) return;
2127
+ if (!this.tree || e.button !== 0 || A(e)) return;
2143
2128
  e.preventDefault(), e.stopPropagation();
2144
2129
  let t = [...this.ancestorPath, this.tree];
2145
2130
  this.dispatchEvent(new CustomEvent("vsn-breadcrumb-menu-leaf-select", {
@@ -2147,7 +2132,7 @@ var q, J = class extends e {
2147
2132
  bubbles: !0,
2148
2133
  composed: !0
2149
2134
  }));
2150
- }, this._tooltipId = `vsn-menu-item-tooltip-${q._idCounter++}`;
2135
+ }, this._tooltipId = `vsn-menu-item-tooltip-${J._idCounter++}`;
2151
2136
  }
2152
2137
  createRenderRoot() {
2153
2138
  return this;
@@ -2173,7 +2158,7 @@ var q, J = class extends e {
2173
2158
  <div class="ga-tooltip ga-tooltip--right-start" style="white-space: nowrap">${e}</div>
2174
2159
  </div>
2175
2160
  <span class="ga-side-navigation__item-icon">
2176
- ${this._isParent() ? this._isExpanded ? N(P, 16) : N(ot, 16) : ""}
2161
+ ${this._isParent() ? this._isExpanded ? M(N, 16) : M(ct, 16) : ""}
2177
2162
  </span>
2178
2163
  <div class="ga-side-navigation__item-content">
2179
2164
  <div class="ga-side-navigation__item-label">${e}</div>
@@ -2197,33 +2182,33 @@ var q, J = class extends e {
2197
2182
  if (this.tree && _(this.tree)) return this.tree.items.length > 0;
2198
2183
  }
2199
2184
  };
2200
- F([s({ attribute: !1 })], J.prototype, "tree", void 0), F([s({ type: Number })], J.prototype, "level", void 0), F([s({ type: Array })], J.prototype, "ancestorPath", void 0), F([l()], J.prototype, "_isExpanded", void 0), F([l()], J.prototype, "_showTooltip", void 0), F([l()], J.prototype, "_tooltipPos", void 0), F([c(".ga-side-navigation__item-label")], J.prototype, "_labelEl", void 0), J = q = F([o("vsn-breadcrumb-menu-item")], J);
2185
+ P([s({ attribute: !1 })], Y.prototype, "tree", void 0), P([s({ type: Number })], Y.prototype, "level", void 0), P([s({ type: Array })], Y.prototype, "ancestorPath", void 0), P([l()], Y.prototype, "_isExpanded", void 0), P([l()], Y.prototype, "_showTooltip", void 0), P([l()], Y.prototype, "_tooltipPos", void 0), P([c(".ga-side-navigation__item-label")], Y.prototype, "_labelEl", void 0), Y = J = P([o("vsn-breadcrumb-menu-item")], Y);
2201
2186
  //#endregion
2202
2187
  //#region src/components/vsn-top-bar/vsn-breadcrumb-menu.ts
2203
2188
  var qt = class extends e {
2204
- static {
2205
- this.styles = h;
2206
- }
2207
2189
  createRenderRoot() {
2208
2190
  return this;
2209
2191
  }
2210
2192
  menuItem(e) {
2211
- return n`<vsn-breadcrumb-menu-item .tree=${e}></vsn-breadcrumb-menu-item>`;
2193
+ return n`
2194
+ <vsn-breadcrumb-menu-item .tree=${e}></vsn-breadcrumb-menu-item>`;
2212
2195
  }
2213
2196
  render() {
2214
2197
  return n`
2215
- <div class="ga-side-navigation" style="height: auto; overflow: visible; width: 238px; min-width: var(--ga-size-160); max-width: 512px; border-radius: var(--ga-radius); border: var(--ga-size-border-width-sm) solid var(--ga-color-border-primary); background: var(--ga-color-surface-primary);">
2216
- <div class="ga-side-navigation__body" style="overflow-x: hidden; overflow-y: auto; max-height: 60vh;">
2198
+ <div class="ga-side-navigation ga-scroll"
2199
+ style="height: auto; overflow: visible; width: 238px; min-width: var(--ga-size-160); max-width: 512px; border-radius: var(--ga-radius); border: var(--ga-size-border-width-sm) solid var(--ga-color-border-primary); background: var(--ga-color-surface-primary);">
2200
+ <div class="ga-side-navigation__body overflow-y-auto ga-scroll"
2201
+ style="overflow-x: hidden; max-height: 60vh;">
2217
2202
  ${d(this.treeList, (e) => this.menuItem(e))}
2218
2203
  </div>
2219
2204
  </div>
2220
2205
  `;
2221
2206
  }
2222
2207
  };
2223
- F([s({ attribute: !1 })], qt.prototype, "treeList", void 0), qt = F([o("vsn-breadcrumb-menu")], qt);
2208
+ P([s({ attribute: !1 })], qt.prototype, "treeList", void 0), qt = P([o("vsn-breadcrumb-menu")], qt);
2224
2209
  //#endregion
2225
2210
  //#region src/components/vsn-top-bar/vsn-breadcrumbs.ts
2226
- var Y = class extends e {
2211
+ var X = class extends e {
2227
2212
  constructor(...e) {
2228
2213
  super(...e), this.modules = [], this._openPopoverId = null, this._displayMode = "full", this._overflowCount = 0, this._tooltip = null, this._mqDesktop = window.matchMedia("(min-width: 1440px)"), this._mqTablet = window.matchMedia("(min-width: 768px) and (max-width: 1439px)"), this._ro = null, this._lastContainerWidth = 0, this._mounted = !1, this._handleMediaChange = () => {
2229
2214
  this._mqDesktop.matches ? (this._displayMode = "full", this._overflowCount = 0) : this._mqTablet.matches ? (this._displayMode = "overflow", this._overflowCount = 0, this._mounted && this.updateComplete.then(() => this._recalculateOverflow())) : (this._displayMode = "mobile", this._overflowCount = 0);
@@ -2242,14 +2227,20 @@ var Y = class extends e {
2242
2227
  };
2243
2228
  }
2244
2229
  static {
2245
- this.styles = [h, t`
2230
+ this.styles = [
2231
+ h,
2232
+ K,
2233
+ t`
2246
2234
  /* Temporary, until breadcrumb styles are updated */
2235
+
2247
2236
  .ga-breadcrumb {
2248
2237
  flex-wrap: nowrap;
2249
2238
  overflow-x: clip;
2250
2239
  }
2240
+
2251
2241
  /* Dropdowns use the native Popover API — promoted to the top layer on open,
2252
2242
  bypassing all stacking contexts. */
2243
+
2253
2244
  .ga-breadcrumb-item__menu[popover] {
2254
2245
  position: fixed;
2255
2246
  inset: unset;
@@ -2259,34 +2250,42 @@ var Y = class extends e {
2259
2250
  background: transparent;
2260
2251
  overflow: visible;
2261
2252
  }
2253
+
2262
2254
  .ga-breadcrumb-item__trigger[aria-expanded='true'] .ga-breadcrumb-item__label {
2263
2255
  outline: none;
2264
2256
  }
2257
+
2265
2258
  .ga-breadcrumb-item--link .ga-breadcrumb-item__trigger:hover,
2266
2259
  .ga-breadcrumb-item--overflow .ga-breadcrumb-item__trigger:hover {
2267
2260
  background-color: var(--ga-color-surface-action-hover-2);
2268
2261
  text-decoration: none;
2269
2262
  }
2263
+
2270
2264
  .ga-breadcrumb-item--link .ga-breadcrumb-item__trigger:hover .ga-breadcrumb-item__label,
2271
2265
  .ga-breadcrumb-item--overflow .ga-breadcrumb-item__trigger:hover .ga-breadcrumb-item__label {
2272
2266
  text-decoration: none;
2273
2267
  }
2268
+
2274
2269
  .ga-breadcrumb-item.ga-breadcrumb-item--ancestor .ga-breadcrumb-item__trigger {
2275
2270
  color: var(--ga-color-text-body);
2276
2271
  cursor: default;
2277
2272
  }
2273
+
2278
2274
  .ga-breadcrumb-item.ga-breadcrumb-item--ancestor .ga-breadcrumb-item__trigger .ga-breadcrumb-item__label {
2279
2275
  color: var(--ga-color-text-body);
2280
2276
  }
2277
+
2281
2278
  .ga-breadcrumb-item.ga-breadcrumb-item--ancestor .ga-breadcrumb-item__trigger:hover {
2282
2279
  background-color: transparent;
2283
2280
  color: var(--ga-color-text-body);
2284
2281
  }
2282
+
2285
2283
  .ga-breadcrumb-item.ga-breadcrumb-item--ancestor .ga-breadcrumb-item__trigger:hover .ga-breadcrumb-item__label {
2286
2284
  text-decoration: none;
2287
2285
  color: var(--ga-color-text-body);
2288
2286
  }
2289
- `];
2287
+ `
2288
+ ];
2290
2289
  }
2291
2290
  connectedCallback() {
2292
2291
  super.connectedCallback(), this._mqDesktop.addEventListener("change", this._handleMediaChange), this._mqTablet.addEventListener("change", this._handleMediaChange), this._handleMediaChange();
@@ -2393,10 +2392,11 @@ var Y = class extends e {
2393
2392
  >
2394
2393
  <span class="ga-breadcrumb-item__label">${"VSN"}</span>
2395
2394
  </button>
2396
- ${this._breadcrumbPath.length > 0 ? n`<span class="ga-breadcrumb-item__separator" aria-hidden="true">/</span>` : ""}
2395
+ ${this._breadcrumbPath.length > 0 ? n`<span class="ga-breadcrumb-item__separator"
2396
+ aria-hidden="true">/</span>` : ""}
2397
2397
  <div
2398
2398
  id="vsn-bc-modules-popover"
2399
- class="ga-breadcrumb-item__menu"
2399
+ class="ga-breadcrumb-item__menu ga-scroll"
2400
2400
  popover="auto"
2401
2401
  @beforetoggle=${(e) => this._handlePopoverBeforeToggle("vsn-bc-modules-trigger", e)}
2402
2402
  @toggle=${(e) => this._handlePopoverToggle("vsn-bc-modules-popover", e)}
@@ -2422,7 +2422,10 @@ var Y = class extends e {
2422
2422
  }
2423
2423
  _renderLeafAsAncestor(e) {
2424
2424
  return n`
2425
- <div class="ga-breadcrumb-item ga-breadcrumb-item--link ga-breadcrumb-item--ancestor" aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r} data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter} @mouseleave=${this._onBreadcrumbMouseLeave}>
2425
+ <div class="ga-breadcrumb-item ga-breadcrumb-item--link ga-breadcrumb-item--ancestor"
2426
+ aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r}
2427
+ data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter}
2428
+ @mouseleave=${this._onBreadcrumbMouseLeave}>
2426
2429
  <span class="ga-breadcrumb-item__trigger">
2427
2430
  <span class="ga-breadcrumb-item__label">${e.label ?? ""}</span>
2428
2431
  </span>
@@ -2442,7 +2445,10 @@ var Y = class extends e {
2442
2445
  }
2443
2446
  _renderCurrentItem(e) {
2444
2447
  return n`
2445
- <div class="ga-breadcrumb-item ga-breadcrumb-item--current-page" aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r} data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter} @mouseleave=${this._onBreadcrumbMouseLeave}>
2448
+ <div class="ga-breadcrumb-item ga-breadcrumb-item--current-page"
2449
+ aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r}
2450
+ data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter}
2451
+ @mouseleave=${this._onBreadcrumbMouseLeave}>
2446
2452
  <span class="ga-breadcrumb-item__trigger" aria-current="page">
2447
2453
  <span class="ga-breadcrumb-item__label">${e.label ?? ""}</span>
2448
2454
  </span>
@@ -2452,7 +2458,10 @@ var Y = class extends e {
2452
2458
  if (!_(e) || e.items.length === 0) return n``;
2453
2459
  let i = this._popoverItemId(t), a = this._popoverItemTriggerId(t);
2454
2460
  return n`
2455
- <div class="ga-breadcrumb-item ga-breadcrumb-item--link" aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r} data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter} @mouseleave=${this._onBreadcrumbMouseLeave}>
2461
+ <div class="ga-breadcrumb-item ga-breadcrumb-item--link"
2462
+ aria-describedby=${this._tooltip ? "vsn-breadcrumb-tooltip" : r}
2463
+ data-tooltip-label="${e.label ?? ""}" @mouseenter=${this._onBreadcrumbMouseEnter}
2464
+ @mouseleave=${this._onBreadcrumbMouseLeave}>
2456
2465
  <button
2457
2466
  id=${a}
2458
2467
  class="ga-breadcrumb-item__trigger"
@@ -2535,7 +2544,8 @@ var Y = class extends e {
2535
2544
  ${this._displayMode === "full" ? this._renderFullBreadcrumbs() : this._displayMode === "overflow" ? this._renderOverflowBreadcrumbs() : this._renderMobileBreadcrumbs()}
2536
2545
  </div>
2537
2546
  ${this._tooltip ? n`
2538
- <div id="vsn-breadcrumb-tooltip" role="tooltip" style="position: fixed; left: ${this._tooltip.x}px; top: ${this._tooltip.y}px; pointer-events: none; z-index: 9999;">
2547
+ <div id="vsn-breadcrumb-tooltip" role="tooltip"
2548
+ style="position: fixed; left: ${this._tooltip.x}px; top: ${this._tooltip.y}px; pointer-events: none; z-index: 9999;">
2539
2549
  <div class="ga-tooltip ga-tooltip--bottom-start" style="white-space: nowrap">${this._tooltip.label}</div>
2540
2550
  </div>
2541
2551
  ` : r}
@@ -2543,13 +2553,10 @@ var Y = class extends e {
2543
2553
  `;
2544
2554
  }
2545
2555
  };
2546
- F([s({ attribute: !1 })], Y.prototype, "tree", void 0), F([s({ type: Array })], Y.prototype, "modules", void 0), F([s()], Y.prototype, "activeModuleId", void 0), F([l()], Y.prototype, "_openPopoverId", void 0), F([l()], Y.prototype, "_displayMode", void 0), F([l()], Y.prototype, "_overflowCount", void 0), F([l()], Y.prototype, "_tooltip", void 0), Y = F([S(), o("vsn-breadcrumbs")], Y);
2556
+ P([s({ attribute: !1 })], X.prototype, "tree", void 0), P([s({ type: Array })], X.prototype, "modules", void 0), P([s()], X.prototype, "activeModuleId", void 0), P([l()], X.prototype, "_openPopoverId", void 0), P([l()], X.prototype, "_displayMode", void 0), P([l()], X.prototype, "_overflowCount", void 0), P([l()], X.prototype, "_tooltip", void 0), X = P([S(), o("vsn-breadcrumbs")], X);
2547
2557
  //#endregion
2548
2558
  //#region src/components/vsn-top-bar/vsn-ai-assistant.ts
2549
2559
  var Jt = class extends e {
2550
- static {
2551
- this.styles = h;
2552
- }
2553
2560
  createRenderRoot() {
2554
2561
  return this;
2555
2562
  }
@@ -2562,24 +2569,22 @@ var Jt = class extends e {
2562
2569
  }
2563
2570
  render() {
2564
2571
  return n`
2565
- <button type="button" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Open AI assistant")} @click=${this._handleClick}>
2566
- <span class="ga-icon">${N(Ke)}</span>
2572
+ <button type="button" class="ga-button ga-button--secondary ga-button--icon-only"
2573
+ aria-label=${x("Open AI assistant")} @click=${this._handleClick}>
2574
+ <span class="ga-icon">${M(Je)}</span>
2567
2575
  </button>
2568
2576
  `;
2569
2577
  }
2570
2578
  };
2571
- Jt = F([S(), o("vsn-ai-assistant")], Jt);
2579
+ Jt = P([S(), o("vsn-ai-assistant")], Jt);
2572
2580
  //#endregion
2573
2581
  //#region src/components/vsn-top-bar/vsn-feedback.ts
2574
- var X = class extends e {
2582
+ var Z = class extends e {
2575
2583
  constructor(...e) {
2576
2584
  super(...e), this._compact = !1, this.feedback = null, this._mqMobile = window.matchMedia("(max-width: 767px)"), this._handleMediaChange = () => {
2577
2585
  this._compact = this._mqMobile.matches;
2578
2586
  }, this._traitSet = !1;
2579
2587
  }
2580
- static {
2581
- this.styles = h;
2582
- }
2583
2588
  createRenderRoot() {
2584
2589
  return this;
2585
2590
  }
@@ -2589,7 +2594,7 @@ var X = class extends e {
2589
2594
  updated(e) {
2590
2595
  if (super.updated(e), e.has("feedback") && this.feedback?.workspaceId && !document.getElementById("survicate-sdk") && !window._sva) {
2591
2596
  let e = document.createElement("script");
2592
- e.id = He, e.src = We(this.feedback.workspaceId), e.async = !0, e.onload = () => this._applyVisitorTraits(), document.head.appendChild(e);
2597
+ e.id = Ue, e.src = Ge(this.feedback.workspaceId), e.async = !0, e.onload = () => this._applyVisitorTraits(), document.head.appendChild(e);
2593
2598
  }
2594
2599
  if (e.has("auth")) {
2595
2600
  let t = e.get("auth");
@@ -2609,27 +2614,26 @@ var X = class extends e {
2609
2614
  this.dispatchEvent(new CustomEvent("vsn-feedback", {
2610
2615
  bubbles: !0,
2611
2616
  composed: !0
2612
- })), this.feedback?.surveyId && (this._applyVisitorTraits(), window._sva?.invokeEvent(Ue));
2617
+ })), this.feedback?.surveyId && (this._applyVisitorTraits(), window._sva?.invokeEvent(We));
2613
2618
  }
2614
2619
  render() {
2615
2620
  return this._compact ? n`
2616
- <button type="button" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Send feedback")} @click=${this._handleClick}>
2617
- <span class="ga-icon">${N(Ye)}</span>
2621
+ <button type="button" class="ga-button ga-button--secondary ga-button--icon-only"
2622
+ aria-label=${x("Send feedback")} @click=${this._handleClick}>
2623
+ <span class="ga-icon">${M(Ze)}</span>
2618
2624
  </button>
2619
2625
  ` : n`
2620
- <button type="button" class="ga-button ga-button--secondary" aria-label=${x("Send feedback")} @click=${this._handleClick}>
2626
+ <button type="button" class="ga-button ga-button--secondary" aria-label=${x("Send feedback")}
2627
+ @click=${this._handleClick}>
2621
2628
  ${x("Feedback")}
2622
2629
  </button>
2623
2630
  `;
2624
2631
  }
2625
2632
  };
2626
- F([l()], X.prototype, "_compact", void 0), F([s({ attribute: !1 })], X.prototype, "feedback", void 0), F([s({ attribute: !1 })], X.prototype, "auth", void 0), X = F([S(), o("vsn-feedback")], X);
2633
+ P([l()], Z.prototype, "_compact", void 0), P([s({ attribute: !1 })], Z.prototype, "feedback", void 0), P([s({ attribute: !1 })], Z.prototype, "auth", void 0), Z = P([S(), o("vsn-feedback")], Z);
2627
2634
  //#endregion
2628
2635
  //#region src/components/vsn-top-bar/vsn-home.ts
2629
2636
  var Yt = class extends e {
2630
- static {
2631
- this.styles = h;
2632
- }
2633
2637
  createRenderRoot() {
2634
2638
  return this;
2635
2639
  }
@@ -2646,19 +2650,17 @@ var Yt = class extends e {
2646
2650
  }
2647
2651
  render() {
2648
2652
  return this.landingPageUrl ? n`
2649
- <a href=${this.landingPageUrl} class="ga-button ga-button--ghost ga-button--icon-only" aria-label=${x("Home")} @click=${this._handleClick}>
2650
- <span class="ga-icon">${N(Xe)}</span>
2653
+ <a href=${this.landingPageUrl} class="ga-button ga-button--ghost ga-button--icon-only" aria-label=${x("Home")}
2654
+ @click=${this._handleClick}>
2655
+ <span class="ga-icon">${M(Qe)}</span>
2651
2656
  </a>
2652
2657
  ` : r;
2653
2658
  }
2654
2659
  };
2655
- F([s({ attribute: "landing-page-url" })], Yt.prototype, "landingPageUrl", void 0), Yt = F([S(), o("vsn-home")], Yt);
2660
+ P([s({ attribute: "landing-page-url" })], Yt.prototype, "landingPageUrl", void 0), Yt = P([S(), o("vsn-home")], Yt);
2656
2661
  //#endregion
2657
2662
  //#region src/components/vsn-top-bar/vsn-menu-toggle.ts
2658
2663
  var Xt = class extends e {
2659
- static {
2660
- this.styles = [h];
2661
- }
2662
2664
  createRenderRoot() {
2663
2665
  return this;
2664
2666
  }
@@ -2685,26 +2687,23 @@ var Xt = class extends e {
2685
2687
  @click=${this._handleClick}
2686
2688
  @mouseenter=${this._onActivate}
2687
2689
  @mouseleave=${this._onDeactivate}>
2688
- <span class="ga-icon">${N(Ge)}</span>
2690
+ <span class="ga-icon">${M(qe)}</span>
2689
2691
  </button>
2690
2692
  <div id="vsn-menu-toggle-tooltip" role="tooltip"
2691
2693
  style="position: fixed; inset: unset; margin: 0; padding: 0; border: none; background: transparent; overflow: visible; pointer-events: none; z-index: 9999;"
2692
2694
  popover="manual">
2693
- <div class="ga-tooltip ga-tooltip--bottom-start" style="white-space: nowrap">${Le()}</div>
2695
+ <div class="ga-tooltip ga-tooltip--bottom-start" style="white-space: nowrap">${Re()}</div>
2694
2696
  </div>
2695
2697
  `;
2696
2698
  }
2697
2699
  };
2698
- F([c("div[role=\"tooltip\"]", !0)], Xt.prototype, "_tooltipElement", void 0), Xt = F([S(), o("vsn-menu-toggle")], Xt);
2700
+ P([c("div[role=\"tooltip\"]", !0)], Xt.prototype, "_tooltipElement", void 0), Xt = P([S(), o("vsn-menu-toggle")], Xt);
2699
2701
  //#endregion
2700
2702
  //#region src/components/vsn-top-bar/vsn-notifications.ts
2701
- var Z = class extends e {
2703
+ var Zt = class extends e {
2702
2704
  constructor(...e) {
2703
2705
  super(...e), this.notificationActive = !1;
2704
2706
  }
2705
- static {
2706
- this.styles = h;
2707
- }
2708
2707
  createRenderRoot() {
2709
2708
  return this;
2710
2709
  }
@@ -2716,22 +2715,23 @@ var Z = class extends e {
2716
2715
  }));
2717
2716
  }
2718
2717
  render() {
2719
- let e = this.notificationActive ? Je : qe;
2718
+ let e = this.notificationActive ? Xe : Ye;
2720
2719
  return n`
2721
- <button type="button" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Notifications")} @click=${this._handleClick}>
2722
- <span class="ga-icon">${N(e)}</span>
2720
+ <button type="button" class="ga-button ga-button--secondary ga-button--icon-only"
2721
+ aria-label=${x("Notifications")} @click=${this._handleClick}>
2722
+ <span class="ga-icon">${M(e)}</span>
2723
2723
  </button>
2724
2724
  `;
2725
2725
  }
2726
2726
  };
2727
- F([s({
2727
+ P([s({
2728
2728
  type: Boolean,
2729
2729
  attribute: "notification-active",
2730
2730
  reflect: !0
2731
- })], Z.prototype, "notificationActive", void 0), Z = F([S(), o("vsn-notifications")], Z);
2731
+ })], Zt.prototype, "notificationActive", void 0), Zt = P([S(), o("vsn-notifications")], Zt);
2732
2732
  //#endregion
2733
2733
  //#region src/components/vsn-top-bar/vsn-help.ts
2734
- function Zt(e) {
2734
+ function Qt(e) {
2735
2735
  try {
2736
2736
  let t = new URL(e);
2737
2737
  return t.protocol === "https:" || t.protocol === "http:";
@@ -2739,10 +2739,7 @@ function Zt(e) {
2739
2739
  return !1;
2740
2740
  }
2741
2741
  }
2742
- var Qt = class extends e {
2743
- static {
2744
- this.styles = h;
2745
- }
2742
+ var $t = class extends e {
2746
2743
  createRenderRoot() {
2747
2744
  return this;
2748
2745
  }
@@ -2754,18 +2751,20 @@ var Qt = class extends e {
2754
2751
  }));
2755
2752
  }
2756
2753
  render() {
2757
- return this.helpUrl && Zt(this.helpUrl) ? n`
2758
- <a href=${this.helpUrl} rel="noopener noreferrer" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Help")}>
2759
- <span class="ga-icon">${N(Ze)}</span>
2754
+ return this.helpUrl && Qt(this.helpUrl) ? n`
2755
+ <a href=${this.helpUrl} rel="noopener noreferrer" class="ga-button ga-button--secondary ga-button--icon-only"
2756
+ aria-label=${x("Help")}>
2757
+ <span class="ga-icon">${M($e)}</span>
2760
2758
  </a>
2761
2759
  ` : n`
2762
- <button type="button" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Help")} @click=${this._handleClick}>
2763
- <span class="ga-icon">${N(Ze)}</span>
2760
+ <button type="button" class="ga-button ga-button--secondary ga-button--icon-only" aria-label=${x("Help")}
2761
+ @click=${this._handleClick}>
2762
+ <span class="ga-icon">${M($e)}</span>
2764
2763
  </button>
2765
2764
  `;
2766
2765
  }
2767
2766
  };
2768
- F([s({ attribute: "help-url" })], Qt.prototype, "helpUrl", void 0), Qt = F([S(), o("vsn-help")], Qt);
2767
+ P([s({ attribute: "help-url" })], $t.prototype, "helpUrl", void 0), $t = P([S(), o("vsn-help")], $t);
2769
2768
  //#endregion
2770
2769
  //#region src/components/vsn-top-bar/vsn-top-bar.ts
2771
2770
  var Q = class extends e {
@@ -2773,7 +2772,7 @@ var Q = class extends e {
2773
2772
  super(...e), this.modules = [], this.feedback = null, this.showHelp = !1, this.showNotification = !1, this.notificationActive = !1, this.lang = "en";
2774
2773
  }
2775
2774
  willUpdate(e) {
2776
- e.has("lang") && Vt(this.lang).catch(console.error);
2775
+ e.has("lang") && Ft(this.lang).catch(console.error);
2777
2776
  }
2778
2777
  focusMenuToggle() {
2779
2778
  this.renderRoot.querySelector("vsn-menu-toggle")?.focus();
@@ -2875,28 +2874,28 @@ var Q = class extends e {
2875
2874
  `;
2876
2875
  }
2877
2876
  };
2878
- F([s({ attribute: !1 })], Q.prototype, "tree", void 0), F([s({ type: Array })], Q.prototype, "modules", void 0), F([s()], Q.prototype, "activeModuleId", void 0), F([s({ attribute: "landing-page-url" })], Q.prototype, "landingPageUrl", void 0), F([s({ attribute: !1 })], Q.prototype, "feedback", void 0), F([s({ attribute: !1 })], Q.prototype, "auth", void 0), F([s({
2877
+ P([s({ attribute: !1 })], Q.prototype, "tree", void 0), P([s({ type: Array })], Q.prototype, "modules", void 0), P([s()], Q.prototype, "activeModuleId", void 0), P([s({ attribute: "landing-page-url" })], Q.prototype, "landingPageUrl", void 0), P([s({ attribute: !1 })], Q.prototype, "feedback", void 0), P([s({ attribute: !1 })], Q.prototype, "auth", void 0), P([s({
2879
2878
  type: Boolean,
2880
2879
  attribute: "show-help"
2881
- })], Q.prototype, "showHelp", void 0), F([s({ attribute: "help-url" })], Q.prototype, "helpUrl", void 0), F([s({
2880
+ })], Q.prototype, "showHelp", void 0), P([s({ attribute: "help-url" })], Q.prototype, "helpUrl", void 0), P([s({
2882
2881
  type: Boolean,
2883
2882
  attribute: "show-notification"
2884
- })], Q.prototype, "showNotification", void 0), F([s({
2883
+ })], Q.prototype, "showNotification", void 0), P([s({
2885
2884
  type: Boolean,
2886
2885
  attribute: "notification-active"
2887
- })], Q.prototype, "notificationActive", void 0), F([s()], Q.prototype, "lang", void 0), Q = F([o("vsn-top-bar")], Q);
2886
+ })], Q.prototype, "notificationActive", void 0), P([s()], Q.prototype, "lang", void 0), Q = P([o("vsn-top-bar")], Q);
2888
2887
  //#endregion
2889
2888
  //#region src/components/vsn-navigation.ts
2890
2889
  var $ = class extends e {
2891
2890
  constructor(...e) {
2892
2891
  super(...e), this.lang = "en", this.showHelp = !1, this.feedback = null, this.showNotification = !1, this.notificationActive = !1, this.open = !1, this._currentItem = "", this._resolvedModules = [], this._modulesLoading = !1, this._modulesLoadToken = 0, this._restoreFocusToToggle = !1, this._onShortcut = (e) => {
2893
- e.defaultPrevented || !Pe(e) || e.key.toLowerCase() !== "k" || (e.preventDefault(), this.dispatchEvent(new CustomEvent("vsn-open", {
2892
+ e.defaultPrevented || !Fe(e) || e.key.toLowerCase() !== "k" || (e.preventDefault(), this.dispatchEvent(new CustomEvent("vsn-open", {
2894
2893
  cancelable: !0,
2895
2894
  bubbles: !0,
2896
2895
  composed: !0
2897
2896
  })) && this._openAndFocusSearch());
2898
2897
  }, this._onEscape = (e) => {
2899
- e.defaultPrevented || this.open && M(e) && e.key === "Escape" && (e.preventDefault(), this.open = !1);
2898
+ e.defaultPrevented || this.open && j(e) && e.key === "Escape" && (e.preventDefault(), this.open = !1);
2900
2899
  };
2901
2900
  }
2902
2901
  _resolveModules() {
@@ -2917,7 +2916,10 @@ var $ = class extends e {
2917
2916
  });
2918
2917
  }
2919
2918
  static {
2920
- this.styles = [h, t`
2919
+ this.styles = [
2920
+ h,
2921
+ K,
2922
+ t`
2921
2923
  :host {
2922
2924
  display: flex;
2923
2925
  flex-direction: column;
@@ -2936,12 +2938,8 @@ var $ = class extends e {
2936
2938
  min-height: 0;
2937
2939
  overflow: hidden;
2938
2940
  }
2939
-
2940
- .vsn-navigation__page-content {
2941
- height: 100%;
2942
- overflow-y: auto;
2943
- }
2944
- `];
2941
+ `
2942
+ ];
2945
2943
  }
2946
2944
  willUpdate(e) {
2947
2945
  e.has("tree") && this.tree && (this.tree.currentItem ? this._currentItem = this.tree.currentItem : this.tree.items.length > 0 && (this._currentItem = this._getFirstLeafId(this.tree.items[0]))), e.has("modules") && this._resolveModules();
@@ -3024,26 +3022,26 @@ var $ = class extends e {
3024
3022
  >
3025
3023
  <slot name="nav-footer" slot="nav-footer"></slot>
3026
3024
  </vsn-side-bar>
3027
- <div class="vsn-navigation__page-content">
3025
+ <div class="h-full overflow-y-auto ga-scroll">
3028
3026
  <slot></slot>
3029
3027
  </div>
3030
3028
  </div>
3031
3029
  `;
3032
3030
  }
3033
3031
  };
3034
- F([s()], $.prototype, "lang", void 0), F([s({ attribute: !1 })], $.prototype, "tree", void 0), F([s({ attribute: !1 })], $.prototype, "modules", void 0), F([s({ attribute: !1 })], $.prototype, "auth", void 0), F([s({ attribute: "landing-page-url" })], $.prototype, "landingPageUrl", void 0), F([s({
3032
+ P([s()], $.prototype, "lang", void 0), P([s({ attribute: !1 })], $.prototype, "tree", void 0), P([s({ attribute: !1 })], $.prototype, "modules", void 0), P([s({ attribute: !1 })], $.prototype, "auth", void 0), P([s({ attribute: "landing-page-url" })], $.prototype, "landingPageUrl", void 0), P([s({
3035
3033
  type: Boolean,
3036
3034
  attribute: "show-help"
3037
- })], $.prototype, "showHelp", void 0), F([s({ attribute: "help-url" })], $.prototype, "helpUrl", void 0), F([s({ attribute: !1 })], $.prototype, "feedback", void 0), F([s({
3035
+ })], $.prototype, "showHelp", void 0), P([s({ attribute: "help-url" })], $.prototype, "helpUrl", void 0), P([s({ attribute: !1 })], $.prototype, "feedback", void 0), P([s({
3038
3036
  type: Boolean,
3039
3037
  attribute: "show-notification"
3040
- })], $.prototype, "showNotification", void 0), F([s({
3038
+ })], $.prototype, "showNotification", void 0), P([s({
3041
3039
  type: Boolean,
3042
3040
  attribute: "notification-active"
3043
- })], $.prototype, "notificationActive", void 0), F([s({
3041
+ })], $.prototype, "notificationActive", void 0), P([s({
3044
3042
  type: Boolean,
3045
3043
  attribute: "open",
3046
3044
  reflect: !0
3047
- })], $.prototype, "open", void 0), F([l()], $.prototype, "_currentItem", void 0), F([l()], $.prototype, "_resolvedModules", void 0), F([l()], $.prototype, "_modulesLoading", void 0), $ = F([o("vsn-navigation")], $);
3045
+ })], $.prototype, "open", void 0), P([l()], $.prototype, "_currentItem", void 0), P([l()], $.prototype, "_resolvedModules", void 0), P([l()], $.prototype, "_modulesLoading", void 0), $ = P([o("vsn-navigation")], $);
3048
3046
  //#endregion
3049
3047
  export { v as SearchError, $ as VSNNavigation, g as isTreeLeaf, _ as isTreeParent };