@gravitee/gamma-lib-observability 1.12.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -376,8 +376,77 @@ function bn(e, t) {
376
376
  });
377
377
  }
378
378
  //#endregion
379
+ //#region src/hooks/use-trace-detail-query.ts
380
+ function xn(e) {
381
+ let { apiId: n, traceId: r, enabled: i } = e, a = t(), o = N({
382
+ queryKey: K.traceDetail(n, r ?? ""),
383
+ queryFn: ({ signal: e }) => {
384
+ if (!r) throw Error("traceId is required but was called with a falsy value");
385
+ return a.fetchTraceById({
386
+ apiId: n,
387
+ traceId: r,
388
+ signal: e
389
+ });
390
+ },
391
+ staleTime: W,
392
+ enabled: !!r && i !== !1
393
+ });
394
+ return {
395
+ data: o.data,
396
+ isLoading: o.isLoading,
397
+ isFetching: o.isFetching,
398
+ isError: o.isError,
399
+ error: o.error,
400
+ refetch: o.refetch
401
+ };
402
+ }
403
+ //#endregion
404
+ //#region src/hooks/use-traces-paged-query.ts
405
+ var Sn = 25, Cn = [];
406
+ function wn(e) {
407
+ let { apiId: n, timeRange: r, filters: i, pageSize: a = Sn, enabled: o } = e, s = t(), [c, l] = k(1), [u, d] = k(a), f = K.traces(n, r, i), p = JSON.stringify(f), m = O(p);
408
+ T(() => {
409
+ m.current !== p && (m.current = p, l(1));
410
+ }, [p]);
411
+ let h = N({
412
+ queryKey: [...f, {
413
+ page: c,
414
+ pageSize: u
415
+ }],
416
+ queryFn: ({ signal: e }) => s.fetchTraces({
417
+ apiId: n,
418
+ timeRange: r,
419
+ filters: i,
420
+ page: c,
421
+ perPage: u,
422
+ signal: e
423
+ }),
424
+ staleTime: W,
425
+ placeholderData: (e) => e,
426
+ enabled: o
427
+ }), g = h.data?.totalCount ?? 0, _ = h.data?.pageCount ?? (g > 0 ? Math.ceil(g / u) : 0);
428
+ _ > 0 && c > _ && l(_);
429
+ let v = _ > 0 ? Math.min(c, _) : c;
430
+ return {
431
+ data: h.data?.entries ?? Cn,
432
+ totalCount: g,
433
+ page: v,
434
+ pageSize: u,
435
+ pageCount: _,
436
+ isLoading: h.isLoading,
437
+ isFetching: h.isFetching,
438
+ isError: h.isError,
439
+ error: h.error,
440
+ goToPage: (e) => l(Math.max(1, Math.min(e, _ || 1))),
441
+ setPageSize: (e) => {
442
+ d(e), l(1);
443
+ },
444
+ refetch: h.refetch
445
+ };
446
+ }
447
+ //#endregion
379
448
  //#region src/filters/constants.ts
380
- var xn = "5m", Sn = [
449
+ var Tn = "5m", En = [
381
450
  {
382
451
  label: "Last",
383
452
  periods: [
@@ -410,7 +479,7 @@ var xn = "5m", Sn = [
410
479
  "previousQuarter"
411
480
  ]
412
481
  }
413
- ], Cn = Sn.flatMap((e) => e.periods), wn = {
482
+ ], Dn = En.flatMap((e) => e.periods), On = {
414
483
  "5m": "5 minutes",
415
484
  "15m": "15 minutes",
416
485
  "1h": "1 hour",
@@ -428,7 +497,7 @@ var xn = "5m", Sn = [
428
497
  previousWeek: "Week",
429
498
  previousMonth: "Month",
430
499
  previousQuarter: "Quarter"
431
- }, Tn = {
500
+ }, kn = {
432
501
  "5m": "Last 5 minutes",
433
502
  "15m": "Last 15 minutes",
434
503
  "1h": "Last 1 hour",
@@ -446,22 +515,22 @@ var xn = "5m", Sn = [
446
515
  previousWeek: "Previous week",
447
516
  previousMonth: "Previous month",
448
517
  previousQuarter: "Previous quarter"
449
- }, En = new Set(Cn), Dn = new Set(_), On = "1", kn = {
518
+ }, An = new Set(Dn), jn = new Set(_), Mn = "1", Nn = {
450
519
  type: "relative",
451
520
  period: "5m"
452
521
  };
453
- function An(e) {
522
+ function Pn(e) {
454
523
  return btoa(e).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
455
524
  }
456
- function jn(e) {
525
+ function Fn(e) {
457
526
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
458
527
  return atob(t);
459
528
  }
460
- function Mn(e) {
461
- return e.conditions.length === 0 && e.timeRange.type === "relative" && e.timeRange.period === kn.period;
529
+ function In(e) {
530
+ return e.conditions.length === 0 && e.timeRange.type === "relative" && e.timeRange.period === Nn.period;
462
531
  }
463
- function Nn(e) {
464
- if (Mn(e)) return null;
532
+ function Ln(e) {
533
+ if (In(e)) return null;
465
534
  let t = {
466
535
  c: e.conditions.map(({ field: e, label: t, operator: n, value: r }) => ({
467
536
  field: e,
@@ -472,19 +541,19 @@ function Nn(e) {
472
541
  t: e.timeRange
473
542
  };
474
543
  return {
475
- q: An(JSON.stringify(t)),
544
+ q: Pn(JSON.stringify(t)),
476
545
  v: "1"
477
546
  };
478
547
  }
479
- function Pn(e, t) {
548
+ function Rn(e, t) {
480
549
  let n = {
481
550
  conditions: [],
482
- timeRange: kn
551
+ timeRange: Nn
483
552
  };
484
553
  if (!e || !t || t !== "1") return n;
485
554
  try {
486
- let t = jn(e), r = JSON.parse(t);
487
- return Ln(r) ? {
555
+ let t = Fn(e), r = JSON.parse(t);
556
+ return Vn(r) ? {
488
557
  conditions: r.c.map(({ field: e, label: t, operator: n, value: r }) => ({
489
558
  field: e,
490
559
  label: t,
@@ -497,33 +566,33 @@ function Pn(e, t) {
497
566
  return n;
498
567
  }
499
568
  }
500
- function Fn(e) {
569
+ function zn(e) {
501
570
  if (typeof e != "object" || !e) return !1;
502
571
  let t = e;
503
- return !(typeof t.field != "string" || t.field.length === 0 || typeof t.label != "string" || typeof t.operator != "string" || !Dn.has(t.operator) || !Array.isArray(t.value) || !t.value.every((e) => typeof e == "string"));
572
+ return !(typeof t.field != "string" || t.field.length === 0 || typeof t.label != "string" || typeof t.operator != "string" || !jn.has(t.operator) || !Array.isArray(t.value) || !t.value.every((e) => typeof e == "string"));
504
573
  }
505
- function In(e) {
574
+ function Bn(e) {
506
575
  if (typeof e != "object" || !e) return !1;
507
576
  let t = e;
508
- return t.type === "relative" ? typeof t.period == "string" && En.has(t.period) : t.type === "absolute" ? typeof t.from == "number" && Number.isFinite(t.from) && typeof t.to == "number" && Number.isFinite(t.to) : !1;
577
+ return t.type === "relative" ? typeof t.period == "string" && An.has(t.period) : t.type === "absolute" ? typeof t.from == "number" && Number.isFinite(t.from) && typeof t.to == "number" && Number.isFinite(t.to) : !1;
509
578
  }
510
- function Ln(e) {
579
+ function Vn(e) {
511
580
  if (typeof e != "object" || !e) return !1;
512
581
  let t = e;
513
- return !Array.isArray(t.c) || !t.c.every(Fn) ? !1 : In(t.t);
582
+ return !Array.isArray(t.c) || !t.c.every(zn) ? !1 : Bn(t.t);
514
583
  }
515
584
  //#endregion
516
585
  //#region src/filters/TimeRangePicker.tsx
517
- function Rn(e) {
586
+ function Hn(e) {
518
587
  return `${String(e.getHours()).padStart(2, "0")}:${String(e.getMinutes()).padStart(2, "0")}`;
519
588
  }
520
- function zn() {
589
+ function Un() {
521
590
  let e = -(/* @__PURE__ */ new Date()).getTimezoneOffset();
522
591
  return `GMT${e >= 0 ? "+" : "-"}${Math.floor(Math.abs(e) / 60)}`;
523
592
  }
524
- function Bn(e, t) {
525
- let n = t ? ` (${zn()})` : "";
526
- if (e.type === "relative") return `${Tn[e.period]}${n}`;
593
+ function Wn(e, t) {
594
+ let n = t ? ` (${Un()})` : "";
595
+ if (e.type === "relative") return `${kn[e.period]}${n}`;
527
596
  let r = new Date(e.from), i = new Date(e.to), a = new Intl.DateTimeFormat(void 0, {
528
597
  month: "short",
529
598
  day: "numeric",
@@ -535,7 +604,7 @@ function Bn(e, t) {
535
604
  });
536
605
  return `${a.format(r)} @ ${o.format(r)} - ${a.format(i)} @ ${o.format(i)}${n}`;
537
606
  }
538
- function Vn(e) {
607
+ function Gn(e) {
539
608
  return e ? e.toLocaleDateString(void 0, {
540
609
  weekday: "short",
541
610
  month: "short",
@@ -543,20 +612,20 @@ function Vn(e) {
543
612
  year: "numeric"
544
613
  }) : "—";
545
614
  }
546
- function Hn(e, t) {
615
+ function Kn(e, t) {
547
616
  if (!e) return;
548
617
  let [n, r] = t.split(":").map(Number), i = new Date(e);
549
618
  return i.setHours(n ?? 0, r ?? 0, 0, 0), i.getTime();
550
619
  }
551
- function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, className: i }) {
552
- let a = E(), o = `${a}-from`, s = `${a}-to`, [c, l] = k(!1), [u, d] = k("relative"), [f, p] = k(void 0), [m, h] = k("00:00"), [g, _] = k("23:59"), v = Hn(f?.from, m), y = Hn(f?.to, g), b = v !== void 0 && y !== void 0 && v >= y, x = v !== void 0 && y !== void 0 && !b;
620
+ function qn({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, className: i }) {
621
+ let a = E(), o = `${a}-from`, s = `${a}-to`, [c, l] = k(!1), [u, d] = k("relative"), [f, p] = k(void 0), [m, h] = k("00:00"), [g, _] = k("23:59"), v = Kn(f?.from, m), y = Kn(f?.to, g), b = v !== void 0 && y !== void 0 && v >= y, x = v !== void 0 && y !== void 0 && !b;
553
622
  function S(t) {
554
623
  if (l(t), t && (d(e.type === "absolute" ? "custom" : "relative"), e.type === "absolute")) {
555
624
  let t = new Date(e.from), n = new Date(e.to);
556
625
  p({
557
626
  from: t,
558
627
  to: n
559
- }), h(Rn(t)), _(Rn(n));
628
+ }), h(Hn(t)), _(Hn(n));
560
629
  }
561
630
  }
562
631
  function C(e) {
@@ -587,7 +656,7 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
587
656
  "aria-haspopup": "dialog",
588
657
  "aria-expanded": c,
589
658
  className: V("justify-between gap-2 font-normal", i),
590
- children: [Bn(e, r), /* @__PURE__ */ j(Qe, {
659
+ children: [Wn(e, r), /* @__PURE__ */ j(Qe, {
591
660
  "aria-hidden": "true",
592
661
  className: "size-4 shrink-0"
593
662
  })]
@@ -618,7 +687,7 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
618
687
  className: "flex flex-col gap-4",
619
688
  role: "listbox",
620
689
  "aria-label": "Preset time ranges",
621
- children: Sn.map((t) => /* @__PURE__ */ M("div", {
690
+ children: En.map((t) => /* @__PURE__ */ M("div", {
622
691
  className: "flex flex-col gap-2",
623
692
  children: [/* @__PURE__ */ j("p", {
624
693
  className: "text-xs font-medium text-muted-foreground",
@@ -629,12 +698,12 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
629
698
  variant: "outline",
630
699
  size: "sm",
631
700
  role: "option",
632
- "aria-label": Tn[t],
701
+ "aria-label": kn[t],
633
702
  "aria-selected": e.type === "relative" && e.period === t,
634
703
  className: V(e.type === "relative" && e.period === t && "bg-primary text-primary-foreground hover:bg-primary/90"),
635
704
  disabled: n,
636
705
  onClick: () => C(t),
637
- children: wn[t]
706
+ children: On[t]
638
707
  }, t))
639
708
  })]
640
709
  }, t.label))
@@ -658,7 +727,7 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
658
727
  className: "flex-1",
659
728
  children: [/* @__PURE__ */ j(Ee, {
660
729
  htmlFor: o,
661
- children: Vn(f?.from)
730
+ children: Gn(f?.from)
662
731
  }), /* @__PURE__ */ j(De, {
663
732
  id: o,
664
733
  type: "time",
@@ -677,7 +746,7 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
677
746
  className: "flex-1",
678
747
  children: [/* @__PURE__ */ j(Ee, {
679
748
  htmlFor: s,
680
- children: Vn(f?.to)
749
+ children: Gn(f?.to)
681
750
  }), /* @__PURE__ */ j(De, {
682
751
  id: s,
683
752
  type: "time",
@@ -709,7 +778,7 @@ function Un({ value: e, onChange: t, disabled: n = !1, showTimezone: r = !1, cla
709
778
  }
710
779
  //#endregion
711
780
  //#region src/filters/resolve-period.ts
712
- function Wn() {
781
+ function Jn() {
713
782
  try {
714
783
  let { firstDay: e } = new Intl.Locale(navigator.language).getWeekInfo();
715
784
  return e % 7;
@@ -717,7 +786,7 @@ function Wn() {
717
786
  return 1;
718
787
  }
719
788
  }
720
- var Gn = {
789
+ var Yn = {
721
790
  "5m": 5 * 6e4,
722
791
  "15m": 15 * 6e4,
723
792
  "1h": 60 * 6e4,
@@ -730,51 +799,51 @@ var Gn = {
730
799
  "180d": 4320 * 60 * 6e4,
731
800
  "365d": 365 * 24 * 60 * 6e4
732
801
  };
733
- function Kn(e) {
802
+ function Xn(e) {
734
803
  let t = new Date(e);
735
804
  return t.setHours(0, 0, 0, 0), t;
736
805
  }
737
- function qn(e, t) {
738
- let n = Kn(e), r = (n.getDay() - t + 7) % 7;
806
+ function Zn(e, t) {
807
+ let n = Xn(e), r = (n.getDay() - t + 7) % 7;
739
808
  return n.setDate(n.getDate() - r), n;
740
809
  }
741
- function Jn(e) {
810
+ function Qn(e) {
742
811
  return new Date(e.getFullYear(), e.getMonth(), 1);
743
812
  }
744
- function Yn(e) {
813
+ function $n(e) {
745
814
  let t = Math.floor(e.getMonth() / 3) * 3;
746
815
  return new Date(e.getFullYear(), t, 1);
747
816
  }
748
- function Xn(e, t, n) {
817
+ function er(e, t, n) {
749
818
  switch (e) {
750
819
  case "currentWeek": return {
751
- from: qn(t, n),
820
+ from: Zn(t, n),
752
821
  to: t
753
822
  };
754
823
  case "currentMonth": return {
755
- from: Jn(t),
824
+ from: Qn(t),
756
825
  to: t
757
826
  };
758
827
  case "currentQuarter": return {
759
- from: Yn(t),
828
+ from: $n(t),
760
829
  to: t
761
830
  };
762
831
  case "previousWeek": {
763
- let e = qn(t, n), r = new Date(e);
832
+ let e = Zn(t, n), r = new Date(e);
764
833
  return r.setDate(r.getDate() - 7), {
765
834
  from: r,
766
835
  to: e
767
836
  };
768
837
  }
769
838
  case "previousMonth": {
770
- let e = Jn(t), n = new Date(e);
839
+ let e = Qn(t), n = new Date(e);
771
840
  return n.setMonth(n.getMonth() - 1), {
772
841
  from: n,
773
842
  to: e
774
843
  };
775
844
  }
776
845
  case "previousQuarter": {
777
- let e = Yn(t), n = new Date(e);
846
+ let e = $n(t), n = new Date(e);
778
847
  return n.setMonth(n.getMonth() - 3), {
779
848
  from: n,
780
849
  to: e
@@ -783,8 +852,8 @@ function Xn(e, t, n) {
783
852
  default: return;
784
853
  }
785
854
  }
786
- function Zn(e, t = {}) {
787
- let { now: n = /* @__PURE__ */ new Date(), weekStartsOn: r = Wn() } = t, i = Gn[e];
855
+ function tr(e, t = {}) {
856
+ let { now: n = /* @__PURE__ */ new Date(), weekStartsOn: r = Jn() } = t, i = Yn[e];
788
857
  if (i !== void 0) {
789
858
  let e = n.getTime();
790
859
  return {
@@ -793,7 +862,7 @@ function Zn(e, t = {}) {
793
862
  to: e
794
863
  };
795
864
  }
796
- let a = Xn(e, n, r);
865
+ let a = er(e, n, r);
797
866
  return a ? {
798
867
  type: "absolute",
799
868
  from: a.from.getTime(),
@@ -806,7 +875,7 @@ function Zn(e, t = {}) {
806
875
  }
807
876
  //#endregion
808
877
  //#region src/filters/filter-provider.ts
809
- function Qn(e) {
878
+ function nr(e) {
810
879
  let t = e.kind ?? "async", n = e.field;
811
880
  if (!e.operators.length) throw Error(`[gamma-lib-observability] FilterProvider "${n}" must define at least one operator.`);
812
881
  if (t === "enum") {
@@ -822,7 +891,7 @@ function Qn(e) {
822
891
  }
823
892
  //#endregion
824
893
  //#region src/filters/use-scoped-filter-providers.ts
825
- function $n(e) {
894
+ function rr(e) {
826
895
  let t = p(), n = J();
827
896
  return D(() => {
828
897
  if (!e) return t;
@@ -838,18 +907,18 @@ function $n(e) {
838
907
  }
839
908
  //#endregion
840
909
  //#region src/filters/utils/filter-value-options.ts
841
- function er(e, t) {
910
+ function ir(e, t) {
842
911
  let n = /* @__PURE__ */ new Map();
843
912
  for (let t of e) n.set(t.value, t);
844
913
  for (let e of t) n.set(e.value, e);
845
914
  return [...n.values()];
846
915
  }
847
- function tr(e, t) {
916
+ function ar(e, t) {
848
917
  return e.value === t.value;
849
918
  }
850
919
  //#endregion
851
920
  //#region src/filters/utils/use-auto-open-on-focus.ts
852
- function nr() {
921
+ function or() {
853
922
  let [e, t] = k(!1), n = O(!1);
854
923
  return {
855
924
  open: e,
@@ -870,15 +939,15 @@ function nr() {
870
939
  }
871
940
  //#endregion
872
941
  //#region src/filters/FilterValueCombobox.tsx
873
- var rr = (e) => e.label, ir = (e) => e.value;
874
- function ar({ options: e, selected: t, onSelectedChange: n, multiple: r, onSearchChange: i, disableBuiltInFilter: a = !1, placeholder: o = r ? "Search values…" : "Search value…", emptyMessage: s = "No results.", listFooter: c, errorMessage: l }) {
875
- let u = Ke(), { open: d, handleOpenChange: f, handleInputFocus: p, handleInputKeyDown: m } = nr(), h = E(), g = !!l, _ = {
942
+ var sr = (e) => e.label, cr = (e) => e.value;
943
+ function lr({ options: e, selected: t, onSelectedChange: n, multiple: r, onSearchChange: i, disableBuiltInFilter: a = !1, placeholder: o = r ? "Search values…" : "Search value…", emptyMessage: s = "No results.", listFooter: c, errorMessage: l }) {
944
+ let u = Ke(), { open: d, handleOpenChange: f, handleInputFocus: p, handleInputKeyDown: m } = or(), h = E(), g = !!l, _ = {
876
945
  open: d,
877
946
  onOpenChange: f,
878
947
  items: e,
879
- itemToStringLabel: rr,
880
- itemToStringValue: ir,
881
- isItemEqualToValue: tr,
948
+ itemToStringLabel: sr,
949
+ itemToStringValue: cr,
950
+ isItemEqualToValue: ar,
882
951
  ...a && { filter: null },
883
952
  ...i && { onInputValueChange: (e) => i(String(e)) }
884
953
  }, y = /* @__PURE__ */ M(A, { children: [
@@ -938,7 +1007,7 @@ function ar({ options: e, selected: t, onSelectedChange: n, multiple: r, onSearc
938
1007
  }
939
1008
  //#endregion
940
1009
  //#region src/filters/utils/use-debounced-value.ts
941
- function or(e, t) {
1010
+ function ur(e, t) {
942
1011
  let [n, r] = k(e);
943
1012
  return T(() => {
944
1013
  let n = window.setTimeout(() => r(e), t);
@@ -947,13 +1016,13 @@ function or(e, t) {
947
1016
  }
948
1017
  //#endregion
949
1018
  //#region src/filters/utils/use-scroll-sentinel.ts
950
- function sr(e, t) {
1019
+ function dr(e, t) {
951
1020
  let n = O(e), r = O(null);
952
1021
  return T(() => {
953
1022
  n.current = e;
954
1023
  }, [e]), C((e) => {
955
1024
  if (r.current &&= (r.current.disconnect(), null), e && t) {
956
- let t = cr(e), i = new IntersectionObserver((e) => {
1025
+ let t = fr(e), i = new IntersectionObserver((e) => {
957
1026
  e[0]?.isIntersecting && n.current();
958
1027
  }, {
959
1028
  root: t,
@@ -963,7 +1032,7 @@ function sr(e, t) {
963
1032
  }
964
1033
  }, [t]);
965
1034
  }
966
- function cr(e) {
1035
+ function fr(e) {
967
1036
  let t = e.closest("[data-slot=combobox-content]");
968
1037
  if (t) return t;
969
1038
  let n = e.parentElement;
@@ -976,9 +1045,9 @@ function cr(e) {
976
1045
  }
977
1046
  //#endregion
978
1047
  //#region src/filters/FilterAsyncValueField.tsx
979
- var lr = 300;
980
- function ur({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
981
- let [i, a] = k(""), o = or(i, lr), [s, c] = k([]), [l, u] = k(!1), [d, f] = k(null), [p, m] = k(!1), [h, g] = k(1), _ = O(0), v = O(null), y = O(o), b = C(async (t, n) => {
1048
+ var pr = 300;
1049
+ function mr({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1050
+ let [i, a] = k(""), o = ur(i, pr), [s, c] = k([]), [l, u] = k(!1), [d, f] = k(null), [p, m] = k(!1), [h, g] = k(1), _ = O(0), v = O(null), y = O(o), b = C(async (t, n) => {
982
1051
  if (!e.valueLoader) return;
983
1052
  v.current?.abort();
984
1053
  let r = new AbortController();
@@ -1018,11 +1087,11 @@ function ur({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1018
1087
  h,
1019
1088
  b
1020
1089
  ]);
1021
- let x = sr(C(() => {
1090
+ let x = dr(C(() => {
1022
1091
  !l && p && g((e) => e + 1);
1023
1092
  }, [l, p]), p && !l);
1024
- return /* @__PURE__ */ j(ar, {
1025
- options: D(() => er(t, s), [t, s]),
1093
+ return /* @__PURE__ */ j(lr, {
1094
+ options: D(() => ir(t, s), [t, s]),
1026
1095
  selected: t,
1027
1096
  onSelectedChange: n,
1028
1097
  multiple: r,
@@ -1048,8 +1117,8 @@ function ur({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1048
1117
  }
1049
1118
  //#endregion
1050
1119
  //#region src/filters/FilterEnumValueField.tsx
1051
- function dr({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1052
- return /* @__PURE__ */ j(ar, {
1120
+ function hr({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1121
+ return /* @__PURE__ */ j(lr, {
1053
1122
  options: D(() => e.options ?? [], [e.options]),
1054
1123
  selected: t,
1055
1124
  onSelectedChange: n,
@@ -1058,19 +1127,19 @@ function dr({ provider: e, selected: t, onSelectedChange: n, multiple: r }) {
1058
1127
  }
1059
1128
  //#endregion
1060
1129
  //#region src/filters/utils/scope-labels.ts
1061
- var fr = {
1130
+ var gr = {
1062
1131
  HTTP_PROXY: "HTTP Proxy",
1063
1132
  MESSAGE: "Message"
1064
1133
  };
1065
- function pr(e) {
1134
+ function _r(e) {
1066
1135
  return e.trim().replace(/\s+/g, "_").toUpperCase();
1067
1136
  }
1068
- function mr(e) {
1069
- return fr[pr(e)] ?? e.trim();
1137
+ function vr(e) {
1138
+ return gr[_r(e)] ?? e.trim();
1070
1139
  }
1071
1140
  //#endregion
1072
1141
  //#region src/filters/FilterFieldOptionRow.tsx
1073
- var hr = S(function({ provider: e, showScopes: t = !1, className: n }) {
1142
+ var yr = S(function({ provider: e, showScopes: t = !1, className: n }) {
1074
1143
  let r = t && e.scopes && e.scopes.length > 0;
1075
1144
  return /* @__PURE__ */ M("div", {
1076
1145
  className: V("flex min-w-0 flex-1 items-center justify-between gap-3", n),
@@ -1082,15 +1151,15 @@ var hr = S(function({ provider: e, showScopes: t = !1, className: n }) {
1082
1151
  children: e.scopes?.map((e) => /* @__PURE__ */ j(P, {
1083
1152
  variant: "secondary",
1084
1153
  className: "max-w-28 truncate text-xs font-normal",
1085
- children: mr(e)
1154
+ children: vr(e)
1086
1155
  }, e))
1087
1156
  }) : null]
1088
1157
  });
1089
1158
  });
1090
1159
  //#endregion
1091
1160
  //#region src/filters/FilterPropertyField.tsx
1092
- function gr({ providers: e, selectedField: t, onFieldChange: n, showScopes: r }) {
1093
- let i = Ke(), { open: a, handleOpenChange: o, handleInputFocus: s, handleInputKeyDown: c } = nr();
1161
+ function br({ providers: e, selectedField: t, onFieldChange: n, showScopes: r }) {
1162
+ let i = Ke(), { open: a, handleOpenChange: o, handleInputFocus: s, handleInputKeyDown: c } = or();
1094
1163
  return /* @__PURE__ */ M(ce, {
1095
1164
  open: a,
1096
1165
  onOpenChange: o,
@@ -1112,7 +1181,7 @@ function gr({ providers: e, selectedField: t, onFieldChange: n, showScopes: r })
1112
1181
  anchor: i,
1113
1182
  children: [/* @__PURE__ */ j(pe, { children: "No results." }), /* @__PURE__ */ j(he, { children: (e) => /* @__PURE__ */ j(me, {
1114
1183
  value: e,
1115
- children: /* @__PURE__ */ j(hr, {
1184
+ children: /* @__PURE__ */ j(yr, {
1116
1185
  provider: e,
1117
1186
  showScopes: r
1118
1187
  })
@@ -1122,7 +1191,7 @@ function gr({ providers: e, selectedField: t, onFieldChange: n, showScopes: r })
1122
1191
  }
1123
1192
  //#endregion
1124
1193
  //#region src/filters/utils/filter-operators.ts
1125
- var _r = {
1194
+ var xr = {
1126
1195
  eq: "=",
1127
1196
  neq: "≠",
1128
1197
  in: "in",
@@ -1137,13 +1206,13 @@ var _r = {
1137
1206
  lte: "≤",
1138
1207
  exists: "exists",
1139
1208
  not_exists: "not exists"
1140
- }, vr = new Set(["exists", "not_exists"]), yr = new Set([
1209
+ }, Sr = new Set(["exists", "not_exists"]), Cr = new Set([
1141
1210
  "neq",
1142
1211
  "not_in",
1143
1212
  "not_contains",
1144
1213
  "not_exists"
1145
1214
  ]);
1146
- function br(e) {
1215
+ function wr(e) {
1147
1216
  switch (e) {
1148
1217
  case "eq": return "=";
1149
1218
  case "neq": return "≠";
@@ -1151,38 +1220,38 @@ function br(e) {
1151
1220
  case "not_in": return "Not in";
1152
1221
  case "gte": return "≥";
1153
1222
  case "lte": return "≤";
1154
- default: return _r[e] ?? e;
1223
+ default: return xr[e] ?? e;
1155
1224
  }
1156
1225
  }
1157
- function xr(e) {
1158
- return !vr.has(e);
1226
+ function Tr(e) {
1227
+ return !Sr.has(e);
1159
1228
  }
1160
- function Sr(e, t) {
1229
+ function Er(e, t) {
1161
1230
  return e.operators.includes(t);
1162
1231
  }
1163
- function Cr(e, t) {
1164
- let n = Sr(e, "in"), r = Sr(e, "not_in");
1232
+ function Dr(e, t) {
1233
+ let n = Er(e, "in"), r = Er(e, "not_in");
1165
1234
  return !!(t === "in" || t === "not_in" || n && t === "eq" || r && t === "neq");
1166
1235
  }
1167
- function wr(e, t, n) {
1236
+ function Or(e, t, n) {
1168
1237
  if (n >= 2) {
1169
- if (t === "eq" && Sr(e, "in")) return "in";
1170
- if (t === "neq" && Sr(e, "not_in")) return "not_in";
1238
+ if (t === "eq" && Er(e, "in")) return "in";
1239
+ if (t === "neq" && Er(e, "not_in")) return "not_in";
1171
1240
  }
1172
1241
  if (n === 1) {
1173
- if (t === "in" && Sr(e, "eq")) return "eq";
1174
- if (t === "not_in" && Sr(e, "neq")) return "neq";
1242
+ if (t === "in" && Er(e, "eq")) return "eq";
1243
+ if (t === "not_in" && Er(e, "neq")) return "neq";
1175
1244
  }
1176
1245
  return t;
1177
1246
  }
1178
1247
  //#endregion
1179
1248
  //#region src/filters/utils/normalize-filter-value.ts
1180
- function Tr(e) {
1249
+ function kr(e) {
1181
1250
  return e.every((e) => typeof e == "object" && !!e && "value" in e && typeof e.value == "string" && "label" in e && typeof e.label == "string");
1182
1251
  }
1183
- function Er(e) {
1252
+ function Ar(e) {
1184
1253
  if (Array.isArray(e)) {
1185
- if (e.length > 0 && Tr(e)) return {
1254
+ if (e.length > 0 && kr(e)) return {
1186
1255
  values: e.map((e) => e.value),
1187
1256
  valueLabels: e.map((e) => e.label)
1188
1257
  };
@@ -1201,7 +1270,7 @@ function Er(e) {
1201
1270
  valueLabels: t.map((e, t) => n[t] ?? e)
1202
1271
  };
1203
1272
  }
1204
- function Dr(e, t) {
1273
+ function jr(e, t) {
1205
1274
  return e.map((e, n) => ({
1206
1275
  value: e,
1207
1276
  label: t?.[n] ?? e
@@ -1209,42 +1278,42 @@ function Dr(e, t) {
1209
1278
  }
1210
1279
  //#endregion
1211
1280
  //#region src/filters/utils/parse-free-text-input.ts
1212
- function Or(e) {
1281
+ function Mr(e) {
1213
1282
  return e.split(",").map((e) => e.trim()).filter((e) => e.length > 0);
1214
1283
  }
1215
1284
  //#endregion
1216
1285
  //#region src/filters/utils/build-filter-condition.ts
1217
- function kr(e) {
1286
+ function Nr(e) {
1218
1287
  let { provider: t, operator: n, selectedOptions: r = [], freeText: i = "" } = e;
1219
1288
  if (!t || !n) return !1;
1220
- if (!xr(n)) return !0;
1289
+ if (!Tr(n)) return !0;
1221
1290
  if (t.allowFreeText && !t.valueLoader && t.kind !== "enum") {
1222
- let e = Or(i);
1291
+ let e = Mr(i);
1223
1292
  if (e.length === 0) return !1;
1224
1293
  if (e.length > 1) {
1225
- let r = wr(t, n, e.length);
1294
+ let r = Or(t, n, e.length);
1226
1295
  if (r === "eq" || r === "neq") return !1;
1227
1296
  }
1228
1297
  return !0;
1229
1298
  }
1230
1299
  if (r.length === 0) return !1;
1231
1300
  if (r.length > 1) {
1232
- let e = wr(t, n, r.length);
1301
+ let e = Or(t, n, r.length);
1233
1302
  if (e === "eq" || e === "neq") return !1;
1234
1303
  }
1235
1304
  return !0;
1236
1305
  }
1237
- function Ar(e) {
1238
- let { provider: t, operator: n, selectedOptions: r, freeText: i } = e, a = xr(n), o, s;
1306
+ function Pr(e) {
1307
+ let { provider: t, operator: n, selectedOptions: r, freeText: i } = e, a = Tr(n), o, s;
1239
1308
  if (!a) o = [], s = [];
1240
1309
  else if (t.allowFreeText && !t.valueLoader && t.kind !== "enum") {
1241
- let e = Er(Or(i));
1310
+ let e = Ar(Mr(i));
1242
1311
  o = e.values, s = e.valueLabels;
1243
1312
  } else {
1244
- let e = Er([...r]);
1313
+ let e = Ar([...r]);
1245
1314
  o = e.values, s = e.valueLabels;
1246
1315
  }
1247
- let c = wr(t, n, o.length);
1316
+ let c = Or(t, n, o.length);
1248
1317
  return {
1249
1318
  field: t.field,
1250
1319
  label: t.label,
@@ -1255,8 +1324,8 @@ function Ar(e) {
1255
1324
  }
1256
1325
  //#endregion
1257
1326
  //#region src/filters/FilterPopoverForm.tsx
1258
- function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1 }) {
1259
- let i = p(), [a, o] = k(e?.field ?? null), [s, c] = k(e?.operator ?? null), [l, u] = k(() => e ? Dr(e.value, e.valueLabels) : []), [d, f] = k(e?.value.join(", ") ?? ""), m = D(() => i.find((e) => e.field === a) ?? null, [i, a]), h = m && s ? Cr(m, s) : !1, g = m?.kind ?? "async", _ = s ? xr(s) : !0, v = kr({
1327
+ function Fr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1 }) {
1328
+ let i = p(), [a, o] = k(e?.field ?? null), [s, c] = k(e?.operator ?? null), [l, u] = k(() => e ? jr(e.value, e.valueLabels) : []), [d, f] = k(e?.value.join(", ") ?? ""), m = D(() => i.find((e) => e.field === a) ?? null, [i, a]), h = m && s ? Dr(m, s) : !1, g = m?.kind ?? "async", _ = s ? Tr(s) : !0, v = Nr({
1260
1329
  provider: m,
1261
1330
  operator: s,
1262
1331
  selectedOptions: l,
@@ -1271,12 +1340,12 @@ function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1
1271
1340
  function x(e) {
1272
1341
  let t = h ? e : e.slice(0, 1);
1273
1342
  if (u(t), m && s) {
1274
- let e = wr(m, s, t.length);
1343
+ let e = Or(m, s, t.length);
1275
1344
  e !== s && c(e);
1276
1345
  }
1277
1346
  }
1278
1347
  function S() {
1279
- !m || !s || t(Ar({
1348
+ !m || !s || t(Pr({
1280
1349
  provider: m,
1281
1350
  operator: s,
1282
1351
  selectedOptions: l,
@@ -1288,12 +1357,12 @@ function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1
1288
1357
  disabled: !0,
1289
1358
  placeholder: "Search value…",
1290
1359
  "aria-label": "Filter value"
1291
- }) : g === "enum" && m.options ? /* @__PURE__ */ j(dr, {
1360
+ }) : g === "enum" && m.options ? /* @__PURE__ */ j(hr, {
1292
1361
  provider: m,
1293
1362
  selected: l,
1294
1363
  onSelectedChange: x,
1295
1364
  multiple: h
1296
- }, m.field) : m.valueLoader ? /* @__PURE__ */ j(ur, {
1365
+ }, m.field) : m.valueLoader ? /* @__PURE__ */ j(mr, {
1297
1366
  provider: m,
1298
1367
  selected: l,
1299
1368
  onSelectedChange: x,
@@ -1311,7 +1380,7 @@ function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1
1311
1380
  return /* @__PURE__ */ M("div", {
1312
1381
  className: "flex w-[340px] flex-col gap-4 p-4",
1313
1382
  children: [
1314
- /* @__PURE__ */ M(we, { children: [/* @__PURE__ */ j(Ee, { children: "Filter by" }), /* @__PURE__ */ j(gr, {
1383
+ /* @__PURE__ */ M(we, { children: [/* @__PURE__ */ j(Ee, { children: "Filter by" }), /* @__PURE__ */ j(br, {
1315
1384
  providers: i,
1316
1385
  selectedField: a,
1317
1386
  onFieldChange: y,
@@ -1327,7 +1396,7 @@ function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1
1327
1396
  children: /* @__PURE__ */ j(Le, { placeholder: "Select operator…" })
1328
1397
  }), /* @__PURE__ */ j(Pe, { children: (m?.operators ?? []).map((e) => /* @__PURE__ */ j(Fe, {
1329
1398
  value: e,
1330
- children: br(e)
1399
+ children: wr(e)
1331
1400
  }, e)) })]
1332
1401
  })] }),
1333
1402
  _ ? /* @__PURE__ */ M(we, { children: [/* @__PURE__ */ j(Ee, { children: "Filter value" }), C()] }) : null,
@@ -1352,31 +1421,31 @@ function jr({ existingCondition: e, onApply: t, onCancel: n, showScopes: r = !1
1352
1421
  }
1353
1422
  //#endregion
1354
1423
  //#region src/filters/utils/filter-display.ts
1355
- function Mr(e, t) {
1424
+ function Ir(e, t) {
1356
1425
  let n = e.value[t];
1357
1426
  if (n === void 0) return "";
1358
1427
  let r = e.valueLabels?.[t];
1359
1428
  return r != null && r !== "" ? r : n;
1360
1429
  }
1361
- function Nr(e) {
1430
+ function Lr(e) {
1362
1431
  return e.value.length === 1 && e.operator === "in" ? "eq" : e.value.length === 1 && e.operator === "not_in" ? "neq" : e.operator;
1363
1432
  }
1364
- function Pr(e) {
1365
- return _r[e] ?? e;
1433
+ function Rr(e) {
1434
+ return xr[e] ?? e;
1366
1435
  }
1367
- function Fr(e) {
1436
+ function zr(e) {
1368
1437
  if (e.value.length === 0) return e.label;
1369
- let t = Pr(Nr(e));
1370
- return e.value.length > 1 ? `${e.label} ${t} (${e.value.length})` : `${e.label} ${t} ${Mr(e, 0)}`;
1438
+ let t = Rr(Lr(e));
1439
+ return e.value.length > 1 ? `${e.label} ${t} (${e.value.length})` : `${e.label} ${t} ${Ir(e, 0)}`;
1371
1440
  }
1372
- function Ir(e) {
1441
+ function Br(e) {
1373
1442
  if (e.value.length === 0) return {
1374
1443
  name: e.label,
1375
1444
  operator: "",
1376
1445
  value: "",
1377
1446
  isCount: !1
1378
1447
  };
1379
- let t = Pr(Nr(e));
1448
+ let t = Rr(Lr(e));
1380
1449
  return e.value.length > 1 ? {
1381
1450
  name: e.label,
1382
1451
  operator: t,
@@ -1385,26 +1454,26 @@ function Ir(e) {
1385
1454
  } : {
1386
1455
  name: e.label,
1387
1456
  operator: t,
1388
- value: Mr(e, 0),
1457
+ value: Ir(e, 0),
1389
1458
  isCount: !1
1390
1459
  };
1391
1460
  }
1392
- function Lr(e) {
1461
+ function Vr(e) {
1393
1462
  if (e.value.length === 0) return e.label;
1394
- let t = Pr(Nr(e));
1463
+ let t = Rr(Lr(e));
1395
1464
  if (e.value.length > 1) {
1396
- let n = e.value.map((t, n) => Mr(e, n));
1465
+ let n = e.value.map((t, n) => Ir(e, n));
1397
1466
  return `${e.label} ${t} [${n.join(", ")}]`;
1398
1467
  }
1399
- return `${e.label} ${t} ${Mr(e, 0)}`;
1468
+ return `${e.label} ${t} ${Ir(e, 0)}`;
1400
1469
  }
1401
1470
  //#endregion
1402
1471
  //#region src/filters/FilterChip.tsx
1403
- function Rr(e, t, n) {
1472
+ function Hr(e, t, n) {
1404
1473
  return e ? t ? `Filter: ${n}` : `Edit filter: ${n}. Press Delete to remove.` : `Active filter: ${n}`;
1405
1474
  }
1406
- var zr = S(x(function({ condition: e, onEdit: t, onRemove: n, editable: r = !0, disabled: i = !1, active: a = !1, className: o, "data-chip-index": s }, c) {
1407
- let l = Ir(e), u = Lr(e), d = r && !i, f = yr.has(e.operator), [p, m] = k(!1);
1475
+ var Ur = S(x(function({ condition: e, onEdit: t, onRemove: n, editable: r = !0, disabled: i = !1, active: a = !1, className: o, "data-chip-index": s }, c) {
1476
+ let l = Br(e), u = Vr(e), d = r && !i, f = Cr.has(e.operator), [p, m] = k(!1);
1408
1477
  function h(e) {
1409
1478
  e.stopPropagation(), d && n?.();
1410
1479
  }
@@ -1431,7 +1500,7 @@ var zr = S(x(function({ condition: e, onEdit: t, onRemove: n, editable: r = !0,
1431
1500
  ref: c,
1432
1501
  "data-chip-index": s,
1433
1502
  className: V("inline-flex items-center gap-1.5", f && r && "border-dashed border-highlight/40", f && !r && "border-dashed", i && "pointer-events-none opacity-50", o),
1434
- "aria-label": Rr(r, i, u),
1503
+ "aria-label": Hr(r, i, u),
1435
1504
  "aria-disabled": i || void 0,
1436
1505
  "data-active": a || void 0,
1437
1506
  onMouseEnter: () => d && m(!0),
@@ -1465,32 +1534,32 @@ var zr = S(x(function({ condition: e, onEdit: t, onRemove: n, editable: r = !0,
1465
1534
  })
1466
1535
  }), /* @__PURE__ */ j(R, { children: u })] });
1467
1536
  }));
1468
- zr.displayName = "FilterChip";
1537
+ Ur.displayName = "FilterChip";
1469
1538
  //#endregion
1470
1539
  //#region src/filters/utils/filter-condition-key.ts
1471
- function Br(e) {
1540
+ function Wr(e) {
1472
1541
  let t = JSON.stringify([...e.value].sort());
1473
1542
  return `${e.field}:${e.operator}:${t}`;
1474
1543
  }
1475
1544
  //#endregion
1476
1545
  //#region src/filters/utils/merge-conditions.ts
1477
- var Vr = new Set(["eq", "in"]), Hr = new Set(["neq", "not_in"]);
1478
- function Ur(e) {
1479
- return Vr.has(e);
1546
+ var Gr = new Set(["eq", "in"]), Kr = new Set(["neq", "not_in"]);
1547
+ function qr(e) {
1548
+ return Gr.has(e);
1480
1549
  }
1481
- function Wr(e) {
1482
- return Hr.has(e);
1550
+ function Jr(e) {
1551
+ return Kr.has(e);
1483
1552
  }
1484
- function Gr(e, t) {
1485
- return e.field === t.field ? !!(Ur(e.operator) && Ur(t.operator) || Wr(e.operator) && Wr(t.operator)) : !1;
1553
+ function Yr(e, t) {
1554
+ return e.field === t.field ? !!(qr(e.operator) && qr(t.operator) || Jr(e.operator) && Jr(t.operator)) : !1;
1486
1555
  }
1487
- function Kr(e, t, n) {
1488
- if (!Gr(e, t)) return null;
1556
+ function Xr(e, t, n) {
1557
+ if (!Yr(e, t)) return null;
1489
1558
  let r = /* @__PURE__ */ new Set(), i = [], a = [];
1490
1559
  for (let n of [e, t]) n.value.forEach((e, t) => {
1491
1560
  r.has(e) || (r.add(e), i.push(e), a.push(n.valueLabels?.[t] ?? e));
1492
1561
  });
1493
- let o = wr(n, Ur(e.operator) ? "eq" : "neq", i.length);
1562
+ let o = Or(n, qr(e.operator) ? "eq" : "neq", i.length);
1494
1563
  return !n.operators.includes(o) || i.length > 1 && (o === "eq" || o === "neq") ? null : {
1495
1564
  field: e.field,
1496
1565
  label: e.label,
@@ -1501,11 +1570,11 @@ function Kr(e, t, n) {
1501
1570
  }
1502
1571
  //#endregion
1503
1572
  //#region src/filters/FilterBar.tsx
1504
- function qr(e, t) {
1573
+ function Zr(e, t) {
1505
1574
  return e ? e.mode === "add" ? "add" : t ? `edit-${t.field}-${t.operator}-${JSON.stringify(t.value)}` : `edit-${e.editIndex}` : "closed";
1506
1575
  }
1507
- function Jr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r = !1, scopeFilterField: i, className: a }) {
1508
- let o = $n(i), [s, c] = k(null), l = O(null), u = O(/* @__PURE__ */ new Map()), d = O(null), f = O({ getBoundingClientRect: () => new DOMRect() }), p = s?.editIndex !== void 0 && s.editIndex >= 0 && s.editIndex < e.length, m = s !== null && (s.mode === "add" || p), h = p ? e[s.editIndex] : void 0, g = C((e) => {
1576
+ function Qr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r = !1, scopeFilterField: i, className: a }) {
1577
+ let o = rr(i), [s, c] = k(null), l = O(null), u = O(/* @__PURE__ */ new Map()), d = O(null), f = O({ getBoundingClientRect: () => new DOMRect() }), p = s?.editIndex !== void 0 && s.editIndex >= 0 && s.editIndex < e.length, m = s !== null && (s.mode === "add" || p), h = p ? e[s.editIndex] : void 0, g = C((e) => {
1509
1578
  if (e) {
1510
1579
  let t = Number(e.dataset.chipIndex);
1511
1580
  u.current.set(t, e);
@@ -1536,7 +1605,7 @@ function Jr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r =
1536
1605
  }
1537
1606
  let r = o.find((e) => e.field === n.field), i = e.findIndex((e) => e.field === n.field), a = i >= 0 ? e[i] : void 0;
1538
1607
  if (a && r) {
1539
- let o = Kr(a, n, r);
1608
+ let o = Xr(a, n, r);
1540
1609
  if (o) {
1541
1610
  t(e.map((e, t) => t === i ? o : e)), b();
1542
1611
  return;
@@ -1581,7 +1650,7 @@ function Jr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r =
1581
1650
  }) : null,
1582
1651
  e.map((e, t) => {
1583
1652
  let r = s?.mode === "edit" && s.editIndex === t;
1584
- return /* @__PURE__ */ j(zr, {
1653
+ return /* @__PURE__ */ j(Ur, {
1585
1654
  ref: g,
1586
1655
  "data-chip-index": t,
1587
1656
  condition: e,
@@ -1590,7 +1659,7 @@ function Jr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r =
1590
1659
  active: r,
1591
1660
  onEdit: () => v(t),
1592
1661
  onRemove: () => w(t)
1593
- }, Br(e));
1662
+ }, Wr(e));
1594
1663
  }),
1595
1664
  n && e.length > 0 ? /* @__PURE__ */ j("button", {
1596
1665
  type: "button",
@@ -1609,44 +1678,44 @@ function Jr({ filters: e, onFiltersChange: t, editable: n = !0, showScopes: r =
1609
1678
  sideOffset: 8,
1610
1679
  className: "w-auto p-0",
1611
1680
  onOpenAutoFocus: E,
1612
- children: m ? /* @__PURE__ */ j(jr, {
1681
+ children: m ? /* @__PURE__ */ j(Fr, {
1613
1682
  existingCondition: h,
1614
1683
  onApply: S,
1615
1684
  onCancel: b,
1616
1685
  showScopes: r
1617
- }, qr(s, h)) : null
1686
+ }, Zr(s, h)) : null
1618
1687
  })
1619
1688
  ]
1620
1689
  }) });
1621
1690
  }
1622
1691
  //#endregion
1623
1692
  //#region src/dashboards/WidgetGroupContext.tsx
1624
- var Yr = [], Xr = y(null), Zr = Xr.Provider;
1625
- function Qr() {
1626
- return w(Xr);
1693
+ var $r = [], ei = y(null), ti = ei.Provider;
1694
+ function ni() {
1695
+ return w(ei);
1627
1696
  }
1628
1697
  //#endregion
1629
1698
  //#region src/dashboards/resolve-stable-time-range.ts
1630
- var $r = 6e4;
1631
- function ei(e) {
1699
+ var ri = 6e4;
1700
+ function ii(e) {
1632
1701
  if (e.type === "absolute") return e;
1633
- let t = Zn(e.period);
1702
+ let t = tr(e.period);
1634
1703
  return {
1635
1704
  type: "absolute",
1636
- from: Math.floor(t.from / $r) * $r,
1637
- to: Math.floor(t.to / $r) * $r
1705
+ from: Math.floor(t.from / ri) * ri,
1706
+ to: Math.floor(t.to / ri) * ri
1638
1707
  };
1639
1708
  }
1640
1709
  //#endregion
1641
1710
  //#region src/hooks/use-stable-time-range.ts
1642
- function ti(e) {
1711
+ function ai(e) {
1643
1712
  return Math.floor(Date.now() / e);
1644
1713
  }
1645
1714
  function Y(e) {
1646
- let t = $t(), n = t?.intervalMs ?? 6e4, r = t?.isLive ?? !0, [i, a] = k(() => ti(n));
1715
+ let t = $t(), n = t?.intervalMs ?? 6e4, r = t?.isLive ?? !0, [i, a] = k(() => ai(n));
1647
1716
  return T(() => {
1648
1717
  if (e.type === "absolute" || !r) return;
1649
- let t, i = () => a(ti(n)), o = n - Date.now() % n, s = setTimeout(() => {
1718
+ let t, i = () => a(ai(n)), o = n - Date.now() % n, s = setTimeout(() => {
1650
1719
  i(), t = setInterval(i, n);
1651
1720
  }, o);
1652
1721
  if (typeof document < "u") {
@@ -1664,48 +1733,48 @@ function Y(e) {
1664
1733
  e.type,
1665
1734
  r,
1666
1735
  n
1667
- ]), D(() => ei(e), [e, i]);
1736
+ ]), D(() => ii(e), [e, i]);
1668
1737
  }
1669
1738
  //#endregion
1670
1739
  //#region src/dashboards/adapters/facets-adapter.ts
1671
- var ni = 20;
1672
- function ri(e) {
1673
- return e.length <= ni ? e : `${e.slice(0, ni - 1)}…`;
1740
+ var oi = 20;
1741
+ function si(e) {
1742
+ return e.length <= oi ? e : `${e.slice(0, oi - 1)}…`;
1674
1743
  }
1675
- function ii(e) {
1744
+ function ci(e) {
1676
1745
  return e.map((e) => ({
1677
1746
  category: e.value,
1678
1747
  value: e.count
1679
1748
  }));
1680
1749
  }
1681
- function ai(e) {
1750
+ function li(e) {
1682
1751
  return e.map((e) => ({
1683
- category: ri(e.label || e.value),
1752
+ category: si(e.label || e.value),
1684
1753
  count: e.count
1685
1754
  }));
1686
1755
  }
1687
1756
  //#endregion
1688
1757
  //#region src/dashboards/use-merged-widget-filters.ts
1689
- function oi(e, t) {
1758
+ function ui(e, t) {
1690
1759
  return q(J(), t, e);
1691
1760
  }
1692
1761
  //#endregion
1693
1762
  //#region src/dashboards/renderers/facet-value-format.ts
1694
- var si = new Intl.NumberFormat("en-US");
1695
- function ci(e) {
1763
+ var di = new Intl.NumberFormat("en-US");
1764
+ function fi(e) {
1696
1765
  return e.toLowerCase().split(/[_\s]+/).filter(Boolean).map((e) => e.charAt(0).toUpperCase() + e.slice(1)).join(" ");
1697
1766
  }
1698
- function li(e) {
1699
- return e.valueLabel?.trim() || (e.metric ? ci(e.metric) : ci(U(e.measure)));
1767
+ function pi(e) {
1768
+ return e.valueLabel?.trim() || (e.metric ? fi(e.metric) : fi(U(e.measure)));
1700
1769
  }
1701
- function ui(e) {
1770
+ function mi(e) {
1702
1771
  return e.reduce((e, t) => e + (Number.isFinite(t) ? t : 0), 0);
1703
1772
  }
1704
- function di(e) {
1773
+ function hi(e) {
1705
1774
  return (t) => {
1706
1775
  let n = typeof t == "number" ? t : Number(t);
1707
1776
  if (!Number.isFinite(n)) return String(t);
1708
- let r = si.format(n);
1777
+ let r = di.format(n);
1709
1778
  if (e <= 0) return r;
1710
1779
  let i = n / e * 100;
1711
1780
  return `${r} (${i > 0 && i < .5 ? "<1" : Math.round(i)}%)`;
@@ -1713,17 +1782,17 @@ function di(e) {
1713
1782
  }
1714
1783
  //#endregion
1715
1784
  //#region src/dashboards/renderers/BarPresentation.tsx
1716
- var fi = 160, pi = 72, mi = 7, hi = 20;
1717
- function gi({ data: e, config: t, state: n, layout: r = "vertical", showShare: i = !0, valueFormatter: a }) {
1785
+ var gi = 160, _i = 72, vi = 7, yi = 20;
1786
+ function bi({ data: e, config: t, state: n, layout: r = "vertical", showShare: i = !0, valueFormatter: a }) {
1718
1787
  let o = D(() => {
1719
1788
  if (a) return a;
1720
- if (i) return di(ui(e.map((e) => e.count)));
1789
+ if (i) return hi(mi(e.map((e) => e.count)));
1721
1790
  }, [
1722
1791
  e,
1723
1792
  i,
1724
1793
  a
1725
1794
  ]), s = D(() => {
1726
- if (!(r !== "horizontal" || e.length === 0)) return { left: Math.min(fi, Math.max(pi, e.reduce((e, t) => Math.max(e, t.category.length), 0) * mi + hi)) };
1795
+ if (!(r !== "horizontal" || e.length === 0)) return { left: Math.min(gi, Math.max(_i, e.reduce((e, t) => Math.max(e, t.category.length), 0) * vi + yi)) };
1727
1796
  }, [e, r]);
1728
1797
  return /* @__PURE__ */ j(St, {
1729
1798
  config: t,
@@ -1739,8 +1808,8 @@ function gi({ data: e, config: t, state: n, layout: r = "vertical", showShare: i
1739
1808
  }
1740
1809
  //#endregion
1741
1810
  //#region src/dashboards/renderers/BarWidgetRenderer.tsx
1742
- function _i({ widget: e, timeRange: t, filters: n }) {
1743
- let r = oi(e.filters, n), i = Y(t), { data: a, isLoading: o, isError: s } = fn({
1811
+ function xi({ widget: e, timeRange: t, filters: n }) {
1812
+ let r = ui(e.filters, n), i = Y(t), { data: a, isLoading: o, isError: s } = fn({
1744
1813
  by: [...e.by],
1745
1814
  metric: e.metric,
1746
1815
  measure: e.measure,
@@ -1753,14 +1822,14 @@ function _i({ widget: e, timeRange: t, filters: n }) {
1753
1822
  T(() => {
1754
1823
  s && console.error(`[BarWidgetRenderer] Failed to fetch facets for widget "${e.title}"`);
1755
1824
  }, [s, e.title]);
1756
- let c = li(e), { data: l, config: u } = D(() => a ? {
1757
- data: ai(a),
1825
+ let c = pi(e), { data: l, config: u } = D(() => a ? {
1826
+ data: li(a),
1758
1827
  config: { count: { label: c } }
1759
1828
  } : {
1760
1829
  data: [],
1761
1830
  config: {}
1762
1831
  }, [a, c]);
1763
- return /* @__PURE__ */ j(gi, {
1832
+ return /* @__PURE__ */ j(bi, {
1764
1833
  data: l,
1765
1834
  config: u,
1766
1835
  state: o ? "loading" : s ? "empty" : "ready",
@@ -1769,36 +1838,36 @@ function _i({ widget: e, timeRange: t, filters: n }) {
1769
1838
  }
1770
1839
  //#endregion
1771
1840
  //#region src/dashboards/adapters/status-palette.ts
1772
- var vi = {
1841
+ var Si = {
1773
1842
  "1XX": "var(--chart-5)",
1774
1843
  "2XX": "var(--success)",
1775
1844
  "3XX": "var(--chart-4)",
1776
1845
  "4XX": "var(--warning)",
1777
1846
  "5XX": "var(--destructive)"
1778
- }, yi = new Set([
1847
+ }, Ci = new Set([
1779
1848
  "HTTP_STATUS_CODE_GROUP",
1780
1849
  "http_status_code_group",
1781
1850
  "status_code_group"
1782
1851
  ]);
1783
- function bi(e, t, n) {
1852
+ function wi(e, t, n) {
1784
1853
  if (n?.[e]) return n[e];
1785
- if (t && yi.has(t)) return vi[e.toUpperCase()];
1854
+ if (t && Ci.has(t)) return Si[e.toUpperCase()];
1786
1855
  }
1787
1856
  //#endregion
1788
1857
  //#region src/dashboards/adapters/time-series-adapter.ts
1789
- function xi(e) {
1858
+ function Ti(e) {
1790
1859
  return e.replace(/[^a-zA-Z0-9_-]/g, "_");
1791
1860
  }
1792
- function Si(e, t) {
1861
+ function Ei(e, t) {
1793
1862
  let n = [], r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
1794
1863
  for (let t of e) i.set(t.metric, (i.get(t.metric) ?? 0) + 1);
1795
1864
  return e.forEach((e, a) => {
1796
- let o = t[a] ?? [], s = U(e.measure), c = `${xi(e.metric)}__${xi(s)}__${xi(e.representation)}`, l = e.by?.[0];
1865
+ let o = t[a] ?? [], s = U(e.measure), c = `${Ti(e.metric)}__${Ti(s)}__${Ti(e.representation)}`, l = e.by?.[0];
1797
1866
  if (l) {
1798
1867
  for (let t of o) {
1799
- let i = `${c}__${xi(t.key)}`;
1868
+ let i = `${c}__${Ti(t.key)}`;
1800
1869
  if (r.has(i)) continue;
1801
- let a = bi(t.key, l, e.colorByGroup);
1870
+ let a = wi(t.key, l, e.colorByGroup);
1802
1871
  n.push({
1803
1872
  dataKey: i,
1804
1873
  label: t.label,
@@ -1831,10 +1900,10 @@ function Si(e, t) {
1831
1900
  seriesMap: r
1832
1901
  };
1833
1902
  }
1834
- function Ci(e) {
1903
+ function Di(e) {
1835
1904
  let t = /* @__PURE__ */ new Map(), n = Infinity, r = -Infinity;
1836
1905
  for (let t of e.values()) for (let e of t) for (let t of e.points) t.timestamp < n && (n = t.timestamp), t.timestamp > r && (r = t.timestamp);
1837
- let i = r - n > wi ? Di : Ei;
1906
+ let i = r - n > Oi ? ji : Ai;
1838
1907
  for (let n of e.values()) for (let e of n) for (let n of e.points) {
1839
1908
  let e = i(n.timestamp), r = t.get(e);
1840
1909
  (r === void 0 || n.timestamp < r) && t.set(e, n.timestamp);
@@ -1850,7 +1919,7 @@ function Ci(e) {
1850
1919
  }
1851
1920
  return o;
1852
1921
  }
1853
- var wi = 1440 * 6e4, Ti = [
1922
+ var Oi = 1440 * 6e4, ki = [
1854
1923
  "Jan",
1855
1924
  "Feb",
1856
1925
  "Mar",
@@ -1864,25 +1933,25 @@ var wi = 1440 * 6e4, Ti = [
1864
1933
  "Nov",
1865
1934
  "Dec"
1866
1935
  ];
1867
- function Ei(e) {
1936
+ function Ai(e) {
1868
1937
  let t = new Date(e);
1869
1938
  return `${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}`;
1870
1939
  }
1871
- function Di(e) {
1940
+ function ji(e) {
1872
1941
  let t = new Date(e);
1873
- return `${Ti[t.getMonth()]} ${String(t.getDate()).padStart(2, "0")} ${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}`;
1942
+ return `${ki[t.getMonth()]} ${String(t.getDate()).padStart(2, "0")} ${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}`;
1874
1943
  }
1875
1944
  //#endregion
1876
1945
  //#region src/dashboards/compute-bucket-interval.ts
1877
- var Oi = 6e4, ki = 48;
1878
- function Ai(e, t) {
1879
- if (t <= 0) return Oi;
1946
+ var Mi = 6e4, Ni = 48;
1947
+ function Pi(e, t) {
1948
+ if (t <= 0) return Mi;
1880
1949
  let n = e.to - e.from, r = Math.floor(n / t);
1881
- return Math.max(Oi, r);
1950
+ return Math.max(Mi, r);
1882
1951
  }
1883
1952
  //#endregion
1884
1953
  //#region src/dashboards/renderers/CartesianPresentation.tsx
1885
- function ji({ data: e, config: t, series: n, seriesByKey: r, state: i, showTotal: a, totalLabel: o }) {
1954
+ function Fi({ data: e, config: t, series: n, seriesByKey: r, state: i, showTotal: a, totalLabel: o }) {
1886
1955
  let s = Object.keys(t), c = n.some((e) => e.representation === "bar") ? "band" : "point";
1887
1956
  return /* @__PURE__ */ j(St, {
1888
1957
  config: t,
@@ -1895,8 +1964,8 @@ function ji({ data: e, config: t, series: n, seriesByKey: r, state: i, showTotal
1895
1964
  children: [
1896
1965
  /* @__PURE__ */ j(Ot, {}),
1897
1966
  s.map((e) => {
1898
- let t = r?.[e] ?? Mi(e, n);
1899
- return t ? Ni(e, t) : null;
1967
+ let t = r?.[e] ?? Ii(e, n);
1968
+ return t ? Li(e, t) : null;
1900
1969
  }),
1901
1970
  /* @__PURE__ */ j(Nt, {}),
1902
1971
  /* @__PURE__ */ j(Pt, {}),
@@ -1909,10 +1978,10 @@ function ji({ data: e, config: t, series: n, seriesByKey: r, state: i, showTotal
1909
1978
  })
1910
1979
  });
1911
1980
  }
1912
- function Mi(e, t) {
1981
+ function Ii(e, t) {
1913
1982
  return t.find((t) => e === t.metric || e.startsWith(`${t.metric}_`));
1914
1983
  }
1915
- function Ni(e, t) {
1984
+ function Li(e, t) {
1916
1985
  switch (t.representation) {
1917
1986
  case "line": return /* @__PURE__ */ j(kt, {
1918
1987
  dataKey: e,
@@ -1933,8 +2002,8 @@ function Ni(e, t) {
1933
2002
  }
1934
2003
  //#endregion
1935
2004
  //#region src/dashboards/renderers/CartesianWidgetRenderer.tsx
1936
- function Pi({ widget: e, timeRange: t, filters: n }) {
1937
- let r = oi(e.filters, n), i = m(), a = Y(t), o = D(() => Ai(a, 48), [a]), s = te({ queries: e.series.map((e) => {
2005
+ function Ri({ widget: e, timeRange: t, filters: n }) {
2006
+ let r = ui(e.filters, n), i = m(), a = Y(t), o = D(() => Pi(a, 48), [a]), s = te({ queries: e.series.map((e) => {
1938
2007
  let t = q(r, e.filters), n = [{
1939
2008
  name: e.metric,
1940
2009
  measures: [U(e.measure)],
@@ -1959,18 +2028,18 @@ function Pi({ widget: e, timeRange: t, filters: n }) {
1959
2028
  l && console.error(`[CartesianWidgetRenderer] One or more series queries failed for widget "${e.title}"`);
1960
2029
  }, [l, e.title]);
1961
2030
  let u = s.map((e) => e.dataUpdatedAt).join(","), { data: d, config: f, seriesByKey: p } = D(() => {
1962
- let { elements: t, seriesMap: n } = Si(e.series, s.map((e) => e?.data)), r = {}, i = {};
2031
+ let { elements: t, seriesMap: n } = Ei(e.series, s.map((e) => e?.data)), r = {}, i = {};
1963
2032
  for (let e of t) {
1964
2033
  let t = { label: e.label };
1965
2034
  e.color && (t.color = e.color), r[e.dataKey] = t, i[e.dataKey] = e.series;
1966
2035
  }
1967
2036
  return {
1968
- data: Ci(n),
2037
+ data: Di(n),
1969
2038
  config: r,
1970
2039
  seriesByKey: i
1971
2040
  };
1972
2041
  }, [e.series, u]), h = c ? "loading" : l ? "empty" : "ready";
1973
- return /* @__PURE__ */ j(ji, {
2042
+ return /* @__PURE__ */ j(Fi, {
1974
2043
  data: d,
1975
2044
  config: f,
1976
2045
  series: [...e.series],
@@ -1982,10 +2051,10 @@ function Pi({ widget: e, timeRange: t, filters: n }) {
1982
2051
  }
1983
2052
  //#endregion
1984
2053
  //#region src/dashboards/renderers/DoughnutPresentation.tsx
1985
- function Fi({ data: e, config: t, state: n, showShare: r = !0, valueFormatter: i }) {
2054
+ function zi({ data: e, config: t, state: n, showShare: r = !0, valueFormatter: i }) {
1986
2055
  let a = D(() => {
1987
2056
  if (i) return i;
1988
- if (r) return di(ui(e.map((e) => e.value)));
2057
+ if (r) return hi(mi(e.map((e) => e.value)));
1989
2058
  }, [
1990
2059
  e,
1991
2060
  r,
@@ -2003,8 +2072,8 @@ function Fi({ data: e, config: t, state: n, showShare: r = !0, valueFormatter: i
2003
2072
  }
2004
2073
  //#endregion
2005
2074
  //#region src/dashboards/renderers/DoughnutWidgetRenderer.tsx
2006
- function Ii({ widget: e, timeRange: t, filters: n }) {
2007
- let r = oi(e.filters, n), i = Y(t), { data: a, isLoading: o, isError: s } = fn({
2075
+ function Bi({ widget: e, timeRange: t, filters: n }) {
2076
+ let r = ui(e.filters, n), i = Y(t), { data: a, isLoading: o, isError: s } = fn({
2008
2077
  by: [...e.by],
2009
2078
  metric: e.metric,
2010
2079
  measure: e.measure,
@@ -2022,14 +2091,14 @@ function Ii({ widget: e, timeRange: t, filters: n }) {
2022
2091
  data: [],
2023
2092
  config: {}
2024
2093
  };
2025
- let e = ii(a), t = {};
2094
+ let e = ci(a), t = {};
2026
2095
  for (let e of a) t[e.value] = { label: e.label || e.value };
2027
2096
  return {
2028
2097
  data: e,
2029
2098
  config: t
2030
2099
  };
2031
2100
  }, [a]);
2032
- return /* @__PURE__ */ j(Fi, {
2101
+ return /* @__PURE__ */ j(zi, {
2033
2102
  data: c,
2034
2103
  config: l,
2035
2104
  state: o ? "loading" : s ? "empty" : "ready"
@@ -2037,18 +2106,18 @@ function Ii({ widget: e, timeRange: t, filters: n }) {
2037
2106
  }
2038
2107
  //#endregion
2039
2108
  //#region src/dashboards/adapters/measures-adapter.ts
2040
- function Li(e, t) {
2109
+ function Vi(e, t) {
2041
2110
  if (e.measures.length !== 0) return t ? e.measures.find((e) => e.name === t)?.value : e.measures[0].value;
2042
2111
  }
2043
- function Ri(e, t) {
2044
- let n = Li(e, t);
2112
+ function Hi(e, t) {
2113
+ let n = Vi(e, t);
2045
2114
  return {
2046
- value: n === void 0 ? "—" : Wi(n, e.unit),
2115
+ value: n === void 0 ? "—" : Ji(n, e.unit),
2047
2116
  label: e.name,
2048
2117
  unit: e.unit
2049
2118
  };
2050
2119
  }
2051
- function zi(e, t) {
2120
+ function Ui(e, t) {
2052
2121
  if (t === void 0) return;
2053
2122
  if (t === 0) return {
2054
2123
  value: 0,
@@ -2063,17 +2132,17 @@ function zi(e, t) {
2063
2132
  direction: n > 0 ? "up" : "down"
2064
2133
  };
2065
2134
  }
2066
- function Bi(e, t) {
2135
+ function Wi(e, t) {
2067
2136
  if (!e || e.length === 0) return;
2068
2137
  let n = t ? e.find((e) => e.key === t) : e[0];
2069
2138
  if (!(!n || n.points.length < 2)) return n.points.slice().sort((e, t) => e.timestamp - t.timestamp).map((e) => e.value);
2070
2139
  }
2071
- var Vi = new Set([
2140
+ var Gi = new Set([
2072
2141
  "B",
2073
2142
  "KB",
2074
2143
  "MB",
2075
2144
  "GB"
2076
- ]), Hi = {
2145
+ ]), Ki = {
2077
2146
  PERCENT: { suffix: "%" },
2078
2147
  MILLISECONDS: { suffix: "ms" },
2079
2148
  SECONDS: { suffix: "s" },
@@ -2083,17 +2152,17 @@ var Vi = new Set([
2083
2152
  GIGABYTES: { suffix: "GB" },
2084
2153
  COUNT: { suffix: "" },
2085
2154
  COUNT_PER_SECOND: { suffix: "/s" }
2086
- }, Ui = /* @__PURE__ */ new Set();
2087
- function Wi(e, t) {
2088
- let n = t ? Hi[t] : void 0;
2089
- if (t && !n && !Ui.has(t) && (Ui.add(t), console.warn(`[formatMeasureValue] Unknown unit "${t}" — value will be displayed without unit`)), n?.suffix === "%") return `${(Math.round(e * 10) / 10).toLocaleString()}%`;
2155
+ }, qi = /* @__PURE__ */ new Set();
2156
+ function Ji(e, t) {
2157
+ let n = t ? Ki[t] : void 0;
2158
+ if (t && !n && !qi.has(t) && (qi.add(t), console.warn(`[formatMeasureValue] Unknown unit "${t}" — value will be displayed without unit`)), n?.suffix === "%") return `${(Math.round(e * 10) / 10).toLocaleString()}%`;
2090
2159
  if (n?.suffix === "ms" && e >= 1e3) return `${(e / 1e3).toFixed(2)} s`;
2091
- let r = n !== void 0 && Vi.has(n.suffix) ? e.toLocaleString() : e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).toFixed(1)}k` : e.toLocaleString(), i = n?.suffix;
2160
+ let r = n !== void 0 && Gi.has(n.suffix) ? e.toLocaleString() : e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).toFixed(1)}k` : e.toLocaleString(), i = n?.suffix;
2092
2161
  return i ? `${r}${i === "" ? "" : ` ${i}`}` : r;
2093
2162
  }
2094
2163
  //#endregion
2095
2164
  //#region src/dashboards/compute-previous-time-range.ts
2096
- function Gi(e) {
2165
+ function Yi(e) {
2097
2166
  let t = e.to - e.from;
2098
2167
  return {
2099
2168
  type: "absolute",
@@ -2103,7 +2172,7 @@ function Gi(e) {
2103
2172
  }
2104
2173
  //#endregion
2105
2174
  //#region src/dashboards/renderers/MetricGroupPresentation.tsx
2106
- function Ki({ items: e, state: t, skeletonCount: n }) {
2175
+ function Xi({ items: e, state: t, skeletonCount: n }) {
2107
2176
  return /* @__PURE__ */ j(jt, {
2108
2177
  items: e,
2109
2178
  state: t,
@@ -2112,14 +2181,14 @@ function Ki({ items: e, state: t, skeletonCount: n }) {
2112
2181
  }
2113
2182
  //#endregion
2114
2183
  //#region src/dashboards/renderers/MetricGroupWidgetRenderer.tsx
2115
- function qi(e) {
2184
+ function Zi(e) {
2116
2185
  let t = e.filters?.length ? e.filters.map((e) => `${e.field}:${e.operator}:${e.value.join(",")}`).sort().join("|") : "";
2117
2186
  return `${e.name}::${t}`;
2118
2187
  }
2119
- function Ji(e) {
2188
+ function Qi(e) {
2120
2189
  let t = /* @__PURE__ */ new Map();
2121
2190
  for (let n of e) {
2122
- let e = qi(n), r = t.get(e), i = n.measures ?? [];
2191
+ let e = Zi(n), r = t.get(e), i = n.measures ?? [];
2123
2192
  if (r) for (let e of i) r.measures.add(e);
2124
2193
  else t.set(e, {
2125
2194
  name: n.name,
@@ -2133,15 +2202,15 @@ function Ji(e) {
2133
2202
  ...n?.length ? { filters: n } : {}
2134
2203
  }));
2135
2204
  }
2136
- function Yi(e) {
2205
+ function $i(e) {
2137
2206
  return {
2138
2207
  name: e.metric,
2139
2208
  measures: [U(e.measure)],
2140
2209
  ...e.filters?.length ? { filters: [...e.filters] } : {}
2141
2210
  };
2142
2211
  }
2143
- function Xi({ widget: e, timeRange: t, filters: n }) {
2144
- let r = oi(e.filters, n), i = e.items.some((e) => e.showTrend !== !1), a = Y(t), o = D(() => Ji(e.items.map(Yi)), [e.items]), s = D(() => Ji(e.items.filter((e) => e.showTrend !== !1).map(Yi)), [e.items]), c = D(() => Gi(a), [a]), { data: l, isLoading: u, isError: d } = vn({
2212
+ function ea({ widget: e, timeRange: t, filters: n }) {
2213
+ let r = ui(e.filters, n), i = e.items.some((e) => e.showTrend !== !1), a = Y(t), o = D(() => Qi(e.items.map($i)), [e.items]), s = D(() => Qi(e.items.filter((e) => e.showTrend !== !1).map($i)), [e.items]), c = D(() => Yi(a), [a]), { data: l, isLoading: u, isError: d } = vn({
2145
2214
  metrics: o,
2146
2215
  timeRange: a,
2147
2216
  filters: r
@@ -2155,7 +2224,7 @@ function Xi({ widget: e, timeRange: t, filters: n }) {
2155
2224
  d && console.error(`[MetricGroupWidgetRenderer] Failed to fetch measures for "${e.title}"`);
2156
2225
  }, [d, e.title]), T(() => {
2157
2226
  p && console.error(`[MetricGroupWidgetRenderer] Failed to fetch previous-period measures for "${e.title}"`);
2158
- }, [p, e.title]), /* @__PURE__ */ j(Ki, {
2227
+ }, [p, e.title]), /* @__PURE__ */ j(Xi, {
2159
2228
  items: D(() => {
2160
2229
  let t = new Map(l?.map((e) => [e.name, e]) ?? []), n = new Map(f?.map((e) => [e.name, e]) ?? []);
2161
2230
  return e.items.map((e) => {
@@ -2164,11 +2233,11 @@ function Xi({ widget: e, timeRange: t, filters: n }) {
2164
2233
  value: "—",
2165
2234
  label: e.label ?? e.metric
2166
2235
  };
2167
- let i = U(e.measure), a = Ri(r, i), o = e.showTrend !== !1, s = Li(r, i), c = n.get(e.metric), l = c ? Li(c, i) : void 0;
2236
+ let i = U(e.measure), a = Hi(r, i), o = e.showTrend !== !1, s = Vi(r, i), c = n.get(e.metric), l = c ? Vi(c, i) : void 0;
2168
2237
  return {
2169
2238
  value: a.value,
2170
2239
  label: e.label ?? r.name,
2171
- trend: o && s !== void 0 ? zi(s, l) : void 0,
2240
+ trend: o && s !== void 0 ? Ui(s, l) : void 0,
2172
2241
  trendSentiment: e.sentiment
2173
2242
  };
2174
2243
  });
@@ -2183,7 +2252,7 @@ function Xi({ widget: e, timeRange: t, filters: n }) {
2183
2252
  }
2184
2253
  //#endregion
2185
2254
  //#region src/dashboards/renderers/MetricPresentation.tsx
2186
- function Zi({ value: e, label: t, state: n, trend: r, trendSentiment: i, sparklineData: a }) {
2255
+ function ta({ value: e, label: t, state: n, trend: r, trendSentiment: i, sparklineData: a }) {
2187
2256
  return /* @__PURE__ */ j(At, {
2188
2257
  value: e,
2189
2258
  label: t,
@@ -2195,11 +2264,11 @@ function Zi({ value: e, label: t, state: n, trend: r, trendSentiment: i, sparkli
2195
2264
  }
2196
2265
  //#endregion
2197
2266
  //#region src/dashboards/renderers/MetricWidgetRenderer.tsx
2198
- function Qi({ widget: e, timeRange: t, filters: n }) {
2199
- let r = oi(e.filters, n), i = e.showTrend === !0, a = e.showSparkline === !0, o = Y(t), s = U(e.measure), c = D(() => [{
2267
+ function na({ widget: e, timeRange: t, filters: n }) {
2268
+ let r = ui(e.filters, n), i = e.showTrend === !0, a = e.showSparkline === !0, o = Y(t), s = U(e.measure), c = D(() => [{
2200
2269
  name: e.metric,
2201
2270
  measures: [s]
2202
- }], [e.metric, s]), l = D(() => Gi(o), [o]), u = D(() => Ai(o, 48), [o]), { data: d, isLoading: f, isError: p } = vn({
2271
+ }], [e.metric, s]), l = D(() => Yi(o), [o]), u = D(() => Pi(o, 48), [o]), { data: d, isLoading: f, isError: p } = vn({
2203
2272
  metrics: c,
2204
2273
  timeRange: o,
2205
2274
  filters: r
@@ -2222,8 +2291,8 @@ function Qi({ widget: e, timeRange: t, filters: n }) {
2222
2291
  }, [h, e.metric]), T(() => {
2223
2292
  _ && console.error(`[MetricWidgetRenderer] Failed to fetch sparkline data for "${e.metric}"`);
2224
2293
  }, [_, e.metric]);
2225
- let v = d?.[0], y = m?.[0], b = v ? Ri(v, s) : void 0, x = v ? Li(v, s) : void 0, S = y ? Li(y, s) : void 0, C = i && x !== void 0 ? zi(x, S) : void 0, w = a ? Bi(g, e.metric) : void 0, E = f ? "loading" : p || !f && !v ? "empty" : "ready";
2226
- return /* @__PURE__ */ j(Zi, {
2294
+ let v = d?.[0], y = m?.[0], b = v ? Hi(v, s) : void 0, x = v ? Vi(v, s) : void 0, S = y ? Vi(y, s) : void 0, C = i && x !== void 0 ? Ui(x, S) : void 0, w = a ? Wi(g, e.metric) : void 0, E = f ? "loading" : p || !f && !v ? "empty" : "ready";
2295
+ return /* @__PURE__ */ j(ta, {
2227
2296
  value: b?.value ?? "—",
2228
2297
  label: e.title,
2229
2298
  state: E,
@@ -2234,25 +2303,25 @@ function Qi({ widget: e, timeRange: t, filters: n }) {
2234
2303
  }
2235
2304
  //#endregion
2236
2305
  //#region src/dashboards/widget-renderer-registry.ts
2237
- var $i = /* @__PURE__ */ new Map();
2238
- function ea(e, t) {
2239
- $i.set(e, t);
2306
+ var ra = /* @__PURE__ */ new Map();
2307
+ function ia(e, t) {
2308
+ ra.set(e, t);
2240
2309
  }
2241
- function ta(e) {
2242
- return $i.get(e);
2310
+ function aa(e) {
2311
+ return ra.get(e);
2243
2312
  }
2244
- function na() {
2245
- $i.clear();
2313
+ function oa() {
2314
+ ra.clear();
2246
2315
  }
2247
2316
  //#endregion
2248
2317
  //#region src/dashboards/register-default-renderers.ts
2249
- var ra = !1;
2250
- function ia() {
2251
- ra || (ra = !0, ea("cartesian", Pi), ea("doughnut", Ii), ea("bar", _i), ea("metric", Qi), ea("metric-group", Xi));
2318
+ var sa = !1;
2319
+ function ca() {
2320
+ sa || (sa = !0, ia("cartesian", Ri), ia("doughnut", Bi), ia("bar", xi), ia("metric", na), ia("metric-group", ea));
2252
2321
  }
2253
2322
  //#endregion
2254
2323
  //#region src/dashboards/renderers/UnknownWidgetFallback.tsx
2255
- function aa({ widget: e }) {
2324
+ function la({ widget: e }) {
2256
2325
  return /* @__PURE__ */ M("div", {
2257
2326
  role: "alert",
2258
2327
  className: "flex h-full flex-col items-center justify-center gap-2 rounded-lg border border-dashed border-destructive/30 bg-destructive/5 p-4 text-center",
@@ -2271,28 +2340,28 @@ function aa({ widget: e }) {
2271
2340
  }
2272
2341
  //#endregion
2273
2342
  //#region src/dashboards/WidgetItem.tsx
2274
- ia();
2275
- function oa(e) {
2276
- return e.data ? ca(e.widget, e.data) : /* @__PURE__ */ j(sa, {
2343
+ ca();
2344
+ function ua(e) {
2345
+ return e.data ? fa(e.widget, e.data) : /* @__PURE__ */ j(da, {
2277
2346
  widget: e.widget,
2278
2347
  timeRange: e.timeRange,
2279
2348
  filters: e.filters
2280
2349
  });
2281
2350
  }
2282
- function sa({ widget: e, timeRange: t, filters: n }) {
2283
- let r = Qr(), i = t ?? r?.timeRange, a = n ?? r?.filters ?? Yr;
2351
+ function da({ widget: e, timeRange: t, filters: n }) {
2352
+ let r = ni(), i = t ?? r?.timeRange, a = n ?? r?.filters ?? $r;
2284
2353
  if (!i) throw Error("[gamma-lib-observability] <WidgetItem> requires a timeRange. Provide it as a prop or wrap the component in a <WidgetGroup>.");
2285
- let o = ta(e.type);
2354
+ let o = aa(e.type);
2286
2355
  return o ? b(o, {
2287
2356
  widget: e,
2288
2357
  timeRange: i,
2289
2358
  filters: a
2290
- }) : /* @__PURE__ */ j(aa, { widget: e });
2359
+ }) : /* @__PURE__ */ j(la, { widget: e });
2291
2360
  }
2292
- function ca(e, t) {
2361
+ function fa(e, t) {
2293
2362
  if (t.type !== e.type) throw Error(`[gamma-lib-observability] <WidgetItem> data.type "${t.type}" does not match widget.type "${e.type}". The data.type must match the widget definition type.`);
2294
2363
  switch (t.type) {
2295
- case "metric": return /* @__PURE__ */ j(Zi, {
2364
+ case "metric": return /* @__PURE__ */ j(ta, {
2296
2365
  value: t.value,
2297
2366
  label: t.label,
2298
2367
  state: t.state,
@@ -2300,12 +2369,12 @@ function ca(e, t) {
2300
2369
  trendSentiment: t.trendSentiment,
2301
2370
  sparklineData: t.sparklineData
2302
2371
  });
2303
- case "metric-group": return /* @__PURE__ */ j(Ki, {
2372
+ case "metric-group": return /* @__PURE__ */ j(Xi, {
2304
2373
  items: t.items,
2305
2374
  state: t.state,
2306
2375
  skeletonCount: t.skeletonCount
2307
2376
  });
2308
- case "cartesian": return /* @__PURE__ */ j(ji, {
2377
+ case "cartesian": return /* @__PURE__ */ j(Fi, {
2309
2378
  data: t.data,
2310
2379
  config: t.config,
2311
2380
  series: t.series,
@@ -2313,32 +2382,32 @@ function ca(e, t) {
2313
2382
  showTotal: t.showTotal,
2314
2383
  totalLabel: t.totalLabel
2315
2384
  });
2316
- case "bar": return /* @__PURE__ */ j(gi, {
2385
+ case "bar": return /* @__PURE__ */ j(bi, {
2317
2386
  data: t.data,
2318
2387
  config: t.config,
2319
2388
  state: t.state,
2320
2389
  layout: t.layout,
2321
2390
  showShare: t.showShare
2322
2391
  });
2323
- case "doughnut": return /* @__PURE__ */ j(Fi, {
2392
+ case "doughnut": return /* @__PURE__ */ j(zi, {
2324
2393
  data: t.data,
2325
2394
  config: t.config,
2326
2395
  state: t.state,
2327
2396
  showShare: t.showShare
2328
2397
  });
2329
- default: return /* @__PURE__ */ j(aa, { widget: e });
2398
+ default: return /* @__PURE__ */ j(la, { widget: e });
2330
2399
  }
2331
2400
  }
2332
2401
  //#endregion
2333
2402
  //#region src/dashboards/DashboardView.tsx
2334
- var la = {
2403
+ var pa = {
2335
2404
  lg: 12,
2336
2405
  md: 12,
2337
2406
  sm: 12,
2338
2407
  xs: 12,
2339
2408
  xxs: 12
2340
2409
  };
2341
- function ua({ dashboard: e, timeRange: t, filters: n = Yr, editable: r = !1, rowHeight: i, breakpointCols: o = la, onLayoutChange: s }) {
2410
+ function ma({ dashboard: e, timeRange: t, filters: n = $r, editable: r = !1, rowHeight: i, breakpointCols: o = pa, onLayoutChange: s }) {
2342
2411
  let c = a("observability.dashboards.write"), l = r && c, u = D(() => e.widgets.map((e) => ({
2343
2412
  id: e.id,
2344
2413
  x: e.layout.x,
@@ -2363,8 +2432,8 @@ function ua({ dashboard: e, timeRange: t, filters: n = Yr, editable: r = !1, row
2363
2432
  return r ? /* @__PURE__ */ j(_t, {
2364
2433
  title: r.title,
2365
2434
  subtitle: r.description,
2366
- noPadding: da(r),
2367
- children: /* @__PURE__ */ j(oa, {
2435
+ noPadding: ha(r),
2436
+ children: /* @__PURE__ */ j(ua, {
2368
2437
  widget: r,
2369
2438
  timeRange: t,
2370
2439
  filters: n
@@ -2374,32 +2443,32 @@ function ua({ dashboard: e, timeRange: t, filters: n = Yr, editable: r = !1, row
2374
2443
  })
2375
2444
  });
2376
2445
  }
2377
- function da(e) {
2446
+ function ha(e) {
2378
2447
  return e.type === "cartesian" || e.type === "doughnut" || e.type === "bar";
2379
2448
  }
2380
2449
  //#endregion
2381
2450
  //#region src/dashboards/WidgetGroup.tsx
2382
- var fa = {
2451
+ var ga = {
2383
2452
  stretch: "items-stretch",
2384
2453
  center: "items-center",
2385
2454
  start: "items-start",
2386
2455
  end: "items-end"
2387
2456
  };
2388
- function pa({ timeRange: e, filters: t = Yr, align: n = "stretch", children: r }) {
2389
- return /* @__PURE__ */ j(Zr, {
2457
+ function _a({ timeRange: e, filters: t = $r, align: n = "stretch", children: r }) {
2458
+ return /* @__PURE__ */ j(ti, {
2390
2459
  value: D(() => ({
2391
2460
  timeRange: e,
2392
2461
  filters: t
2393
2462
  }), [e, t]),
2394
2463
  children: /* @__PURE__ */ j("div", {
2395
- className: `flex flex-wrap gap-4 ${fa[n]} *:min-w-48 *:flex-1`,
2464
+ className: `flex flex-wrap gap-4 ${ga[n]} *:min-w-48 *:flex-1`,
2396
2465
  children: r
2397
2466
  })
2398
2467
  });
2399
2468
  }
2400
2469
  //#endregion
2401
2470
  //#region src/dashboards/templates/dashboard-template.ts
2402
- function ma(e) {
2471
+ function va(e) {
2403
2472
  if (!e.id) throw Error("[gamma-lib-observability] DashboardTemplate must have a non-empty id.");
2404
2473
  if (!e.label) throw Error(`[gamma-lib-observability] DashboardTemplate "${e.id}" must have a non-empty label.`);
2405
2474
  if (!e.dashboard) throw Error(`[gamma-lib-observability] DashboardTemplate "${e.id}" must define a dashboard or a factory function.`);
@@ -2411,37 +2480,37 @@ function ma(e) {
2411
2480
  dashboard: e.dashboard
2412
2481
  };
2413
2482
  }
2414
- function ha(e, t) {
2483
+ function ya(e, t) {
2415
2484
  return typeof e.dashboard == "function" ? e.dashboard(t) : e.dashboard;
2416
2485
  }
2417
- function ga(e, t) {
2486
+ function ba(e, t) {
2418
2487
  return e.filter((e) => e.requiredCapabilities?.length ? e.requiredCapabilities.every((e) => t[e]) : !0);
2419
2488
  }
2420
2489
  //#endregion
2421
2490
  //#region src/dashboards/templates/DashboardTemplatesProvider.tsx
2422
- var _a = y(null);
2423
- function va({ templates: e, children: t }) {
2491
+ var xa = y(null);
2492
+ function Sa({ templates: e, children: t }) {
2424
2493
  let n = D(() => e, [e]);
2425
- return /* @__PURE__ */ j(_a.Provider, {
2494
+ return /* @__PURE__ */ j(xa.Provider, {
2426
2495
  value: n,
2427
2496
  children: t
2428
2497
  });
2429
2498
  }
2430
- function ya() {
2431
- let e = w(_a), t = o();
2499
+ function Ca() {
2500
+ let e = w(xa), t = o();
2432
2501
  if (!e) throw Error("[gamma-lib-observability] useDashboardTemplates must be used within a <DashboardTemplatesProvider>. Wrap your component tree with <DashboardTemplatesProvider templates={[...]}>.");
2433
- return D(() => ga(e, t), [e, t]);
2502
+ return D(() => ba(e, t), [e, t]);
2434
2503
  }
2435
- function ba(e) {
2436
- return ya().find((t) => t.id === e);
2504
+ function wa(e) {
2505
+ return Ca().find((t) => t.id === e);
2437
2506
  }
2438
2507
  //#endregion
2439
2508
  //#region src/live/LiveIndicator.tsx
2440
- function xa(e) {
2509
+ function Ta(e) {
2441
2510
  return e < 6e4 ? `${Math.round(e / 1e3)}s` : `${Math.round(e / 6e4)}min`;
2442
2511
  }
2443
- function Sa({ isFetching: e, className: t }) {
2444
- let n = $t(), [r, i] = k(!0), a = C(() => i((e) => !e), []), o = n?.isLive ?? r, s = n?.intervalMs ?? 6e4, c = n?.toggle ?? a, l = e ?? n?.isFetching ?? !1, u = o ? `Live — refreshing every ${xa(s)}` : "Paused — click to resume";
2512
+ function Ea({ isFetching: e, className: t }) {
2513
+ let n = $t(), [r, i] = k(!0), a = C(() => i((e) => !e), []), o = n?.isLive ?? r, s = n?.intervalMs ?? 6e4, c = n?.toggle ?? a, l = e ?? n?.isFetching ?? !1, u = o ? `Live — refreshing every ${Ta(s)}` : "Paused — click to resume";
2445
2514
  return /* @__PURE__ */ M(L, { children: [/* @__PURE__ */ j(B, {
2446
2515
  asChild: !0,
2447
2516
  children: /* @__PURE__ */ M("button", {
@@ -2462,9 +2531,9 @@ function Sa({ isFetching: e, className: t }) {
2462
2531
  }
2463
2532
  //#endregion
2464
2533
  //#region src/routing/use-observability-url-state.ts
2465
- function Ca() {
2466
- let [e, t] = Ht(), n = D(() => Pn(e.get("q"), e.get("v")), [e]), r = C((e, n) => {
2467
- let r = Nn({
2534
+ function Da() {
2535
+ let [e, t] = Ht(), n = D(() => Rn(e.get("q"), e.get("v")), [e]), r = C((e, n) => {
2536
+ let r = Ln({
2468
2537
  conditions: n,
2469
2538
  timeRange: e
2470
2539
  });
@@ -2474,7 +2543,7 @@ function Ca() {
2474
2543
  }, { replace: !0 });
2475
2544
  }, [t]), i = C((e) => r(e, n.conditions), [r, n.conditions]), a = C((e) => r(n.timeRange, e), [r, n.timeRange]);
2476
2545
  return {
2477
- timeRange: n.timeRange ?? kn,
2546
+ timeRange: n.timeRange ?? Nn,
2478
2547
  filters: n.conditions,
2479
2548
  setTimeRange: i,
2480
2549
  setFilters: a
@@ -2482,7 +2551,7 @@ function Ca() {
2482
2551
  }
2483
2552
  //#endregion
2484
2553
  //#region src/logs/LogSeverityBadge.tsx
2485
- var wa = {
2554
+ var Oa = {
2486
2555
  trace: "outline",
2487
2556
  debug: "secondary",
2488
2557
  info: "highlight",
@@ -2490,19 +2559,19 @@ var wa = {
2490
2559
  error: "destructive",
2491
2560
  fatal: "destructive"
2492
2561
  };
2493
- function Ta(e) {
2494
- return e in wa;
2562
+ function ka(e) {
2563
+ return e in Oa;
2495
2564
  }
2496
- function Ea({ level: e }) {
2565
+ function Aa({ level: e }) {
2497
2566
  let t = e.toLowerCase();
2498
2567
  return /* @__PURE__ */ j(P, {
2499
- variant: Ta(t) ? wa[t] : "secondary",
2568
+ variant: ka(t) ? Oa[t] : "secondary",
2500
2569
  children: e.toUpperCase()
2501
2570
  });
2502
2571
  }
2503
2572
  //#endregion
2504
2573
  //#region src/logs/map-log-columns.tsx
2505
- var Da = {
2574
+ var ja = {
2506
2575
  GET: "success",
2507
2576
  POST: "default",
2508
2577
  PUT: "warning",
@@ -2511,7 +2580,7 @@ var Da = {
2511
2580
  HEAD: "secondary",
2512
2581
  OPTIONS: "secondary"
2513
2582
  };
2514
- function Oa(e) {
2583
+ function Ma(e) {
2515
2584
  let t = typeof e == "number" ? new Date(e) : new Date(String(e));
2516
2585
  return Number.isNaN(t.getTime()) ? String(e) : new Intl.DateTimeFormat("en-US", {
2517
2586
  year: "numeric",
@@ -2524,19 +2593,19 @@ function Oa(e) {
2524
2593
  hour12: !1
2525
2594
  }).format(t);
2526
2595
  }
2527
- function ka(e) {
2596
+ function Na(e) {
2528
2597
  let t = typeof e == "number" ? e : Number(e);
2529
2598
  return Number.isNaN(t) ? String(e) : t < 1e3 ? `${Math.round(t)}ms` : `${(t / 1e3).toFixed(2)}s`;
2530
2599
  }
2531
- var Aa = ["unknown"];
2532
- function ja(e, t) {
2600
+ var Pa = ["unknown"];
2601
+ function Fa(e, t) {
2533
2602
  if (t.length === 0) return !1;
2534
2603
  let n = String(e).trim().toLowerCase();
2535
2604
  return t.some((e) => e.trim().toLowerCase() === n);
2536
2605
  }
2537
- function Ma(e, t, n, r) {
2606
+ function Ia(e, t, n, r) {
2538
2607
  let i = e.href?.(t);
2539
- return !i || ja(r, e.linkSentinels ?? Aa) ? n : /* @__PURE__ */ j("a", {
2608
+ return !i || Fa(r, e.linkSentinels ?? Pa) ? n : /* @__PURE__ */ j("a", {
2540
2609
  href: i,
2541
2610
  target: "_blank",
2542
2611
  rel: "noopener noreferrer",
@@ -2545,7 +2614,7 @@ function Ma(e, t, n, r) {
2545
2614
  children: n
2546
2615
  });
2547
2616
  }
2548
- function Na(e, t) {
2617
+ function La(e, t) {
2549
2618
  if (e.render) return e.render(t);
2550
2619
  let n = e.value(t);
2551
2620
  if (n == null) return /* @__PURE__ */ j("span", {
@@ -2554,17 +2623,17 @@ function Na(e, t) {
2554
2623
  });
2555
2624
  let r;
2556
2625
  switch (e.variant) {
2557
- case "badge": return /* @__PURE__ */ j(Ea, { level: String(n) });
2626
+ case "badge": return /* @__PURE__ */ j(Aa, { level: String(n) });
2558
2627
  case "datetime":
2559
2628
  r = /* @__PURE__ */ j("span", {
2560
2629
  className: "font-mono text-xs",
2561
- children: Oa(n)
2630
+ children: Ma(n)
2562
2631
  });
2563
2632
  break;
2564
2633
  case "duration":
2565
2634
  r = /* @__PURE__ */ j("span", {
2566
2635
  className: "font-mono text-xs",
2567
- children: ka(n)
2636
+ children: Na(n)
2568
2637
  });
2569
2638
  break;
2570
2639
  case "status-code": {
@@ -2578,7 +2647,7 @@ function Na(e, t) {
2578
2647
  case "http-method": {
2579
2648
  let e = String(n).toUpperCase();
2580
2649
  r = /* @__PURE__ */ j(P, {
2581
- variant: Da[e] ?? "secondary",
2650
+ variant: ja[e] ?? "secondary",
2582
2651
  children: e
2583
2652
  });
2584
2653
  break;
@@ -2588,26 +2657,26 @@ function Na(e, t) {
2588
2657
  children: String(n)
2589
2658
  });
2590
2659
  }
2591
- return Ma(e, t, r, n);
2660
+ return Ia(e, t, r, n);
2592
2661
  }
2593
- function Pa(e) {
2662
+ function Ra(e) {
2594
2663
  return e.map((e) => ({
2595
2664
  id: e.key,
2596
2665
  accessorFn: (t) => e.value(t),
2597
2666
  header: e.label,
2598
- cell: ({ row: t }) => Na(e, t.original),
2667
+ cell: ({ row: t }) => La(e, t.original),
2599
2668
  enableSorting: !1,
2600
2669
  enableHiding: !0
2601
2670
  }));
2602
2671
  }
2603
- function Fa(e) {
2672
+ function za(e) {
2604
2673
  let t = {};
2605
2674
  for (let n of e) n.defaultVisible === !1 && (t[n.key] = !1);
2606
2675
  return t;
2607
2676
  }
2608
2677
  //#endregion
2609
2678
  //#region src/logs/LogTable.tsx
2610
- function Ia(e, t) {
2679
+ function Ba(e, t) {
2611
2680
  try {
2612
2681
  let n = localStorage.getItem(e);
2613
2682
  return n ? {
@@ -2618,23 +2687,23 @@ function Ia(e, t) {
2618
2687
  return typeof console < "u" && console.warn("[LogTable] Failed to read column visibility:", e), t;
2619
2688
  }
2620
2689
  }
2621
- function La(e, t) {
2690
+ function Va(e, t) {
2622
2691
  try {
2623
2692
  localStorage.setItem(e, JSON.stringify(t));
2624
2693
  } catch (e) {
2625
2694
  typeof console < "u" && console.warn("[LogTable] Failed to persist column visibility:", e);
2626
2695
  }
2627
2696
  }
2628
- function Ra({ columns: e, data: t, loading: n, totalCount: r, page: i, pageSize: a, onPageChange: o, onPageSizeChange: s, pageSizeOptions: c = [
2697
+ function Ha({ columns: e, data: t, loading: n, totalCount: r, page: i, pageSize: a, onPageChange: o, onPageSizeChange: s, pageSizeOptions: c = [
2629
2698
  10,
2630
2699
  25,
2631
2700
  50,
2632
2701
  100
2633
2702
  ], onRowClick: l, toolbar: u, getRowId: d, columnVisibilityStorageKey: f }) {
2634
- let p = D(() => Pa(e), [e]), m = D(() => Fa(e), [e]), [h, g] = k(() => f ? Ia(f, m) : m), _ = C((e) => {
2703
+ let p = D(() => Ra(e), [e]), m = D(() => za(e), [e]), [h, g] = k(() => f ? Ba(f, m) : m), _ = C((e) => {
2635
2704
  g((t) => {
2636
2705
  let n = typeof e == "function" ? e(t) : e;
2637
- return f && La(f, n), n;
2706
+ return f && Va(f, n), n;
2638
2707
  });
2639
2708
  }, [f]), v = C((e) => {
2640
2709
  if (!l) return;
@@ -2697,7 +2766,7 @@ function Ra({ columns: e, data: t, loading: n, totalCount: r, page: i, pageSize:
2697
2766
  }
2698
2767
  //#endregion
2699
2768
  //#region src/logs/analytics-filter-mapping.ts
2700
- function za(e, t) {
2769
+ function Ua(e, t) {
2701
2770
  if (!e?.length) return [];
2702
2771
  if (!t) return e.slice();
2703
2772
  let n = t.dropFields ? new Set(t.dropFields) : void 0, r = [];
@@ -2715,24 +2784,24 @@ function za(e, t) {
2715
2784
  }
2716
2785
  //#endregion
2717
2786
  //#region src/hooks/use-logs-histogram-query.ts
2718
- var Ba = 40, Va = "HTTP_REQUESTS", Ha = "COUNT", Ua = {
2787
+ var Wa = 40, Ga = "HTTP_REQUESTS", Ka = "COUNT", qa = {
2719
2788
  from: 100,
2720
2789
  to: 399
2721
- }, Wa = {
2790
+ }, Ja = {
2722
2791
  from: 400,
2723
2792
  to: 499
2724
- }, Ga = {
2793
+ }, Ya = {
2725
2794
  from: 500,
2726
2795
  to: 599
2727
2796
  };
2728
- function Ka(e) {
2729
- let { timeRange: t, filters: r, enabled: i = !0, analyticsFilterMapping: a } = e, o = n(), s = za(q(J(), r), a), c = Y(t), l = D(() => Ai(c, Ba), [c]), u = D(() => [{
2730
- name: Va,
2731
- measures: [Ha]
2797
+ function Xa(e) {
2798
+ let { timeRange: t, filters: r, enabled: i = !0, analyticsFilterMapping: a } = e, o = n(), s = Ua(q(J(), r), a), c = Y(t), l = D(() => Pi(c, Wa), [c]), u = D(() => [{
2799
+ name: Ga,
2800
+ measures: [Ka]
2732
2801
  }], []), d = D(() => ["HTTP_STATUS"], []), f = D(() => [
2733
- Ua,
2734
- Wa,
2735
- Ga
2802
+ qa,
2803
+ Ja,
2804
+ Ya
2736
2805
  ], []), p = N({
2737
2806
  queryKey: [...K.timeSeries(u, c, l, s, d), "histogram"],
2738
2807
  queryFn: ({ signal: e }) => o.fetchTimeSeries({
@@ -2760,7 +2829,7 @@ function Ka(e) {
2760
2829
  }
2761
2830
  //#endregion
2762
2831
  //#region src/logs/LogsHistogram.tsx
2763
- var qa = {
2832
+ var Za = {
2764
2833
  "100-399": {
2765
2834
  label: "1xx–3xx",
2766
2835
  color: "var(--success)"
@@ -2773,9 +2842,9 @@ var qa = {
2773
2842
  label: "5xx",
2774
2843
  color: "var(--destructive)"
2775
2844
  }
2776
- }, Ja = "100-399", Ya = "400-499", Xa = "500-599";
2777
- function Za(e) {
2778
- let { data: t, isLoading: n, available: r } = Ka(e), i = D(() => Qa(t), [t]);
2845
+ }, Qa = "100-399", $a = "400-499", eo = "500-599";
2846
+ function to(e) {
2847
+ let { data: t, isLoading: n, available: r } = Xa(e), i = D(() => no(t), [t]);
2779
2848
  if (!r) return null;
2780
2849
  let a = !n && i.length === 0;
2781
2850
  return /* @__PURE__ */ M("div", {
@@ -2785,7 +2854,7 @@ function Za(e) {
2785
2854
  className: "mb-1 text-xs text-muted-foreground",
2786
2855
  children: "Requests over time"
2787
2856
  }), /* @__PURE__ */ j(St, {
2788
- config: qa,
2857
+ config: Za,
2789
2858
  className: "h-[120px] w-full",
2790
2859
  children: /* @__PURE__ */ M(xt, {
2791
2860
  data: i,
@@ -2795,15 +2864,15 @@ function Za(e) {
2795
2864
  children: [
2796
2865
  /* @__PURE__ */ j(Ot, { orientation: "horizontal" }),
2797
2866
  /* @__PURE__ */ j(bt, {
2798
- dataKey: Ja,
2867
+ dataKey: Qa,
2799
2868
  stackId: "volume"
2800
2869
  }),
2801
2870
  /* @__PURE__ */ j(bt, {
2802
- dataKey: Ya,
2871
+ dataKey: $a,
2803
2872
  stackId: "volume"
2804
2873
  }),
2805
2874
  /* @__PURE__ */ j(bt, {
2806
- dataKey: Xa,
2875
+ dataKey: eo,
2807
2876
  stackId: "volume"
2808
2877
  }),
2809
2878
  /* @__PURE__ */ j(Nt, {}),
@@ -2814,19 +2883,19 @@ function Za(e) {
2814
2883
  })]
2815
2884
  });
2816
2885
  }
2817
- function Qa(e) {
2886
+ function no(e) {
2818
2887
  let t = /* @__PURE__ */ new Map();
2819
2888
  for (let n of e) t.set(n.key, [n]);
2820
- return Ci(t);
2889
+ return Di(t);
2821
2890
  }
2822
2891
  //#endregion
2823
2892
  //#region src/logs/LogsExplorerPage.tsx
2824
- var $a = 300, eo = "observability-logs-columns";
2825
- function to({ columns: e, onRowClick: t, pageSize: n = 25, getRowId: r, scopeFilterField: i, columnVisibilityStorageKey: a = eo, analyticsFilterMapping: o, onPageDataChange: s }) {
2826
- let { timeRange: c, filters: l, setTimeRange: u, setFilters: d } = Ca(), f = yn(l, nn()), [p, m] = k(""), h = _n({
2893
+ var ro = 300, io = "observability-logs-columns";
2894
+ function ao({ columns: e, onRowClick: t, pageSize: n = 25, getRowId: r, scopeFilterField: i, columnVisibilityStorageKey: a = io, analyticsFilterMapping: o, onPageDataChange: s }) {
2895
+ let { timeRange: c, filters: l, setTimeRange: u, setFilters: d } = Da(), f = yn(l, nn()), [p, m] = k(""), h = _n({
2827
2896
  timeRange: c,
2828
2897
  filters: l,
2829
- search: or(p, $a) || void 0,
2898
+ search: ur(p, ro) || void 0,
2830
2899
  pageSize: n
2831
2900
  }), g = O(s);
2832
2901
  T(() => {
@@ -2857,20 +2926,20 @@ function to({ columns: e, onRowClick: t, pageSize: n = 25, getRowId: r, scopeFil
2857
2926
  children: [
2858
2927
  /* @__PURE__ */ j("div", {
2859
2928
  className: "flex flex-1 items-center gap-2",
2860
- children: /* @__PURE__ */ j(Jr, {
2929
+ children: /* @__PURE__ */ j(Qr, {
2861
2930
  filters: f,
2862
2931
  onFiltersChange: d,
2863
2932
  scopeFilterField: i
2864
2933
  })
2865
2934
  }),
2866
- /* @__PURE__ */ j(z, { children: /* @__PURE__ */ j(Sa, { isFetching: h.isFetching }) }),
2867
- /* @__PURE__ */ j(Un, {
2935
+ /* @__PURE__ */ j(z, { children: /* @__PURE__ */ j(Ea, { isFetching: h.isFetching }) }),
2936
+ /* @__PURE__ */ j(qn, {
2868
2937
  value: c,
2869
2938
  onChange: u
2870
2939
  })
2871
2940
  ]
2872
2941
  }),
2873
- /* @__PURE__ */ j(Za, {
2942
+ /* @__PURE__ */ j(to, {
2874
2943
  timeRange: c,
2875
2944
  filters: l,
2876
2945
  analyticsFilterMapping: o
@@ -2891,7 +2960,7 @@ function to({ columns: e, onRowClick: t, pageSize: n = 25, getRowId: r, scopeFil
2891
2960
  })
2892
2961
  ]
2893
2962
  }),
2894
- /* @__PURE__ */ j(Ra, {
2963
+ /* @__PURE__ */ j(Ha, {
2895
2964
  columns: e,
2896
2965
  data: h.data,
2897
2966
  loading: h.isLoading,
@@ -2910,8 +2979,8 @@ function to({ columns: e, onRowClick: t, pageSize: n = 25, getRowId: r, scopeFil
2910
2979
  }
2911
2980
  //#endregion
2912
2981
  //#region src/logs/build-logs-deep-link.ts
2913
- function no({ basePath: e, timeRange: t, filters: n = [] }) {
2914
- let r = Nn({
2982
+ function oo({ basePath: e, timeRange: t, filters: n = [] }) {
2983
+ let r = Ln({
2915
2984
  conditions: n,
2916
2985
  timeRange: t
2917
2986
  }), i = `${e.replace(/\/+$/, "")}/logs`;
@@ -2921,7 +2990,7 @@ function no({ basePath: e, timeRange: t, filters: n = [] }) {
2921
2990
  }
2922
2991
  //#endregion
2923
2992
  //#region src/logs/default-connection-log-columns.tsx
2924
- var ro = {
2993
+ var so = {
2925
2994
  HTTP_PROXY: {
2926
2995
  icon: ct,
2927
2996
  label: "HTTP"
@@ -2943,8 +3012,8 @@ var ro = {
2943
3012
  label: "Webhook"
2944
3013
  }
2945
3014
  };
2946
- function io(e) {
2947
- let t = ro[e.apiType];
3015
+ function co(e) {
3016
+ let t = so[e.apiType];
2948
3017
  if (t) {
2949
3018
  let e = t.icon;
2950
3019
  return /* @__PURE__ */ M("span", {
@@ -2957,11 +3026,11 @@ function io(e) {
2957
3026
  children: [/* @__PURE__ */ j(nt, { className: "size-3.5" }), e.apiType]
2958
3027
  });
2959
3028
  }
2960
- var ao = "apis";
2961
- function oo(e, t, n) {
2962
- if (t.apiId) return `${e}/${n?.byApiType?.[t.apiType] ?? n?.defaultSegment ?? ao}/${t.apiId}`;
3029
+ var lo = "apis";
3030
+ function uo(e, t, n) {
3031
+ if (t.apiId) return `${e}/${n?.byApiType?.[t.apiType] ?? n?.defaultSegment ?? lo}/${t.apiId}`;
2963
3032
  }
2964
- function so(e, t) {
3033
+ function fo(e, t) {
2965
3034
  let n = e.replace(/\/$/, ""), r = t?.apiLink, i = [
2966
3035
  {
2967
3036
  key: "timestamp",
@@ -2988,7 +3057,7 @@ function so(e, t) {
2988
3057
  key: "apiName",
2989
3058
  label: "API",
2990
3059
  value: (e) => e.apiName,
2991
- href: (e) => oo(n, e, r),
3060
+ href: (e) => uo(n, e, r),
2992
3061
  defaultVisible: !0
2993
3062
  },
2994
3063
  {
@@ -3022,7 +3091,7 @@ function so(e, t) {
3022
3091
  key: "apiType",
3023
3092
  label: "API Type",
3024
3093
  value: (e) => e.apiType,
3025
- render: io,
3094
+ render: co,
3026
3095
  defaultVisible: !1
3027
3096
  },
3028
3097
  {
@@ -3096,14 +3165,14 @@ function so(e, t) {
3096
3165
  }
3097
3166
  //#endregion
3098
3167
  //#region src/logs/detail/components/LogDetailCodeBlock.tsx
3099
- var co = 240;
3100
- function X({ code: e, language: t = "json", maxHeight: n = co }) {
3168
+ var po = 240;
3169
+ function X({ code: e, language: t = "json", maxHeight: n = po }) {
3101
3170
  let [r, i] = k(!1);
3102
3171
  if (!e) return /* @__PURE__ */ j("p", {
3103
3172
  className: "text-xs text-muted-foreground/70 py-3 italic",
3104
3173
  children: "No body captured"
3105
3174
  });
3106
- let a = lo(e), o = a.split("\n").length > 12;
3175
+ let a = mo(e), o = a.split("\n").length > 12;
3107
3176
  return /* @__PURE__ */ M("div", {
3108
3177
  className: "relative rounded-lg border",
3109
3178
  children: [
@@ -3136,7 +3205,7 @@ function X({ code: e, language: t = "json", maxHeight: n = co }) {
3136
3205
  ]
3137
3206
  });
3138
3207
  }
3139
- function lo(e) {
3208
+ function mo(e) {
3140
3209
  try {
3141
3210
  let t = JSON.parse(e);
3142
3211
  return JSON.stringify(t, null, 2);
@@ -3177,7 +3246,7 @@ function Q({ headers: e }) {
3177
3246
  }
3178
3247
  //#endregion
3179
3248
  //#region src/logs/detail/components/LogDetailJsonTree.tsx
3180
- function uo({ data: e, onCopyAll: t }) {
3249
+ function ho({ data: e, onCopyAll: t }) {
3181
3250
  let n = O(null), r = () => {
3182
3251
  let n = JSON.stringify(e, null, 2);
3183
3252
  navigator.clipboard.writeText(n).then(() => {
@@ -3218,7 +3287,7 @@ function uo({ data: e, onCopyAll: t }) {
3218
3287
  "aria-label": "Log attributes",
3219
3288
  className: "rounded-md border p-3 text-xs font-mono",
3220
3289
  onKeyDown: i,
3221
- children: /* @__PURE__ */ j(fo, {
3290
+ children: /* @__PURE__ */ j(go, {
3222
3291
  value: e,
3223
3292
  depth: 0,
3224
3293
  isRoot: !0
@@ -3226,9 +3295,9 @@ function uo({ data: e, onCopyAll: t }) {
3226
3295
  })]
3227
3296
  });
3228
3297
  }
3229
- function fo({ name: e, value: t, depth: n, isRoot: r, isLast: i }) {
3298
+ function go({ name: e, value: t, depth: n, isRoot: r, isLast: i }) {
3230
3299
  let [a, o] = k(n < 2);
3231
- if (t === null) return /* @__PURE__ */ j(po, {
3300
+ if (t === null) return /* @__PURE__ */ j(_o, {
3232
3301
  name: e,
3233
3302
  value: "null",
3234
3303
  className: "text-muted-foreground",
@@ -3301,7 +3370,7 @@ function fo({ name: e, value: t, depth: n, isRoot: r, isLast: i }) {
3301
3370
  a && /* @__PURE__ */ j("div", {
3302
3371
  className: "ml-4 border-l border-muted pl-2",
3303
3372
  role: "group",
3304
- children: c.map(([e, t], r) => /* @__PURE__ */ j(fo, {
3373
+ children: c.map(([e, t], r) => /* @__PURE__ */ j(go, {
3305
3374
  name: s ? void 0 : e,
3306
3375
  value: t,
3307
3376
  depth: n + 1,
@@ -3315,29 +3384,29 @@ function fo({ name: e, value: t, depth: n, isRoot: r, isLast: i }) {
3315
3384
  ]
3316
3385
  });
3317
3386
  }
3318
- return typeof t == "string" ? /* @__PURE__ */ j(po, {
3387
+ return typeof t == "string" ? /* @__PURE__ */ j(_o, {
3319
3388
  name: e,
3320
3389
  value: `"${t}"`,
3321
3390
  className: "text-green-600 dark:text-green-400",
3322
3391
  isLast: i
3323
- }) : typeof t == "number" ? /* @__PURE__ */ j(po, {
3392
+ }) : typeof t == "number" ? /* @__PURE__ */ j(_o, {
3324
3393
  name: e,
3325
3394
  value: String(t),
3326
3395
  className: "text-blue-600 dark:text-blue-400",
3327
3396
  isLast: i
3328
- }) : typeof t == "boolean" ? /* @__PURE__ */ j(po, {
3397
+ }) : typeof t == "boolean" ? /* @__PURE__ */ j(_o, {
3329
3398
  name: e,
3330
3399
  value: String(t),
3331
3400
  className: "text-amber-600 dark:text-amber-400",
3332
3401
  isLast: i
3333
- }) : /* @__PURE__ */ j(po, {
3402
+ }) : /* @__PURE__ */ j(_o, {
3334
3403
  name: e,
3335
3404
  value: String(t),
3336
3405
  className: "text-foreground",
3337
3406
  isLast: i
3338
3407
  });
3339
3408
  }
3340
- function po({ name: e, value: t, className: n, isLast: r }) {
3409
+ function _o({ name: e, value: t, className: n, isLast: r }) {
3341
3410
  return /* @__PURE__ */ M("div", {
3342
3411
  className: "flex items-center py-px",
3343
3412
  role: "treeitem",
@@ -3369,13 +3438,13 @@ function $({ items: e, onFilter: t }) {
3369
3438
  let n = e.filter((e) => e.value !== void 0 && e.value !== null && e.value !== "");
3370
3439
  return n.length === 0 ? null : /* @__PURE__ */ j("dl", {
3371
3440
  className: "space-y-0 divide-y divide-border/50",
3372
- children: n.map((e) => /* @__PURE__ */ j(mo, {
3441
+ children: n.map((e) => /* @__PURE__ */ j(vo, {
3373
3442
  item: e,
3374
3443
  onFilter: t
3375
3444
  }, e.label))
3376
3445
  });
3377
3446
  }
3378
- function mo({ item: e, onFilter: t }) {
3447
+ function vo({ item: e, onFilter: t }) {
3379
3448
  let n = String(e.value);
3380
3449
  return /* @__PURE__ */ M("div", {
3381
3450
  className: "group flex items-baseline gap-4 py-2.5",
@@ -3424,7 +3493,7 @@ function mo({ item: e, onFilter: t }) {
3424
3493
  }
3425
3494
  //#endregion
3426
3495
  //#region src/logs/detail/presets/connection-log-preset.tsx
3427
- function ho(e) {
3496
+ function yo(e) {
3428
3497
  return {
3429
3498
  type: "preset",
3430
3499
  resolve: (t) => {
@@ -3458,7 +3527,7 @@ function ho(e) {
3458
3527
  key: "overview",
3459
3528
  title: "Overview",
3460
3529
  defaultOpen: !0,
3461
- render: (t, r) => /* @__PURE__ */ j(go, {
3530
+ render: (t, r) => /* @__PURE__ */ j(bo, {
3462
3531
  log: n,
3463
3532
  basePath: e?.basePath,
3464
3533
  extraFields: e?.extraFields,
@@ -3468,23 +3537,23 @@ function ho(e) {
3468
3537
  key: "request",
3469
3538
  title: "Request",
3470
3539
  defaultOpen: !1,
3471
- render: () => /* @__PURE__ */ j(_o, { log: n })
3540
+ render: () => /* @__PURE__ */ j(xo, { log: n })
3472
3541
  }), i.has("response") || a.push({
3473
3542
  key: "response",
3474
3543
  title: "Response",
3475
3544
  defaultOpen: !1,
3476
- render: () => /* @__PURE__ */ j(vo, { log: n })
3545
+ render: () => /* @__PURE__ */ j(So, { log: n })
3477
3546
  }), !i.has("errors") && (n.errorKey || n.warnings && n.warnings.length > 0) && a.push({
3478
3547
  key: "errors",
3479
3548
  title: "Issues",
3480
3549
  defaultOpen: !0,
3481
3550
  badge: () => (n.warnings?.length ?? 0) + +!!n.errorKey,
3482
- render: () => /* @__PURE__ */ j(yo, { log: n })
3551
+ render: () => /* @__PURE__ */ j(Co, { log: n })
3483
3552
  }), i.has("raw") || a.push({
3484
3553
  key: "raw",
3485
3554
  title: "Raw JSON",
3486
3555
  defaultOpen: !1,
3487
- render: () => /* @__PURE__ */ j(uo, { data: n })
3556
+ render: () => /* @__PURE__ */ j(ho, { data: n })
3488
3557
  }), {
3489
3558
  header: {
3490
3559
  method: () => n.method,
@@ -3498,7 +3567,7 @@ function ho(e) {
3498
3567
  }
3499
3568
  };
3500
3569
  }
3501
- function go({ log: e, basePath: t, extraFields: n, onFilter: r }) {
3570
+ function bo({ log: e, basePath: t, extraFields: n, onFilter: r }) {
3502
3571
  let i = t?.replace(/\/$/, "") ?? "";
3503
3572
  return /* @__PURE__ */ j($, {
3504
3573
  items: [
@@ -3571,7 +3640,7 @@ function go({ log: e, basePath: t, extraFields: n, onFilter: r }) {
3571
3640
  onFilter: r
3572
3641
  });
3573
3642
  }
3574
- function _o({ log: e }) {
3643
+ function xo({ log: e }) {
3575
3644
  let t = e.entrypointRequest, n = e.endpointRequest;
3576
3645
  return !t && !n ? /* @__PURE__ */ j(Z, { message: "No request details captured" }) : /* @__PURE__ */ M("div", {
3577
3646
  className: "space-y-4",
@@ -3612,7 +3681,7 @@ function _o({ log: e }) {
3612
3681
  })]
3613
3682
  });
3614
3683
  }
3615
- function vo({ log: e }) {
3684
+ function So({ log: e }) {
3616
3685
  let t = e.endpointResponse, n = e.entrypointResponse;
3617
3686
  return !t && !n ? /* @__PURE__ */ j(Z, { message: "No response details captured" }) : /* @__PURE__ */ M("div", {
3618
3687
  className: "space-y-4",
@@ -3647,7 +3716,7 @@ function vo({ log: e }) {
3647
3716
  })]
3648
3717
  });
3649
3718
  }
3650
- function yo({ log: e }) {
3719
+ function Co({ log: e }) {
3651
3720
  return /* @__PURE__ */ M("div", {
3652
3721
  className: "space-y-3",
3653
3722
  children: [e.errorKey && /* @__PURE__ */ M("div", {
@@ -3697,9 +3766,9 @@ function yo({ log: e }) {
3697
3766
  }
3698
3767
  //#endregion
3699
3768
  //#region src/logs/detail/presets/message-log-preset.tsx
3700
- var bo = 5;
3701
- function xo(e) {
3702
- let t = e?.messagesPageSize ?? bo;
3769
+ var wo = 5;
3770
+ function To(e) {
3771
+ let t = e?.messagesPageSize ?? wo;
3703
3772
  return {
3704
3773
  type: "preset",
3705
3774
  resolve: (e) => {
@@ -3707,7 +3776,7 @@ function xo(e) {
3707
3776
  key: "overview",
3708
3777
  title: "Overview",
3709
3778
  defaultOpen: !0,
3710
- render: (e, t) => /* @__PURE__ */ j(So, {
3779
+ render: (e, t) => /* @__PURE__ */ j(Eo, {
3711
3780
  log: n,
3712
3781
  onFilter: t
3713
3782
  })
@@ -3715,14 +3784,14 @@ function xo(e) {
3715
3784
  key: "connection",
3716
3785
  title: "Connection Logs",
3717
3786
  defaultOpen: !1,
3718
- render: () => /* @__PURE__ */ j(Co, { log: n })
3787
+ render: () => /* @__PURE__ */ j(Do, { log: n })
3719
3788
  }];
3720
3789
  return n.messages && n.messages.length > 0 && r.push({
3721
3790
  key: "messages",
3722
3791
  title: "Messages",
3723
3792
  defaultOpen: !0,
3724
3793
  badge: () => n.messages?.length,
3725
- render: () => /* @__PURE__ */ j(wo, {
3794
+ render: () => /* @__PURE__ */ j(Oo, {
3726
3795
  messages: n.messages,
3727
3796
  pageSize: t
3728
3797
  })
@@ -3730,7 +3799,7 @@ function xo(e) {
3730
3799
  key: "raw",
3731
3800
  title: "Raw JSON",
3732
3801
  defaultOpen: !1,
3733
- render: () => /* @__PURE__ */ j(uo, { data: n })
3802
+ render: () => /* @__PURE__ */ j(ho, { data: n })
3734
3803
  }), {
3735
3804
  header: {
3736
3805
  method: () => void 0,
@@ -3744,7 +3813,7 @@ function xo(e) {
3744
3813
  }
3745
3814
  };
3746
3815
  }
3747
- function So({ log: e, onFilter: t }) {
3816
+ function Eo({ log: e, onFilter: t }) {
3748
3817
  return /* @__PURE__ */ j($, {
3749
3818
  items: [
3750
3819
  {
@@ -3789,7 +3858,7 @@ function So({ log: e, onFilter: t }) {
3789
3858
  onFilter: t
3790
3859
  });
3791
3860
  }
3792
- function Co({ log: e }) {
3861
+ function Do({ log: e }) {
3793
3862
  return e.entrypointRequest || e.endpointRequest || e.entrypointResponse || e.endpointResponse ? /* @__PURE__ */ M("div", {
3794
3863
  className: "space-y-4",
3795
3864
  children: [
@@ -3862,11 +3931,11 @@ function Co({ log: e }) {
3862
3931
  ]
3863
3932
  }) : /* @__PURE__ */ j(Z, { message: "No connection log details captured" });
3864
3933
  }
3865
- function wo({ messages: e, pageSize: t }) {
3934
+ function Oo({ messages: e, pageSize: t }) {
3866
3935
  let [n, r] = k(t), i = e.slice(0, n), a = n < e.length;
3867
3936
  return /* @__PURE__ */ M("div", {
3868
3937
  className: "space-y-3",
3869
- children: [i.map((e, t) => /* @__PURE__ */ j(To, { message: e }, e.id ?? t)), a && /* @__PURE__ */ M("button", {
3938
+ children: [i.map((e, t) => /* @__PURE__ */ j(ko, { message: e }, e.id ?? t)), a && /* @__PURE__ */ M("button", {
3870
3939
  onClick: () => r((e) => e + t),
3871
3940
  className: "w-full rounded-md border py-2 text-xs text-muted-foreground hover:bg-muted/50 transition-colors",
3872
3941
  children: [
@@ -3877,7 +3946,7 @@ function wo({ messages: e, pageSize: t }) {
3877
3946
  })]
3878
3947
  });
3879
3948
  }
3880
- function To({ message: e }) {
3949
+ function ko({ message: e }) {
3881
3950
  return /* @__PURE__ */ M("div", {
3882
3951
  className: "rounded-md border p-3 space-y-2",
3883
3952
  children: [
@@ -3925,7 +3994,7 @@ function To({ message: e }) {
3925
3994
  }
3926
3995
  //#endregion
3927
3996
  //#region src/logs/detail/presets/webhook-log-preset.tsx
3928
- function Eo(e) {
3997
+ function Ao(e) {
3929
3998
  return {
3930
3999
  type: "preset",
3931
4000
  resolve: (t) => {
@@ -3950,7 +4019,7 @@ function Eo(e) {
3950
4019
  key: "overview",
3951
4020
  title: "Overview",
3952
4021
  defaultOpen: !0,
3953
- render: () => /* @__PURE__ */ j(Do, {
4022
+ render: () => /* @__PURE__ */ j(jo, {
3954
4023
  log: n,
3955
4024
  basePath: e?.basePath
3956
4025
  })
@@ -3960,22 +4029,22 @@ function Eo(e) {
3960
4029
  title: "Delivery Attempts",
3961
4030
  defaultOpen: !0,
3962
4031
  badge: () => n.retryTimeline?.length,
3963
- render: () => /* @__PURE__ */ j(Oo, { attempts: n.retryTimeline })
4032
+ render: () => /* @__PURE__ */ j(Mo, { attempts: n.retryTimeline })
3964
4033
  }), i.push({
3965
4034
  key: "request",
3966
4035
  title: "Request Sent by Gateway",
3967
4036
  defaultOpen: !1,
3968
- render: () => /* @__PURE__ */ j(ko, { log: n })
4037
+ render: () => /* @__PURE__ */ j(No, { log: n })
3969
4038
  }), i.push({
3970
4039
  key: "response",
3971
4040
  title: "Response from Callback",
3972
4041
  defaultOpen: !1,
3973
- render: () => /* @__PURE__ */ j(Ao, { log: n })
4042
+ render: () => /* @__PURE__ */ j(Po, { log: n })
3974
4043
  }), i.push({
3975
4044
  key: "raw",
3976
4045
  title: "Raw JSON",
3977
4046
  defaultOpen: !1,
3978
- render: () => /* @__PURE__ */ j(uo, { data: n })
4047
+ render: () => /* @__PURE__ */ j(ho, { data: n })
3979
4048
  }), {
3980
4049
  header: {
3981
4050
  method: () => n.method,
@@ -3989,7 +4058,7 @@ function Eo(e) {
3989
4058
  }
3990
4059
  };
3991
4060
  }
3992
- function Do({ log: e, basePath: t }) {
4061
+ function jo({ log: e, basePath: t }) {
3993
4062
  let n = t?.replace(/\/$/, "") ?? "";
3994
4063
  return /* @__PURE__ */ j($, { items: [
3995
4064
  {
@@ -4026,7 +4095,7 @@ function Do({ log: e, basePath: t }) {
4026
4095
  }] : []
4027
4096
  ] });
4028
4097
  }
4029
- function Oo({ attempts: e }) {
4098
+ function Mo({ attempts: e }) {
4030
4099
  return /* @__PURE__ */ j("div", {
4031
4100
  className: "rounded-md border",
4032
4101
  children: /* @__PURE__ */ M("table", {
@@ -4078,13 +4147,13 @@ function Oo({ attempts: e }) {
4078
4147
  })
4079
4148
  });
4080
4149
  }
4081
- function ko({ log: e }) {
4150
+ function No({ log: e }) {
4082
4151
  return !e.requestHeaders && !e.requestBody ? /* @__PURE__ */ j(Z, { message: "No request details captured" }) : /* @__PURE__ */ M("div", {
4083
4152
  className: "space-y-2",
4084
4153
  children: [/* @__PURE__ */ j(Q, { headers: e.requestHeaders }), /* @__PURE__ */ j(X, { code: e.requestBody })]
4085
4154
  });
4086
4155
  }
4087
- function Ao({ log: e }) {
4156
+ function Po({ log: e }) {
4088
4157
  return !e.responseHeaders && !e.responseBody ? /* @__PURE__ */ j(Z, { message: "No response details captured" }) : /* @__PURE__ */ M("div", {
4089
4158
  className: "space-y-2",
4090
4159
  children: [/* @__PURE__ */ j(Q, { headers: e.responseHeaders }), /* @__PURE__ */ j(X, { code: e.responseBody })]
@@ -4092,16 +4161,16 @@ function Ao({ log: e }) {
4092
4161
  }
4093
4162
  //#endregion
4094
4163
  //#region src/logs/detail/types.ts
4095
- function jo(e) {
4164
+ function Fo(e) {
4096
4165
  return "discriminant" in e;
4097
4166
  }
4098
4167
  //#endregion
4099
4168
  //#region src/logs/detail/define-log-detail.ts
4100
- function Mo(e) {
4169
+ function Io(e) {
4101
4170
  return "preset" in e;
4102
4171
  }
4103
- function No(e) {
4104
- return Mo(e) ? {
4172
+ function Lo(e) {
4173
+ return Io(e) ? {
4105
4174
  preset: e.preset,
4106
4175
  contextChart: e.contextChart
4107
4176
  } : {
@@ -4111,32 +4180,32 @@ function No(e) {
4111
4180
  contextChart: e.contextChart
4112
4181
  };
4113
4182
  }
4114
- function Po(e, t) {
4115
- if (jo(e)) {
4183
+ function Ro(e, t) {
4184
+ if (Fo(e)) {
4116
4185
  let n = e.discriminant(t);
4117
4186
  return e.variants[n] ?? e.fallback ?? null;
4118
4187
  }
4119
4188
  return e.preset;
4120
4189
  }
4121
- function Fo(e, t) {
4190
+ function zo(e, t) {
4122
4191
  return e.type === "preset" ? e.resolve(t) : null;
4123
4192
  }
4124
- function Io(e) {
4125
- let { basePath: t, connectionLog: n, messageLog: r, webhookLog: i, extraVariants: a, contextChart: o, fallback: s, discriminant: c } = e, l = t.replace(/\/$/, ""), u = ho({
4193
+ function Bo(e) {
4194
+ let { basePath: t, connectionLog: n, messageLog: r, webhookLog: i, extraVariants: a, contextChart: o, fallback: s, discriminant: c } = e, l = t.replace(/\/$/, ""), u = yo({
4126
4195
  ...n,
4127
4196
  basePath: l
4128
- }), d = Eo({
4197
+ }), d = Ao({
4129
4198
  ...i,
4130
4199
  basePath: l
4131
4200
  }), f = {
4132
4201
  HTTP_PROXY: u,
4133
4202
  LLM_PROXY: u,
4134
4203
  MCP_PROXY: u,
4135
- MESSAGE: xo(r),
4204
+ MESSAGE: To(r),
4136
4205
  WEBHOOK: d,
4137
4206
  ...a
4138
4207
  };
4139
- return No({
4208
+ return Lo({
4140
4209
  discriminant: c ?? ((e) => e.apiType ?? ""),
4141
4210
  variants: f,
4142
4211
  fallback: s ?? u,
@@ -4149,16 +4218,16 @@ function Io(e) {
4149
4218
  }
4150
4219
  //#endregion
4151
4220
  //#region src/logs/detail/components/LogDetailContextChart.tsx
4152
- var Lo = 900 * 1e3, Ro = "HTTP_GATEWAY_RESPONSE_TIME", zo = "AVG", Bo = "API";
4153
- function Vo({ apiId: e, timestamp: t, metric: r = Ro, measure: i = zo, filterField: a = Bo, analyticsFilterMapping: o }) {
4221
+ var Vo = 900 * 1e3, Ho = "HTTP_GATEWAY_RESPONSE_TIME", Uo = "AVG", Wo = "API";
4222
+ function Go({ apiId: e, timestamp: t, metric: r = Ho, measure: i = Uo, filterField: a = Wo, analyticsFilterMapping: o }) {
4154
4223
  let s = n(), c = D(() => {
4155
4224
  let e = new Date(t).getTime();
4156
4225
  return {
4157
4226
  type: "absolute",
4158
- from: e - Lo,
4159
- to: e + Lo
4227
+ from: e - Vo,
4228
+ to: e + Vo
4160
4229
  };
4161
- }, [t]), l = D(() => Ai(c, 30), [c]), u = D(() => za([{
4230
+ }, [t]), l = D(() => Pi(c, 30), [c]), u = D(() => Ua([{
4162
4231
  field: a,
4163
4232
  operator: "eq",
4164
4233
  value: [e],
@@ -4187,7 +4256,7 @@ function Vo({ apiId: e, timestamp: t, metric: r = Ro, measure: i = zo, filterFie
4187
4256
  } }), [m]), g = D(() => {
4188
4257
  if (!f) return [];
4189
4258
  let e = /* @__PURE__ */ new Map();
4190
- return e.set(m, f), Ci(e);
4259
+ return e.set(m, f), Di(e);
4191
4260
  }, [f, m]), _ = D(() => {
4192
4261
  let e = new Date(t).getTime(), n = f?.[0]?.points;
4193
4262
  if (g.length === 0 || !n?.length) return;
@@ -4242,18 +4311,18 @@ function Vo({ apiId: e, timestamp: t, metric: r = Ro, measure: i = zo, filterFie
4242
4311
  }
4243
4312
  //#endregion
4244
4313
  //#region src/logs/detail/components/LogDetailDrawerShell.tsx
4245
- var Ho = y({
4314
+ var Ko = y({
4246
4315
  expanded: !1,
4247
4316
  setExpanded: () => {}
4248
4317
  });
4249
- function Uo() {
4250
- return w(Ho);
4318
+ function qo() {
4319
+ return w(Ko);
4251
4320
  }
4252
- var Wo = "[role=\"tree\"], [role=\"treeitem\"], input, textarea, select, [contenteditable]";
4253
- function Go(e) {
4254
- return e === document.body ? !0 : e.closest(Wo) ? !1 : !!e.closest("[data-log-detail-shell]");
4321
+ var Jo = "[role=\"tree\"], [role=\"treeitem\"], input, textarea, select, [contenteditable]";
4322
+ function Yo(e) {
4323
+ return e === document.body ? !0 : e.closest(Jo) ? !1 : !!e.closest("[data-log-detail-shell]");
4255
4324
  }
4256
- function Ko({ open: e, onClose: t, onNavigatePrev: n, onNavigateNext: r, children: i }) {
4325
+ function Xo({ open: e, onClose: t, onNavigatePrev: n, onNavigateNext: r, children: i }) {
4257
4326
  let [a, o] = k(!1), s = C(() => {
4258
4327
  o(!1), t();
4259
4328
  }, [t]), c = C((e) => {
@@ -4264,10 +4333,10 @@ function Ko({ open: e, onClose: t, onNavigatePrev: n, onNavigateNext: r, childre
4264
4333
  t.preventDefault(), a ? o(!1) : s();
4265
4334
  break;
4266
4335
  case "ArrowUp":
4267
- Go(t.target) && (t.preventDefault(), n?.());
4336
+ Yo(t.target) && (t.preventDefault(), n?.());
4268
4337
  break;
4269
4338
  case "ArrowDown":
4270
- Go(t.target) && (t.preventDefault(), r?.());
4339
+ Yo(t.target) && (t.preventDefault(), r?.());
4271
4340
  break;
4272
4341
  }
4273
4342
  }, [
@@ -4282,7 +4351,7 @@ function Ko({ open: e, onClose: t, onNavigatePrev: n, onNavigateNext: r, childre
4282
4351
  expanded: a,
4283
4352
  setExpanded: o
4284
4353
  }), [a]);
4285
- return /* @__PURE__ */ j(Ho.Provider, {
4354
+ return /* @__PURE__ */ j(Ko.Provider, {
4286
4355
  value: f,
4287
4356
  children: /* @__PURE__ */ j(ze, {
4288
4357
  open: e,
@@ -4318,7 +4387,7 @@ function Ko({ open: e, onClose: t, onNavigatePrev: n, onNavigateNext: r, childre
4318
4387
  }
4319
4388
  //#endregion
4320
4389
  //#region src/logs/detail/components/LogDetailHeader.tsx
4321
- var qo = {
4390
+ var Zo = {
4322
4391
  GET: "success",
4323
4392
  POST: "default",
4324
4393
  PUT: "warning",
@@ -4327,10 +4396,10 @@ var qo = {
4327
4396
  HEAD: "secondary",
4328
4397
  OPTIONS: "secondary"
4329
4398
  };
4330
- function Jo(e) {
4399
+ function Qo(e) {
4331
4400
  return e >= 500 ? "text-destructive" : e >= 400 ? "text-warning" : "text-success";
4332
4401
  }
4333
- function Yo(e) {
4402
+ function $o(e) {
4334
4403
  let t = new Date(e), n = (/* @__PURE__ */ new Date()).getTime() - t.getTime(), r = Math.floor(n / 1e3), i;
4335
4404
  i = r < 60 ? `${r}s ago` : r < 3600 ? `${Math.floor(r / 60)}m ago` : r < 86400 ? `${Math.floor(r / 3600)}h ago` : t.toLocaleDateString(void 0, {
4336
4405
  month: "short",
@@ -4350,10 +4419,10 @@ function Yo(e) {
4350
4419
  full: a
4351
4420
  };
4352
4421
  }
4353
- function Xo({ method: e, status: t, uri: n, timestamp: r, onClose: i, onNavigatePrev: a, onNavigateNext: o, onCopyJson: s, hasPrev: c = !0, hasNext: l = !0, showExpandToggle: u = !0 }) {
4354
- let { expanded: d, setExpanded: f } = Uo(), p = C((e) => {
4422
+ function es({ method: e, status: t, uri: n, timestamp: r, onClose: i, onNavigatePrev: a, onNavigateNext: o, onCopyJson: s, hasPrev: c = !0, hasNext: l = !0, showExpandToggle: u = !0 }) {
4423
+ let { expanded: d, setExpanded: f } = qo(), p = C((e) => {
4355
4424
  e.key === "Escape" && i?.();
4356
- }, [i]), m = r ? Yo(r) : null;
4425
+ }, [i]), m = r ? $o(r) : null;
4357
4426
  return /* @__PURE__ */ M("div", {
4358
4427
  className: "sticky top-0 z-10 border-b bg-background/95 backdrop-blur-sm",
4359
4428
  role: "toolbar",
@@ -4419,11 +4488,11 @@ function Xo({ method: e, status: t, uri: n, timestamp: r, onClose: i, onNavigate
4419
4488
  className: "flex items-center gap-3",
4420
4489
  children: [
4421
4490
  e && /* @__PURE__ */ j(P, {
4422
- variant: qo[e] ?? "secondary",
4491
+ variant: Zo[e] ?? "secondary",
4423
4492
  children: e
4424
4493
  }),
4425
4494
  t !== void 0 && /* @__PURE__ */ j("span", {
4426
- className: `font-mono text-sm font-semibold tabular-nums ${Jo(t)}`,
4495
+ className: `font-mono text-sm font-semibold tabular-nums ${Qo(t)}`,
4427
4496
  children: t
4428
4497
  }),
4429
4498
  m && /* @__PURE__ */ j(z, { children: /* @__PURE__ */ M(L, { children: [/* @__PURE__ */ j(B, {
@@ -4455,9 +4524,9 @@ function Xo({ method: e, status: t, uri: n, timestamp: r, onClose: i, onNavigate
4455
4524
  }
4456
4525
  //#endregion
4457
4526
  //#region src/logs/detail/components/LogDetailMetrics.tsx
4458
- function Zo({ items: e }) {
4527
+ function ts({ items: e }) {
4459
4528
  let t = e.filter((e) => e.value !== void 0 && e.value !== null), n = D(() => t.map((e) => ({
4460
- value: Qo(e.value, e.unit),
4529
+ value: ns(e.value, e.unit),
4461
4530
  label: e.label
4462
4531
  })), [t]);
4463
4532
  return n.length === 0 ? null : /* @__PURE__ */ j("div", {
@@ -4470,12 +4539,12 @@ function Zo({ items: e }) {
4470
4539
  })
4471
4540
  });
4472
4541
  }
4473
- function Qo(e, t) {
4542
+ function ns(e, t) {
4474
4543
  return t === "ms" || !t ? e >= 1e4 ? `${(e / 1e3).toFixed(1)}s` : e >= 1e3 ? `${(e / 1e3).toFixed(2)}s` : `${Math.round(e)}ms` : t === "B" ? e >= 1024 * 1024 ? `${(e / (1024 * 1024)).toFixed(1)} MB` : e >= 1024 ? `${(e / 1024).toFixed(1)} KB` : `${e} B` : t === "" ? String(e) : `${e}${t}`;
4475
4544
  }
4476
4545
  //#endregion
4477
4546
  //#region src/logs/detail/components/LogDetailSection.tsx
4478
- function $o({ children: e, defaultValue: t }) {
4547
+ function rs({ children: e, defaultValue: t }) {
4479
4548
  let [n, r] = k(t ?? "");
4480
4549
  return /* @__PURE__ */ j(ne, {
4481
4550
  type: "single",
@@ -4485,7 +4554,7 @@ function $o({ children: e, defaultValue: t }) {
4485
4554
  children: e
4486
4555
  });
4487
4556
  }
4488
- function es({ title: e, badge: t, children: n }) {
4557
+ function is({ title: e, badge: t, children: n }) {
4489
4558
  return /* @__PURE__ */ M(ie, {
4490
4559
  value: e,
4491
4560
  className: "border-b last:border-b-0",
@@ -4507,26 +4576,26 @@ function es({ title: e, badge: t, children: n }) {
4507
4576
  }
4508
4577
  //#endregion
4509
4578
  //#region src/logs/detail/components/LogDetailContent.tsx
4510
- var ts = {
4511
- Header: Xo,
4512
- Section: es,
4579
+ var as = {
4580
+ Header: es,
4581
+ Section: is,
4513
4582
  KeyValueGrid: $,
4514
4583
  HeadersTable: Q,
4515
4584
  CodeBlock: X,
4516
- Metrics: Zo
4585
+ Metrics: ts
4517
4586
  };
4518
- function ns({ config: e, log: t, logId: n, onClose: r, onCopyJson: i, onNavigatePrev: a, onNavigateNext: o, onFilter: s, hasPrev: c, hasNext: l, showExpandToggle: u = !0, showNavigation: d = !0 }) {
4519
- let f = Po(e, t);
4587
+ function os({ config: e, log: t, logId: n, onClose: r, onCopyJson: i, onNavigatePrev: a, onNavigateNext: o, onFilter: s, hasPrev: c, hasNext: l, showExpandToggle: u = !0, showNavigation: d = !0 }) {
4588
+ let f = Ro(e, t);
4520
4589
  if (!f) return /* @__PURE__ */ j("div", {
4521
4590
  className: "flex items-center justify-center p-8 text-sm text-muted-foreground",
4522
4591
  children: "No detail view configured for this log type."
4523
4592
  });
4524
- if (f.type === "custom") return /* @__PURE__ */ j(A, { children: f.render(t, ts) });
4525
- let p = Fo(f, t);
4593
+ if (f.type === "custom") return /* @__PURE__ */ j(A, { children: f.render(t, as) });
4594
+ let p = zo(f, t);
4526
4595
  if (!p) return null;
4527
4596
  let m = e.contextChart;
4528
4597
  return /* @__PURE__ */ M(A, { children: [
4529
- /* @__PURE__ */ j(Xo, {
4598
+ /* @__PURE__ */ j(es, {
4530
4599
  method: p.header.method(t),
4531
4600
  status: p.header.status(t),
4532
4601
  uri: p.header.uri(t),
@@ -4539,7 +4608,7 @@ function ns({ config: e, log: t, logId: n, onClose: r, onCopyJson: i, onNavigate
4539
4608
  hasNext: d ? l : !1,
4540
4609
  showExpandToggle: u
4541
4610
  }),
4542
- m && /* @__PURE__ */ j(Vo, {
4611
+ m && /* @__PURE__ */ j(Go, {
4543
4612
  apiId: m.extractApiId(t),
4544
4613
  timestamp: m.extractTimestamp?.(t) ?? p.header.timestamp(t),
4545
4614
  metric: m.metric,
@@ -4547,14 +4616,14 @@ function ns({ config: e, log: t, logId: n, onClose: r, onCopyJson: i, onNavigate
4547
4616
  filterField: m.filterField,
4548
4617
  analyticsFilterMapping: m.analyticsFilterMapping
4549
4618
  }),
4550
- p.metrics && p.metrics.length > 0 && /* @__PURE__ */ j(Zo, { items: p.metrics.map((e) => ({
4619
+ p.metrics && p.metrics.length > 0 && /* @__PURE__ */ j(ts, { items: p.metrics.map((e) => ({
4551
4620
  label: e.label,
4552
4621
  value: e.value(t),
4553
4622
  unit: e.unit
4554
4623
  })) }),
4555
- /* @__PURE__ */ j($o, {
4624
+ /* @__PURE__ */ j(rs, {
4556
4625
  defaultValue: p.sections.find((e) => e.defaultOpen)?.title,
4557
- children: p.sections.map((e) => /* @__PURE__ */ j(es, {
4626
+ children: p.sections.map((e) => /* @__PURE__ */ j(is, {
4558
4627
  title: e.title,
4559
4628
  badge: e.badge?.(t),
4560
4629
  children: e.render(t, s)
@@ -4564,20 +4633,20 @@ function ns({ config: e, log: t, logId: n, onClose: r, onCopyJson: i, onNavigate
4564
4633
  }
4565
4634
  //#endregion
4566
4635
  //#region src/logs/detail/utils/clipboard.ts
4567
- function rs(e) {
4636
+ function ss(e) {
4568
4637
  navigator.clipboard.writeText(JSON.stringify(e, null, 2)).then(() => H.success("Full JSON copied to clipboard"), () => H.error("Failed to copy to clipboard"));
4569
4638
  }
4570
4639
  //#endregion
4571
4640
  //#region src/logs/detail/components/LogDetailDrawer.tsx
4572
- function is({ config: e, logId: t, onClose: n, onNavigatePrev: r, onNavigateNext: i, onFilter: a, hasPrev: o, hasNext: s }) {
4641
+ function cs({ config: e, logId: t, onClose: n, onNavigatePrev: r, onNavigateNext: i, onFilter: a, hasPrev: o, hasNext: s }) {
4573
4642
  let { data: c, isLoading: l, isError: u, isNotFound: d, isUnsupported: f, refetch: p } = pn({ id: t });
4574
- return /* @__PURE__ */ M(Ko, {
4643
+ return /* @__PURE__ */ M(Xo, {
4575
4644
  open: !!t,
4576
4645
  onClose: n,
4577
4646
  onNavigatePrev: r,
4578
4647
  onNavigateNext: i,
4579
4648
  children: [
4580
- l && /* @__PURE__ */ j(as, {}),
4649
+ l && /* @__PURE__ */ j(ls, {}),
4581
4650
  f && /* @__PURE__ */ M("div", {
4582
4651
  className: "flex flex-col items-center justify-center gap-2 p-8 text-center text-muted-foreground",
4583
4652
  children: [/* @__PURE__ */ j("p", {
@@ -4614,13 +4683,13 @@ function is({ config: e, logId: t, onClose: n, onNavigatePrev: r, onNavigateNext
4614
4683
  })
4615
4684
  ]
4616
4685
  }),
4617
- c != null && /* @__PURE__ */ j(ns, {
4686
+ c != null && /* @__PURE__ */ j(os, {
4618
4687
  config: e,
4619
4688
  log: c,
4620
4689
  logId: t,
4621
4690
  onClose: n,
4622
4691
  onCopyJson: () => {
4623
- c && rs(c);
4692
+ c && ss(c);
4624
4693
  },
4625
4694
  onNavigatePrev: r,
4626
4695
  onNavigateNext: i,
@@ -4631,7 +4700,7 @@ function is({ config: e, logId: t, onClose: n, onNavigatePrev: r, onNavigateNext
4631
4700
  ]
4632
4701
  });
4633
4702
  }
4634
- function as() {
4703
+ function ls() {
4635
4704
  return /* @__PURE__ */ M("div", {
4636
4705
  className: "space-y-4 p-4",
4637
4706
  children: [
@@ -4659,7 +4728,7 @@ function as() {
4659
4728
  }
4660
4729
  //#endregion
4661
4730
  //#region src/logs/detail/components/LogDetailPage.tsx
4662
- function os({ config: e, onFilter: t }) {
4731
+ function us({ config: e, onFilter: t }) {
4663
4732
  let { logId: n } = Vt(), r = Bt(), { data: i, isLoading: a, isError: o, isNotFound: s, isUnsupported: c, refetch: l } = pn({ id: n }), u = () => r(-1);
4664
4733
  return a ? /* @__PURE__ */ M("div", {
4665
4734
  className: "space-y-4 p-6",
@@ -4720,13 +4789,13 @@ function os({ config: e, onFilter: t }) {
4720
4789
  })
4721
4790
  }), /* @__PURE__ */ j(se, {
4722
4791
  className: "mx-6 mt-4 overflow-hidden",
4723
- children: /* @__PURE__ */ j(ns, {
4792
+ children: /* @__PURE__ */ j(os, {
4724
4793
  config: e,
4725
4794
  log: i,
4726
4795
  logId: n,
4727
4796
  onClose: u,
4728
4797
  onCopyJson: () => {
4729
- i && rs(i);
4798
+ i && ss(i);
4730
4799
  },
4731
4800
  onFilter: t,
4732
4801
  showExpandToggle: !1,
@@ -4737,27 +4806,27 @@ function os({ config: e, onFilter: t }) {
4737
4806
  }
4738
4807
  //#endregion
4739
4808
  //#region src/data-sources/filter-serialization.ts
4740
- var ss = [
4809
+ var ds = [
4741
4810
  "eq",
4742
4811
  "in",
4743
4812
  "lte",
4744
4813
  "gte"
4745
4814
  ];
4746
- function cs(e) {
4747
- return ss.includes(e);
4815
+ function fs(e) {
4816
+ return ds.includes(e);
4748
4817
  }
4749
- var ls = {
4818
+ var ps = {
4750
4819
  eq: "EQ",
4751
4820
  in: "IN",
4752
4821
  lte: "LTE",
4753
4822
  gte: "GTE"
4754
4823
  };
4755
- function us(e) {
4756
- if (!cs(e.operator)) throw Error(`[gamma-lib-observability] Filter operator "${e.operator}" on field "${e.field}" is not supported by the Gravitee Management v2 API. Supported operators: ${ss.join(", ")}.`);
4824
+ function ms(e) {
4825
+ if (!fs(e.operator)) throw Error(`[gamma-lib-observability] Filter operator "${e.operator}" on field "${e.field}" is not supported by the Gravitee Management v2 API. Supported operators: ${ds.join(", ")}.`);
4757
4826
  let t = e.value[0];
4758
4827
  if (t === void 0) throw Error(`[gamma-lib-observability] Filter on field "${e.field}" with operator "${e.operator}" has no value — every supported operator requires at least one value.`);
4759
4828
  switch (e.operator) {
4760
- case "eq": return ds(e, "eq", "in"), {
4829
+ case "eq": return hs(e, "eq", "in"), {
4761
4830
  name: e.field,
4762
4831
  operator: "EQ",
4763
4832
  value: t
@@ -4769,11 +4838,11 @@ function us(e) {
4769
4838
  };
4770
4839
  case "lte":
4771
4840
  case "gte": {
4772
- ds(e, e.operator);
4773
- let n = fs(e, t);
4841
+ hs(e, e.operator);
4842
+ let n = gs(e, t);
4774
4843
  return {
4775
4844
  name: e.field,
4776
- operator: ls[e.operator],
4845
+ operator: ps[e.operator],
4777
4846
  value: n
4778
4847
  };
4779
4848
  }
@@ -4783,50 +4852,50 @@ function us(e) {
4783
4852
  }
4784
4853
  }
4785
4854
  }
4786
- function ds(e, t, n) {
4855
+ function hs(e, t, n) {
4787
4856
  if (e.value.length <= 1) return;
4788
4857
  let r = n ? ` Use "${n}" for multi-value membership.` : "";
4789
4858
  throw Error(`[gamma-lib-observability] Filter on field "${e.field}" with operator "${t}" received ${e.value.length} values; "${t}" expects a single value.${r}`);
4790
4859
  }
4791
- function fs(e, t) {
4860
+ function gs(e, t) {
4792
4861
  let n = t.trim();
4793
4862
  if (n === "") throw Error(`[gamma-lib-observability] Filter on field "${e.field}" with operator "${e.operator}" expects a numeric value but received an empty string.`);
4794
4863
  let r = Number(n);
4795
4864
  if (Number.isNaN(r)) throw Error(`[gamma-lib-observability] Filter on field "${e.field}" with operator "${e.operator}" expects a numeric value but received "${t}".`);
4796
4865
  return r;
4797
4866
  }
4798
- function ps(e) {
4799
- if (e?.length) return e.map(us);
4867
+ function _s(e) {
4868
+ if (e?.length) return e.map(ms);
4800
4869
  }
4801
4870
  //#endregion
4802
4871
  //#region src/data-sources/http-utils.ts
4803
- function ms(e) {
4872
+ function vs(e) {
4804
4873
  if (e) return typeof e == "function" ? e() : e;
4805
4874
  }
4806
- function hs(...e) {
4875
+ function ys(...e) {
4807
4876
  let t = new Headers();
4808
4877
  for (let n of e) n && new Headers(n).forEach((e, n) => t.set(n, e));
4809
4878
  return t;
4810
4879
  }
4811
4880
  //#endregion
4812
4881
  //#region src/data-sources/http-data-source.ts
4813
- var gs = {
4882
+ var bs = {
4814
4883
  name: "HTTP_REQUESTS",
4815
4884
  measures: [Jt]
4816
4885
  };
4817
- function _s(e) {
4886
+ function xs(e) {
4818
4887
  return e.metrics.map((e) => ({
4819
4888
  name: e.name,
4820
4889
  unit: e.unit,
4821
4890
  measures: e.measures ?? []
4822
4891
  }));
4823
4892
  }
4824
- function vs(e, t = "", n = "") {
4893
+ function Ss(e, t = "", n = "") {
4825
4894
  let r = [];
4826
4895
  for (let i of e) {
4827
4896
  let e = t ? `${t} / ${i.key}` : i.key, a = n ? `${n} › ${i.name ?? i.key}` : i.name ?? i.key;
4828
4897
  if (i.type === "GROUP" && i.buckets?.length) {
4829
- r.push(...vs(i.buckets, e, a));
4898
+ r.push(...Ss(i.buckets, e, a));
4830
4899
  continue;
4831
4900
  }
4832
4901
  r.push({
@@ -4837,12 +4906,12 @@ function vs(e, t = "", n = "") {
4837
4906
  }
4838
4907
  return r;
4839
4908
  }
4840
- function ys(e) {
4909
+ function Cs(e) {
4841
4910
  let t = [];
4842
- for (let n of e.metrics) n.buckets && t.push(...vs(n.buckets));
4911
+ for (let n of e.metrics) n.buckets && t.push(...Ss(n.buckets));
4843
4912
  return t;
4844
4913
  }
4845
- function bs(e) {
4914
+ function ws(e) {
4846
4915
  let t = [];
4847
4916
  for (let n of e.metrics) if (n.buckets) if (n.buckets.some((e) => e.type === "GROUP" && e.buckets?.length)) {
4848
4917
  let e = /* @__PURE__ */ new Map();
@@ -4879,47 +4948,47 @@ function bs(e) {
4879
4948
  }
4880
4949
  return t;
4881
4950
  }
4882
- function xs(e) {
4951
+ function Ts(e) {
4883
4952
  return {
4884
4953
  ...e,
4885
4954
  measures: e.measures?.length ? e.measures : [Jt]
4886
4955
  };
4887
4956
  }
4888
- function Ss(e) {
4889
- let t = Ts(e);
4890
- return t.metrics = e.metrics.map(Es), t;
4957
+ function Es(e) {
4958
+ let t = ks(e);
4959
+ return t.metrics = e.metrics.map(As), t;
4891
4960
  }
4892
- function Cs(e) {
4893
- let t = Ts(e);
4894
- return t.interval = e.interval, t.metrics = e.metrics.map(Es), e.by?.length && (t.by = e.by), e.ranges?.length && (t.ranges = e.ranges), e.limit !== void 0 && (t.limit = e.limit), t;
4961
+ function Ds(e) {
4962
+ let t = ks(e);
4963
+ return t.interval = e.interval, t.metrics = e.metrics.map(As), e.by?.length && (t.by = e.by), e.ranges?.length && (t.ranges = e.ranges), e.limit !== void 0 && (t.limit = e.limit), t;
4895
4964
  }
4896
- function ws(e, t) {
4897
- let n = Ts(e);
4898
- return n.by = e.by, n.metrics = (e.metrics?.length ? e.metrics : [t]).map(Es), e.ranges?.length && (n.ranges = e.ranges), e.limit !== void 0 && (n.limit = e.limit), n;
4965
+ function Os(e, t) {
4966
+ let n = ks(e);
4967
+ return n.by = e.by, n.metrics = (e.metrics?.length ? e.metrics : [t]).map(As), e.ranges?.length && (n.ranges = e.ranges), e.limit !== void 0 && (n.limit = e.limit), n;
4899
4968
  }
4900
- function Ts(e) {
4901
- let t = ei(e.timeRange), n = { timeRange: {
4969
+ function ks(e) {
4970
+ let t = ii(e.timeRange), n = { timeRange: {
4902
4971
  from: new Date(t.from).toISOString(),
4903
4972
  to: new Date(t.to).toISOString()
4904
- } }, r = ps(e.filters);
4973
+ } }, r = _s(e.filters);
4905
4974
  return r && (n.filters = r), n;
4906
4975
  }
4907
- function Es(e) {
4908
- let t = xs(e), n = {
4976
+ function As(e) {
4977
+ let t = Ts(e), n = {
4909
4978
  name: t.name,
4910
4979
  measures: t.measures
4911
- }, r = ps(e.filters);
4980
+ }, r = _s(e.filters);
4912
4981
  return r && (n.filters = r), "sorts" in e && e.sorts?.length && (n.sorts = e.sorts), n;
4913
4982
  }
4914
- function Ds(e, t) {
4983
+ function js(e, t) {
4915
4984
  let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials, i = {
4916
- name: t?.defaultFacetMetric?.name ?? gs.name,
4917
- measures: t?.defaultFacetMetric?.measures?.length ? [...t.defaultFacetMetric.measures] : [...gs.measures]
4985
+ name: t?.defaultFacetMetric?.name ?? bs.name,
4986
+ measures: t?.defaultFacetMetric?.measures?.length ? [...t.defaultFacetMetric.measures] : [...bs.measures]
4918
4987
  };
4919
4988
  async function a(i, a, o) {
4920
4989
  let s = {
4921
4990
  method: "POST",
4922
- headers: hs({ "Content-Type": "application/json" }, ms(t?.headers)),
4991
+ headers: ys({ "Content-Type": "application/json" }, vs(t?.headers)),
4923
4992
  body: JSON.stringify(a),
4924
4993
  signal: o
4925
4994
  };
@@ -4930,19 +4999,19 @@ function Ds(e, t) {
4930
4999
  }
4931
5000
  return {
4932
5001
  async fetchTimeSeries(e) {
4933
- return bs(await a("/analytics/time-series", Cs(e), e.signal));
5002
+ return ws(await a("/analytics/time-series", Ds(e), e.signal));
4934
5003
  },
4935
5004
  async fetchFacets(e) {
4936
- return ys(await a("/analytics/facets", ws(e, i), e.signal));
5005
+ return Cs(await a("/analytics/facets", Os(e, i), e.signal));
4937
5006
  },
4938
5007
  async fetchMeasures(e) {
4939
- return _s(await a("/analytics/measures", Ss(e), e.signal));
5008
+ return xs(await a("/analytics/measures", Es(e), e.signal));
4940
5009
  }
4941
5010
  };
4942
5011
  }
4943
5012
  //#endregion
4944
5013
  //#region src/data-sources/http-filter-source.ts
4945
- function Os(e) {
5014
+ function Ms(e) {
4946
5015
  return {
4947
5016
  EQ: "eq",
4948
5017
  IN: "in",
@@ -4955,14 +5024,14 @@ function Os(e) {
4955
5024
  CONTAINS: "contains"
4956
5025
  }[e] ?? e.toLowerCase();
4957
5026
  }
4958
- function ks(e) {
5027
+ function Ns(e) {
4959
5028
  return e === "ENUM" ? "enum" : "async";
4960
5029
  }
4961
- function As(e, t) {
5030
+ function Ps(e, t) {
4962
5031
  let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials;
4963
5032
  function i(e) {
4964
- let n = { ...e }, i = ms(t?.headers);
4965
- return (e?.headers || i) && (n.headers = hs(e?.headers, i)), r && (n.credentials = r), n;
5033
+ let n = { ...e }, i = vs(t?.headers);
5034
+ return (e?.headers || i) && (n.headers = ys(e?.headers, i)), r && (n.credentials = r), n;
4966
5035
  }
4967
5036
  function a(t) {
4968
5037
  return async (r) => {
@@ -4988,7 +5057,7 @@ function As(e, t) {
4988
5057
  let r = await n(`${e}/observability/filters/definition`, i({ signal: t }));
4989
5058
  if (!r.ok) throw Error(`[gamma-lib-observability] HTTP ${r.status} on GET filters/definition`);
4990
5059
  return (await r.json()).data.map((e) => {
4991
- let t = ks(e.type), n = e.operators.map(Os), r = e.apiTypes;
5060
+ let t = Ns(e.type), n = e.operators.map(Ms), r = e.apiTypes;
4992
5061
  if (t === "enum") {
4993
5062
  let i = (e.enumValues ?? []).map((e) => ({
4994
5063
  value: e,
@@ -5029,13 +5098,13 @@ function As(e, t) {
5029
5098
  }
5030
5099
  //#endregion
5031
5100
  //#region src/data-sources/http-logs-source.ts
5032
- var js = "/logs/search", Ms = 10 * 365.25 * 864e5;
5033
- function Ns(e, t) {
5034
- let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials, i = t?.searchPath ?? js, a;
5101
+ var Fs = "/logs/search", Is = 10 * 365.25 * 864e5;
5102
+ function Ls(e, t) {
5103
+ let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials, i = t?.searchPath ?? Fs, a;
5035
5104
  function o(e) {
5036
5105
  let n = {
5037
5106
  method: "POST",
5038
- headers: hs({ "Content-Type": "application/json" }, e, ms(t?.headers))
5107
+ headers: ys({ "Content-Type": "application/json" }, e, vs(t?.headers))
5039
5108
  };
5040
5109
  return r && (n.credentials = r), n;
5041
5110
  }
@@ -5055,7 +5124,7 @@ function Ns(e, t) {
5055
5124
  let r = {
5056
5125
  timeRange: c(a ?? {
5057
5126
  type: "absolute",
5058
- from: Date.now() - Ms,
5127
+ from: Date.now() - Is,
5059
5128
  to: Date.now()
5060
5129
  }),
5061
5130
  filters: [{
@@ -5071,9 +5140,9 @@ function Ns(e, t) {
5071
5140
  }
5072
5141
  return {
5073
5142
  async fetchLogs(e) {
5074
- let t = ei(e.timeRange);
5143
+ let t = ii(e.timeRange);
5075
5144
  a = t;
5076
- let r = ps(e.filters), l = { timeRange: c(t) };
5145
+ let r = _s(e.filters), l = { timeRange: c(t) };
5077
5146
  r && (l.filters = r);
5078
5147
  let u = o();
5079
5148
  u.body = JSON.stringify(l), e.signal && (u.signal = e.signal);
@@ -5092,8 +5161,8 @@ function Ns(e, t) {
5092
5161
  }
5093
5162
  //#endregion
5094
5163
  //#region src/routing/DashboardListPage.tsx
5095
- function Ps({ templates: e }) {
5096
- let t = o(), n = D(() => ga(e, t), [e, t]), r = D(() => [{
5164
+ function Rs({ templates: e }) {
5165
+ let t = o(), n = D(() => ba(e, t), [e, t]), r = D(() => [{
5097
5166
  id: "name",
5098
5167
  accessorKey: "label",
5099
5168
  header: "Name",
@@ -5126,7 +5195,7 @@ function Ps({ templates: e }) {
5126
5195
  }
5127
5196
  //#endregion
5128
5197
  //#region src/routing/detail-filter.ts
5129
- function Fs(e, t, n) {
5198
+ function zs(e, t, n) {
5130
5199
  let r = e.filter((e) => e.field !== t);
5131
5200
  return r.push({
5132
5201
  field: t,
@@ -5135,8 +5204,8 @@ function Fs(e, t, n) {
5135
5204
  value: [n]
5136
5205
  }), r;
5137
5206
  }
5138
- function Is(e, t) {
5139
- let n = Nn({
5207
+ function Bs(e, t) {
5208
+ let n = Ln({
5140
5209
  conditions: [...e],
5141
5210
  timeRange: t
5142
5211
  }), r = new URLSearchParams();
@@ -5144,9 +5213,9 @@ function Is(e, t) {
5144
5213
  }
5145
5214
  //#endregion
5146
5215
  //#region src/routing/LogsRouteElement.tsx
5147
- function Ls({ columns: e, getRowId: t, onRowClickOverride: n, detailConfig: r, detailMode: i, pageSize: a, scopeFilterField: o, columnVisibilityStorageKey: s, analyticsFilterMapping: c }) {
5216
+ function Vs({ columns: e, getRowId: t, onRowClickOverride: n, detailConfig: r, detailMode: i, pageSize: a, scopeFilterField: o, columnVisibilityStorageKey: s, analyticsFilterMapping: c }) {
5148
5217
  let l = !n && !!r && !!t;
5149
- return l && i === "drawer" && r && t ? /* @__PURE__ */ j(Rs, {
5218
+ return l && i === "drawer" && r && t ? /* @__PURE__ */ j(Hs, {
5150
5219
  columns: e,
5151
5220
  getRowId: t,
5152
5221
  detailConfig: r,
@@ -5154,7 +5223,7 @@ function Ls({ columns: e, getRowId: t, onRowClickOverride: n, detailConfig: r, d
5154
5223
  scopeFilterField: o,
5155
5224
  columnVisibilityStorageKey: s,
5156
5225
  analyticsFilterMapping: c
5157
- }) : /* @__PURE__ */ j(zs, {
5226
+ }) : /* @__PURE__ */ j(Us, {
5158
5227
  columns: e,
5159
5228
  getRowId: t,
5160
5229
  onRowClickOverride: n,
@@ -5165,13 +5234,13 @@ function Ls({ columns: e, getRowId: t, onRowClickOverride: n, detailConfig: r, d
5165
5234
  analyticsFilterMapping: c
5166
5235
  });
5167
5236
  }
5168
- function Rs({ columns: e, getRowId: t, detailConfig: n, pageSize: r, scopeFilterField: i, columnVisibilityStorageKey: a, analyticsFilterMapping: o }) {
5169
- let [s, c] = k(void 0), [l, u] = k([]), { filters: d, setFilters: f } = Ca(), p = D(() => s ? l.findIndex((e) => t(e) === s) : -1, [
5237
+ function Hs({ columns: e, getRowId: t, detailConfig: n, pageSize: r, scopeFilterField: i, columnVisibilityStorageKey: a, analyticsFilterMapping: o }) {
5238
+ let [s, c] = k(void 0), [l, u] = k([]), { filters: d, setFilters: f } = Da(), p = D(() => s ? l.findIndex((e) => t(e) === s) : -1, [
5170
5239
  s,
5171
5240
  l,
5172
5241
  t
5173
5242
  ]), m = C((e) => c(t(e)), [t]), h = C((e, t) => {
5174
- f(Fs(d, e, t)), c(void 0);
5243
+ f(zs(d, e, t)), c(void 0);
5175
5244
  }, [d, f]), g = C(() => {
5176
5245
  let e = l[p - 1];
5177
5246
  e && c(t(e));
@@ -5187,7 +5256,7 @@ function Rs({ columns: e, getRowId: t, detailConfig: n, pageSize: r, scopeFilter
5187
5256
  p,
5188
5257
  t
5189
5258
  ]);
5190
- return /* @__PURE__ */ M(A, { children: [/* @__PURE__ */ j(to, {
5259
+ return /* @__PURE__ */ M(A, { children: [/* @__PURE__ */ j(ao, {
5191
5260
  columns: e,
5192
5261
  onRowClick: m,
5193
5262
  getRowId: t,
@@ -5196,7 +5265,7 @@ function Rs({ columns: e, getRowId: t, detailConfig: n, pageSize: r, scopeFilter
5196
5265
  scopeFilterField: i,
5197
5266
  columnVisibilityStorageKey: a,
5198
5267
  analyticsFilterMapping: o
5199
- }), /* @__PURE__ */ j(is, {
5268
+ }), /* @__PURE__ */ j(cs, {
5200
5269
  config: n,
5201
5270
  logId: s,
5202
5271
  onClose: () => c(void 0),
@@ -5207,9 +5276,9 @@ function Rs({ columns: e, getRowId: t, detailConfig: n, pageSize: r, scopeFilter
5207
5276
  hasNext: p >= 0 && p < l.length - 1
5208
5277
  })] });
5209
5278
  }
5210
- function zs({ columns: e, getRowId: t, onRowClickOverride: n, builtInDetailEnabled: r, pageSize: i, scopeFilterField: a, columnVisibilityStorageKey: o, analyticsFilterMapping: s }) {
5279
+ function Us({ columns: e, getRowId: t, onRowClickOverride: n, builtInDetailEnabled: r, pageSize: i, scopeFilterField: a, columnVisibilityStorageKey: o, analyticsFilterMapping: s }) {
5211
5280
  let c = Bt(), { pathname: l } = zt();
5212
- return /* @__PURE__ */ j(to, {
5281
+ return /* @__PURE__ */ j(ao, {
5213
5282
  columns: e,
5214
5283
  onRowClick: D(() => {
5215
5284
  if (n) return n;
@@ -5233,15 +5302,15 @@ function zs({ columns: e, getRowId: t, onRowClickOverride: n, builtInDetailEnabl
5233
5302
  }
5234
5303
  //#endregion
5235
5304
  //#region src/routing/ObservabilityDashboardPage.tsx
5236
- function Bs(e) {
5305
+ function Ws(e) {
5237
5306
  let [t] = Ht(), n = t.get("live");
5238
5307
  return /* @__PURE__ */ j(Zt, {
5239
5308
  config: { defaultEnabled: n === "1" || n === "true" },
5240
- children: /* @__PURE__ */ j(Vs, { ...e })
5309
+ children: /* @__PURE__ */ j(Gs, { ...e })
5241
5310
  });
5242
5311
  }
5243
- function Vs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5244
- let { dashboardId: r } = Vt(), i = o(), a = $t(), [, s] = Ht(), c = D(() => ga(e, i), [e, i]).find((e) => e.id === r), { timeRange: l, filters: u, setTimeRange: d, setFilters: f } = Ca(), p = yn(u, nn()), m = a?.isLive ?? !1;
5312
+ function Gs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5313
+ let { dashboardId: r } = Vt(), i = o(), a = $t(), [, s] = Ht(), c = D(() => ba(e, i), [e, i]).find((e) => e.id === r), { timeRange: l, filters: u, setTimeRange: d, setFilters: f } = Da(), p = yn(u, nn()), m = a?.isLive ?? !1;
5245
5314
  T(() => {
5246
5315
  s((e) => {
5247
5316
  let t = e.has("live");
@@ -5258,7 +5327,7 @@ function Vs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5258
5327
  }, [m, s]);
5259
5328
  let h = C((e) => {
5260
5329
  e.type === "absolute" && a?.isLive && a.toggle(), d(e);
5261
- }, [d, a]), g = D(() => c ? ha(c, { capabilities: i }) : null, [c, i]);
5330
+ }, [d, a]), g = D(() => c ? ya(c, { capabilities: i }) : null, [c, i]);
5262
5331
  return !c || !g ? /* @__PURE__ */ j("div", {
5263
5332
  className: "flex items-center justify-center p-8 text-muted-foreground",
5264
5333
  children: r ? `Dashboard "${r}" not found.` : "No dashboard available."
@@ -5274,7 +5343,7 @@ function Vs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5274
5343
  children: [
5275
5344
  /* @__PURE__ */ j("div", {
5276
5345
  className: "flex flex-1 items-center gap-2",
5277
- children: /* @__PURE__ */ j(Jr, {
5346
+ children: /* @__PURE__ */ j(Qr, {
5278
5347
  filters: p,
5279
5348
  onFiltersChange: f,
5280
5349
  scopeFilterField: t
@@ -5285,14 +5354,14 @@ function Vs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5285
5354
  className: "text-sm text-muted-foreground transition-colors hover:text-foreground",
5286
5355
  children: [e.label, " →"]
5287
5356
  }, e.label)),
5288
- /* @__PURE__ */ j(z, { children: /* @__PURE__ */ j(Sa, {}) }),
5289
- /* @__PURE__ */ j(Un, {
5357
+ /* @__PURE__ */ j(z, { children: /* @__PURE__ */ j(Ea, {}) }),
5358
+ /* @__PURE__ */ j(qn, {
5290
5359
  value: l,
5291
5360
  onChange: h
5292
5361
  })
5293
5362
  ]
5294
5363
  }),
5295
- /* @__PURE__ */ j(ua, {
5364
+ /* @__PURE__ */ j(ma, {
5296
5365
  dashboard: g,
5297
5366
  timeRange: l,
5298
5367
  filters: u
@@ -5302,23 +5371,23 @@ function Vs({ templates: e, scopeFilterField: t, externalLinks: n }) {
5302
5371
  }
5303
5372
  //#endregion
5304
5373
  //#region src/routing/ObservabilityRoutes.tsx
5305
- var Hs = [];
5306
- function Us(e, t, n) {
5374
+ var Ks = [];
5375
+ function qs(e, t, n) {
5307
5376
  return e ? /* @__PURE__ */ j(c, {
5308
5377
  dataSource: t,
5309
5378
  children: n
5310
5379
  }) : n;
5311
5380
  }
5312
- function Ws({ children: e }) {
5381
+ function Js({ children: e }) {
5313
5382
  let t = nn(), { data: n, isLoading: r, isError: i } = N({
5314
5383
  queryKey: ["observability", "filter-definitions"],
5315
5384
  queryFn: ({ signal: e }) => t.fetchFilterDefinitions(e),
5316
5385
  enabled: !!t,
5317
5386
  staleTime: 300 * 1e3
5318
5387
  });
5319
- return r ? /* @__PURE__ */ j(Gs, {}) : i || !n ? /* @__PURE__ */ j(A, { children: e([]) }) : /* @__PURE__ */ j(A, { children: e(n) });
5388
+ return r ? /* @__PURE__ */ j(Ys, {}) : i || !n ? /* @__PURE__ */ j(A, { children: e([]) }) : /* @__PURE__ */ j(A, { children: e(n) });
5320
5389
  }
5321
- function Gs() {
5390
+ function Ys() {
5322
5391
  return /* @__PURE__ */ M("div", {
5323
5392
  className: "flex items-center gap-2 p-4",
5324
5393
  children: [
@@ -5328,23 +5397,23 @@ function Gs() {
5328
5397
  ]
5329
5398
  });
5330
5399
  }
5331
- function Ks({ templates: e, contextFilters: t }) {
5332
- let n = o(), r = D(() => ga(e, n), [e, n]);
5400
+ function Xs({ templates: e, contextFilters: t }) {
5401
+ let n = o(), r = D(() => ba(e, n), [e, n]);
5333
5402
  return r.length === 1 && r[0] ? /* @__PURE__ */ j(It, {
5334
5403
  to: `./${r[0].id}`,
5335
5404
  replace: !0
5336
5405
  }) : /* @__PURE__ */ j(un, {
5337
5406
  filters: t,
5338
- children: /* @__PURE__ */ j(Ps, { templates: e })
5407
+ children: /* @__PURE__ */ j(Rs, { templates: e })
5339
5408
  });
5340
5409
  }
5341
- function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage: o, logsDataSource: s, logsColumns: c, logsOnRowClick: l, logsGetRowId: u, logsDetailBasePath: f, config: p }) {
5342
- let m = on(), g = t ?? m, _ = n(), v = D(() => Ds(e, g), [e, g]), y = i !== void 0 || _ === null, b = i ?? _ ?? v, x = D(() => As(e, g), [e, g]), S = r(), C = D(() => p.features.logs?.enabled ? Ns(e, g) : void 0, [
5410
+ function Zs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage: o, logsDataSource: s, logsColumns: c, logsOnRowClick: l, logsGetRowId: u, logsDetailBasePath: f, config: p }) {
5411
+ let m = on(), g = t ?? m, _ = n(), v = D(() => js(e, g), [e, g]), y = i !== void 0 || _ === null, b = i ?? _ ?? v, x = D(() => Ps(e, g), [e, g]), S = r(), C = D(() => p.features.logs?.enabled ? Ls(e, g) : void 0, [
5343
5412
  e,
5344
5413
  g,
5345
5414
  p.features.logs?.enabled
5346
- ]), w = s ?? S ?? C, T = s !== void 0 || S === null, E = p.features.dashboards, O = p.features.logs, k = E?.contextFilters ?? Hs, ee = O?.contextFilters ?? Hs, te = O?.enabled, N = O?.logDetail, ne = O?.analyticsFilterMapping, re = D(() => {
5347
- if (te) return N || Io({
5415
+ ]), w = s ?? S ?? C, T = s !== void 0 || S === null, E = p.features.dashboards, O = p.features.logs, k = E?.contextFilters ?? Ks, ee = O?.contextFilters ?? Ks, te = O?.enabled, N = O?.logDetail, ne = O?.analyticsFilterMapping, re = D(() => {
5416
+ if (te) return N || Bo({
5348
5417
  basePath: f ?? "",
5349
5418
  contextChart: { analyticsFilterMapping: ne }
5350
5419
  });
@@ -5358,7 +5427,7 @@ function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage:
5358
5427
  children: /* @__PURE__ */ M(Rt, { children: [
5359
5428
  E?.enabled && /* @__PURE__ */ M(A, { children: [/* @__PURE__ */ j(Lt, {
5360
5429
  path: "dashboards",
5361
- element: /* @__PURE__ */ j(Ks, {
5430
+ element: /* @__PURE__ */ j(Xs, {
5362
5431
  templates: E.templates,
5363
5432
  contextFilters: k
5364
5433
  })
@@ -5366,7 +5435,7 @@ function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage:
5366
5435
  path: "dashboards/:dashboardId",
5367
5436
  element: /* @__PURE__ */ j(un, {
5368
5437
  filters: k,
5369
- children: /* @__PURE__ */ j(Bs, {
5438
+ children: /* @__PURE__ */ j(Ws, {
5370
5439
  templates: E.templates,
5371
5440
  scopeFilterField: E.scopeFilterField,
5372
5441
  externalLinks: E.externalLinks
@@ -5377,7 +5446,7 @@ function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage:
5377
5446
  path: "logs",
5378
5447
  element: /* @__PURE__ */ j(un, {
5379
5448
  filters: ee,
5380
- children: o ?? (w && c ? Us(T, w, /* @__PURE__ */ j(Ls, {
5449
+ children: o ?? (w && c ? qs(T, w, /* @__PURE__ */ j(Vs, {
5381
5450
  columns: c,
5382
5451
  getRowId: u,
5383
5452
  onRowClickOverride: l,
@@ -5397,7 +5466,7 @@ function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage:
5397
5466
  path: "logs/:logId",
5398
5467
  element: /* @__PURE__ */ j(un, {
5399
5468
  filters: ee,
5400
- children: Us(T, w, /* @__PURE__ */ j(Js, { config: re }))
5469
+ children: qs(T, w, /* @__PURE__ */ j(Qs, { config: re }))
5401
5470
  })
5402
5471
  }),
5403
5472
  /* @__PURE__ */ j(Lt, {
@@ -5416,21 +5485,21 @@ function qs({ baseUrl: e, http: t, dataSource: i, filterProviders: a, logsPage:
5416
5485
  ] })
5417
5486
  }), P = /* @__PURE__ */ j(tn, {
5418
5487
  source: x,
5419
- children: a ? ae(a) : /* @__PURE__ */ j(Ws, { children: (e) => ae(e) })
5488
+ children: a ? ae(a) : /* @__PURE__ */ j(Js, { children: (e) => ae(e) })
5420
5489
  });
5421
5490
  return y ? /* @__PURE__ */ j(d, {
5422
5491
  dataSource: b,
5423
5492
  children: P
5424
5493
  }) : P;
5425
5494
  }
5426
- function Js({ config: e }) {
5427
- let t = Bt(), { filters: n, timeRange: r } = Ca();
5428
- return /* @__PURE__ */ j(os, {
5495
+ function Qs({ config: e }) {
5496
+ let t = Bt(), { filters: n, timeRange: r } = Da();
5497
+ return /* @__PURE__ */ j(us, {
5429
5498
  config: e,
5430
5499
  onFilter: C((e, i) => {
5431
5500
  t({
5432
5501
  pathname: "..",
5433
- search: Is(Fs(n, e, i), r)
5502
+ search: Bs(zs(n, e, i), r)
5434
5503
  }, { relative: "path" });
5435
5504
  }, [
5436
5505
  n,
@@ -5441,7 +5510,7 @@ function Js({ config: e }) {
5441
5510
  }
5442
5511
  //#endregion
5443
5512
  //#region src/routing/define-observability-features.ts
5444
- var Ys = {
5513
+ var $s = {
5445
5514
  dashboards: {
5446
5515
  icon: $e,
5447
5516
  title: "Dashboards",
@@ -5453,10 +5522,10 @@ var Ys = {
5453
5522
  order: 1
5454
5523
  }
5455
5524
  };
5456
- function Xs(e) {
5457
- let t = e.basePath ?? "observe", n = Zs(e), r = Qs(e, n, t), i = n.map((e) => `${t}/${e}`), a = $s(n, t);
5525
+ function ec(e) {
5526
+ let t = e.basePath ?? "observe", n = tc(e), r = nc(e, n, t), i = n.map((e) => `${t}/${e}`), a = rc(n, t);
5458
5527
  function o(t) {
5459
- return b(qs, {
5528
+ return b(Zs, {
5460
5529
  ...t,
5461
5530
  config: e
5462
5531
  });
@@ -5485,13 +5554,13 @@ function Xs(e) {
5485
5554
  breadcrumbSegments: c
5486
5555
  };
5487
5556
  }
5488
- function Zs(e) {
5557
+ function tc(e) {
5489
5558
  let t = [];
5490
- return e.features.dashboards?.enabled && t.push("dashboards"), e.features.logs?.enabled && t.push("logs"), t.sort((e, t) => Ys[e].order - Ys[t].order);
5559
+ return e.features.dashboards?.enabled && t.push("dashboards"), e.features.logs?.enabled && t.push("logs"), t.sort((e, t) => $s[e].order - $s[t].order);
5491
5560
  }
5492
- function Qs(e, t, n) {
5561
+ function nc(e, t, n) {
5493
5562
  let r = t.map((t) => {
5494
- let r = Ys[t], i = e.nav.overrides?.[t];
5563
+ let r = $s[t], i = e.nav.overrides?.[t];
5495
5564
  return {
5496
5565
  key: `${n}/${t}`,
5497
5566
  title: i?.title ?? r.title,
@@ -5503,10 +5572,10 @@ function Qs(e, t, n) {
5503
5572
  items: r
5504
5573
  };
5505
5574
  }
5506
- function $s(e, t) {
5575
+ function rc(e, t) {
5507
5576
  let n = {};
5508
5577
  for (let r of e) {
5509
- let e = Ys[r], i = `${t}/${r}`;
5578
+ let e = $s[r], i = `${t}/${r}`;
5510
5579
  n[i] = {
5511
5580
  path: `${t}/${r}`,
5512
5581
  label: e.title
@@ -5516,7 +5585,7 @@ function $s(e, t) {
5516
5585
  }
5517
5586
  //#endregion
5518
5587
  //#region src/build-observability-base-url.ts
5519
- function ec(e, t, n) {
5588
+ function ic(e, t, n) {
5520
5589
  let r = e;
5521
5590
  if (n?.useDevProxy) try {
5522
5591
  r = new URL(r).pathname;
@@ -5525,12 +5594,12 @@ function ec(e, t, n) {
5525
5594
  }
5526
5595
  //#endregion
5527
5596
  //#region src/data-sources/http-traces-source.ts
5528
- var tc = "/observability/traces/search";
5529
- function nc(e) {
5597
+ var ac = "/observability/traces/search";
5598
+ function oc(e) {
5530
5599
  return e / 1e6;
5531
5600
  }
5532
- function rc(e) {
5533
- let t = nc(e.durationNanos);
5601
+ function sc(e) {
5602
+ let t = oc(e.durationNanos);
5534
5603
  return {
5535
5604
  traceId: e.traceId,
5536
5605
  rootOperationName: e.rootOperationName,
@@ -5541,8 +5610,8 @@ function rc(e) {
5541
5610
  status: e.status
5542
5611
  };
5543
5612
  }
5544
- function ic(e) {
5545
- let t = e.startTimeEpochMs, n = nc(e.durationNanos);
5613
+ function cc(e) {
5614
+ let t = e.startTimeEpochMs, n = oc(e.durationNanos);
5546
5615
  return {
5547
5616
  traceId: e.traceId,
5548
5617
  spanId: e.spanId,
@@ -5559,21 +5628,21 @@ function ic(e) {
5559
5628
  payloadLogs: e.payloadLogs
5560
5629
  };
5561
5630
  }
5562
- function ac(e) {
5631
+ function lc(e) {
5563
5632
  return {
5564
- ...rc(e),
5565
- spans: e.spans.map(ic)
5633
+ ...sc(e),
5634
+ spans: e.spans.map(cc)
5566
5635
  };
5567
5636
  }
5568
- function oc(e) {
5637
+ function uc(e) {
5569
5638
  return e.endsWith("/search") ? e.slice(0, -7) : e;
5570
5639
  }
5571
- function sc(e, t) {
5572
- let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials, i = t?.searchPath ?? tc, a = oc(i);
5640
+ function dc(e, t) {
5641
+ let n = t?.fetch ?? globalThis.fetch.bind(globalThis), r = t?.credentials, i = t?.searchPath ?? ac, a = uc(i);
5573
5642
  function o(e) {
5574
5643
  let n = {
5575
5644
  method: e,
5576
- headers: hs(e === "GET" ? void 0 : { "Content-Type": "application/json" }, ms(t?.headers))
5645
+ headers: ys(e === "GET" ? void 0 : { "Content-Type": "application/json" }, vs(t?.headers))
5577
5646
  };
5578
5647
  return r && (n.credentials = r), n;
5579
5648
  }
@@ -5591,7 +5660,7 @@ function sc(e, t) {
5591
5660
  }
5592
5661
  return {
5593
5662
  async fetchTraces(e) {
5594
- let t = ei(e.timeRange), r = ps(e.filters), a = {
5663
+ let t = ii(e.timeRange), r = _s(e.filters), a = {
5595
5664
  apiId: e.apiId,
5596
5665
  timeRange: c(t)
5597
5666
  };
@@ -5602,7 +5671,7 @@ function sc(e, t) {
5602
5671
  if (!u.ok) throw Error(`[gamma-lib-observability] HTTP ${u.status} on POST ${i}`);
5603
5672
  let d = await u.json();
5604
5673
  return {
5605
- entries: (d.data ?? []).map(rc),
5674
+ entries: (d.data ?? []).map(sc),
5606
5675
  totalCount: d.pagination?.totalCount,
5607
5676
  page: d.pagination?.page,
5608
5677
  pageCount: d.pagination?.pageCount
@@ -5613,9 +5682,9 @@ function sc(e, t) {
5613
5682
  t.signal && (i.signal = t.signal);
5614
5683
  let s = await n(r, i);
5615
5684
  if (!s.ok) throw Error(`[gamma-lib-observability] HTTP ${s.status} on GET ${a}/${t.traceId}`);
5616
- return ac(await s.json());
5685
+ return lc(await s.json());
5617
5686
  }
5618
5687
  };
5619
5688
  }
5620
5689
  //#endregion
5621
- export { gi as BarPresentation, On as CODEC_VERSION, l as CapabilityProvider, ji as CartesianPresentation, un as ContextFiltersProvider, ki as DASHBOARD_BUCKET_TARGET, e as DEFAULT_CAPABILITIES, Jt as DEFAULT_MEASURE, xn as DEFAULT_PERIOD, Yt as DEFAULT_REFRESH_INTERVAL_MS, W as DEFAULT_STALE_TIME, kn as DEFAULT_TIME_RANGE, i as DashboardPersistenceProvider, va as DashboardTemplatesProvider, ua as DashboardView, Fi as DoughnutPresentation, _ as FILTER_OPERATORS, Jr as FilterBar, zr as FilterChip, jr as FilterPopoverForm, h as FilterProvidersProvider, vi as HTTP_STATUS_PALETTE, an as HttpProvider, Sa as LiveIndicator, Zt as LiveRefreshProvider, X as LogDetailCodeBlock, Vo as LogDetailContextChart, is as LogDetailDrawer, Ko as LogDetailDrawerShell, Z as LogDetailEmptyField, Xo as LogDetailHeader, Q as LogDetailHeadersTable, uo as LogDetailJsonTree, $ as LogDetailKeyValueGrid, Zo as LogDetailMetrics, os as LogDetailPage, es as LogDetailSection, $o as LogDetailSections, Ea as LogSeverityBadge, Ra as LogTable, c as LogsDataSourceProvider, to as LogsExplorerPage, Ki as MetricGroupPresentation, Zi as MetricPresentation, d as MetricsDataSourceProvider, Tn as PERIOD_DISPLAY_LABELS, wn as PERIOD_LABELS, Sn as PRESET_CATEGORIES, Cn as RELATIVE_PERIODS, Un as TimeRangePicker, s as TracesDataSourceProvider, pa as WidgetGroup, oa as WidgetItem, oo as buildApiTypeLink, Fr as buildChipLabel, Ir as buildChipLabelParts, Lr as buildChipTooltip, so as buildDefaultConnectionLogColumns, Io as buildDefaultLogDetailConfig, no as buildLogsDeepLink, ec as buildObservabilityBaseUrl, na as clearWidgetRenderers, Ai as computeBucketInterval, Gi as computePreviousTimeRange, zi as computeTrend, ho as connectionLogPreset, Ds as createHttpDataSource, As as createHttpFilterSource, Ns as createHttpLogsSource, sc as createHttpTracesSource, Pn as decodeObservabilityState, ma as defineDashboardTemplate, Qn as defineFilterProvider, No as defineLogDetail, Xs as defineObservabilityFeatures, Nn as encodeObservabilityState, Li as extractMeasureValue, Bi as extractSparklineData, ai as facetsToBar, ii as facetsToDoughnut, Wn as getLocaleWeekStart, ta as getWidgetRenderer, Gt as isBarWidget, Ut as isCartesianWidget, Wt as isDoughnutWidget, qt as isMetricGroupWidget, Kt as isMetricWidget, Cr as isMultiSelectForFilter, za as mapAnalyticsFilters, Ri as measureResultToMetric, q as mergeFilters, Ci as mergeTimeSeriesToCartesian, xo as messageLogPreset, wr as normalizeMembershipOperatorForValues, K as observabilityQueryKeys, br as operatorLabel, xr as operatorNeedsValue, ia as registerDefaultRenderers, ea as registerWidgetRenderer, ha as resolveDashboardFromTemplate, bi as resolveGroupColor, Po as resolveLogDetailVariant, U as resolveMeasure, Fo as resolvePreset, Zn as resolveRelativePeriod, ei as resolveStableTimeRange, o as useCapabilities, a as useCapability, J as useContextFilters, f as useDashboardPersistence, ba as useDashboardTemplate, ya as useDashboardTemplates, fn as useFacetsQuery, u as useFilterProvider, p as useFilterProviders, on as useHttpOptions, Qt as useLiveRefresh, Uo as useLogDetailDrawerExpand, pn as useLogDetailQuery, g as useLogsDataSource, _n as useLogsPagedQuery, mn as useLogsQuery, vn as useMeasuresQuery, oi as useMergedWidgetFilters, m as useMetricsDataSource, $t as useOptionalLiveRefresh, r as useOptionalLogsDataSource, n as useOptionalMetricsDataSource, Y as useStableTimeRange, bn as useTimeSeriesQuery, t as useTracesDataSource, Qr as useWidgetGroupContext, Eo as webhookLogPreset };
5690
+ export { bi as BarPresentation, Mn as CODEC_VERSION, l as CapabilityProvider, Fi as CartesianPresentation, un as ContextFiltersProvider, Ni as DASHBOARD_BUCKET_TARGET, e as DEFAULT_CAPABILITIES, Jt as DEFAULT_MEASURE, Tn as DEFAULT_PERIOD, Yt as DEFAULT_REFRESH_INTERVAL_MS, W as DEFAULT_STALE_TIME, Nn as DEFAULT_TIME_RANGE, i as DashboardPersistenceProvider, Sa as DashboardTemplatesProvider, ma as DashboardView, zi as DoughnutPresentation, _ as FILTER_OPERATORS, Qr as FilterBar, Ur as FilterChip, Fr as FilterPopoverForm, h as FilterProvidersProvider, Si as HTTP_STATUS_PALETTE, an as HttpProvider, Ea as LiveIndicator, Zt as LiveRefreshProvider, X as LogDetailCodeBlock, Go as LogDetailContextChart, cs as LogDetailDrawer, Xo as LogDetailDrawerShell, Z as LogDetailEmptyField, es as LogDetailHeader, Q as LogDetailHeadersTable, ho as LogDetailJsonTree, $ as LogDetailKeyValueGrid, ts as LogDetailMetrics, us as LogDetailPage, is as LogDetailSection, rs as LogDetailSections, Aa as LogSeverityBadge, Ha as LogTable, c as LogsDataSourceProvider, ao as LogsExplorerPage, Xi as MetricGroupPresentation, ta as MetricPresentation, d as MetricsDataSourceProvider, kn as PERIOD_DISPLAY_LABELS, On as PERIOD_LABELS, En as PRESET_CATEGORIES, Dn as RELATIVE_PERIODS, qn as TimeRangePicker, s as TracesDataSourceProvider, _a as WidgetGroup, ua as WidgetItem, uo as buildApiTypeLink, zr as buildChipLabel, Br as buildChipLabelParts, Vr as buildChipTooltip, fo as buildDefaultConnectionLogColumns, Bo as buildDefaultLogDetailConfig, oo as buildLogsDeepLink, ic as buildObservabilityBaseUrl, oa as clearWidgetRenderers, Pi as computeBucketInterval, Yi as computePreviousTimeRange, Ui as computeTrend, yo as connectionLogPreset, js as createHttpDataSource, Ps as createHttpFilterSource, Ls as createHttpLogsSource, dc as createHttpTracesSource, Rn as decodeObservabilityState, va as defineDashboardTemplate, nr as defineFilterProvider, Lo as defineLogDetail, ec as defineObservabilityFeatures, Ln as encodeObservabilityState, Vi as extractMeasureValue, Wi as extractSparklineData, li as facetsToBar, ci as facetsToDoughnut, Jn as getLocaleWeekStart, aa as getWidgetRenderer, Gt as isBarWidget, Ut as isCartesianWidget, Wt as isDoughnutWidget, qt as isMetricGroupWidget, Kt as isMetricWidget, Dr as isMultiSelectForFilter, Ua as mapAnalyticsFilters, Hi as measureResultToMetric, q as mergeFilters, Di as mergeTimeSeriesToCartesian, To as messageLogPreset, Or as normalizeMembershipOperatorForValues, K as observabilityQueryKeys, wr as operatorLabel, Tr as operatorNeedsValue, ca as registerDefaultRenderers, ia as registerWidgetRenderer, ya as resolveDashboardFromTemplate, wi as resolveGroupColor, Ro as resolveLogDetailVariant, U as resolveMeasure, zo as resolvePreset, tr as resolveRelativePeriod, ii as resolveStableTimeRange, o as useCapabilities, a as useCapability, J as useContextFilters, f as useDashboardPersistence, wa as useDashboardTemplate, Ca as useDashboardTemplates, fn as useFacetsQuery, u as useFilterProvider, p as useFilterProviders, on as useHttpOptions, Qt as useLiveRefresh, qo as useLogDetailDrawerExpand, pn as useLogDetailQuery, g as useLogsDataSource, _n as useLogsPagedQuery, mn as useLogsQuery, vn as useMeasuresQuery, ui as useMergedWidgetFilters, m as useMetricsDataSource, $t as useOptionalLiveRefresh, r as useOptionalLogsDataSource, n as useOptionalMetricsDataSource, Y as useStableTimeRange, bn as useTimeSeriesQuery, xn as useTraceDetailQuery, t as useTracesDataSource, wn as useTracesPagedQuery, ni as useWidgetGroupContext, Ao as webhookLogPreset };