@evercam/ui 0.0.54 → 0.0.55-beta.10

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.mjs CHANGED
@@ -1,8 +1,8 @@
1
- import He from "vue";
2
- import * as w from "d3";
3
- import Ve from "moment-timezone";
4
- var Y = /* @__PURE__ */ ((s) => (s.dot = "dot", s.xs = "xs", s.sm = "sm", s.md = "base", s.base = "base", s.lg = "lg", s.xl = "xl", s["2xl"] = "2xl", s["3xl"] = "3xl", s["4xl"] = "4xl", s["5xl"] = "5xl", s["6xl"] = "6xl", s["7xl"] = "7xl", s["8xl"] = "8xl", s["9xl"] = "9xl", s))(Y || {}), ge = /* @__PURE__ */ ((s) => (s.warning = "warning", s.error = "error", s.info = "info", s.success = "success", s.primary = "primary", s.brand = "brand", s.default = "default", s))(ge || {}), kt = /* @__PURE__ */ ((s) => (s.overview = "overview", s.detailed = "detailed", s.detailedBackground = "detailedBackground", s))(kt || {}), qe = /* @__PURE__ */ ((s) => (s.bars = "bars", s.lineGraph = "lineGraph", s.barChart = "barGraph", s.milestones = "milestones", s))(qe || {}), Pt = /* @__PURE__ */ ((s) => (s.zoom = "zoom", s.autoPan = "autoPan", s.initial = "initial", s))(Pt || {});
5
- const ma = He.extend({
1
+ import Ve from "vue";
2
+ import * as I from "d3";
3
+ import Ke from "moment-timezone";
4
+ var Y = /* @__PURE__ */ ((s) => (s.dot = "dot", s.xs = "xs", s.sm = "sm", s.md = "base", s.base = "base", s.lg = "lg", s.xl = "xl", s["2xl"] = "2xl", s["3xl"] = "3xl", s["4xl"] = "4xl", s["5xl"] = "5xl", s["6xl"] = "6xl", s["7xl"] = "7xl", s["8xl"] = "8xl", s["9xl"] = "9xl", s))(Y || {}), ge = /* @__PURE__ */ ((s) => (s.warning = "warning", s.error = "error", s.info = "info", s.success = "success", s.primary = "primary", s.brand = "brand", s.default = "default", s))(ge || {}), kt = /* @__PURE__ */ ((s) => (s.overview = "overview", s.detailed = "detailed", s.detailedBackground = "detailedBackground", s))(kt || {}), Ae = /* @__PURE__ */ ((s) => (s.bars = "bars", s.dots = "dots", s.lineGraph = "lineGraph", s.barChart = "barGraph", s.milestones = "milestones", s))(Ae || {}), Pt = /* @__PURE__ */ ((s) => (s.zoom = "zoom", s.autoPan = "autoPan", s.initial = "initial", s))(Pt || {});
5
+ const ma = Ve.extend({
6
6
  name: "EBadge",
7
7
  props: {
8
8
  text: {
@@ -94,7 +94,7 @@ var ga = function() {
94
94
  null,
95
95
  null
96
96
  );
97
- const Mr = ya.exports, va = He.extend({
97
+ const Mr = ya.exports, va = Ve.extend({
98
98
  name: "EAvatar",
99
99
  components: {
100
100
  Badge: Mr
@@ -2112,10 +2112,10 @@ var Ji = {}, Zr = {}, ei = {};
2112
2112
  value: !0
2113
2113
  });
2114
2114
  function e(F, V) {
2115
- for (var G in V)
2116
- Object.defineProperty(F, G, {
2115
+ for (var H in V)
2116
+ Object.defineProperty(F, H, {
2117
2117
  enumerable: !0,
2118
- get: V[G]
2118
+ get: V[H]
2119
2119
  });
2120
2120
  }
2121
2121
  e(s, {
@@ -2177,12 +2177,12 @@ var Ji = {}, Zr = {}, ei = {};
2177
2177
  }
2178
2178
  const o = "--tw-placeholder", l = new RegExp(o, "g");
2179
2179
  function c(F, V = !0) {
2180
- return F.startsWith("--") ? `var(${F})` : F.includes("url(") ? F.split(/(url\(.*?\))/g).filter(Boolean).map((G) => /^url\(.*?\)$/.test(G) ? G : c(G, !1)).join("") : (F = F.replace(/([^\\])_+/g, (G, M) => M + " ".repeat(G.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_"), V && (F = F.trim()), F = u(F), F);
2180
+ return F.startsWith("--") ? `var(${F})` : F.includes("url(") ? F.split(/(url\(.*?\))/g).filter(Boolean).map((H) => /^url\(.*?\)$/.test(H) ? H : c(H, !1)).join("") : (F = F.replace(/([^\\])_+/g, (H, M) => M + " ".repeat(H.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_"), V && (F = F.trim()), F = u(F), F);
2181
2181
  }
2182
2182
  function u(F) {
2183
2183
  return F.replace(/(calc|min|max|clamp)\(.+\)/g, (V) => {
2184
- let G = [];
2185
- return V.replace(/var\((--.+?)[,)]/g, (M, Q) => (G.push(Q), M.replace(Q, o))).replace(/(-?\d*\.?\d(?!\b-\d.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ").replace(l, () => G.shift());
2184
+ let H = [];
2185
+ return V.replace(/var\((--.+?)[,)]/g, (M, Q) => (H.push(Q), M.replace(Q, o))).replace(/(-?\d*\.?\d(?!\b-\d.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ").replace(l, () => H.shift());
2186
2186
  });
2187
2187
  }
2188
2188
  function h(F) {
@@ -2240,8 +2240,8 @@ var Ji = {}, Zr = {}, ei = {};
2240
2240
  }
2241
2241
  function x(F) {
2242
2242
  let V = (0, i.parseBoxShadowValue)(c(F));
2243
- for (let G of V)
2244
- if (!G.valid)
2243
+ for (let H of V)
2244
+ if (!H.valid)
2245
2245
  return !1;
2246
2246
  return !0;
2247
2247
  }
@@ -2308,7 +2308,7 @@ var Ji = {}, Zr = {}, ei = {};
2308
2308
  function P(F) {
2309
2309
  return D.has(F);
2310
2310
  }
2311
- let I = /* @__PURE__ */ new Set([
2311
+ let w = /* @__PURE__ */ new Set([
2312
2312
  "xx-small",
2313
2313
  "x-small",
2314
2314
  "small",
@@ -2319,7 +2319,7 @@ var Ji = {}, Zr = {}, ei = {};
2319
2319
  "xxx-large"
2320
2320
  ]);
2321
2321
  function $(F) {
2322
- return I.has(F);
2322
+ return w.has(F);
2323
2323
  }
2324
2324
  let O = /* @__PURE__ */ new Set([
2325
2325
  "larger",
@@ -2411,14 +2411,14 @@ var Qr = {};
2411
2411
  if (P !== void 0)
2412
2412
  return (0, n.default)(P);
2413
2413
  if (f(C)) {
2414
- let I = u(C, D);
2415
- return I === void 0 ? void 0 : (0, n.default)(I);
2414
+ let w = u(C, D);
2415
+ return w === void 0 ? void 0 : (0, n.default)(w);
2416
2416
  }
2417
2417
  }
2418
2418
  function d(C, b = {}, { validate: D = () => !0 } = {}) {
2419
2419
  var P;
2420
- let I = (P = b.values) === null || P === void 0 ? void 0 : P[C];
2421
- return I !== void 0 ? I : b.supportsNegativeValues && C.startsWith("-") ? h(C.slice(1), b.values, D) : u(C, D);
2420
+ let w = (P = b.values) === null || P === void 0 ? void 0 : P[C];
2421
+ return w !== void 0 ? w : b.supportsNegativeValues && C.startsWith("-") ? h(C.slice(1), b.values, D) : u(C, D);
2422
2422
  }
2423
2423
  function f(C) {
2424
2424
  return C.startsWith("[") && C.endsWith("]");
@@ -2449,13 +2449,13 @@ var Qr = {};
2449
2449
  function v(C, b = {}, { tailwindConfig: D = {} } = {}) {
2450
2450
  var P;
2451
2451
  if (((P = b.values) === null || P === void 0 ? void 0 : P[C]) !== void 0) {
2452
- var I;
2453
- return g((I = b.values) === null || I === void 0 ? void 0 : I[C]);
2452
+ var w;
2453
+ return g((w = b.values) === null || w === void 0 ? void 0 : w[C]);
2454
2454
  }
2455
2455
  let [$, O] = m(C);
2456
2456
  if (O !== void 0) {
2457
- var U, F, V, G;
2458
- let M = (G = (U = b.values) === null || U === void 0 ? void 0 : U[$]) !== null && G !== void 0 ? G : f($) ? $.slice(1, -1) : void 0;
2457
+ var U, F, V, H;
2458
+ let M = (H = (U = b.values) === null || U === void 0 ? void 0 : U[$]) !== null && H !== void 0 ? H : f($) ? $.slice(1, -1) : void 0;
2459
2459
  return M === void 0 ? void 0 : (M = g(M), f(O) ? (0, i.withAlphaValue)(M, y(O)) : ((F = D.theme) === null || F === void 0 || (V = F.opacity) === null || V === void 0 ? void 0 : V[O]) === void 0 ? void 0 : (0, i.withAlphaValue)(M, D.theme.opacity[O]));
2460
2460
  }
2461
2461
  return d(C, b, {
@@ -2525,25 +2525,25 @@ var Qr = {};
2525
2525
  null
2526
2526
  ];
2527
2527
  }
2528
- let I = B(C, b, D, P);
2529
- for (let $ of I)
2528
+ let w = B(C, b, D, P);
2529
+ for (let $ of w)
2530
2530
  return $;
2531
2531
  return [];
2532
2532
  }
2533
2533
  function* B(C, b, D, P) {
2534
- let I = (0, o.flagEnabled)(P, "generalizedModifiers"), [$, O] = m(b);
2535
- if (I && D.modifiers != null && (D.modifiers === "any" || typeof D.modifiers == "object" && (O && f(O) || O in D.modifiers)) || ($ = b, O = void 0), O !== void 0 && $ === "" && ($ = "DEFAULT"), O !== void 0 && typeof D.modifiers == "object") {
2534
+ let w = (0, o.flagEnabled)(P, "generalizedModifiers"), [$, O] = m(b);
2535
+ if (w && D.modifiers != null && (D.modifiers === "any" || typeof D.modifiers == "object" && (O && f(O) || O in D.modifiers)) || ($ = b, O = void 0), O !== void 0 && $ === "" && ($ = "DEFAULT"), O !== void 0 && typeof D.modifiers == "object") {
2536
2536
  var F, V;
2537
- let G = (V = (F = D.modifiers) === null || F === void 0 ? void 0 : F[O]) !== null && V !== void 0 ? V : null;
2538
- G !== null ? O = G : f(O) && (O = y(O));
2537
+ let H = (V = (F = D.modifiers) === null || F === void 0 ? void 0 : F[O]) !== null && V !== void 0 ? V : null;
2538
+ H !== null ? O = H : f(O) && (O = y(O));
2539
2539
  }
2540
- for (let { type: G } of C != null ? C : []) {
2541
- let M = L[G]($, D, {
2540
+ for (let { type: H } of C != null ? C : []) {
2541
+ let M = L[H]($, D, {
2542
2542
  tailwindConfig: P
2543
2543
  });
2544
2544
  M !== void 0 && (yield [
2545
2545
  M,
2546
- G,
2546
+ H,
2547
2547
  O != null ? O : null
2548
2548
  ]);
2549
2549
  }
@@ -2581,9 +2581,9 @@ var Jr = {};
2581
2581
  function m(P) {
2582
2582
  return typeof P == "function";
2583
2583
  }
2584
- function g(P, ...I) {
2585
- let $ = I.pop();
2586
- for (let O of I)
2584
+ function g(P, ...w) {
2585
+ let $ = w.pop();
2586
+ for (let O of w)
2587
2587
  for (let U in O) {
2588
2588
  let F = $(P[U], O[U]);
2589
2589
  F === void 0 ? (0, l.default)(P[U]) && (0, l.default)(O[U]) ? P[U] = g({}, P[U], O[U], $) : P[U] = O[U] : P[U] = F;
@@ -2593,23 +2593,23 @@ var Jr = {};
2593
2593
  const y = {
2594
2594
  colors: r.default,
2595
2595
  negative(P) {
2596
- return Object.keys(P).filter((I) => P[I] !== "0").reduce((I, $) => {
2596
+ return Object.keys(P).filter((w) => P[w] !== "0").reduce((w, $) => {
2597
2597
  let O = (0, e.default)(P[$]);
2598
- return O !== void 0 && (I[`-${$}`] = O), I;
2598
+ return O !== void 0 && (w[`-${$}`] = O), w;
2599
2599
  }, {});
2600
2600
  },
2601
2601
  breakpoints(P) {
2602
- return Object.keys(P).filter((I) => typeof P[I] == "string").reduce((I, $) => ({
2603
- ...I,
2602
+ return Object.keys(P).filter((w) => typeof P[w] == "string").reduce((w, $) => ({
2603
+ ...w,
2604
2604
  [`screen-${$}`]: P[$]
2605
2605
  }), {});
2606
2606
  }
2607
2607
  };
2608
- function v(P, ...I) {
2609
- return m(P) ? P(...I) : P;
2608
+ function v(P, ...w) {
2609
+ return m(P) ? P(...w) : P;
2610
2610
  }
2611
2611
  function T(P) {
2612
- return P.reduce((I, { extend: $ }) => g(I, $, (O, U) => O === void 0 ? [
2612
+ return P.reduce((w, { extend: $ }) => g(w, $, (O, U) => O === void 0 ? [
2613
2613
  U
2614
2614
  ] : Array.isArray(O) ? [
2615
2615
  U,
@@ -2621,32 +2621,32 @@ var Jr = {};
2621
2621
  }
2622
2622
  function x(P) {
2623
2623
  return {
2624
- ...P.reduce((I, $) => (0, n.defaults)(I, $), {}),
2624
+ ...P.reduce((w, $) => (0, n.defaults)(w, $), {}),
2625
2625
  // In order to resolve n config objects, we combine all of their `extend` properties
2626
2626
  // into arrays instead of objects so they aren't overridden.
2627
2627
  extend: T(P)
2628
2628
  };
2629
2629
  }
2630
- function L(P, I) {
2630
+ function L(P, w) {
2631
2631
  if (Array.isArray(P) && (0, l.default)(P[0]))
2632
- return P.concat(I);
2633
- if (Array.isArray(I) && (0, l.default)(I[0]) && (0, l.default)(P))
2632
+ return P.concat(w);
2633
+ if (Array.isArray(w) && (0, l.default)(w[0]) && (0, l.default)(P))
2634
2634
  return [
2635
2635
  P,
2636
- ...I
2636
+ ...w
2637
2637
  ];
2638
- if (Array.isArray(I))
2639
- return I;
2638
+ if (Array.isArray(w))
2639
+ return w;
2640
2640
  }
2641
- function E({ extend: P, ...I }) {
2642
- return g(I, P, ($, O) => !m($) && !O.some(m) ? g({}, $, ...O, L) : (U, F) => g({}, ...[
2641
+ function E({ extend: P, ...w }) {
2642
+ return g(w, P, ($, O) => !m($) && !O.some(m) ? g({}, $, ...O, L) : (U, F) => g({}, ...[
2643
2643
  $,
2644
2644
  ...O
2645
2645
  ].map((V) => v(V, U, F)), L));
2646
2646
  }
2647
2647
  function* k(P) {
2648
- let I = (0, a.toPath)(P);
2649
- if (I.length === 0 || (yield I, Array.isArray(P)))
2648
+ let w = (0, a.toPath)(P);
2649
+ if (w.length === 0 || (yield w, Array.isArray(P)))
2650
2650
  return;
2651
2651
  let $ = /^(.*?)\s*\/\s*([^/]+)$/, O = P.match($);
2652
2652
  if (O !== null) {
@@ -2655,31 +2655,31 @@ var Jr = {};
2655
2655
  }
2656
2656
  }
2657
2657
  function R(P) {
2658
- const I = ($, O) => {
2658
+ const w = ($, O) => {
2659
2659
  for (const U of k($)) {
2660
2660
  let F = 0, V = P;
2661
2661
  for (; V != null && F < U.length; )
2662
- V = V[U[F++]], V = m(V) && (U.alpha === void 0 || F <= U.length - 1) ? V(I, y) : V;
2662
+ V = V[U[F++]], V = m(V) && (U.alpha === void 0 || F <= U.length - 1) ? V(w, y) : V;
2663
2663
  if (V !== void 0) {
2664
2664
  if (U.alpha !== void 0) {
2665
- let G = (0, u.parseColorFormat)(V);
2666
- return (0, h.withAlphaValue)(G, U.alpha, (0, d.default)(G));
2665
+ let H = (0, u.parseColorFormat)(V);
2666
+ return (0, h.withAlphaValue)(H, U.alpha, (0, d.default)(H));
2667
2667
  }
2668
2668
  return (0, l.default)(V) ? (0, c.cloneDeep)(V) : V;
2669
2669
  }
2670
2670
  }
2671
2671
  return O;
2672
2672
  };
2673
- return Object.assign(I, {
2674
- theme: I,
2673
+ return Object.assign(w, {
2674
+ theme: w,
2675
2675
  ...y
2676
- }), Object.keys(P).reduce(($, O) => ($[O] = m(P[O]) ? P[O](I, y) : P[O], $), {});
2676
+ }), Object.keys(P).reduce(($, O) => ($[O] = m(P[O]) ? P[O](w, y) : P[O], $), {});
2677
2677
  }
2678
2678
  function B(P) {
2679
- let I = [];
2679
+ let w = [];
2680
2680
  return P.forEach(($) => {
2681
- I = [
2682
- ...I,
2681
+ w = [
2682
+ ...w,
2683
2683
  $
2684
2684
  ];
2685
2685
  var O;
@@ -2687,14 +2687,14 @@ var Jr = {};
2687
2687
  U.length !== 0 && U.forEach((F) => {
2688
2688
  F.__isOptionsFunction && (F = F());
2689
2689
  var V;
2690
- I = [
2691
- ...I,
2690
+ w = [
2691
+ ...w,
2692
2692
  ...B([
2693
2693
  (V = F == null ? void 0 : F.config) !== null && V !== void 0 ? V : {}
2694
2694
  ])
2695
2695
  ];
2696
2696
  });
2697
- }), I;
2697
+ }), w;
2698
2698
  }
2699
2699
  function C(P) {
2700
2700
  return [
@@ -2712,7 +2712,7 @@ var Jr = {};
2712
2712
  ], []);
2713
2713
  }
2714
2714
  function D(P) {
2715
- let I = [
2715
+ let w = [
2716
2716
  ...B(P),
2717
2717
  {
2718
2718
  prefix: "",
@@ -2722,10 +2722,10 @@ var Jr = {};
2722
2722
  ];
2723
2723
  var $, O;
2724
2724
  return (0, o.normalizeConfig)((0, n.defaults)({
2725
- theme: R(E(x(I.map((U) => ($ = U == null ? void 0 : U.theme) !== null && $ !== void 0 ? $ : {})))),
2726
- corePlugins: C(I.map((U) => U.corePlugins)),
2725
+ theme: R(E(x(w.map((U) => ($ = U == null ? void 0 : U.theme) !== null && $ !== void 0 ? $ : {})))),
2726
+ corePlugins: C(w.map((U) => U.corePlugins)),
2727
2727
  plugins: b(P.map((U) => (O = U == null ? void 0 : U.plugins) !== null && O !== void 0 ? O : []))
2728
- }, ...I));
2728
+ }, ...w));
2729
2729
  }
2730
2730
  })(Br);
2731
2731
  var en = {}, Aa = {
@@ -3963,7 +3963,7 @@ const Ca = {
3963
3963
  "canplay",
3964
3964
  "canplaythrough",
3965
3965
  "statechanged"
3966
- ], Pa = He.extend({
3966
+ ], Pa = Ve.extend({
3967
3967
  name: "EIcon",
3968
3968
  props: {
3969
3969
  icon: {
@@ -4011,7 +4011,7 @@ var Oa = function() {
4011
4011
  null,
4012
4012
  null
4013
4013
  );
4014
- const Na = Ma.exports, Ba = He.extend({
4014
+ const Na = Ma.exports, Ba = Ve.extend({
4015
4015
  name: "ESpinner",
4016
4016
  props: {
4017
4017
  dark: {
@@ -4089,7 +4089,7 @@ var $a = function() {
4089
4089
  null,
4090
4090
  null
4091
4091
  );
4092
- const sn = Ga.exports, Ha = He.extend({
4092
+ const sn = Ga.exports, Ha = Ve.extend({
4093
4093
  props: {
4094
4094
  align: {
4095
4095
  type: String,
@@ -4162,7 +4162,7 @@ var Va = function() {
4162
4162
  null,
4163
4163
  null
4164
4164
  );
4165
- const za = Wa.exports, Ya = He.extend({
4165
+ const za = Wa.exports, Ya = Ve.extend({
4166
4166
  props: {
4167
4167
  alignSelf: {
4168
4168
  type: String,
@@ -5238,17 +5238,17 @@ function wo(s) {
5238
5238
  case "dvh1":
5239
5239
  case "dvhe": {
5240
5240
  const a = X(t, ["dvcC"])[0], o = a[2] >> 1 & 127, l = a[2] << 5 & 32 | a[3] >> 3 & 31;
5241
- r += "." + Ce(o) + "." + Ce(l);
5241
+ r += "." + De(o) + "." + De(l);
5242
5242
  break;
5243
5243
  }
5244
5244
  case "vp09": {
5245
5245
  const a = X(t, ["vpcC"])[0], o = a[4], l = a[5], c = a[6] >> 4 & 15;
5246
- r += "." + Ce(o) + "." + Ce(l) + "." + Ce(c);
5246
+ r += "." + De(o) + "." + De(l) + "." + De(c);
5247
5247
  break;
5248
5248
  }
5249
5249
  case "av01": {
5250
5250
  const a = X(t, ["av1C"])[0], o = a[1] >>> 5, l = a[1] & 31, c = a[2] >>> 7 ? "H" : "M", u = (a[2] & 64) >> 6, h = (a[2] & 32) >> 5, d = o === 2 && u ? h ? 12 : 10 : u ? 10 : 8, f = (a[2] & 16) >> 4, m = (a[2] & 8) >> 3, g = (a[2] & 4) >> 2, y = a[2] & 3, v = 1, T = 1, x = 1, L = 0;
5251
- r += "." + o + "." + Ce(l) + c + "." + Ce(d) + "." + f + "." + m + g + y + "." + Ce(v) + "." + Ce(T) + "." + Ce(x) + "." + L;
5251
+ r += "." + o + "." + De(l) + c + "." + De(d) + "." + f + "." + m + g + y + "." + De(v) + "." + De(T) + "." + De(x) + "." + L;
5252
5252
  break;
5253
5253
  }
5254
5254
  }
@@ -5266,7 +5266,7 @@ function ui(s, e) {
5266
5266
  function St(s) {
5267
5267
  return ("0" + s.toString(16).toUpperCase()).slice(-2);
5268
5268
  }
5269
- function Ce(s) {
5269
+ function De(s) {
5270
5270
  return (s < 10 ? "0" : "") + s;
5271
5271
  }
5272
5272
  function ko(s, e) {
@@ -5426,18 +5426,18 @@ function As(s, e) {
5426
5426
  m === n && (y && (R += 8), v && (R += 4), T && (x = z(f, R), R += 4), L && (E = z(f, R), R += 4), k && (R += 4), e.type === "video" && (a = Bo(e.codec)), X(h, ["trun"]).map((B) => {
5427
5427
  const C = B[0], b = z(B, 0) & 16777215, D = (b & 1) !== 0;
5428
5428
  let P = 0;
5429
- const I = (b & 4) !== 0, $ = (b & 256) !== 0;
5429
+ const w = (b & 4) !== 0, $ = (b & 256) !== 0;
5430
5430
  let O = 0;
5431
5431
  const U = (b & 512) !== 0;
5432
5432
  let F = 0;
5433
- const V = (b & 1024) !== 0, G = (b & 2048) !== 0;
5433
+ const V = (b & 1024) !== 0, H = (b & 2048) !== 0;
5434
5434
  let M = 0;
5435
5435
  const Q = z(B, 4);
5436
5436
  let Z = 8;
5437
- D && (P = z(B, Z), Z += 4), I && (Z += 4);
5437
+ D && (P = z(B, Z), Z += 4), w && (Z += 4);
5438
5438
  let ee = P + c;
5439
5439
  for (let ae = 0; ae < Q; ae++) {
5440
- if ($ ? (O = z(B, Z), Z += 4) : O = x, U ? (F = z(B, Z), Z += 4) : F = E, V && (Z += 4), G && (C === 0 ? M = z(B, Z) : M = mn(B, Z), Z += 4), e.type === te.VIDEO) {
5440
+ if ($ ? (O = z(B, Z), Z += 4) : O = x, U ? (F = z(B, Z), Z += 4) : F = E, V && (Z += 4), H && (C === 0 ? M = z(B, Z) : M = mn(B, Z), Z += 4), e.type === te.VIDEO) {
5441
5441
  let ce = 0;
5442
5442
  for (; ce < F; ) {
5443
5443
  const fe = z(i, ee);
@@ -6084,16 +6084,16 @@ class ke {
6084
6084
  u = o.startSN = parseInt(D);
6085
6085
  break;
6086
6086
  case "SKIP": {
6087
- const I = new ne(D);
6088
- ve(o, I, ["RECENTLY-REMOVED-DATERANGES"]);
6089
- const $ = I.decimalInteger("SKIPPED-SEGMENTS");
6087
+ const w = new ne(D);
6088
+ ve(o, w, ["RECENTLY-REMOVED-DATERANGES"]);
6089
+ const $ = w.decimalInteger("SKIPPED-SEGMENTS");
6090
6090
  if (W($)) {
6091
6091
  o.skippedSegments = $;
6092
6092
  for (let U = $; U--; )
6093
6093
  l.unshift(null);
6094
6094
  u += $;
6095
6095
  }
6096
- const O = I.enumeratedString("RECENTLY-REMOVED-DATERANGES");
6096
+ const O = w.enumeratedString("RECENTLY-REMOVED-DATERANGES");
6097
6097
  O && (o.recentlyRemovedDateranges = O.split(" "));
6098
6098
  break;
6099
6099
  }
@@ -6122,16 +6122,16 @@ class ke {
6122
6122
  g.tagList.push([b, D]);
6123
6123
  break;
6124
6124
  case "DATERANGE": {
6125
- const I = new ne(D);
6126
- ve(o, I, ["ID", "CLASS", "START-DATE", "END-DATE", "SCTE35-CMD", "SCTE35-OUT", "SCTE35-IN"]), ve(o, I, I.clientAttrs);
6127
- const $ = new nn(I, o.dateRanges[I.ID]);
6125
+ const w = new ne(D);
6126
+ ve(o, w, ["ID", "CLASS", "START-DATE", "END-DATE", "SCTE35-CMD", "SCTE35-OUT", "SCTE35-IN"]), ve(o, w, w.clientAttrs);
6127
+ const $ = new nn(w, o.dateRanges[w.ID]);
6128
6128
  $.isValid || o.skippedSegments ? o.dateRanges[$.id] = $ : S.warn(`Ignoring invalid DATERANGE tag: "${D}"`), g.tagList.push(["EXT-X-DATERANGE", D]);
6129
6129
  break;
6130
6130
  }
6131
6131
  case "DEFINE": {
6132
6132
  {
6133
- const I = new ne(D);
6134
- ve(o, I, ["NAME", "VALUE", "IMPORT", "QUERYPARAM"]), "IMPORT" in I ? Wo(o, I, a) : Rs(o, I, t);
6133
+ const w = new ne(D);
6134
+ ve(o, w, ["NAME", "VALUE", "IMPORT", "QUERYPARAM"]), "IMPORT" in w ? Wo(o, w, a) : Rs(o, w, t);
6135
6135
  }
6136
6136
  break;
6137
6137
  }
@@ -6139,13 +6139,13 @@ class ke {
6139
6139
  f = parseInt(D);
6140
6140
  break;
6141
6141
  case "KEY": {
6142
- const I = ks(D, t, o);
6143
- if (I.isSupported()) {
6144
- if (I.method === "NONE") {
6142
+ const w = ks(D, t, o);
6143
+ if (w.isSupported()) {
6144
+ if (w.method === "NONE") {
6145
6145
  T = void 0;
6146
6146
  break;
6147
6147
  }
6148
- T || (T = {}), T[I.keyFormat] && (T = oe({}, T)), T[I.keyFormat] = I;
6148
+ T || (T = {}), T[w.keyFormat] && (T = oe({}, T)), T[w.keyFormat] = w;
6149
6149
  } else
6150
6150
  S.warn(`[Keys] Ignoring invalid EXT-X-KEY tag: "${D}"`);
6151
6151
  break;
@@ -6154,10 +6154,10 @@ class ke {
6154
6154
  o.startTimeOffset = Ps(D);
6155
6155
  break;
6156
6156
  case "MAP": {
6157
- const I = new ne(D);
6158
- if (ve(o, I, ["BYTERANGE", "URI"]), g.duration) {
6157
+ const w = new ne(D);
6158
+ if (ve(o, w, ["BYTERANGE", "URI"]), g.duration) {
6159
6159
  const $ = new ai(r, t);
6160
- Ms($, I, i, T), c = $, g.initSegment = c, c.rawProgramDateTime && !g.rawProgramDateTime && (g.rawProgramDateTime = c.rawProgramDateTime);
6160
+ Ms($, w, i, T), c = $, g.initSegment = c, c.rawProgramDateTime && !g.rawProgramDateTime && (g.rawProgramDateTime = c.rawProgramDateTime);
6161
6161
  } else {
6162
6162
  const $ = g.byteRangeEndOffset;
6163
6163
  if ($) {
@@ -6165,37 +6165,37 @@ class ke {
6165
6165
  E = `${$ - O}@${O}`;
6166
6166
  } else
6167
6167
  E = null;
6168
- Ms(g, I, i, T), c = g, L = !0;
6168
+ Ms(g, w, i, T), c = g, L = !0;
6169
6169
  }
6170
6170
  break;
6171
6171
  }
6172
6172
  case "SERVER-CONTROL": {
6173
- const I = new ne(D);
6174
- o.canBlockReload = I.bool("CAN-BLOCK-RELOAD"), o.canSkipUntil = I.optionalFloat("CAN-SKIP-UNTIL", 0), o.canSkipDateRanges = o.canSkipUntil > 0 && I.bool("CAN-SKIP-DATERANGES"), o.partHoldBack = I.optionalFloat("PART-HOLD-BACK", 0), o.holdBack = I.optionalFloat("HOLD-BACK", 0);
6173
+ const w = new ne(D);
6174
+ o.canBlockReload = w.bool("CAN-BLOCK-RELOAD"), o.canSkipUntil = w.optionalFloat("CAN-SKIP-UNTIL", 0), o.canSkipDateRanges = o.canSkipUntil > 0 && w.bool("CAN-SKIP-DATERANGES"), o.partHoldBack = w.optionalFloat("PART-HOLD-BACK", 0), o.holdBack = w.optionalFloat("HOLD-BACK", 0);
6175
6175
  break;
6176
6176
  }
6177
6177
  case "PART-INF": {
6178
- const I = new ne(D);
6179
- o.partTarget = I.decimalFloatingPoint("PART-TARGET");
6178
+ const w = new ne(D);
6179
+ o.partTarget = w.decimalFloatingPoint("PART-TARGET");
6180
6180
  break;
6181
6181
  }
6182
6182
  case "PART": {
6183
- let I = o.partList;
6184
- I || (I = o.partList = []);
6185
- const $ = h > 0 ? I[I.length - 1] : void 0, O = h++, U = new ne(D);
6183
+ let w = o.partList;
6184
+ w || (w = o.partList = []);
6185
+ const $ = h > 0 ? w[w.length - 1] : void 0, O = h++, U = new ne(D);
6186
6186
  ve(o, U, ["BYTERANGE", "URI"]);
6187
6187
  const F = new uo(U, g, t, O, $);
6188
- I.push(F), g.duration += F.duration;
6188
+ w.push(F), g.duration += F.duration;
6189
6189
  break;
6190
6190
  }
6191
6191
  case "PRELOAD-HINT": {
6192
- const I = new ne(D);
6193
- ve(o, I, ["URI"]), o.preloadHint = I;
6192
+ const w = new ne(D);
6193
+ ve(o, w, ["URI"]), o.preloadHint = w;
6194
6194
  break;
6195
6195
  }
6196
6196
  case "RENDITION-REPORT": {
6197
- const I = new ne(D);
6198
- ve(o, I, ["URI"]), o.renditionReports = o.renditionReports || [], o.renditionReports.push(I);
6197
+ const w = new ne(D);
6198
+ ve(o, w, ["URI"]), o.renditionReports = o.renditionReports || [], o.renditionReports.push(w);
6199
6199
  break;
6200
6200
  }
6201
6201
  default:
@@ -6746,7 +6746,7 @@ function Ot(s) {
6746
6746
  }
6747
6747
  return e;
6748
6748
  }
6749
- var Re = {
6749
+ var Ce = {
6750
6750
  audioId3: "org.id3",
6751
6751
  dateRange: "com.apple.quicktime.HLS",
6752
6752
  emsg: "https://aomedia.org/emsg/ID3"
@@ -6846,7 +6846,7 @@ class nl {
6846
6846
  if (a)
6847
6847
  for (let o = 0; o < n.length; o++) {
6848
6848
  const l = n[o].type;
6849
- if (l === Re.emsg && !i || !r)
6849
+ if (l === Ce.emsg && !i || !r)
6850
6850
  continue;
6851
6851
  const c = hn(n[o].data);
6852
6852
  if (c) {
@@ -6892,7 +6892,7 @@ class nl {
6892
6892
  } = a;
6893
6893
  if (n && (o || l)) {
6894
6894
  let c;
6895
- r === "audio" ? c = (u) => u.type === Re.audioId3 && l : r === "video" ? c = (u) => u.type === Re.emsg && o : c = (u) => u.type === Re.audioId3 && l || u.type === Re.emsg && o, Fi(n, t, i, c);
6895
+ r === "audio" ? c = (u) => u.type === Ce.audioId3 && l : r === "video" ? c = (u) => u.type === Ce.emsg && o : c = (u) => u.type === Ce.audioId3 && l || u.type === Ce.emsg && o, Fi(n, t, i, c);
6896
6896
  }
6897
6897
  }
6898
6898
  onLevelUpdated(e, {
@@ -6951,7 +6951,7 @@ class nl {
6951
6951
  const B = $s(c, f, v, {
6952
6952
  key: E,
6953
6953
  data: R
6954
- }, Re.dateRange);
6954
+ }, Ce.dateRange);
6955
6955
  B && (B.id = h, this.id3Track.addCue(B), g[E] = B);
6956
6956
  }
6957
6957
  }
@@ -7466,7 +7466,7 @@ var me = {
7466
7466
  RemoveAlternatePermanently: 3,
7467
7467
  InsertDiscontinuity: 4,
7468
7468
  RetryRequest: 5
7469
- }, Ae = {
7469
+ }, Le = {
7470
7470
  None: 0,
7471
7471
  MoveAllAlternatesMatchingHost: 1,
7472
7472
  MoveAllAlternatesMatchingHDCP: 2,
@@ -7517,7 +7517,7 @@ class Tl {
7517
7517
  if ((i = t.frag) != null && i.gap) {
7518
7518
  t.errorAction = {
7519
7519
  action: me.DoNothing,
7520
- flags: Ae.None
7520
+ flags: Le.None
7521
7521
  };
7522
7522
  return;
7523
7523
  }
@@ -7545,7 +7545,7 @@ class Tl {
7545
7545
  if (a) {
7546
7546
  const c = n.levels[n.loadLevel];
7547
7547
  if (c && (a.type === J.AUDIO_TRACK && c.hasAudioGroup(a.groupId) || a.type === J.SUBTITLE_TRACK && c.hasSubtitleGroup(a.groupId))) {
7548
- t.errorAction = this.getPlaylistRetryOrSwitchAction(t, n.loadLevel), t.errorAction.action = me.SendAlternateToPenaltyBox, t.errorAction.flags = Ae.MoveAllAlternatesMatchingHost;
7548
+ t.errorAction = this.getPlaylistRetryOrSwitchAction(t, n.loadLevel), t.errorAction.action = me.SendAlternateToPenaltyBox, t.errorAction.flags = Le.MoveAllAlternatesMatchingHost;
7549
7549
  return;
7550
7550
  }
7551
7551
  }
@@ -7555,7 +7555,7 @@ class Tl {
7555
7555
  const c = n.levels[n.loadLevel], u = c == null ? void 0 : c.attrs["HDCP-LEVEL"];
7556
7556
  u ? t.errorAction = {
7557
7557
  action: me.SendAlternateToPenaltyBox,
7558
- flags: Ae.MoveAllAlternatesMatchingHDCP,
7558
+ flags: Le.MoveAllAlternatesMatchingHDCP,
7559
7559
  hdcpLevel: u
7560
7560
  } : this.keySystemError(t);
7561
7561
  }
@@ -7574,7 +7574,7 @@ class Tl {
7574
7574
  case _.BUFFER_NUDGE_ON_STALL:
7575
7575
  t.errorAction = {
7576
7576
  action: me.DoNothing,
7577
- flags: Ae.None
7577
+ flags: Le.None
7578
7578
  };
7579
7579
  return;
7580
7580
  }
@@ -7589,7 +7589,7 @@ class Tl {
7589
7589
  if (Yt(r, n, zt(e), e.response))
7590
7590
  return {
7591
7591
  action: me.RetryRequest,
7592
- flags: Ae.None,
7592
+ flags: Le.None,
7593
7593
  retryConfig: r,
7594
7594
  retryCount: n
7595
7595
  };
@@ -7604,7 +7604,7 @@ class Tl {
7604
7604
  if (r && (e.details !== _.FRAG_GAP && r.fragmentError++, Yt(o, l, zt(e), e.response)))
7605
7605
  return {
7606
7606
  action: me.RetryRequest,
7607
- flags: Ae.None,
7607
+ flags: Le.None,
7608
7608
  retryConfig: o,
7609
7609
  retryCount: l
7610
7610
  };
@@ -7661,13 +7661,13 @@ class Tl {
7661
7661
  if (u > -1 && i.loadLevel !== u)
7662
7662
  return e.levelRetry = !0, this.playlistError = 0, {
7663
7663
  action: me.SendAlternateToPenaltyBox,
7664
- flags: Ae.None,
7664
+ flags: Le.None,
7665
7665
  nextAutoLevel: u
7666
7666
  };
7667
7667
  }
7668
7668
  return {
7669
7669
  action: me.SendAlternateToPenaltyBox,
7670
- flags: Ae.MoveAllAlternatesMatchingHost
7670
+ flags: Le.MoveAllAlternatesMatchingHost
7671
7671
  };
7672
7672
  }
7673
7673
  onErrorOut(e, t) {
@@ -7694,10 +7694,10 @@ class Tl {
7694
7694
  nextAutoLevel: a
7695
7695
  } = i;
7696
7696
  switch (r) {
7697
- case Ae.None:
7697
+ case Le.None:
7698
7698
  this.switchLevel(e, a);
7699
7699
  break;
7700
- case Ae.MoveAllAlternatesMatchingHDCP:
7700
+ case Le.MoveAllAlternatesMatchingHDCP:
7701
7701
  n && (t.maxHdcpLevel = Ni[Ni.indexOf(n) - 1], i.resolved = !0), this.warn(`Restricting playback to HDCP-LEVEL of "${t.maxHdcpLevel}" or lower`);
7702
7702
  break;
7703
7703
  }
@@ -8177,8 +8177,8 @@ class kl {
8177
8177
  const C = R ? R * 8 : T;
8178
8178
  let b = Number.POSITIVE_INFINITY, D;
8179
8179
  for (D = t.level - 1; D > h; D--) {
8180
- const I = x[D].maxBitrate;
8181
- if (b = this.getTimeToLoadFrag(f / 1e3, C, c * I, !x[D].details), b < g)
8180
+ const w = x[D].maxBitrate;
8181
+ if (b = this.getTimeToLoadFrag(f / 1e3, C, c * w, !x[D].details), b < g)
8182
8182
  break;
8183
8183
  }
8184
8184
  if (b >= B || b > c * 10)
@@ -8409,14 +8409,14 @@ class kl {
8409
8409
  const O = this.codecTiers || (this.codecTiers = _l(m, b, t, i)), U = Cl(O, k, e, B, C), {
8410
8410
  codecSet: F,
8411
8411
  videoRanges: V,
8412
- minFramerate: G,
8412
+ minFramerate: H,
8413
8413
  minBitrate: M,
8414
8414
  preferHDR: Q
8415
8415
  } = U;
8416
- E = F, k = Q ? V[V.length - 1] : V[0], R = G, e = Math.max(e, M), S.log(`[abr] picked start tier ${JSON.stringify(U)}`);
8416
+ E = F, k = Q ? V[V.length - 1] : V[0], R = H, e = Math.max(e, M), S.log(`[abr] picked start tier ${JSON.stringify(U)}`);
8417
8417
  } else
8418
8418
  E = T == null ? void 0 : T.codecSet, k = T == null ? void 0 : T.videoRange;
8419
- const D = f ? f.duration : d ? d.duration : 0, P = this.bwEstimator.getEstimateTTFB() / 1e3, I = [];
8419
+ const D = f ? f.duration : d ? d.duration : 0, P = this.bwEstimator.getEstimateTTFB() / 1e3, w = [];
8420
8420
  for (let O = i; O >= t; O--) {
8421
8421
  var $;
8422
8422
  const U = m[O], F = O > h;
@@ -8433,13 +8433,13 @@ class kl {
8433
8433
  })) : U.supportedResult = Dn;
8434
8434
  }
8435
8435
  if (E && U.codecSet !== E || k && U.videoRange !== k || F && R > U.frameRate || !F && R > 0 && R < U.frameRate || U.supportedResult && !(($ = U.supportedResult.decodingInfoResults) != null && $[0].smooth)) {
8436
- I.push(O);
8436
+ w.push(O);
8437
8437
  continue;
8438
8438
  }
8439
- const V = U.details, G = (f ? V == null ? void 0 : V.partTarget : V == null ? void 0 : V.averagetargetduration) || D;
8439
+ const V = U.details, H = (f ? V == null ? void 0 : V.partTarget : V == null ? void 0 : V.averagetargetduration) || D;
8440
8440
  let M;
8441
8441
  F ? M = o * e : M = a * e;
8442
- const Q = D && r >= D * 2 && n === 0 ? m[O].averageBitrate : m[O].maxBitrate, Z = this.getTimeToLoadFrag(P, M, Q * G, V === void 0);
8442
+ const Q = D && r >= D * 2 && n === 0 ? m[O].averageBitrate : m[O].maxBitrate, Z = this.getTimeToLoadFrag(P, M, Q * H, V === void 0);
8443
8443
  if (
8444
8444
  // if adjusted bw is greater than level bitrate AND
8445
8445
  M >= Q && // no level change, or new level has no error history
@@ -8449,7 +8449,7 @@ class kl {
8449
8449
  (Z <= P || !W(Z) || x && !this.bitrateTestDelay || Z < c)
8450
8450
  ) {
8451
8451
  const ae = this.forcedAutoLevel;
8452
- return O !== y && (ae === -1 || ae !== y) && (I.length && S.trace(`[abr] Skipped level(s) ${I.join(",")} of ${i} max with CODECS and VIDEO-RANGE:"${m[I[0]].codecs}" ${m[I[0]].videoRange}; not compatible with "${T.codecs}" ${k}`), S.info(`[abr] switch candidate:${h}->${O} adjustedbw(${Math.round(M)})-bitrate=${Math.round(M - Q)} ttfb:${P.toFixed(1)} avgDuration:${G.toFixed(1)} maxFetchDuration:${c.toFixed(1)} fetchDuration:${Z.toFixed(1)} firstSelection:${L} codecSet:${E} videoRange:${k} hls.loadLevel:${y}`)), L && (this.firstSelection = O), O;
8452
+ return O !== y && (ae === -1 || ae !== y) && (w.length && S.trace(`[abr] Skipped level(s) ${w.join(",")} of ${i} max with CODECS and VIDEO-RANGE:"${m[w[0]].codecs}" ${m[w[0]].videoRange}; not compatible with "${T.codecs}" ${k}`), S.info(`[abr] switch candidate:${h}->${O} adjustedbw(${Math.round(M)})-bitrate=${Math.round(M - Q)} ttfb:${P.toFixed(1)} avgDuration:${H.toFixed(1)} maxFetchDuration:${c.toFixed(1)} fetchDuration:${Z.toFixed(1)} firstSelection:${L} codecSet:${E} videoRange:${k} hls.loadLevel:${y}`)), L && (this.firstSelection = O), O;
8453
8453
  }
8454
8454
  }
8455
8455
  return -1;
@@ -8951,7 +8951,7 @@ class Ul {
8951
8951
  load(e, t) {
8952
8952
  const i = e.url;
8953
8953
  if (!i)
8954
- return Promise.reject(new Ue({
8954
+ return Promise.reject(new Ge({
8955
8955
  type: q.NETWORK_ERROR,
8956
8956
  details: _.FRAG_LOAD_ERROR,
8957
8957
  fatal: !1,
@@ -8988,7 +8988,7 @@ class Ul {
8988
8988
  });
8989
8989
  },
8990
8990
  onError: (f, m, g, y) => {
8991
- this.resetLoader(e, c), l(new Ue({
8991
+ this.resetLoader(e, c), l(new Ge({
8992
8992
  type: q.NETWORK_ERROR,
8993
8993
  details: _.FRAG_LOAD_ERROR,
8994
8994
  fatal: !1,
@@ -9003,7 +9003,7 @@ class Ul {
9003
9003
  }));
9004
9004
  },
9005
9005
  onAbort: (f, m, g) => {
9006
- this.resetLoader(e, c), l(new Ue({
9006
+ this.resetLoader(e, c), l(new Ge({
9007
9007
  type: q.NETWORK_ERROR,
9008
9008
  details: _.INTERNAL_ABORTED,
9009
9009
  fatal: !1,
@@ -9014,7 +9014,7 @@ class Ul {
9014
9014
  }));
9015
9015
  },
9016
9016
  onTimeout: (f, m, g) => {
9017
- this.resetLoader(e, c), l(new Ue({
9017
+ this.resetLoader(e, c), l(new Ge({
9018
9018
  type: q.NETWORK_ERROR,
9019
9019
  details: _.FRAG_LOAD_TIMEOUT,
9020
9020
  fatal: !1,
@@ -9063,7 +9063,7 @@ class Ul {
9063
9063
  i(v), o(v);
9064
9064
  },
9065
9065
  onError: (f, m, g, y) => {
9066
- this.resetLoader(e, c), l(new Ue({
9066
+ this.resetLoader(e, c), l(new Ge({
9067
9067
  type: q.NETWORK_ERROR,
9068
9068
  details: _.FRAG_LOAD_ERROR,
9069
9069
  fatal: !1,
@@ -9079,7 +9079,7 @@ class Ul {
9079
9079
  }));
9080
9080
  },
9081
9081
  onAbort: (f, m, g) => {
9082
- e.stats.aborted = t.stats.aborted, this.resetLoader(e, c), l(new Ue({
9082
+ e.stats.aborted = t.stats.aborted, this.resetLoader(e, c), l(new Ge({
9083
9083
  type: q.NETWORK_ERROR,
9084
9084
  details: _.INTERNAL_ABORTED,
9085
9085
  fatal: !1,
@@ -9091,7 +9091,7 @@ class Ul {
9091
9091
  }));
9092
9092
  },
9093
9093
  onTimeout: (f, m, g) => {
9094
- this.resetLoader(e, c), l(new Ue({
9094
+ this.resetLoader(e, c), l(new Ge({
9095
9095
  type: q.NETWORK_ERROR,
9096
9096
  details: _.FRAG_LOAD_TIMEOUT,
9097
9097
  fatal: !1,
@@ -9149,9 +9149,9 @@ function Xs(s, e) {
9149
9149
  error: t,
9150
9150
  networkDetails: null
9151
9151
  };
9152
- return e && (i.part = e), (e || s).stats.aborted = !0, new Ue(i);
9152
+ return e && (i.part = e), (e || s).stats.aborted = !0, new Ge(i);
9153
9153
  }
9154
- class Ue extends Error {
9154
+ class Ge extends Error {
9155
9155
  constructor(e) {
9156
9156
  super(e.error.message), this.data = void 0, this.data = e;
9157
9157
  }
@@ -9238,12 +9238,12 @@ class Kl {
9238
9238
  const r = this.keySize + 6, n = this.invKeySchedule, a = this.invSBox, o = this.invSubMix, l = o[0], c = o[1], u = o[2], h = o[3], d = this.uint8ArrayToUint32Array_(i);
9239
9239
  let f = d[0], m = d[1], g = d[2], y = d[3];
9240
9240
  const v = new Int32Array(e), T = new Int32Array(v.length);
9241
- let x, L, E, k, R, B, C, b, D, P, I, $, O, U;
9241
+ let x, L, E, k, R, B, C, b, D, P, w, $, O, U;
9242
9242
  const F = this.networkToHostOrderSwap;
9243
9243
  for (; t < v.length; ) {
9244
- for (D = F(v[t]), P = F(v[t + 1]), I = F(v[t + 2]), $ = F(v[t + 3]), R = D ^ n[0], B = $ ^ n[1], C = I ^ n[2], b = P ^ n[3], O = 4, U = 1; U < r; U++)
9244
+ for (D = F(v[t]), P = F(v[t + 1]), w = F(v[t + 2]), $ = F(v[t + 3]), R = D ^ n[0], B = $ ^ n[1], C = w ^ n[2], b = P ^ n[3], O = 4, U = 1; U < r; U++)
9245
9245
  x = l[R >>> 24] ^ c[B >> 16 & 255] ^ u[C >> 8 & 255] ^ h[b & 255] ^ n[O], L = l[B >>> 24] ^ c[C >> 16 & 255] ^ u[b >> 8 & 255] ^ h[R & 255] ^ n[O + 1], E = l[C >>> 24] ^ c[b >> 16 & 255] ^ u[R >> 8 & 255] ^ h[B & 255] ^ n[O + 2], k = l[b >>> 24] ^ c[R >> 16 & 255] ^ u[B >> 8 & 255] ^ h[C & 255] ^ n[O + 3], R = x, B = L, C = E, b = k, O = O + 4;
9246
- x = a[R >>> 24] << 24 ^ a[B >> 16 & 255] << 16 ^ a[C >> 8 & 255] << 8 ^ a[b & 255] ^ n[O], L = a[B >>> 24] << 24 ^ a[C >> 16 & 255] << 16 ^ a[b >> 8 & 255] << 8 ^ a[R & 255] ^ n[O + 1], E = a[C >>> 24] << 24 ^ a[b >> 16 & 255] << 16 ^ a[R >> 8 & 255] << 8 ^ a[B & 255] ^ n[O + 2], k = a[b >>> 24] << 24 ^ a[R >> 16 & 255] << 16 ^ a[B >> 8 & 255] << 8 ^ a[C & 255] ^ n[O + 3], T[t] = F(x ^ f), T[t + 1] = F(k ^ m), T[t + 2] = F(E ^ g), T[t + 3] = F(L ^ y), f = D, m = P, g = I, y = $, t = t + 4;
9246
+ x = a[R >>> 24] << 24 ^ a[B >> 16 & 255] << 16 ^ a[C >> 8 & 255] << 8 ^ a[b & 255] ^ n[O], L = a[B >>> 24] << 24 ^ a[C >> 16 & 255] << 16 ^ a[b >> 8 & 255] << 8 ^ a[R & 255] ^ n[O + 1], E = a[C >>> 24] << 24 ^ a[b >> 16 & 255] << 16 ^ a[R >> 8 & 255] << 8 ^ a[B & 255] ^ n[O + 2], k = a[b >>> 24] << 24 ^ a[R >> 16 & 255] << 16 ^ a[B >> 8 & 255] << 8 ^ a[C & 255] ^ n[O + 3], T[t] = F(x ^ f), T[t + 1] = F(k ^ m), T[t + 2] = F(E ^ g), T[t + 3] = F(L ^ y), f = D, m = P, g = w, y = $, t = t + 4;
9247
9247
  }
9248
9248
  return T.buffer;
9249
9249
  }
@@ -10129,7 +10129,7 @@ class cs {
10129
10129
  pts: this.lastPTS,
10130
10130
  dts: this.lastPTS,
10131
10131
  data: i,
10132
- type: Re.audioId3,
10132
+ type: Ce.audioId3,
10133
10133
  duration: Number.POSITIVE_INFINITY
10134
10134
  }); r < c; ) {
10135
10135
  if (this.canParse(e, r)) {
@@ -10140,7 +10140,7 @@ class cs {
10140
10140
  pts: this.lastPTS,
10141
10141
  dts: this.lastPTS,
10142
10142
  data: i,
10143
- type: Re.audioId3,
10143
+ type: Ce.audioId3,
10144
10144
  duration: Number.POSITIVE_INFINITY
10145
10145
  }), r += i.length, n = r) : r++;
10146
10146
  if (r === c && n !== c) {
@@ -10513,7 +10513,7 @@ class uc {
10513
10513
  len: c.byteLength,
10514
10514
  dts: o,
10515
10515
  pts: o,
10516
- type: Re.emsg,
10516
+ type: Ce.emsg,
10517
10517
  duration: l
10518
10518
  });
10519
10519
  }
@@ -10993,12 +10993,12 @@ class mc {
10993
10993
  }
10994
10994
  }
10995
10995
  const ue = 188;
10996
- class We {
10996
+ class ze {
10997
10997
  constructor(e, t, i) {
10998
10998
  this.observer = void 0, this.config = void 0, this.typeSupported = void 0, this.sampleAes = null, this.pmtParsed = !1, this.audioCodec = void 0, this.videoCodec = void 0, this._duration = 0, this._pmtId = -1, this._videoTrack = void 0, this._audioTrack = void 0, this._id3Track = void 0, this._txtTrack = void 0, this.aacOverFlow = null, this.remainderData = null, this.videoParser = void 0, this.observer = e, this.config = t, this.typeSupported = i, this.videoParser = new fc();
10999
10999
  }
11000
11000
  static probe(e) {
11001
- const t = We.syncOffset(e);
11001
+ const t = ze.syncOffset(e);
11002
11002
  return t > 0 && S.warn(`MPEG2-TS detected but first sync word found @ offset ${t}`), t !== -1;
11003
11003
  }
11004
11004
  static syncOffset(e) {
@@ -11040,7 +11040,7 @@ class We {
11040
11040
  * Resets all internal track instances of the demuxer.
11041
11041
  */
11042
11042
  resetInitSegment(e, t, i, r) {
11043
- this.pmtParsed = !1, this._pmtId = -1, this._videoTrack = We.createTrack("video"), this._audioTrack = We.createTrack("audio", r), this._id3Track = We.createTrack("id3"), this._txtTrack = We.createTrack("text"), this._audioTrack.segmentCodec = "aac", this.aacOverFlow = null, this.remainderData = null, this.audioCodec = t, this.videoCodec = i, this._duration = r;
11043
+ this.pmtParsed = !1, this._pmtId = -1, this._videoTrack = ze.createTrack("video"), this._audioTrack = ze.createTrack("audio", r), this._id3Track = ze.createTrack("id3"), this._txtTrack = ze.createTrack("text"), this._audioTrack.segmentCodec = "aac", this.aacOverFlow = null, this.remainderData = null, this.audioCodec = t, this.videoCodec = i, this._duration = r;
11044
11044
  }
11045
11045
  resetTimeStamp() {
11046
11046
  }
@@ -11064,7 +11064,7 @@ class We {
11064
11064
  id3Track: l,
11065
11065
  textTrack: c
11066
11066
  };
11067
- const L = Math.max(0, We.syncOffset(e));
11067
+ const L = Math.max(0, ze.syncOffset(e));
11068
11068
  x -= (x - L) % ue, x < e.byteLength && !r && (this.remainderData = new Uint8Array(e.buffer, x, e.buffer.byteLength - x));
11069
11069
  let E = 0;
11070
11070
  for (let R = L; R < x; R += ue)
@@ -11296,7 +11296,7 @@ class We {
11296
11296
  return;
11297
11297
  }
11298
11298
  const i = oe({}, t, {
11299
- type: this._videoTrack ? Re.emsg : Re.audioId3,
11299
+ type: this._videoTrack ? Ce.emsg : Ce.audioId3,
11300
11300
  duration: Number.POSITIVE_INFINITY
11301
11301
  });
11302
11302
  e.samples.push(i);
@@ -11489,7 +11489,7 @@ class Qs {
11489
11489
  }
11490
11490
  }
11491
11491
  }
11492
- const Ke = Math.pow(2, 32) - 1;
11492
+ const We = Math.pow(2, 32) - 1;
11493
11493
  class A {
11494
11494
  static init() {
11495
11495
  A.types = {
@@ -11754,7 +11754,7 @@ class A {
11754
11754
  }
11755
11755
  static mdhd(e, t) {
11756
11756
  t *= e;
11757
- const i = Math.floor(t / (Ke + 1)), r = Math.floor(t % (Ke + 1));
11757
+ const i = Math.floor(t / (We + 1)), r = Math.floor(t % (We + 1));
11758
11758
  return A.box(A.types.mdhd, new Uint8Array([
11759
11759
  1,
11760
11760
  // version 1
@@ -11839,7 +11839,7 @@ class A {
11839
11839
  }
11840
11840
  static mvhd(e, t) {
11841
11841
  t *= e;
11842
- const i = Math.floor(t / (Ke + 1)), r = Math.floor(t % (Ke + 1)), n = new Uint8Array([
11842
+ const i = Math.floor(t / (We + 1)), r = Math.floor(t % (We + 1)), n = new Uint8Array([
11843
11843
  1,
11844
11844
  // version 1
11845
11845
  0,
@@ -12229,7 +12229,7 @@ class A {
12229
12229
  return e.type === "audio" ? e.segmentCodec === "mp3" && e.codec === "mp3" ? A.box(A.types.stsd, A.STSD, A.mp3(e)) : e.segmentCodec === "ac3" ? A.box(A.types.stsd, A.STSD, A.ac3(e)) : A.box(A.types.stsd, A.STSD, A.mp4a(e)) : A.box(A.types.stsd, A.STSD, A.avc1(e));
12230
12230
  }
12231
12231
  static tkhd(e) {
12232
- const t = e.id, i = e.duration * e.timescale, r = e.width, n = e.height, a = Math.floor(i / (Ke + 1)), o = Math.floor(i % (Ke + 1));
12232
+ const t = e.id, i = e.duration * e.timescale, r = e.width, n = e.height, a = Math.floor(i / (We + 1)), o = Math.floor(i % (We + 1));
12233
12233
  return A.box(A.types.tkhd, new Uint8Array([
12234
12234
  1,
12235
12235
  // version 1
@@ -12344,7 +12344,7 @@ class A {
12344
12344
  ]));
12345
12345
  }
12346
12346
  static traf(e, t) {
12347
- const i = A.sdtp(e), r = e.id, n = Math.floor(t / (Ke + 1)), a = Math.floor(t % (Ke + 1));
12347
+ const i = A.sdtp(e), r = e.id, n = Math.floor(t / (We + 1)), a = Math.floor(t % (We + 1));
12348
12348
  return A.box(
12349
12349
  A.types.traf,
12350
12350
  A.box(A.types.tfhd, new Uint8Array([
@@ -12549,12 +12549,12 @@ class Mt {
12549
12549
  } else
12550
12550
  h = this.generateIS(e, t, n, a);
12551
12551
  const D = this.isVideoContiguous;
12552
- let P = -1, I;
12552
+ let P = -1, w;
12553
12553
  if (E && (P = bc(t.samples), !D && this.config.forceKeyFrameOnDiscontinuity))
12554
12554
  if (m = !0, P > 0) {
12555
12555
  S.warn(`[mp4-remuxer]: Dropped ${P} out of ${x} video samples due to a missing keyframe`);
12556
12556
  const $ = this.getVideoStartPts(t.samples);
12557
- t.samples = t.samples.slice(P), t.dropped += P, y += (t.samples[0].pts - $) / t.inputTimeScale, I = y;
12557
+ t.samples = t.samples.slice(P), t.dropped += P, y += (t.samples[0].pts - $) / t.inputTimeScale, w = y;
12558
12558
  } else
12559
12559
  P === -1 && (S.warn(`[mp4-remuxer]: No keyframe found out of ${x} video samples`), m = !1);
12560
12560
  if (this.ISGenerated) {
@@ -12569,7 +12569,7 @@ class Mt {
12569
12569
  }
12570
12570
  } else
12571
12571
  E && (c = this.remuxVideo(t, y, D, 0));
12572
- c && (c.firstKeyFrame = P, c.independent = P !== -1, c.firstKeyFramePTS = I);
12572
+ c && (c.firstKeyFrame = P, c.independent = P !== -1, c.firstKeyFramePTS = w);
12573
12573
  }
12574
12574
  }
12575
12575
  return this.ISGenerated && this._initPTS && this._initDTS && (i.samples.length && (f = Vn(i, n, this._initPTS, this._initDTS)), r.samples.length && (d = Kn(r, n, this._initPTS))), {
@@ -12642,36 +12642,36 @@ class Mt {
12642
12642
  const n = e.inputTimeScale, a = e.samples, o = [], l = a.length, c = this._initPTS;
12643
12643
  let u = this.nextAvcDts, h = 8, d = this.videoSampleDuration, f, m, g = Number.POSITIVE_INFINITY, y = Number.NEGATIVE_INFINITY, v = !1;
12644
12644
  if (!i || u === null) {
12645
- const G = t * n, M = a[0].pts - Se(a[0].dts, a[0].pts);
12646
- st && u !== null && Math.abs(G - M - u) < 15e3 ? i = !0 : u = G - M;
12645
+ const H = t * n, M = a[0].pts - Se(a[0].dts, a[0].pts);
12646
+ st && u !== null && Math.abs(H - M - u) < 15e3 ? i = !0 : u = H - M;
12647
12647
  }
12648
12648
  const T = c.baseTime * n / c.timescale;
12649
- for (let G = 0; G < l; G++) {
12650
- const M = a[G];
12651
- M.pts = Se(M.pts - T, u), M.dts = Se(M.dts - T, u), M.dts < a[G > 0 ? G - 1 : G].dts && (v = !0);
12649
+ for (let H = 0; H < l; H++) {
12650
+ const M = a[H];
12651
+ M.pts = Se(M.pts - T, u), M.dts = Se(M.dts - T, u), M.dts < a[H > 0 ? H - 1 : H].dts && (v = !0);
12652
12652
  }
12653
- v && a.sort(function(G, M) {
12654
- const Q = G.dts - M.dts, Z = G.pts - M.pts;
12653
+ v && a.sort(function(H, M) {
12654
+ const Q = H.dts - M.dts, Z = H.pts - M.pts;
12655
12655
  return Q || Z;
12656
12656
  }), f = a[0].dts, m = a[a.length - 1].dts;
12657
12657
  const x = m - f, L = x ? Math.round(x / (l - 1)) : d || e.inputTimeScale / 30;
12658
12658
  if (i) {
12659
- const G = f - u, M = G > L, Q = G < -1;
12660
- if ((M || Q) && (M ? S.warn(`AVC: ${mt(G, !0)} ms (${G}dts) hole between fragments detected at ${t.toFixed(3)}`) : S.warn(`AVC: ${mt(-G, !0)} ms (${G}dts) overlapping between fragments detected at ${t.toFixed(3)}`), !Q || u >= a[0].pts || st)) {
12659
+ const H = f - u, M = H > L, Q = H < -1;
12660
+ if ((M || Q) && (M ? S.warn(`AVC: ${mt(H, !0)} ms (${H}dts) hole between fragments detected at ${t.toFixed(3)}`) : S.warn(`AVC: ${mt(-H, !0)} ms (${H}dts) overlapping between fragments detected at ${t.toFixed(3)}`), !Q || u >= a[0].pts || st)) {
12661
12661
  f = u;
12662
- const Z = a[0].pts - G;
12662
+ const Z = a[0].pts - H;
12663
12663
  if (M)
12664
12664
  a[0].dts = f, a[0].pts = Z;
12665
12665
  else
12666
12666
  for (let ee = 0; ee < a.length && !(a[ee].dts > Z); ee++)
12667
- a[ee].dts -= G, a[ee].pts -= G;
12668
- S.log(`Video: Initial PTS/DTS adjusted: ${mt(Z, !0)}/${mt(f, !0)}, delta: ${mt(G, !0)} ms`);
12667
+ a[ee].dts -= H, a[ee].pts -= H;
12668
+ S.log(`Video: Initial PTS/DTS adjusted: ${mt(Z, !0)}/${mt(f, !0)}, delta: ${mt(H, !0)} ms`);
12669
12669
  }
12670
12670
  }
12671
12671
  f = Math.max(0, f);
12672
12672
  let E = 0, k = 0, R = f;
12673
- for (let G = 0; G < l; G++) {
12674
- const M = a[G], Q = M.units, Z = Q.length;
12673
+ for (let H = 0; H < l; H++) {
12674
+ const M = a[H], Q = M.units, Z = Q.length;
12675
12675
  let ee = 0;
12676
12676
  for (let ae = 0; ae < Z; ae++)
12677
12677
  ee += Q[ae].data.length;
@@ -12682,12 +12682,12 @@ class Mt {
12682
12682
  let C;
12683
12683
  try {
12684
12684
  C = new Uint8Array(B);
12685
- } catch (G) {
12685
+ } catch (H) {
12686
12686
  this.observer.emit(p.ERROR, p.ERROR, {
12687
12687
  type: q.MUX_ERROR,
12688
12688
  details: _.REMUX_ALLOC_ERROR,
12689
12689
  fatal: !1,
12690
- error: G,
12690
+ error: H,
12691
12691
  bytes: B,
12692
12692
  reason: `fail allocating video mdat ${B}`
12693
12693
  });
@@ -12695,45 +12695,45 @@ class Mt {
12695
12695
  }
12696
12696
  const b = new DataView(C.buffer);
12697
12697
  b.setUint32(0, B), C.set(A.types.mdat, 4);
12698
- let D = !1, P = Number.POSITIVE_INFINITY, I = Number.POSITIVE_INFINITY, $ = Number.NEGATIVE_INFINITY, O = Number.NEGATIVE_INFINITY;
12699
- for (let G = 0; G < l; G++) {
12700
- const M = a[G], Q = M.units;
12698
+ let D = !1, P = Number.POSITIVE_INFINITY, w = Number.POSITIVE_INFINITY, $ = Number.NEGATIVE_INFINITY, O = Number.NEGATIVE_INFINITY;
12699
+ for (let H = 0; H < l; H++) {
12700
+ const M = a[H], Q = M.units;
12701
12701
  let Z = 0;
12702
12702
  for (let ce = 0, fe = Q.length; ce < fe; ce++) {
12703
12703
  const Te = Q[ce], ft = Te.data, si = Te.data.byteLength;
12704
12704
  b.setUint32(h, si), h += 4, C.set(ft, h), h += si, Z += 4 + si;
12705
12705
  }
12706
12706
  let ee;
12707
- if (G < l - 1)
12708
- d = a[G + 1].dts - M.dts, ee = a[G + 1].pts - M.pts;
12707
+ if (H < l - 1)
12708
+ d = a[H + 1].dts - M.dts, ee = a[H + 1].pts - M.pts;
12709
12709
  else {
12710
- const ce = this.config, fe = G > 0 ? M.dts - a[G - 1].dts : L;
12711
- if (ee = G > 0 ? M.pts - a[G - 1].pts : L, ce.stretchShortVideoTrack && this.nextAudioPts !== null) {
12710
+ const ce = this.config, fe = H > 0 ? M.dts - a[H - 1].dts : L;
12711
+ if (ee = H > 0 ? M.pts - a[H - 1].pts : L, ce.stretchShortVideoTrack && this.nextAudioPts !== null) {
12712
12712
  const Te = Math.floor(ce.maxBufferHole * n), ft = (r ? g + r * n : this.nextAudioPts) - M.pts;
12713
12713
  ft > Te ? (d = ft - fe, d < 0 ? d = fe : D = !0, S.log(`[mp4-remuxer]: It is approximately ${ft / 90} ms to the next segment; using duration ${d / 90} ms for the last video frame.`)) : d = fe;
12714
12714
  } else
12715
12715
  d = fe;
12716
12716
  }
12717
12717
  const ae = Math.round(M.pts - M.dts);
12718
- P = Math.min(P, d), $ = Math.max($, d), I = Math.min(I, ee), O = Math.max(O, ee), o.push(new er(M.key, d, Z, ae));
12718
+ P = Math.min(P, d), $ = Math.max($, d), w = Math.min(w, ee), O = Math.max(O, ee), o.push(new er(M.key, d, Z, ae));
12719
12719
  }
12720
12720
  if (o.length) {
12721
12721
  if (st) {
12722
12722
  if (st < 70) {
12723
- const G = o[0].flags;
12724
- G.dependsOn = 2, G.isNonSync = 0;
12723
+ const H = o[0].flags;
12724
+ H.dependsOn = 2, H.isNonSync = 0;
12725
12725
  }
12726
- } else if (yi && O - I < $ - P && L / $ < 0.025 && o[0].cts === 0) {
12726
+ } else if (yi && O - w < $ - P && L / $ < 0.025 && o[0].cts === 0) {
12727
12727
  S.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");
12728
- let G = f;
12728
+ let H = f;
12729
12729
  for (let M = 0, Q = o.length; M < Q; M++) {
12730
- const Z = G + o[M].duration, ee = G + o[M].cts;
12730
+ const Z = H + o[M].duration, ee = H + o[M].cts;
12731
12731
  if (M < Q - 1) {
12732
12732
  const ae = Z + o[M + 1].cts;
12733
12733
  o[M].duration = ae - ee;
12734
12734
  } else
12735
12735
  o[M].duration = M ? o[M - 1].duration : L;
12736
- o[M].cts = 0, G = Z;
12736
+ o[M].cts = 0, H = Z;
12737
12737
  }
12738
12738
  }
12739
12739
  }
@@ -12779,7 +12779,7 @@ class Mt {
12779
12779
  if (e.segmentCodec === "aac") {
12780
12780
  const U = this.config.maxAudioFramesDrift;
12781
12781
  for (let F = 0, V = v; F < g.length; F++) {
12782
- const G = g[F], M = G.pts, Q = M - V, Z = Math.abs(1e3 * Q / a);
12782
+ const H = g[F], M = H.pts, Q = M - V, Z = Math.abs(1e3 * Q / a);
12783
12783
  if (Q <= -U * u && m)
12784
12784
  F === 0 && (S.warn(`Audio frame @ ${(M / a).toFixed(3)}s overlaps nextAudioPts by ${Math.round(1e3 * Q / a)} ms.`), this.nextAudioPts = v = V = M);
12785
12785
  else if (Q >= U * u && Z < Tc && m) {
@@ -12788,20 +12788,20 @@ class Mt {
12788
12788
  for (let ae = 0; ae < ee; ae++) {
12789
12789
  const ce = Math.max(V, 0);
12790
12790
  let fe = Qs.getSilentFrame(e.manifestCodec || e.codec, e.channelCount);
12791
- fe || (S.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."), fe = G.unit.subarray()), g.splice(F, 0, {
12791
+ fe || (S.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."), fe = H.unit.subarray()), g.splice(F, 0, {
12792
12792
  unit: fe,
12793
12793
  pts: ce
12794
12794
  }), V += u, F++;
12795
12795
  }
12796
12796
  }
12797
- G.pts = V, V += u;
12797
+ H.pts = V, V += u;
12798
12798
  }
12799
12799
  }
12800
12800
  let L = null, E = null, k, R = 0, B = g.length;
12801
12801
  for (; B--; )
12802
12802
  R += g[B].unit.byteLength;
12803
12803
  for (let U = 0, F = g.length; U < F; U++) {
12804
- const V = g[U], G = V.unit;
12804
+ const V = g[U], H = V.unit;
12805
12805
  let M = V.pts;
12806
12806
  if (E !== null) {
12807
12807
  const Z = f[U - 1];
@@ -12824,8 +12824,8 @@ class Mt {
12824
12824
  d || (new DataView(k.buffer).setUint32(0, R), k.set(A.types.mdat, 4));
12825
12825
  } else
12826
12826
  return;
12827
- k.set(G, y);
12828
- const Q = G.byteLength;
12827
+ k.set(H, y);
12828
+ const Q = H.byteLength;
12829
12829
  y += Q, f.push(new er(!0, c, Q, 0)), E = M;
12830
12830
  }
12831
12831
  const C = f.length;
@@ -12837,13 +12837,13 @@ class Mt {
12837
12837
  samples: f
12838
12838
  }));
12839
12839
  e.samples = [];
12840
- const P = L / a, I = v / a, O = {
12840
+ const P = L / a, w = v / a, O = {
12841
12841
  data1: D,
12842
12842
  data2: k,
12843
12843
  startPTS: P,
12844
- endPTS: I,
12844
+ endPTS: w,
12845
12845
  startDTS: P,
12846
- endDTS: I,
12846
+ endDTS: w,
12847
12847
  type: "audio",
12848
12848
  hasAudio: !0,
12849
12849
  hasVideo: !1,
@@ -13038,17 +13038,17 @@ function tr(s, e) {
13038
13038
  }
13039
13039
  return S.warn(`Unhandled video codec "${t}"`), t === "hvc1" || t === "hev1" ? "hvc1.1.6.L120.90" : t === "av01" ? "av01.0.04M.08" : "avc1.42e01e";
13040
13040
  }
13041
- let Ge;
13041
+ let He;
13042
13042
  try {
13043
- Ge = self.performance.now.bind(self.performance);
13043
+ He = self.performance.now.bind(self.performance);
13044
13044
  } catch {
13045
- S.debug("Unable to use Performance API on this environment"), Ge = lt == null ? void 0 : lt.Date.now;
13045
+ S.debug("Unable to use Performance API on this environment"), He = lt == null ? void 0 : lt.Date.now;
13046
13046
  }
13047
13047
  const Nt = [{
13048
13048
  demux: uc,
13049
13049
  remux: Ac
13050
13050
  }, {
13051
- demux: We,
13051
+ demux: ze,
13052
13052
  remux: Mt
13053
13053
  }, {
13054
13054
  demux: lc,
@@ -13070,7 +13070,7 @@ class ir {
13070
13070
  }
13071
13071
  push(e, t, i, r) {
13072
13072
  const n = i.transmuxing;
13073
- n.executeStart = Ge();
13073
+ n.executeStart = He();
13074
13074
  let a = new Uint8Array(e);
13075
13075
  const {
13076
13076
  currentTransmuxState: o,
@@ -13096,7 +13096,7 @@ class ir {
13096
13096
  if (B.isSync()) {
13097
13097
  let C = B.softwareDecrypt(a, L.key.buffer, L.iv.buffer);
13098
13098
  if (i.part > -1 && (C = B.flush()), !C)
13099
- return n.executeEnd = Ge(), vi(i);
13099
+ return n.executeEnd = He(), vi(i);
13100
13100
  a = new Uint8Array(C);
13101
13101
  } else
13102
13102
  return this.decryptionPromise = B.webCryptoDecrypt(a, L.key.buffer, L.iv.buffer).then((C) => {
@@ -13114,16 +13114,16 @@ class ir {
13114
13114
  fatal: !1,
13115
13115
  error: B,
13116
13116
  reason: B.message
13117
- }), n.executeEnd = Ge(), vi(i);
13117
+ }), n.executeEnd = He(), vi(i);
13118
13118
  }
13119
13119
  (u || h || m || E) && this.resetInitSegment(x, g, y, T, t), (u || m || E) && this.resetInitialTimestamp(v), c || this.resetContiguity();
13120
13120
  const k = this.transmux(a, L, f, d, i), R = this.currentTransmuxState;
13121
- return R.contiguous = !0, R.discontinuity = !1, R.trackSwitch = !1, n.executeEnd = Ge(), k;
13121
+ return R.contiguous = !0, R.discontinuity = !1, R.trackSwitch = !1, n.executeEnd = He(), k;
13122
13122
  }
13123
13123
  // Due to data caching, flush calls can produce more than one TransmuxerResult (hence the Array type)
13124
13124
  flush(e) {
13125
13125
  const t = e.transmuxing;
13126
- t.executeStart = Ge();
13126
+ t.executeStart = He();
13127
13127
  const {
13128
13128
  decrypter: i,
13129
13129
  currentTransmuxState: r,
@@ -13143,7 +13143,7 @@ class ir {
13143
13143
  remuxer: c
13144
13144
  } = this;
13145
13145
  if (!l || !c)
13146
- return t.executeEnd = Ge(), [vi(e)];
13146
+ return t.executeEnd = He(), [vi(e)];
13147
13147
  const u = l.flush(o);
13148
13148
  return Bt(u) ? u.then((h) => (this.flushRemux(a, h, e), a)) : (this.flushRemux(a, u, e), a);
13149
13149
  }
@@ -13162,7 +13162,7 @@ class ir {
13162
13162
  e.push({
13163
13163
  remuxResult: u,
13164
13164
  chunkMeta: i
13165
- }), i.transmuxing.executeEnd = Ge();
13165
+ }), i.transmuxing.executeEnd = He();
13166
13166
  }
13167
13167
  resetInitialTimestamp(e) {
13168
13168
  const {
@@ -15596,7 +15596,7 @@ const or = {
15596
15596
  }, jn = function(e) {
15597
15597
  let t = e;
15598
15598
  return or.hasOwnProperty(e) && (t = or[e]), String.fromCharCode(t);
15599
- }, Le = 15, $e = 100, Bc = {
15599
+ }, Re = 15, $e = 100, Bc = {
15600
15600
  17: 1,
15601
15601
  18: 3,
15602
15602
  21: 5,
@@ -15642,7 +15642,7 @@ class Vc {
15642
15642
  }
15643
15643
  }
15644
15644
  }
15645
- const je = function(e) {
15645
+ const qe = function(e) {
15646
15646
  const t = [];
15647
15647
  for (let i = 0; i < e.length; i++)
15648
15648
  t.push(e[i].toString(16));
@@ -15781,19 +15781,19 @@ class Wc {
15781
15781
  }
15782
15782
  class xi {
15783
15783
  constructor(e) {
15784
- this.rows = [], this.currRow = Le - 1, this.nrRollUpRows = null, this.lastOutputScreen = null, this.logger = void 0;
15785
- for (let t = 0; t < Le; t++)
15784
+ this.rows = [], this.currRow = Re - 1, this.nrRollUpRows = null, this.lastOutputScreen = null, this.logger = void 0;
15785
+ for (let t = 0; t < Re; t++)
15786
15786
  this.rows.push(new Wc(e));
15787
15787
  this.logger = e;
15788
15788
  }
15789
15789
  reset() {
15790
- for (let e = 0; e < Le; e++)
15790
+ for (let e = 0; e < Re; e++)
15791
15791
  this.rows[e].clear();
15792
- this.currRow = Le - 1;
15792
+ this.currRow = Re - 1;
15793
15793
  }
15794
15794
  equals(e) {
15795
15795
  let t = !0;
15796
- for (let i = 0; i < Le; i++)
15796
+ for (let i = 0; i < Re; i++)
15797
15797
  if (!this.rows[i].equals(e.rows[i])) {
15798
15798
  t = !1;
15799
15799
  break;
@@ -15801,12 +15801,12 @@ class xi {
15801
15801
  return t;
15802
15802
  }
15803
15803
  copy(e) {
15804
- for (let t = 0; t < Le; t++)
15804
+ for (let t = 0; t < Re; t++)
15805
15805
  this.rows[t].copy(e.rows[t]);
15806
15806
  }
15807
15807
  isEmpty() {
15808
15808
  let e = !0;
15809
- for (let t = 0; t < Le; t++)
15809
+ for (let t = 0; t < Re; t++)
15810
15810
  if (!this.rows[t].isEmpty()) {
15811
15811
  e = !1;
15812
15812
  break;
@@ -15838,7 +15838,7 @@ class xi {
15838
15838
  this.logger.log(2, () => "pacData = " + JSON.stringify(e));
15839
15839
  let t = e.row - 1;
15840
15840
  if (this.nrRollUpRows && t < this.nrRollUpRows - 1 && (t = this.nrRollUpRows - 1), this.nrRollUpRows && this.currRow !== t) {
15841
- for (let o = 0; o < Le; o++)
15841
+ for (let o = 0; o < Re; o++)
15842
15842
  this.rows[o].clear();
15843
15843
  const n = this.currRow + 1 - this.nrRollUpRows, a = this.lastOutputScreen;
15844
15844
  if (a) {
@@ -15888,7 +15888,7 @@ class xi {
15888
15888
  e = e || !1;
15889
15889
  const t = [];
15890
15890
  let i = "", r = -1;
15891
- for (let n = 0; n < Le; n++) {
15891
+ for (let n = 0; n < Re; n++) {
15892
15892
  const a = this.rows[n].getTextString();
15893
15893
  a && (r = n + 1, e ? t.push("Row " + r + ": '" + a + "'") : t.push(a.trim()));
15894
15894
  }
@@ -15901,10 +15901,10 @@ class xi {
15901
15901
  }
15902
15902
  class lr {
15903
15903
  constructor(e, t, i) {
15904
- this.chNr = void 0, this.outputFilter = void 0, this.mode = void 0, this.verbose = void 0, this.displayedMemory = void 0, this.nonDisplayedMemory = void 0, this.lastOutputScreen = void 0, this.currRollUpRow = void 0, this.writeScreen = void 0, this.cueStartTime = void 0, this.logger = void 0, this.chNr = e, this.outputFilter = t, this.mode = null, this.verbose = 0, this.displayedMemory = new xi(i), this.nonDisplayedMemory = new xi(i), this.lastOutputScreen = new xi(i), this.currRollUpRow = this.displayedMemory.rows[Le - 1], this.writeScreen = this.displayedMemory, this.mode = null, this.cueStartTime = null, this.logger = i;
15904
+ this.chNr = void 0, this.outputFilter = void 0, this.mode = void 0, this.verbose = void 0, this.displayedMemory = void 0, this.nonDisplayedMemory = void 0, this.lastOutputScreen = void 0, this.currRollUpRow = void 0, this.writeScreen = void 0, this.cueStartTime = void 0, this.logger = void 0, this.chNr = e, this.outputFilter = t, this.mode = null, this.verbose = 0, this.displayedMemory = new xi(i), this.nonDisplayedMemory = new xi(i), this.lastOutputScreen = new xi(i), this.currRollUpRow = this.displayedMemory.rows[Re - 1], this.writeScreen = this.displayedMemory, this.mode = null, this.cueStartTime = null, this.logger = i;
15905
15905
  }
15906
15906
  reset() {
15907
- this.mode = null, this.displayedMemory.reset(), this.nonDisplayedMemory.reset(), this.lastOutputScreen.reset(), this.outputFilter.reset(), this.currRollUpRow = this.displayedMemory.rows[Le - 1], this.writeScreen = this.displayedMemory, this.mode = null, this.cueStartTime = null;
15907
+ this.mode = null, this.displayedMemory.reset(), this.nonDisplayedMemory.reset(), this.lastOutputScreen.reset(), this.outputFilter.reset(), this.currRollUpRow = this.displayedMemory.rows[Re - 1], this.writeScreen = this.displayedMemory, this.mode = null, this.cueStartTime = null;
15908
15908
  }
15909
15909
  getHandler() {
15910
15910
  return this.outputFilter;
@@ -16016,11 +16016,11 @@ class cr {
16016
16016
  this.logger.time = e;
16017
16017
  for (let o = 0; o < t.length; o += 2)
16018
16018
  if (r = t[o] & 127, n = t[o + 1] & 127, !(r === 0 && n === 0)) {
16019
- if (this.logger.log(3, "[" + je([t[o], t[o + 1]]) + "] -> (" + je([r, n]) + ")"), i = this.parseCmd(r, n), i || (i = this.parseMidrow(r, n)), i || (i = this.parsePAC(r, n)), i || (i = this.parseBackgroundAttributes(r, n)), !i && (a = this.parseChars(r, n), a)) {
16019
+ if (this.logger.log(3, "[" + qe([t[o], t[o + 1]]) + "] -> (" + qe([r, n]) + ")"), i = this.parseCmd(r, n), i || (i = this.parseMidrow(r, n)), i || (i = this.parsePAC(r, n)), i || (i = this.parseBackgroundAttributes(r, n)), !i && (a = this.parseChars(r, n), a)) {
16020
16020
  const l = this.currentChannel;
16021
16021
  l && l > 0 ? this.channels[l].insertChars(a) : this.logger.log(2, "No channel found yet. TEXT-MODE?");
16022
16022
  }
16023
- !i && !a && this.logger.log(2, "Couldn't parse cleaned data " + je([r, n]) + " orig: " + je([t[o], t[o + 1]]));
16023
+ !i && !a && this.logger.log(2, "Couldn't parse cleaned data " + qe([r, n]) + " orig: " + qe([t[o], t[o + 1]]));
16024
16024
  }
16025
16025
  }
16026
16026
  /**
@@ -16034,7 +16034,7 @@ class cr {
16034
16034
  if (!(r || n))
16035
16035
  return !1;
16036
16036
  if (ur(e, t, i))
16037
- return rt(null, null, i), this.logger.log(3, "Repeated command (" + je([e, t]) + ") is dropped"), !0;
16037
+ return rt(null, null, i), this.logger.log(3, "Repeated command (" + qe([e, t]) + ") is dropped"), !0;
16038
16038
  const a = e === 20 || e === 21 || e === 23 ? 1 : 2, o = this.channels[a];
16039
16039
  return e === 20 || e === 21 || e === 28 || e === 29 ? t === 32 ? o.ccRCL() : t === 33 ? o.ccBS() : t === 34 ? o.ccAOF() : t === 35 ? o.ccAON() : t === 36 ? o.ccDER() : t === 37 ? o.ccRU(2) : t === 38 ? o.ccRU(3) : t === 39 ? o.ccRU(4) : t === 40 ? o.ccFON() : t === 41 ? o.ccRDC() : t === 42 ? o.ccTR() : t === 43 ? o.ccRTD() : t === 44 ? o.ccEDM() : t === 45 ? o.ccCR() : t === 46 ? o.ccENM() : t === 47 && o.ccEOC() : o.ccTO(t - 32), rt(e, t, i), this.currentChannel = a, !0;
16040
16040
  }
@@ -16047,7 +16047,7 @@ class cr {
16047
16047
  if (e === 17 ? i = 1 : i = 2, i !== this.currentChannel)
16048
16048
  return this.logger.log(0, "Mismatch channel in midrow parsing"), !1;
16049
16049
  const r = this.channels[i];
16050
- return r ? (r.ccMIDROW(t), this.logger.log(3, "MIDROW (" + je([e, t]) + ")"), !0) : !1;
16050
+ return r ? (r.ccMIDROW(t), this.logger.log(3, "MIDROW (" + qe([e, t]) + ")"), !0) : !1;
16051
16051
  }
16052
16052
  return !1;
16053
16053
  }
@@ -16094,7 +16094,7 @@ class cr {
16094
16094
  } else
16095
16095
  e >= 32 && e <= 127 && (r = t === 0 ? [e] : [e, t]);
16096
16096
  if (r) {
16097
- const a = je(r);
16097
+ const a = qe(r);
16098
16098
  this.logger.log(3, "Char codes = " + a.join(",")), rt(e, t, this.cmdHistory);
16099
16099
  }
16100
16100
  return r;
@@ -18363,7 +18363,7 @@ class Wu {
18363
18363
  const {
18364
18364
  errorAction: i
18365
18365
  } = t;
18366
- if ((i == null ? void 0 : i.action) === me.SendAlternateToPenaltyBox && i.flags === Ae.MoveAllAlternatesMatchingHost) {
18366
+ if ((i == null ? void 0 : i.action) === me.SendAlternateToPenaltyBox && i.flags === Le.MoveAllAlternatesMatchingHost) {
18367
18367
  const r = this.levels;
18368
18368
  let n = this.pathwayPriority, a = this.pathwayId;
18369
18369
  if (t.context) {
@@ -19519,7 +19519,7 @@ class oh {
19519
19519
  this.keyUriToKeyInfo = {};
19520
19520
  }
19521
19521
  createKeyLoadError(e, t = _.KEY_LOAD_ERROR, i, r, n) {
19522
- return new Ue({
19522
+ return new Ge({
19523
19523
  type: q.NETWORK_ERROR,
19524
19524
  details: t,
19525
19525
  fatal: !1,
@@ -21165,7 +21165,7 @@ const Ci = new Intl.NumberFormat(void 0, {
21165
21165
  return i === 0 ? `${t}:${Ci.format(e)}` : `${i}:${Ci.format(
21166
21166
  t
21167
21167
  )}:${Ci.format(e)}`;
21168
- }, xh = He.extend({
21168
+ }, xh = Ve.extend({
21169
21169
  name: "VideoPlayer",
21170
21170
  components: {
21171
21171
  ESpinner: sn
@@ -21268,7 +21268,10 @@ const Ci = new Intl.NumberFormat(void 0, {
21268
21268
  });
21269
21269
  },
21270
21270
  bindVideoEvent(s) {
21271
- const e = this.$refs.player, t = this.$refs.timelineContainer;
21271
+ const e = this.$refs.player;
21272
+ if (!e)
21273
+ return;
21274
+ const t = this.$refs.timelineContainer;
21272
21275
  s === "loadeddata" && (this.videoLength = Di(e.duration)), s === "timeupdate" && (this.percentagePlayed = (e == null ? void 0 : e.currentTime) / e.duration * 100, t.style.setProperty(
21273
21276
  "--progress-position",
21274
21277
  this.percentagePlayed.toString()
@@ -21455,12 +21458,12 @@ var Th = function() {
21455
21458
  Eh,
21456
21459
  !1,
21457
21460
  null,
21458
- "160e835f",
21461
+ "9071f674",
21459
21462
  null,
21460
21463
  null
21461
21464
  );
21462
21465
  const bh = Sh.exports, Zt = (s) => {
21463
- const e = w.utcFormat("%_d")(s), i = {
21466
+ const e = I.utcFormat("%_d")(s), i = {
21464
21467
  1: "st",
21465
21468
  2: "nd",
21466
21469
  3: "rd"
@@ -21468,23 +21471,23 @@ const bh = Sh.exports, Zt = (s) => {
21468
21471
  return `${e}${i}`;
21469
21472
  }, Ar = (s) => new Date(
21470
21473
  Date.UTC(s.getUTCFullYear(), s.getUTCMonth(), s.getUTCDate() + 1)
21471
- ).getUTCDate() === 1 ? "" : w.utcFormat("%-d")(s), gt = (s) => ["0", " 0", "00"].includes(w.utcFormat("%H")(s)) ? "" : `${w.utcFormat("%H")(s)}h`, ze = (s) => {
21472
- const e = w.utcFormat("%H:%M")(s);
21474
+ ).getUTCDate() === 1 ? "" : I.utcFormat("%-d")(s), gt = (s) => ["0", " 0", "00"].includes(I.utcFormat("%H")(s)) ? "" : `${I.utcFormat("%H")(s)}h`, Ye = (s) => {
21475
+ const e = I.utcFormat("%H:%M")(s);
21473
21476
  return e === "00:00" ? "" : e;
21474
- }, _i = (s) => w.utcFormat("%M:%S")(s), Lr = (s) => `${w.utcFormat("%Hh%Mm")(s)}`, Yi = (s) => {
21475
- const e = ze(s), t = Zt(s), i = w.utcFormat("%B")(s);
21477
+ }, _i = (s) => I.utcFormat("%M:%S")(s), Lr = (s) => `${I.utcFormat("%Hh%Mm")(s)}`, Yi = (s) => {
21478
+ const e = Ye(s), t = Zt(s), i = I.utcFormat("%B")(s);
21476
21479
  return e || `${i} ${t}`;
21477
21480
  }, Ii = (s) => {
21478
- const e = ze(s), t = Number.parseInt(w.utcFormat("%H")(s)), i = Zt(s), r = w.utcFormat("%B")(s);
21481
+ const e = Ye(s), t = Number.parseInt(I.utcFormat("%H")(s)), i = Zt(s), r = I.utcFormat("%B")(s);
21479
21482
  return e && t % 6 === 0 ? `${r} ${i} ${e}` : Yi(s);
21480
21483
  }, pt = (s) => (e) => {
21481
- const t = w.utcFormat("%H")(e);
21482
- return !(w.utcFormat("%M")(e) === "00" && Number.parseInt(t) % s === 0);
21484
+ const t = I.utcFormat("%H")(e);
21485
+ return !(I.utcFormat("%M")(e) === "00" && Number.parseInt(t) % s === 0);
21483
21486
  }, wi = (s) => (e) => {
21484
- const t = w.utcFormat("%M")(e);
21487
+ const t = I.utcFormat("%M")(e);
21485
21488
  return Number.parseInt(t) % s !== 0;
21486
21489
  }, Rr = (s) => (e) => {
21487
- const t = w.utcFormat("%M")(e), i = w.utcFormat("%S")(e);
21490
+ const t = I.utcFormat("%M")(e), i = I.utcFormat("%S")(e);
21488
21491
  return Number.parseInt(t) % s !== 0 && Number.parseInt(i) === 0;
21489
21492
  }, K = {
21490
21493
  _10_seconds: 25e-6,
@@ -21518,300 +21521,300 @@ const Ah = {
21518
21521
  [kt.overview]: [
21519
21522
  {
21520
21523
  precision: K._30_seconds,
21521
- interval: w.utcMinute.every(2),
21524
+ interval: I.utcMinute.every(2),
21522
21525
  format: Lr
21523
21526
  },
21524
21527
  {
21525
21528
  precision: K._1_minute,
21526
- interval: w.utcMinute.every(5),
21529
+ interval: I.utcMinute.every(5),
21527
21530
  format: Lr
21528
21531
  },
21529
21532
  {
21530
21533
  precision: K._2_minutes,
21531
- interval: w.utcMinute.every(10),
21534
+ interval: I.utcMinute.every(10),
21532
21535
  format: Yi
21533
21536
  },
21534
21537
  {
21535
21538
  precision: K._5_minutes,
21536
- interval: w.utcMinute.every(20),
21539
+ interval: I.utcMinute.every(20),
21537
21540
  format: Ii
21538
21541
  },
21539
21542
  {
21540
21543
  precision: K._15_minutes,
21541
- interval: w.utcHour,
21544
+ interval: I.utcHour,
21542
21545
  format: Ii
21543
21546
  },
21544
21547
  {
21545
21548
  precision: K._30_minutes,
21546
- interval: w.utcHour.every(2),
21549
+ interval: I.utcHour.every(2),
21547
21550
  format: Ii
21548
21551
  },
21549
21552
  {
21550
21553
  precision: K._2_hours,
21551
- interval: w.utcHour.every(6),
21554
+ interval: I.utcHour.every(6),
21552
21555
  format: (s) => {
21553
- const e = ze(s), t = Zt(s), i = w.utcFormat("%B")(s);
21556
+ const e = Ye(s), t = Zt(s), i = I.utcFormat("%B")(s);
21554
21557
  return e || `${i} ${t}`;
21555
21558
  }
21556
21559
  },
21557
21560
  {
21558
21561
  precision: K._3_hours,
21559
- interval: w.utcHour.every(12),
21562
+ interval: I.utcHour.every(12),
21560
21563
  format: Yi
21561
21564
  },
21562
21565
  {
21563
21566
  precision: K._6_hours,
21564
- interval: w.utcHour.every(24),
21567
+ interval: I.utcHour.every(24),
21565
21568
  format: (s) => {
21566
21569
  const e = Zt(s);
21567
- return `${w.utcFormat("%b")(s)} ${e}`;
21570
+ return `${I.utcFormat("%b")(s)} ${e}`;
21568
21571
  }
21569
21572
  },
21570
21573
  {
21571
21574
  precision: K._2_days,
21572
- interval: w.utcMonth,
21575
+ interval: I.utcMonth,
21573
21576
  format: (s) => {
21574
21577
  const t = s.getUTCMonth() === 0 && s.getUTCDate() === 1 ? "%Y – %B" : "%B";
21575
- return w.utcFormat(t)(s);
21578
+ return I.utcFormat(t)(s);
21576
21579
  }
21577
21580
  },
21578
21581
  {
21579
21582
  precision: K._2_year,
21580
- interval: w.utcYear.every(2),
21583
+ interval: I.utcYear.every(2),
21581
21584
  format: "%Y"
21582
21585
  },
21583
21586
  {
21584
21587
  precision: K._5_years,
21585
- interval: w.utcYear.every(5),
21588
+ interval: I.utcYear.every(5),
21586
21589
  format: "%Y"
21587
21590
  },
21588
21591
  {
21589
21592
  precision: K._20_years,
21590
- interval: w.utcYear.every(20),
21593
+ interval: I.utcYear.every(20),
21591
21594
  format: "%Y"
21592
21595
  },
21593
21596
  {
21594
21597
  precision: K._75_years,
21595
- interval: w.utcYear.every(75),
21598
+ interval: I.utcYear.every(75),
21596
21599
  format: "%Y"
21597
21600
  },
21598
21601
  {
21599
21602
  precision: K._300_years,
21600
- interval: w.utcYear.every(300),
21603
+ interval: I.utcYear.every(300),
21601
21604
  format: "%Y"
21602
21605
  },
21603
21606
  {
21604
21607
  precision: K.infinity,
21605
- interval: w.utcMonth.every(12),
21608
+ interval: I.utcMonth.every(12),
21606
21609
  format: "%Y"
21607
21610
  }
21608
21611
  ],
21609
21612
  [kt.detailed]: [
21610
21613
  {
21611
21614
  precision: K._10_seconds,
21612
- interval: w.utcSecond.every(10),
21615
+ interval: I.utcSecond.every(10),
21613
21616
  format: _i
21614
21617
  },
21615
21618
  {
21616
21619
  precision: K._20_seconds,
21617
- interval: (Dr = w.utcSecond.every(20)) == null ? void 0 : Dr.filter(Rr(2)),
21620
+ interval: (Dr = I.utcSecond.every(20)) == null ? void 0 : Dr.filter(Rr(2)),
21618
21621
  format: _i
21619
21622
  },
21620
21623
  {
21621
21624
  precision: K._30_seconds,
21622
- interval: (_r = w.utcSecond.every(30)) == null ? void 0 : _r.filter(Rr(2)),
21625
+ interval: (_r = I.utcSecond.every(30)) == null ? void 0 : _r.filter(Rr(2)),
21623
21626
  format: _i
21624
21627
  },
21625
21628
  {
21626
21629
  precision: K._1_minute,
21627
- interval: w.utcMinute.filter(wi(5)),
21628
- format: ze
21630
+ interval: I.utcMinute.filter(wi(5)),
21631
+ format: Ye
21629
21632
  },
21630
21633
  {
21631
21634
  precision: K._2_minutes,
21632
- interval: (Ir = w.utcMinute.every(2)) == null ? void 0 : Ir.filter(wi(10)),
21633
- format: ze
21635
+ interval: (Ir = I.utcMinute.every(2)) == null ? void 0 : Ir.filter(wi(10)),
21636
+ format: Ye
21634
21637
  },
21635
21638
  {
21636
21639
  precision: K._5_minutes,
21637
- interval: (wr = w.utcMinute.every(5)) == null ? void 0 : wr.filter(wi(20)),
21638
- format: ze
21640
+ interval: (wr = I.utcMinute.every(5)) == null ? void 0 : wr.filter(wi(20)),
21641
+ format: Ye
21639
21642
  },
21640
21643
  {
21641
21644
  precision: K._15_minutes,
21642
- interval: (kr = w.utcMinute.every(15)) == null ? void 0 : kr.filter(pt(1)),
21643
- format: ze
21645
+ interval: (kr = I.utcMinute.every(15)) == null ? void 0 : kr.filter(pt(1)),
21646
+ format: Ye
21644
21647
  },
21645
21648
  {
21646
21649
  precision: K._30_minutes,
21647
- interval: (Pr = w.utcMinute.every(30)) == null ? void 0 : Pr.filter(pt(2)),
21648
- format: ze
21650
+ interval: (Pr = I.utcMinute.every(30)) == null ? void 0 : Pr.filter(pt(2)),
21651
+ format: Ye
21649
21652
  },
21650
21653
  {
21651
21654
  precision: K._1_hour,
21652
- interval: w.utcHour.filter(pt(6)),
21655
+ interval: I.utcHour.filter(pt(6)),
21653
21656
  format: gt
21654
21657
  },
21655
21658
  {
21656
21659
  precision: K._2_hours,
21657
- interval: (Or = w.utcHour.every(2)) == null ? void 0 : Or.filter(pt(6)),
21660
+ interval: (Or = I.utcHour.every(2)) == null ? void 0 : Or.filter(pt(6)),
21658
21661
  format: gt
21659
21662
  },
21660
21663
  {
21661
21664
  precision: K._3_hours,
21662
- interval: (Fr = w.utcHour.every(3)) == null ? void 0 : Fr.filter(pt(12)),
21665
+ interval: (Fr = I.utcHour.every(3)) == null ? void 0 : Fr.filter(pt(12)),
21663
21666
  format: gt
21664
21667
  },
21665
21668
  {
21666
21669
  precision: K._4_hours,
21667
- interval: w.utcHour.every(4),
21670
+ interval: I.utcHour.every(4),
21668
21671
  format: gt
21669
21672
  },
21670
21673
  {
21671
21674
  precision: K._6_hours,
21672
- interval: w.utcHour.every(6),
21675
+ interval: I.utcHour.every(6),
21673
21676
  format: gt
21674
21677
  },
21675
21678
  {
21676
21679
  precision: K._1_day,
21677
- interval: w.utcDay,
21680
+ interval: I.utcDay,
21678
21681
  format: Ar
21679
21682
  },
21680
21683
  {
21681
21684
  precision: K._2_days,
21682
- interval: w.utcDay.every(2),
21685
+ interval: I.utcDay.every(2),
21683
21686
  format: Ar
21684
21687
  },
21685
21688
  {
21686
21689
  precision: K._1_month,
21687
- interval: w.utcMonth,
21690
+ interval: I.utcMonth,
21688
21691
  format: "%B"
21689
21692
  },
21690
21693
  {
21691
21694
  precision: K._1_month_abbr,
21692
- interval: w.utcMonth,
21695
+ interval: I.utcMonth,
21693
21696
  format: "%b"
21694
21697
  },
21695
21698
  {
21696
21699
  precision: K._1_month_letter,
21697
- interval: w.utcMonth,
21698
- format: (s) => w.utcFormat("%B")(s).charAt(0)
21700
+ interval: I.utcMonth,
21701
+ format: (s) => I.utcFormat("%B")(s).charAt(0)
21699
21702
  },
21700
21703
  {
21701
21704
  precision: K._3_months,
21702
- interval: w.utcMonth.every(3),
21705
+ interval: I.utcMonth.every(3),
21703
21706
  format: "Q%q"
21704
21707
  },
21705
21708
  {
21706
21709
  precision: K._2_year,
21707
- interval: w.utcMonth.every(6),
21710
+ interval: I.utcMonth.every(6),
21708
21711
  format: "%Y"
21709
21712
  },
21710
21713
  {
21711
21714
  precision: K._5_years,
21712
- interval: w.utcYear.every(2),
21715
+ interval: I.utcYear.every(2),
21713
21716
  format: "%Y"
21714
21717
  },
21715
21718
  {
21716
21719
  precision: K._20_years,
21717
- interval: w.utcYear.every(4),
21720
+ interval: I.utcYear.every(4),
21718
21721
  format: "%Y"
21719
21722
  },
21720
21723
  {
21721
21724
  precision: K._75_years,
21722
- interval: w.utcYear.every(25),
21725
+ interval: I.utcYear.every(25),
21723
21726
  format: "%Y"
21724
21727
  },
21725
21728
  {
21726
21729
  precision: K._300_years,
21727
- interval: w.utcYear.every(100),
21730
+ interval: I.utcYear.every(100),
21728
21731
  format: "%Y"
21729
21732
  },
21730
21733
  {
21731
21734
  precision: K.infinity,
21732
- interval: w.utcYear.every(500),
21735
+ interval: I.utcYear.every(500),
21733
21736
  format: ""
21734
21737
  }
21735
21738
  ],
21736
21739
  [kt.detailedBackground]: [
21737
21740
  {
21738
21741
  precision: K._10_seconds,
21739
- interval: w.utcSecond,
21742
+ interval: I.utcSecond,
21740
21743
  format: ""
21741
21744
  },
21742
21745
  {
21743
21746
  precision: K._20_seconds,
21744
- interval: w.utcSecond.every(5),
21747
+ interval: I.utcSecond.every(5),
21745
21748
  format: ""
21746
21749
  },
21747
21750
  {
21748
21751
  precision: K._30_seconds,
21749
- interval: w.utcSecond.every(10),
21752
+ interval: I.utcSecond.every(10),
21750
21753
  format: ""
21751
21754
  },
21752
21755
  {
21753
21756
  precision: K._1_minute,
21754
- interval: w.utcSecond.every(20),
21757
+ interval: I.utcSecond.every(20),
21755
21758
  format: ""
21756
21759
  },
21757
21760
  {
21758
21761
  precision: K._2_minutes,
21759
- interval: w.utcSecond.every(30),
21762
+ interval: I.utcSecond.every(30),
21760
21763
  format: ""
21761
21764
  },
21762
21765
  {
21763
21766
  precision: K._5_minutes,
21764
- interval: w.utcMinute,
21767
+ interval: I.utcMinute,
21765
21768
  format: ""
21766
21769
  },
21767
21770
  {
21768
21771
  precision: K._15_minutes,
21769
- interval: w.utcMinute.every(3),
21772
+ interval: I.utcMinute.every(3),
21770
21773
  format: ""
21771
21774
  },
21772
21775
  {
21773
21776
  precision: K._30_minutes,
21774
- interval: w.utcMinute.every(6),
21777
+ interval: I.utcMinute.every(6),
21775
21778
  format: ""
21776
21779
  },
21777
21780
  {
21778
21781
  precision: K._1_hour,
21779
- interval: w.utcMinute.every(15),
21782
+ interval: I.utcMinute.every(15),
21780
21783
  format: ""
21781
21784
  },
21782
21785
  {
21783
21786
  precision: K._2_hours,
21784
- interval: w.utcMinute.every(30),
21787
+ interval: I.utcMinute.every(30),
21785
21788
  format: ""
21786
21789
  },
21787
21790
  {
21788
21791
  precision: K._3_hours,
21789
- interval: w.utcHour,
21792
+ interval: I.utcHour,
21790
21793
  format: ""
21791
21794
  },
21792
21795
  {
21793
21796
  precision: K._4_hours,
21794
- interval: w.utcHour,
21797
+ interval: I.utcHour,
21795
21798
  format: ""
21796
21799
  },
21797
21800
  {
21798
21801
  precision: K._6_hours,
21799
- interval: w.utcMinute.every(120),
21802
+ interval: I.utcMinute.every(120),
21800
21803
  format: ""
21801
21804
  },
21802
21805
  {
21803
21806
  precision: K._1_day,
21804
- interval: w.utcHour.every(8),
21807
+ interval: I.utcHour.every(8),
21805
21808
  format: ""
21806
21809
  },
21807
21810
  {
21808
21811
  precision: K._2_days,
21809
- interval: w.utcHour.every(12),
21812
+ interval: I.utcHour.every(12),
21810
21813
  format: ""
21811
21814
  },
21812
21815
  {
21813
21816
  precision: K._1_month,
21814
- interval: w.utcDay.filter((s) => {
21817
+ interval: I.utcDay.filter((s) => {
21815
21818
  const e = s.getUTCDate(), t = new Date(
21816
21819
  s.getUTCFullYear(),
21817
21820
  s.getUTCMonth() + 1,
@@ -21823,7 +21826,7 @@ const Ah = {
21823
21826
  },
21824
21827
  {
21825
21828
  precision: K._1_month_abbr,
21826
- interval: w.utcDay.filter((s) => {
21829
+ interval: I.utcDay.filter((s) => {
21827
21830
  const e = s.getUTCDate(), t = new Date(
21828
21831
  s.getUTCFullYear(),
21829
21832
  s.getUTCMonth() + 1,
@@ -21835,7 +21838,7 @@ const Ah = {
21835
21838
  },
21836
21839
  {
21837
21840
  precision: K._1_month_letter,
21838
- interval: w.utcDay.filter((s) => {
21841
+ interval: I.utcDay.filter((s) => {
21839
21842
  const e = s.getUTCDate(), t = new Date(
21840
21843
  s.getUTCFullYear(),
21841
21844
  s.getUTCMonth() + 1,
@@ -21847,42 +21850,42 @@ const Ah = {
21847
21850
  },
21848
21851
  {
21849
21852
  precision: K._3_months,
21850
- interval: w.utcMonth,
21853
+ interval: I.utcMonth,
21851
21854
  format: ""
21852
21855
  },
21853
21856
  {
21854
21857
  precision: K._3_months,
21855
- interval: w.utcMonth,
21858
+ interval: I.utcMonth,
21856
21859
  format: ""
21857
21860
  },
21858
21861
  {
21859
21862
  precision: K._2_year,
21860
- interval: w.utcYear,
21863
+ interval: I.utcYear,
21861
21864
  format: ""
21862
21865
  },
21863
21866
  {
21864
21867
  precision: K._5_years,
21865
- interval: w.utcYear.every(2),
21868
+ interval: I.utcYear.every(2),
21866
21869
  format: ""
21867
21870
  },
21868
21871
  {
21869
21872
  precision: K._20_years,
21870
- interval: w.utcYear.every(5),
21873
+ interval: I.utcYear.every(5),
21871
21874
  format: ""
21872
21875
  },
21873
21876
  {
21874
21877
  precision: K._75_years,
21875
- interval: w.utcYear.every(20),
21878
+ interval: I.utcYear.every(20),
21876
21879
  format: ""
21877
21880
  },
21878
21881
  {
21879
21882
  precision: K._300_years,
21880
- interval: w.utcYear.every(100),
21883
+ interval: I.utcYear.every(100),
21881
21884
  format: ""
21882
21885
  },
21883
21886
  {
21884
21887
  precision: K.infinity,
21885
- interval: w.utcYear.every(500),
21888
+ interval: I.utcYear.every(500),
21886
21889
  format: ""
21887
21890
  }
21888
21891
  ]
@@ -21908,15 +21911,21 @@ const Ah = {
21908
21911
  name: "resize-observer",
21909
21912
  definition: vs
21910
21913
  }
21911
- ], Ye = {
21914
+ ], je = {
21912
21915
  milestone: "e-tl-milestone",
21916
+ milestoneBullet: "e-tl-milestone--bullet",
21917
+ milestoneDot: "e-tl-milestone--dot",
21913
21918
  milestoneContent: "e-tl-milestone-content",
21914
21919
  milestoneLine: "e-tl-milestone-line",
21915
21920
  milestonesContainer: "e-tl-milestones",
21916
21921
  milestoneHovered: "e-tl-milestone--hovered",
21917
21922
  milestoneSelected: "e-tl-milestone--selected",
21918
- milestoneLabel: "e-tl-milestone-label"
21919
- }, Rh = He.extend({
21923
+ milestoneLabel: "e-tl-milestone-label",
21924
+ milestoneDotContainer: "e-tl-milestone-dot-container",
21925
+ milestoneDotLine: "e-tl-milestone-dot-line",
21926
+ milestoneDotDot: "e-tl-milestone-dot-dot",
21927
+ milestoneDotHovered: "e-tl-milestone-dot--hovered"
21928
+ }, Rh = Ve.extend({
21920
21929
  name: "ETimeline",
21921
21930
  directives: {
21922
21931
  resizeObserver: vs
@@ -21945,64 +21954,145 @@ const Ah = {
21945
21954
  transitionDuration: {
21946
21955
  type: Number,
21947
21956
  default: 500
21957
+ },
21958
+ dot: {
21959
+ type: Boolean,
21960
+ default: !1
21961
+ },
21962
+ dotSize: {
21963
+ type: Number,
21964
+ default: 8
21965
+ },
21966
+ lineWidth: {
21967
+ type: Number,
21968
+ default: 2
21969
+ },
21970
+ lineHeight: {
21971
+ type: Number,
21972
+ default: 28
21948
21973
  }
21949
21974
  },
21950
21975
  data() {
21951
21976
  return {
21952
- milestoneClasses: Ye,
21953
- timeouts: []
21977
+ milestoneClasses: je,
21978
+ timeouts: [],
21979
+ isInitialRender: !0,
21980
+ isMouseOver: !1
21954
21981
  };
21955
21982
  },
21956
21983
  computed: {
21984
+ transitionStyles() {
21985
+ return this.isInitialRender ? {} : {
21986
+ transition: `transform ${this.transitionDuration}ms, width ${this.transitionDuration}ms, height ${this.transitionDuration}ms, padding ${this.transitionDuration}ms, border-radius ${this.transitionDuration}ms`
21987
+ };
21988
+ },
21989
+ sizeStyles() {
21990
+ return this.dot ? {} : {
21991
+ width: `${this.size}px`,
21992
+ height: `${this.size}px`
21993
+ };
21994
+ },
21995
+ positionStyles() {
21996
+ return this.dot && this.isMouseOver ? {
21997
+ transform: `translateY(calc(-100% - ${this.lineHeight}px))`
21998
+ } : {};
21999
+ },
21957
22000
  styles() {
21958
22001
  return {
21959
- width: `${this.size}px`,
21960
- height: `${this.size}px`,
22002
+ ...this.sizeStyles,
22003
+ ...this.positionStyles,
21961
22004
  backgroundColor: this.backgroundColor,
21962
22005
  borderColor: this.borderColor,
21963
22006
  borderWidth: `${this.borderWidth}px`,
21964
22007
  borderStyle: "solid",
21965
- transition: `transform ${this.transitionDuration}ms, width ${this.transitionDuration}ms, height ${this.transitionDuration}ms, padding ${this.transitionDuration}ms, border-radius ${this.transitionDuration}ms`
22008
+ ...this.transitionStyles
21966
22009
  };
21967
22010
  },
21968
22011
  contentStyles() {
22012
+ return this.transitionStyles;
22013
+ },
22014
+ computedTransitionDuration() {
22015
+ return this.isInitialRender ? 0 : this.transitionDuration;
22016
+ },
22017
+ labelStyles() {
21969
22018
  return {
21970
- transition: `width ${this.transitionDuration}ms, opacity ${this.transitionDuration}ms, fontSize ${this.transitionDuration}ms, fontWeight ${this.transitionDuration}ms`
22019
+ transition: `opacity ${this.computedTransitionDuration}ms`
21971
22020
  };
21972
22021
  },
21973
- labelStyles() {
22022
+ dotContainerStyles() {
22023
+ return {
22024
+ top: this.isMouseOver ? `calc(100% - ${this.borderWidth}px)` : `calc(50% + ${this.dotSize / 2}px)`,
22025
+ height: `calc(${this.lineHeight}px + ${this.dotSize}px)`,
22026
+ left: `calc(50% - ${this.lineWidth}px / 2)`,
22027
+ transition: `${this.computedTransitionDuration}ms`
22028
+ };
22029
+ },
22030
+ lineStyles() {
21974
22031
  return {
21975
- transition: `opacity ${this.transitionDuration}ms`
22032
+ bottom: `${this.dotSize / 2}px`,
22033
+ left: `calc(50% - ${this.lineWidth}px / 2)`,
22034
+ width: `${this.lineWidth}px`,
22035
+ height: this.isMouseOver ? `${this.lineHeight}px` : "0",
22036
+ backgroundColor: this.borderColor,
22037
+ transition: `${this.computedTransitionDuration}ms`
22038
+ };
22039
+ },
22040
+ dotStyles() {
22041
+ return {
22042
+ top: `${this.lineHeight}px`,
22043
+ left: `calc(50% - ${this.dotSize}px / 2)`,
22044
+ width: `${this.dotSize}px`,
22045
+ height: `${this.dotSize}px`,
22046
+ backgroundColor: this.borderColor,
22047
+ transition: `${this.computedTransitionDuration}ms`
21976
22048
  };
21977
22049
  }
21978
22050
  },
22051
+ mounted() {
22052
+ this.$nextTick(() => {
22053
+ this.dot || (this.onMilestoneMouseOver(), this.onMilestoneMouseLeave()), this.isInitialRender = !1;
22054
+ });
22055
+ },
21979
22056
  methods: {
21980
- onMilestoneMouseOver(s, e) {
21981
- const t = s.target;
22057
+ onMilestoneMouseOver(s) {
22058
+ if (this.isMouseOver = !0, this.dot)
22059
+ return;
22060
+ const e = (s == null ? void 0 : s.target) || this.$refs.container;
22061
+ if (!e)
22062
+ return;
22063
+ const t = e.children[0];
21982
22064
  if (!t)
21983
22065
  return;
21984
22066
  const i = t.children[0];
21985
22067
  if (!i)
21986
22068
  return;
21987
- const r = i.children[0];
21988
- if (!r)
21989
- return;
21990
- const n = r.getBoundingClientRect(), a = t.dataset.timeoutId;
21991
- a && (clearTimeout(Number(a)), t.dataset.timeoutId = ""), t.dataset.initialWidth || (t.dataset.initialWidth = t.style.width), t.dataset.initialHeight || (t.dataset.initialHeight = t.style.height), t.dataset.initialContentWidth || (t.dataset.initialContentWidth = String(n.width)), t.dataset.initialContentHeight || (t.dataset.initialContentHeight = String(n.height)), t.dataset.transitionStart = String(Date.now()), t.style.width = t.dataset.initialContentWidth + "px", t.style.height = t.dataset.initialContentHeight + "px", t.style.borderRadius = "0.5em", t.classList.add(Ye.milestoneHovered), i.style.opacity = "1", i.style.width = t.dataset.initialContentWidth + "px", i.style.height = t.dataset.initialContentHeight + "px";
22069
+ const r = i.getBoundingClientRect(), n = e.dataset.timeoutId;
22070
+ n && (clearTimeout(Number(n)), e.dataset.timeoutId = ""), e.dataset.initialWidth || (e.dataset.initialWidth = e.style.width), e.dataset.initialHeight || (e.dataset.initialHeight = e.style.height), e.dataset.initialContentWidth || (e.dataset.initialContentWidth = String(r.width)), e.dataset.initialContentHeight || (e.dataset.initialContentHeight = String(r.height)), e.dataset.transitionStart = String(Date.now()), e.style.width = e.dataset.initialContentWidth + "px", e.style.height = e.dataset.initialContentHeight + "px", e.style.borderRadius = "0.5em", e.classList.add(je.milestoneHovered), t.style.opacity = "1", t.style.width = e.dataset.initialContentWidth + "px", t.style.height = e.dataset.initialContentHeight + "px";
21992
22071
  },
21993
- onMilestoneMouseLeave(s, e) {
21994
- const t = s.target;
21995
- if (!t)
22072
+ onMilestoneMouseMove() {
22073
+ this.timeouts.forEach((s) => clearTimeout(s)), this.isMouseOver = !0;
22074
+ },
22075
+ onMilestoneMouseLeave(s) {
22076
+ if (this.dot) {
22077
+ this.timeouts.push(
22078
+ setTimeout(() => {
22079
+ this.isMouseOver = !1;
22080
+ }, this.transitionDuration + 100)
22081
+ );
21996
22082
  return;
21997
- t.style.width = t.dataset.initialWidth || "", t.style.height = t.dataset.initialHeight || "", t.style.borderRadius = "10em";
21998
- const i = t.children[0];
21999
- if (!i)
22083
+ }
22084
+ const e = (s == null ? void 0 : s.target) || this.$refs.container;
22085
+ if (!e)
22000
22086
  return;
22001
- i.style.width = "0", i.style.height = "0", i.style.opacity = "0";
22002
- const r = Date.now() - Number(t.dataset.transitionStart), n = r > this.transitionDuration ? this.transitionDuration : r, a = setTimeout(() => {
22003
- t.classList.remove(Ye.milestoneHovered), t.dataset.timeoutId = "";
22004
- }, n);
22005
- t.dataset.timeoutId = String(a), this.timeouts.push(a);
22087
+ e.style.width = e.dataset.initialWidth || "", e.style.height = e.dataset.initialHeight || "", e.style.borderRadius = "10em";
22088
+ const t = e.children[0];
22089
+ if (!t)
22090
+ return;
22091
+ t.style.width = "0", t.style.height = "0", t.style.opacity = "0";
22092
+ const i = Date.now() - Number(e.dataset.transitionStart), r = i > this.transitionDuration ? this.transitionDuration : i, n = setTimeout(() => {
22093
+ e.classList.remove(je.milestoneHovered), e.dataset.timeoutId = "";
22094
+ }, r);
22095
+ e.dataset.timeoutId = String(n), this.timeouts.push(n);
22006
22096
  },
22007
22097
  onMilestoneClick(s, e) {
22008
22098
  this.$emit("milestone-click", e);
@@ -22011,9 +22101,15 @@ const Ah = {
22011
22101
  });
22012
22102
  var Ch = function() {
22013
22103
  var e = this, t = e._self._c;
22014
- return t("div", { class: e.milestoneClasses.milestone, style: e.styles, attrs: { tabindex: "0" }, on: { mouseover: (i) => e.onMilestoneMouseOver(i, e.milestone), mouseleave: (i) => e.onMilestoneMouseLeave(i, e.milestone), click: (i) => e.onMilestoneClick(i, e.milestone) } }, [t("div", { class: e.milestoneClasses.milestoneContent, style: e.contentStyles }, [e._t("content", function() {
22104
+ return t("div", { ref: "container", class: {
22105
+ [e.milestoneClasses.milestone]: !0,
22106
+ [e.milestoneClasses.milestoneBullet]: !e.dot,
22107
+ [e.milestoneClasses.milestoneHovered]: e.isMouseOver && !e.dot,
22108
+ [e.milestoneClasses.milestoneDot]: e.dot,
22109
+ [e.milestoneClasses.milestoneDotHovered]: e.isMouseOver && e.dot
22110
+ }, style: e.styles, attrs: { tabindex: "0" }, on: { mouseover: (i) => e.onMilestoneMouseOver(i, e.milestone), mousemove: e.onMilestoneMouseMove, mouseleave: (i) => e.onMilestoneMouseLeave(i, e.milestone), click: (i) => e.onMilestoneClick(i, e.milestone) } }, [t("div", { class: e.milestoneClasses.milestoneContent, style: e.contentStyles }, [e._t("content", function() {
22015
22111
  return [t("span", [e._v(" " + e._s(e.milestone.text) + " ")])];
22016
- })], 2), t("div", { class: e.milestoneClasses.milestoneLabel, style: e.labelStyles }, [e._t("label")], 2)]);
22112
+ })], 2), e.dot ? t("div", { class: e.milestoneClasses.milestoneDotContainer, style: e.dotContainerStyles }, [t("div", { class: e.milestoneClasses.milestoneDotLine, style: e.lineStyles }), t("div", { class: e.milestoneClasses.milestoneDotDot, style: e.dotStyles })]) : t("div", { class: e.milestoneClasses.milestoneLabel, style: e.labelStyles }, [e._t("label")], 2)]);
22017
22113
  }, Dh = [], _h = /* @__PURE__ */ Ne(
22018
22114
  Rh,
22019
22115
  Ch,
@@ -22024,7 +22120,7 @@ var Ch = function() {
22024
22120
  null,
22025
22121
  null
22026
22122
  );
22027
- const Ih = _h.exports, H = {
22123
+ const Ih = _h.exports, G = {
22028
22124
  eventGroup: "event-group",
22029
22125
  eventGroupBg: "event-group-bg",
22030
22126
  eventRect: "event-rect",
@@ -22054,17 +22150,18 @@ const Ih = _h.exports, H = {
22054
22150
  milestoneHovered: "milestone--hovered",
22055
22151
  barChartGroup: "bar-chart-group",
22056
22152
  lineGraphGroup: "line-graph-group",
22153
+ lineGraphGroupLabel: "line-graph-group-label",
22057
22154
  lineGraphPath: "line-graph-path",
22058
22155
  lineGraphHoverZone: "line-graph-hover-zone",
22059
22156
  lineGraphDot: "line-graph-dot",
22060
22157
  curtain: "curtain",
22061
22158
  forbiddenInterval: "forbidden-interval"
22062
- }, De = {
22159
+ }, Ue = {
22063
22160
  transparencyGradient: "transparency-gradient",
22064
22161
  transparencyGradientLight: "transparency-gradient-light",
22065
22162
  loadingGradient: "loading-gradient",
22066
22163
  stripedPattern: "stripedPattern"
22067
- }, wh = He.extend({
22164
+ }, wh = Ve.extend({
22068
22165
  name: "ETimeline",
22069
22166
  directives: {
22070
22167
  resizeObserver: vs
@@ -22141,6 +22238,10 @@ const Ih = _h.exports, H = {
22141
22238
  type: Number,
22142
22239
  default: 60
22143
22240
  },
22241
+ chartMinLabelHeight: {
22242
+ type: Number,
22243
+ default: 18
22244
+ },
22144
22245
  minZoom: {
22145
22246
  type: Number,
22146
22247
  default: 1e-4
@@ -22204,6 +22305,18 @@ const Ih = _h.exports, H = {
22204
22305
  milestoneBulletSize: {
22205
22306
  type: Number,
22206
22307
  default: 18
22308
+ },
22309
+ milestonesFirst: {
22310
+ type: Boolean,
22311
+ default: !0
22312
+ },
22313
+ forbiddenIntervals: {
22314
+ type: Array,
22315
+ default: () => []
22316
+ },
22317
+ forbiddenIntervalColor: {
22318
+ type: String,
22319
+ default: "#ddd"
22207
22320
  }
22208
22321
  },
22209
22322
  data() {
@@ -22253,10 +22366,41 @@ const Ih = _h.exports, H = {
22253
22366
  markersDragBehavior: null,
22254
22367
  initialMarkerDragMouseOffset: 0,
22255
22368
  selectedMilestoneId: null,
22256
- isInitialized: !1
22369
+ isInitialized: !1,
22370
+ lastValidTransform: I.zoomIdentity
22257
22371
  };
22258
22372
  },
22259
22373
  computed: {
22374
+ combinedBarsHeight() {
22375
+ return Object.values(this.barGroups).reduce(
22376
+ (s, e) => s + (this.getBarGroupHeight(e) || this.barChartHeight),
22377
+ 0
22378
+ );
22379
+ },
22380
+ combinedBottomBarsHeight() {
22381
+ return Object.values(this.barGroups).reduce(
22382
+ (s, e) => s + (e.bottom ? this.getBarGroupHeight(e) : 0),
22383
+ 0
22384
+ );
22385
+ },
22386
+ combinedMilestonesHeight() {
22387
+ return Object.values(this.milestonesGroups).reduce(
22388
+ (s, e) => s + (e.height || this.barChartHeight),
22389
+ 0
22390
+ );
22391
+ },
22392
+ milestonesYOffset() {
22393
+ return this.milestonesFirst ? 0 : this.combinedBarsHeight - this.combinedBottomBarsHeight + (this.hasChart ? this.chartHeight : 0);
22394
+ },
22395
+ chartsYOffset() {
22396
+ return this.hasMilestones && this.milestonesFirst ? this.combinedMilestonesHeight : 0;
22397
+ },
22398
+ barsYOffset() {
22399
+ return (this.hasChart ? this.chartHeight : 0) + (this.hasMilestones && this.milestonesFirst ? this.combinedMilestonesHeight : 0);
22400
+ },
22401
+ hasMilestones() {
22402
+ return Object.keys(this.milestonesGroups).length > 0;
22403
+ },
22260
22404
  barChartHeight() {
22261
22405
  return this.barHeight + this.barYPadding;
22262
22406
  },
@@ -22274,7 +22418,7 @@ const Ih = _h.exports, H = {
22274
22418
  },
22275
22419
  lineGraphGroups() {
22276
22420
  return Object.entries(this.filteredEventsGroups).reduce(
22277
- (s, [e, t]) => t.chartType === qe.lineGraph ? { ...s, [e]: t } : s,
22421
+ (s, [e, t]) => t.chartType === Ae.lineGraph ? { ...s, [e]: t } : s,
22278
22422
  {}
22279
22423
  );
22280
22424
  },
@@ -22286,19 +22430,21 @@ const Ih = _h.exports, H = {
22286
22430
  },
22287
22431
  barGroups() {
22288
22432
  return Object.entries(this.filteredEventsGroups).reduce(
22289
- (s, [e, t]) => !t.chartType || t.chartType === qe.bars ? { ...s, [e]: t } : s,
22433
+ (s, [e, t]) => !t.chartType || [Ae.bars, Ae.dots].includes(
22434
+ t.chartType
22435
+ ) ? { ...s, [e]: t } : s,
22290
22436
  {}
22291
22437
  );
22292
22438
  },
22293
22439
  barChartGroups() {
22294
22440
  return Object.entries(this.filteredEventsGroups).reduce(
22295
- (s, [e, t]) => t.chartType === qe.barChart ? { ...s, [e]: t } : s,
22441
+ (s, [e, t]) => t.chartType === Ae.barChart ? { ...s, [e]: t } : s,
22296
22442
  {}
22297
22443
  );
22298
22444
  },
22299
22445
  milestonesGroups() {
22300
22446
  return Object.entries(this.filteredEventsGroups).reduce(
22301
- (s, [e, t]) => t.chartType === qe.milestones ? { ...s, [e]: t } : s,
22447
+ (s, [e, t]) => t.chartType === Ae.milestones ? { ...s, [e]: t } : s,
22302
22448
  {}
22303
22449
  );
22304
22450
  },
@@ -22318,10 +22464,7 @@ const Ih = _h.exports, H = {
22318
22464
  return this.axisHeight * s;
22319
22465
  },
22320
22466
  timelineHeight() {
22321
- const s = Object.values(
22322
- this.milestonesGroups
22323
- ).reduce((r, n) => r + (n.height || this.barChartHeight), 0), e = Object.keys(this.barGroups).length, t = this.barChartHeight * e, i = this.hasChart ? this.chartHeight : 0;
22324
- return this.combinedXAxesHeight + i + t + s;
22467
+ return (this.hasChart ? this.chartHeight : 0) + this.combinedXAxesHeight + this.combinedBarsHeight + this.combinedMilestonesHeight;
22325
22468
  },
22326
22469
  filteredEventsGroups() {
22327
22470
  const s = Object.entries(this.eventsGroups).filter(
@@ -22330,9 +22473,8 @@ const Ih = _h.exports, H = {
22330
22473
  return Object.fromEntries(s);
22331
22474
  },
22332
22475
  allEventsSorted() {
22333
- return Object.values(this.filteredEventsGroups).map((e) => e.events).flat().sort(
22334
- (e, t) => new Date(e.timestamp || e.startDate) > new Date(t.timestamp || t.startDate) ? 1 : -1
22335
- );
22476
+ const s = Object.values(this.filteredEventsGroups).map((e) => e.events).flat();
22477
+ return this.getSortedEvents(s);
22336
22478
  },
22337
22479
  oldestEvent() {
22338
22480
  let s;
@@ -22411,12 +22553,6 @@ const Ih = _h.exports, H = {
22411
22553
  startDate() {
22412
22554
  this.zoomToStartAndEndDates();
22413
22555
  },
22414
- minDate() {
22415
- this.updateForbiddenIntervals();
22416
- },
22417
- maxDate() {
22418
- this.updateForbiddenIntervals();
22419
- },
22420
22556
  endDate() {
22421
22557
  this.zoomToStartAndEndDates();
22422
22558
  },
@@ -22436,6 +22572,9 @@ const Ih = _h.exports, H = {
22436
22572
  },
22437
22573
  groupsVisibility() {
22438
22574
  this.updateAndRedrawTimeline();
22575
+ },
22576
+ forbiddenIntervals() {
22577
+ this.updateForbiddenIntervals(!0);
22439
22578
  }
22440
22579
  },
22441
22580
  created() {
@@ -22448,6 +22587,9 @@ const Ih = _h.exports, H = {
22448
22587
  this.clearTimeline(), document.removeEventListener("mouseup", this.handleDocumentMouseUp);
22449
22588
  },
22450
22589
  methods: {
22590
+ updateTimeline() {
22591
+ this.initOrUpdateSvg(), this.updateXAxes(), this.updateYScaleDomain(), this.updateForbiddenIntervals(), this.drawEventsGroups(), this.updateCurtains(), this.repositionSelectedTimestampCursor(), this.updateMarkers(), this.registerEventsListeners(), this.isInitialized = !0;
22592
+ },
22451
22593
  initTimeline(s, e) {
22452
22594
  if (this.initRefs(), !this.timeline || this.timeline.offsetWidth === 0) {
22453
22595
  this.timeouts.push(
@@ -22455,29 +22597,29 @@ const Ih = _h.exports, H = {
22455
22597
  );
22456
22598
  return;
22457
22599
  }
22458
- this.initSvg(), this.initDefs(), this.initUtcOffset(), this.initTimeScale(s, e), this.initXAxes(), this.initYScale(), this.initZoomBehavior(), this.initForbiddenIntervals(), this.drawEventsGroups(), this.curtains && (this.initCurtains(), this.emitCurtainChange()), this.initSelectedTimestampCursor(), this.updateMarkers(), this.registerEventsListeners(), this.emitVisibleInterval(Pt.initial), this.selectedDate && this.panOnDateClick && this.panToTimestamp(this.selectedDate), this.isInitialized = !0;
22600
+ this.initOrUpdateSvg(), this.initDefs(), this.initUtcOffset(), this.initTimeScale(s, e), this.initXAxes(), this.initYScale(), this.initZoomBehavior(), this.drawEventsGroups(), this.curtains && (this.initCurtains(), this.emitCurtainChange()), this.initSelectedTimestampCursor(), this.updateMarkers(), this.registerEventsListeners(), this.emitVisibleInterval(Pt.initial), this.selectedDate && this.panOnDateClick && this.panToTimestamp(this.selectedDate), this.isInitialized = !0;
22459
22601
  },
22460
22602
  initRefs() {
22461
22603
  this.tooltip = this.$refs.tooltip, this.cursor = this.$refs.cursor, this.timeline = this.$refs.timelineContainer, this.selectedTimestampCursor = this.$refs.selectedTimestamp, this.wrapperDiv = this.$refs.wrapperDiv;
22462
22604
  },
22463
- initSvg() {
22464
- this.svg = w.select(this.timeline).append("svg").attr("width", this.timeline.offsetWidth).attr("height", this.timelineHeight);
22605
+ initOrUpdateSvg() {
22606
+ this.svg || (this.svg = I.select(this.timeline).append("svg")), this.svg.attr("width", this.timeline.offsetWidth).attr("height", this.timelineHeight);
22465
22607
  },
22466
22608
  initDefs() {
22467
22609
  const s = this.svg.append("defs");
22468
22610
  Object.entries(this.filteredEventsGroups).forEach(
22469
22611
  ([t, i]) => {
22470
- const { color: r, chartType: n } = i, a = s.append("linearGradient").attr("id", `${De.loadingGradient}-${t}`).attr("x1", "0%").attr("y1", "0%").attr("x2", "100%").attr("y2", "0%");
22471
- a.append("stop").attr("offset", "0%").attr("stop-color", r).attr("stop-opacity", "0"), a.append("stop").attr("offset", "50%").attr("stop-color", r).attr("stop-opacity", "0.6"), a.append("stop").attr("offset", "100%").attr("stop-color", r).attr("stop-opacity", "0"), [qe.lineGraph, qe.barChart].includes(
22612
+ const { color: r, chartType: n } = i, a = s.append("linearGradient").attr("id", `${Ue.loadingGradient}-${t}`).attr("x1", "0%").attr("y1", "0%").attr("x2", "100%").attr("y2", "0%");
22613
+ a.append("stop").attr("offset", "0%").attr("stop-color", r).attr("stop-opacity", "0"), a.append("stop").attr("offset", "50%").attr("stop-color", r).attr("stop-opacity", "0.6"), a.append("stop").attr("offset", "100%").attr("stop-color", r).attr("stop-opacity", "0"), [Ae.lineGraph, Ae.barChart].includes(
22472
22614
  n
22473
22615
  ) && [
22474
22616
  {
22475
- id: De.transparencyGradientLight,
22617
+ id: Ue.transparencyGradientLight,
22476
22618
  stop: 38,
22477
22619
  opacity: 0.3
22478
22620
  },
22479
22621
  {
22480
- id: De.transparencyGradient,
22622
+ id: Ue.transparencyGradient,
22481
22623
  stop: 130,
22482
22624
  opacity: 0.4
22483
22625
  }
@@ -22486,36 +22628,45 @@ const Ih = _h.exports, H = {
22486
22628
  h.append("stop").attr("offset", "0%").style("stop-color", r).style("stop-opacity", u), h.append("stop").attr("offset", `${c}%`).style("stop-color", r).style("stop-opacity", 0);
22487
22629
  });
22488
22630
  }
22489
- ), s.append("pattern").attr("id", De.stripedPattern).attr("width", 6).attr("height", 4).attr("patternUnits", "userSpaceOnUse").attr("patternTransform", "rotate(45)").append("rect").attr("width", 2).attr("height", 6).attr("transform", "translate(0,0)").attr("fill", "#ddd");
22631
+ ), s.append("pattern").attr("id", Ue.stripedPattern).attr("width", 5).attr("height", 3).attr("patternUnits", "userSpaceOnUse").attr("patternTransform", "rotate(45)").append("rect").attr("width", 1).attr("height", 4).attr("transform", "translate(0,0)").attr("fill", this.forbiddenIntervalColor);
22490
22632
  },
22491
22633
  initUtcOffset() {
22492
22634
  const s = this.startDate || this.oldestEvent.timestamp || this.oldestEvent.startDate;
22493
- this.utcOffset = Ve.parseZone(s).utcOffset();
22635
+ this.utcOffset = Ke.parseZone(s).utcOffset();
22494
22636
  },
22495
22637
  initTimeScale(s, e) {
22496
22638
  const t = s || this.startDate || this.oldestEvent.timestamp || this.oldestEvent.startDate, i = e || this.endDate || this.latestEvent.timestamp || this.latestEvent.endDate;
22497
- this.timeScale = w.scaleTime().domain([this.tzStringToDate(t), this.tzStringToDate(i)]).range([0, this.timeline.offsetWidth]), this.initialTimeScale = this.timeScale.copy(), this.updateCurrentTimeScaleDensity();
22639
+ this.timeScale = I.scaleTime().domain([this.tzStringToDate(t), this.tzStringToDate(i)]).range([0, this.timeline.offsetWidth]), this.initialTimeScale = this.timeScale.copy(), this.updateCurrentTimeScaleDensity();
22498
22640
  },
22499
22641
  initXAxes() {
22500
22642
  let s = 0;
22501
22643
  const e = 5;
22502
22644
  for (const t in this.xAxesConfig) {
22503
22645
  const i = this.createAxis(t);
22504
- this.xAxes[t] = i, this.svg.append("g").classed(H.xAxis, !0).classed(`${H.xAxis}-${t}`, !0).attr("transform", `translate(0, ${s || e})`).call(i), this.translateTicksText(t), s += this.axisHeight;
22646
+ this.xAxes[t] = i, this.svg.append("g").classed(G.xAxis, !0).classed(`${G.xAxis}-${t}`, !0).attr("transform", `translate(0, ${s || e})`).call(i), this.translateTicksText(t), s += this.axisHeight;
22647
+ }
22648
+ this.updateXAxes();
22649
+ },
22650
+ updateXAxes() {
22651
+ let s = 0;
22652
+ const e = 5;
22653
+ for (const t in this.xAxesConfig) {
22654
+ const i = this.xAxes[t];
22655
+ i.tickSizeOuter(0), i.tickSizeInner(this.timelineHeight), this.svg.select(`.${G.xAxis}-${t}`).attr("transform", `translate(0, ${s || e})`).call(i), this.translateTicksText(t), s += this.axisHeight;
22505
22656
  }
22506
22657
  },
22507
22658
  initYScale() {
22508
- this.yScale = w.scaleLinear().range([this.chartHeight, 0]), this.updateYScaleDomain();
22659
+ this.yScale = I.scaleLinear().range([this.chartHeight, 0]), this.updateYScaleDomain();
22509
22660
  },
22510
22661
  updateYScaleDomain() {
22511
22662
  const [s, e] = this.timeScale.domain(), t = this.flattenedCounts.filter((r) => {
22512
22663
  const n = new Date(r.startDate || r.timestamp), a = new Date(r.endDate || r.timestamp);
22513
22664
  return a >= s && a <= e || n >= s && n <= e;
22514
- }), i = w.max(t, (r) => r.count);
22665
+ }), i = I.max(t, (r) => r.count);
22515
22666
  this.yScale.domain([0, i]);
22516
22667
  },
22517
22668
  initZoomBehavior() {
22518
- this.disableZoom || (this.zoomBehavior = w.zoom().on("zoom", this.handleZoom).scaleExtent([this.minZoom, this.maxZoom]), this.svg.call(this.zoomBehavior));
22669
+ this.disableZoom || (this.zoomBehavior = I.zoom().on("zoom", this.handleZoom).scaleExtent([this.minZoom, this.maxZoom]), this.svg.call(this.zoomBehavior), this.svg.call(this.zoomBehavior.transform, I.zoomIdentity));
22519
22670
  },
22520
22671
  zoomToFitMarkers() {
22521
22672
  const s = this.markers.map(
@@ -22535,14 +22686,14 @@ const Ih = _h.exports, H = {
22535
22686
  );
22536
22687
  },
22537
22688
  translateMarkersIntoView(s, e, t) {
22538
- const i = this.timeScale(new Date(s)), r = this.timeScale(new Date(e)), n = (i + r) / 2, o = this.svg.node().getBoundingClientRect().width / 2 - n, l = w.zoomTransform(this.svg.node());
22689
+ const i = this.timeScale(new Date(s)), r = this.timeScale(new Date(e)), n = (i + r) / 2, o = this.svg.node().getBoundingClientRect().width / 2 - n, l = I.zoomTransform(this.svg.node());
22539
22690
  this.svg.transition().duration(this.fitMarkersTransitionDuration / 2).call(
22540
22691
  this.zoomBehavior.transform,
22541
- w.zoomIdentity.translate(l.x + o, l.y).scale(t)
22692
+ I.zoomIdentity.translate(l.x + o, l.y).scale(t)
22542
22693
  );
22543
22694
  },
22544
22695
  initSelectedTimestampCursor() {
22545
- this.svg.append("line").attr("class", H.selectedTimestampCursor).style("stroke", "red").style("stroke-width", "1px").style("opacity", 0).attr("x1", 0).attr("x2", 0).attr("y1", 0).attr("y2", this.timelineHeight), this.repositionSelectedTimestampCursor();
22696
+ this.svg.append("line").attr("class", G.selectedTimestampCursor).style("stroke", "red").style("stroke-width", "1px").style("opacity", 0).attr("x1", 0).attr("x2", 0).attr("y1", 0), this.repositionSelectedTimestampCursor();
22546
22697
  },
22547
22698
  updateMarkers() {
22548
22699
  if (!this.markers.length)
@@ -22566,20 +22717,19 @@ const Ih = _h.exports, H = {
22566
22717
  }), this.initMarkersDragBehavior();
22567
22718
  },
22568
22719
  updateAndRedrawTimeline() {
22569
- const { startDate: s, endDate: e } = this.getCurrentTimeBounds();
22570
- this.clearTimeline(), this.initTimeline(s, e);
22720
+ this.updateTimeline();
22571
22721
  },
22572
22722
  clearTimeline() {
22573
22723
  this.svg && this.svg.remove(), this.countsByTimestamp = {};
22574
22724
  },
22575
22725
  repositionSelectedTimestampCursor() {
22576
- const s = this.svg.select(`.${H.selectedTimestampCursor}`);
22726
+ const s = this.svg.select(`.${G.selectedTimestampCursor}`);
22577
22727
  if (!this.selectedTimestamp) {
22578
22728
  s.style("opacity", 0);
22579
22729
  return;
22580
22730
  }
22581
22731
  const e = this.tzStringToDate(this.selectedTimestamp), t = this.timeScale(e);
22582
- isNaN(t) ? s.style("opacity", 0) : s.attr("x1", t).attr("x2", t).style("opacity", 0.5);
22732
+ isNaN(t) ? s.style("opacity", 0) : s.attr("x1", t).attr("x2", t).style("opacity", 0.5), s.attr("y2", this.timelineHeight);
22583
22733
  },
22584
22734
  updateCurrentTimeScaleDensity() {
22585
22735
  const s = this.timeScale.invert(0).getTime(), e = this.timeScale.invert(1).getTime(), t = 36e5, i = (e - s) / t;
@@ -22603,14 +22753,14 @@ const Ih = _h.exports, H = {
22603
22753
  },
22604
22754
  createAxis(s) {
22605
22755
  const e = this.xAxesConfig[s], t = this.getAxisTicksConfig(e);
22606
- return w.axisBottom(this.timeScale).ticks(t.interval).tickFormat(t.formatFn).tickSizeOuter(0).tickSizeInner(this.timelineHeight);
22756
+ return I.axisBottom(this.timeScale).ticks(t.interval).tickFormat(t.formatFn).tickSizeOuter(0).tickSizeInner(this.timelineHeight);
22607
22757
  },
22608
22758
  getAxisTicksConfig(s) {
22609
22759
  const { interval: e, format: t } = s.find(
22610
22760
  (r) => r.precision >= this.currentTimeScaleDensity && r.interval
22611
22761
  );
22612
22762
  return {
22613
- formatFn: (r) => typeof t == "function" ? t(r) : w.timeFormat(t)(r),
22763
+ formatFn: (r) => typeof t == "function" ? t(r) : I.timeFormat(t)(r),
22614
22764
  interval: e
22615
22765
  };
22616
22766
  },
@@ -22624,13 +22774,13 @@ const Ih = _h.exports, H = {
22624
22774
  if (!this.showLabels)
22625
22775
  return;
22626
22776
  const s = this;
22627
- this.svg.selectAll(`.${H.labelBg}`).each(function() {
22628
- w.select(this).style("fill", s.dark ? "black" : "white");
22629
- }), this.svg.selectAll(`.${H.labelBgFill}`).each(function() {
22630
- const e = w.select(this), t = e.node().dataset.color;
22777
+ this.svg.selectAll(`.${G.labelBg}`).each(function() {
22778
+ I.select(this).style("fill", s.dark ? "black" : "white");
22779
+ }), this.svg.selectAll(`.${G.labelBgFill}`).each(function() {
22780
+ const e = I.select(this), t = e.node().dataset.color;
22631
22781
  e.style("fill", s.getLabelBackgroundColor(t)).style("stroke", s.getTextFillColor(t)).style("stroke-width", 0.25);
22632
- }), this.svg.selectAll(`.${H.labelText}`).each(function() {
22633
- const e = w.select(this), t = e.node().dataset.color;
22782
+ }), this.svg.selectAll(`.${G.labelText}`).each(function() {
22783
+ const e = I.select(this), t = e.node().dataset.color;
22634
22784
  e.style("fill", s.getTextFillColor(t));
22635
22785
  });
22636
22786
  },
@@ -22693,24 +22843,33 @@ const Ih = _h.exports, H = {
22693
22843
  this.isHoveringEvent = !1, this.hoveredEvent = null, this.$emit("event-mouseout");
22694
22844
  },
22695
22845
  handleLabelMouseOver(s) {
22696
- w.selectAll(`.${H.lineGraphGroup}-${s}`).classed(
22697
- `${H.lineGraphGroup}--highlighted`,
22846
+ I.selectAll(`.${G.lineGraphGroup}-${s}`).classed(
22847
+ `${G.lineGraphGroup}--highlighted`,
22698
22848
  !0
22699
- ), w.selectAll(`.${H.lineGraphGroup}-label`).classed(
22700
- `${H.lineGraphGroup}-label--highlighted`,
22849
+ ), I.selectAll(`.${G.lineGraphGroupLabel}`).classed(
22850
+ `${G.lineGraphGroupLabel}--highlighted`,
22701
22851
  !0
22702
22852
  );
22703
22853
  },
22704
22854
  handleLabelMouseLeave(s) {
22705
- w.selectAll(`.${H.lineGraphGroup}-${s}`).classed(
22706
- `${H.lineGraphGroup}--highlighted`,
22855
+ I.selectAll(`.${G.lineGraphGroup}-${s}`).classed(
22856
+ `${G.lineGraphGroup}--highlighted`,
22707
22857
  !1
22708
- ), w.selectAll(`.${H.lineGraphGroup}-label`).classed(
22709
- `${H.lineGraphGroup}-label--highlighted`,
22858
+ ), I.selectAll(`.${G.lineGraphGroupLabel}`).classed(
22859
+ `${G.lineGraphGroupLabel}--highlighted`,
22710
22860
  !1
22711
22861
  );
22712
22862
  },
22863
+ isZoomAllowed(s) {
22864
+ const e = this.initialTimeScale.copy(), t = s.transform.rescaleX(e).domain(), i = this.minDate ? this.tzStringToDate(this.minDate) : void 0, r = this.maxDate ? this.tzStringToDate(this.maxDate) : void 0;
22865
+ return (!i || t[0] >= i) && (!r || t[1] <= r);
22866
+ },
22713
22867
  handleZoom(s) {
22868
+ if (!this.isZoomAllowed(s)) {
22869
+ s.sourceEvent.preventDefault(), this.svg.call(this.zoomBehavior.transform, this.lastValidTransform);
22870
+ return;
22871
+ }
22872
+ this.lastValidTransform = s.transform;
22714
22873
  const e = s.transform.rescaleX(this.initialTimeScale);
22715
22874
  this.timeScale.domain(e.domain()), this.updateCurrentTimeScaleDensity(), this.updateYScaleDomain();
22716
22875
  const t = s.transform.k / this.lastTransform.k;
@@ -22723,10 +22882,10 @@ const Ih = _h.exports, H = {
22723
22882
  this.updateEventsBars(), this.updateLineGraphs(), this.updateBarChart(), this.updateLineGraphHoverZones(), this.updateMilestonesPositions(), this.repositionSelectedTimestampCursor(), this.updateForbiddenIntervals(), this.updateMarkers(), this.emitVisibleInterval(Pt.zoom), this.curtains && this.emitCurtainChange();
22724
22883
  },
22725
22884
  panToTimestamp(s) {
22726
- const e = this.tzStringToDate(s), t = this.timeScale(e), i = w.zoomTransform(this.svg.node()), r = i.x - t + this.timeline.offsetWidth / 2;
22885
+ const e = this.tzStringToDate(s), t = this.timeScale(e), i = I.zoomTransform(this.svg.node()), r = i.x - t + this.timeline.offsetWidth / 2;
22727
22886
  this.svg.transition().duration(this.panTransitionDuration).call(
22728
22887
  this.zoomBehavior.transform,
22729
- w.zoomIdentity.translate(r, 0).scale(i.k)
22888
+ I.zoomIdentity.translate(r, 0).scale(i.k)
22730
22889
  ), this.emitVisibleInterval(Pt.autoPan);
22731
22890
  },
22732
22891
  emitCurtainChange() {
@@ -22752,7 +22911,7 @@ const Ih = _h.exports, H = {
22752
22911
  s.x,
22753
22912
  this.timeline.offsetWidth - this.rightCurtainWidth
22754
22913
  );
22755
- this.leftCurtainWidth = Math.max(0, e), this.svg.select(`.${H.curtain}--left`).attr("width", this.leftCurtainWidth), this.emitCurtainChange();
22914
+ this.leftCurtainWidth = Math.max(0, e), this.svg.select(`.${G.curtain}--left`).attr("width", this.leftCurtainWidth), this.emitCurtainChange();
22756
22915
  },
22757
22916
  handleRightDrag(s) {
22758
22917
  s.sourceEvent.stopPropagation();
@@ -22760,51 +22919,51 @@ const Ih = _h.exports, H = {
22760
22919
  this.timeline.offsetWidth - s.x,
22761
22920
  this.timeline.offsetWidth - this.leftCurtainWidth
22762
22921
  ), i = e - t;
22763
- this.rightCurtainWidth = Math.max(0, t), this.svg.select(`.${H.curtain}--right`).attr("width", this.rightCurtainWidth).attr("x", i), this.emitCurtainChange();
22922
+ this.rightCurtainWidth = Math.max(0, t), this.svg.select(`.${G.curtain}--right`).attr("width", this.rightCurtainWidth).attr("x", i), this.emitCurtainChange();
22764
22923
  },
22765
22924
  zoomToStartAndEndDates() {
22766
22925
  const s = this.startDate || this.oldestEvent.timestamp || this.oldestEvent.startDate, e = this.endDate || this.latestEvent.timestamp || this.latestEvent.endDate, t = this.tzStringToDate(s), i = this.tzStringToDate(e);
22767
22926
  this.initialTimeScale.domain([t, i]);
22768
- const r = w.zoomTransform(this.svg.node()), n = i.getTime() - t.getTime(), o = this.initialTimeScale.range().map((f) => this.initialTimeScale.invert(f)).reduce((f, m) => m.getTime() - f, 0) / n * r.k, c = -(this.initialTimeScale(t) * o), [u, h] = this.zoomBehavior.scaleExtent(), d = Math.max(u, Math.min(h, o));
22927
+ const r = I.zoomTransform(this.svg.node()), n = i.getTime() - t.getTime(), o = this.initialTimeScale.range().map((f) => this.initialTimeScale.invert(f)).reduce((f, m) => m.getTime() - f, 0) / n * r.k, c = -(this.initialTimeScale(t) * o), [u, h] = this.zoomBehavior.scaleExtent(), d = Math.max(u, Math.min(h, o));
22769
22928
  this.svg.transition().duration(this.zoomToBoundariesTransitionDuration).call(
22770
22929
  this.zoomBehavior.transform,
22771
- w.zoomIdentity.translate(c, 0).scale(d)
22930
+ I.zoomIdentity.translate(c, 0).scale(d)
22772
22931
  );
22773
22932
  },
22774
22933
  rescaleAxis(s, e) {
22775
22934
  const t = this.xAxes[s], i = this.getAxisTicksConfig(
22776
22935
  this.xAxesConfig[s]
22777
22936
  );
22778
- t.scale(e).ticks(i.interval).tickFormat(i.formatFn).tickSizeOuter(0), this.svg.select(`.${H.xAxis}-${s}`).call(t);
22937
+ t.scale(e).ticks(i.interval).tickFormat(i.formatFn).tickSizeOuter(0), this.svg.select(`.${G.xAxis}-${s}`).call(t);
22779
22938
  },
22780
22939
  translateTicksText(s) {
22781
- this.svg.select(`.${H.xAxis}-${s}`).selectAll(".tick text").each(function() {
22782
- let e = w.select(this), t = e.node().getBBox();
22940
+ this.svg.select(`.${G.xAxis}-${s}`).selectAll(".tick text").each(function() {
22941
+ let e = I.select(this), t = e.node().getBBox();
22783
22942
  e.attr("x", t.height / 2).attr("y", 0).style("text-anchor", "start");
22784
22943
  });
22785
22944
  },
22786
22945
  updateEventsBars() {
22787
- const s = `.${H.eventGroup} > rect.${H.eventRect}`;
22788
- this.svg.selectAll(s).attr("x", this.getEventRectX).attr("width", this.getEventRectWidth);
22789
- const e = `.${H.eventGroup} > text.${H.eventRectText}`;
22790
- this.svg.selectAll(e).attr("x", (t) => this.getEventRectX(t) + this.textPadding).text(this.getEventText);
22946
+ const s = `.${G.eventGroup} > rect.${G.eventRect}`, e = `${s}:not(.${G.eventRect}--dot)`;
22947
+ this.svg.selectAll(s).attr("x", this.getEventRectX), this.svg.selectAll(e).attr("width", this.getEventRectWidth);
22948
+ const t = `.${G.eventGroup} > text.${G.eventRectText}`;
22949
+ this.svg.selectAll(t).attr("x", (i) => this.getEventRectX(i) + this.textPadding).text(this.getEventText);
22791
22950
  },
22792
22951
  updateBarChart() {
22793
22952
  const s = Object.keys(this.barChartGroups).length;
22794
22953
  Object.keys(this.barChartGroups).forEach((e, t) => {
22795
- const i = (d) => (this.getEventRectWidth(d) - this.barXPadding * 2) / s, r = (d) => this.yScale.range()[0] - this.yScale(d.count), n = (d) => this.getEventRectX(d) + this.barXPadding + t * i(d), a = (d) => this.yScale(d.count), o = `.${H.eventBarContainer}-${e}`, l = this.svg.selectAll(o), c = `.${H.barChartGroup} rect.${H.eventBarHoverZone}`;
22954
+ const i = (d) => (this.getEventRectWidth(d) - this.barXPadding * 2) / s, r = (d) => this.yScale.range()[0] - this.yScale(d.count), n = (d) => this.getEventRectX(d) + this.barXPadding + t * i(d), a = (d) => this.yScale(d.count), o = `.${G.eventBarContainer}-${e}`, l = this.svg.selectAll(o), c = `.${G.barChartGroup} rect.${G.eventBarHoverZone}`;
22796
22955
  l.selectAll(c).attr("x", n).attr("width", i);
22797
- const u = `.${H.barChartGroup} rect.${H.eventBar}`;
22956
+ const u = `.${G.barChartGroup} rect.${G.eventBar}`;
22798
22957
  l.selectAll(u).attr("x", n).attr("width", i).attr("y", a).attr("height", r);
22799
- const h = `.${H.barChartGroup} rect.${H.eventBarCap}`;
22958
+ const h = `.${G.barChartGroup} rect.${G.eventBarCap}`;
22800
22959
  l.selectAll(h).attr("x", n).attr("width", i).attr("y", a);
22801
22960
  });
22802
22961
  },
22803
22962
  updateLineGraphs() {
22804
22963
  Object.entries(this.lineGraphGroups).forEach(([s]) => {
22805
- const e = w.area().x((t) => this.timeScale(this.tzStringToDate(t.timestamp))).y0(this.timelineHeight).y1((t) => this.yScale(t.count)).curve(w.curveMonotoneX);
22964
+ const e = I.area().x((t) => this.timeScale(this.tzStringToDate(t.timestamp))).y0(this.timelineHeight).y1((t) => this.yScale(t.count)).curve(I.curveMonotoneX);
22806
22965
  this.svg.selectAll(
22807
- `.${H.lineGraphPath}-${s}`
22966
+ `.${G.lineGraphPath}-${s}`
22808
22967
  ).attr("d", (t) => e(t));
22809
22968
  });
22810
22969
  },
@@ -22812,14 +22971,14 @@ const Ih = _h.exports, H = {
22812
22971
  Object.keys(this.lineGraphGroups).forEach((s) => {
22813
22972
  const e = this;
22814
22973
  this.svg.selectAll(
22815
- `.${H.lineGraphDot}-${s}`
22974
+ `.${G.lineGraphDot}-${s}`
22816
22975
  ).each(function(t) {
22817
- w.select(this).attr("cx", e.timeScale(e.tzStringToDate(t.timestamp))).attr("cy", e.yScale(t.count));
22976
+ I.select(this).attr("cx", e.timeScale(e.tzStringToDate(t.timestamp))).attr("cy", e.yScale(t.count));
22818
22977
  }), this.svg.selectAll(
22819
- `.${H.lineGraphHoverZone}-${s}`
22978
+ `.${G.lineGraphHoverZone}-${s}`
22820
22979
  ).each(function(t) {
22821
22980
  const i = e.timeScale(e.tzStringToDate(t.timestamp).getTime()) - 15;
22822
- w.select(this).attr("x", i).attr("y", 0).attr("width", 30).attr("height", e.chartHeight);
22981
+ I.select(this).attr("x", i).attr("y", 0).attr("width", 30).attr("height", e.chartHeight);
22823
22982
  });
22824
22983
  });
22825
22984
  },
@@ -22849,7 +23008,7 @@ const Ih = _h.exports, H = {
22849
23008
  return parseInt(e.left);
22850
23009
  },
22851
23010
  isTimestampAllowedForMarker(s, e) {
22852
- return (this.minDate ? s >= this.tzStringToDate(this.minDate) : !0) && (this.maxDate ? s <= this.tzStringToDate(this.maxDate) : !0) && (e.minDate ? s >= this.tzStringToDate(e.minDate) : !0) && (e.maxDate ? s <= this.tzStringToDate(e.maxDate) : !0);
23011
+ return (e.minDate ? s >= this.tzStringToDate(e.minDate) : !0) && (e.maxDate ? s <= this.tzStringToDate(e.maxDate) : !0);
22853
23012
  },
22854
23013
  handleMarkerDrag({
22855
23014
  marker: s,
@@ -22858,94 +23017,94 @@ const Ih = _h.exports, H = {
22858
23017
  }) {
22859
23018
  if (!s.isDraggable)
22860
23019
  return;
22861
- t.type === "start" && (this.initialMarkerDragMouseOffset = t.x - e.node().querySelector(`.${H.markerLine}`).getBoundingClientRect().left, e.classed(H.markerDragged, !0));
23020
+ t.type === "start" && (this.initialMarkerDragMouseOffset = t.x - e.node().querySelector(`.${G.markerLine}`).getBoundingClientRect().left, e.classed(G.markerDragged, !0));
22862
23021
  const i = t.x - this.initialMarkerDragMouseOffset, r = this.timeScale.invert(
22863
23022
  i - this.svg.node().getBoundingClientRect().left
22864
23023
  ), n = this.timeScale(r), a = this.isTimestampAllowedForMarker(
22865
23024
  r,
22866
23025
  s
22867
23026
  );
22868
- t.type === "drag" && a && e.attr("style", `left: ${n}px`), t.type === "end" && a && (this.markersPositions = {
22869
- ...this.markersPositions,
22870
- [s.id || s.timestamp]: {
22871
- ...this.markersPositions[s.id || s.timestamp],
22872
- position: n
22873
- }
22874
- }, e.classed(H.markerDragged, !1)), t.type !== "start" && this.$emit(`marker-drag-${t.type}`, {
23027
+ if (t.type === "drag" && a && e.attr("style", `left: ${n}px`), t.type === "end" && a) {
23028
+ const o = s.id || s.timestamp;
23029
+ this.markersPositions = {
23030
+ ...this.markersPositions,
23031
+ [o]: {
23032
+ ...this.markersPositions[o],
23033
+ position: n
23034
+ }
23035
+ }, e.classed(G.markerDragged, !1);
23036
+ }
23037
+ t.type !== "start" && this.$emit(`marker-drag-${t.type}`, {
22875
23038
  marker: s,
22876
23039
  newTimestamp: r.toISOString()
22877
23040
  });
22878
23041
  },
22879
23042
  removeMarkersDragBehavior() {
22880
- this.markersDragBehavior && (this.markersDragBehavior.on("start", null).on("drag", null).on("end", null), w.selectAll(`.${H.marker}`).call(
23043
+ this.markersDragBehavior && (this.markersDragBehavior.on("start", null).on("drag", null).on("end", null), I.selectAll(`.${G.marker}`).call(
22881
23044
  this.markersDragBehavior
22882
23045
  ));
22883
23046
  },
22884
23047
  initMarkersDragBehavior() {
22885
23048
  this.removeMarkersDragBehavior();
22886
23049
  const s = this;
22887
- this.markersDragBehavior = w.drag().on("start", function(e, t) {
23050
+ this.markersDragBehavior = I.drag().on("start", function(e, t) {
22888
23051
  var i;
22889
23052
  (i = e.sourceEvent) == null || i.preventDefault(), s.handleMarkerDrag({
22890
23053
  marker: t,
22891
- markerElement: w.select(this),
23054
+ markerElement: I.select(this),
22892
23055
  dragEvent: e
22893
23056
  });
22894
23057
  }).on("drag", function(e, t) {
22895
23058
  s.handleMarkerDrag({
22896
23059
  marker: t,
22897
- markerElement: w.select(this),
23060
+ markerElement: I.select(this),
22898
23061
  dragEvent: e
22899
23062
  });
22900
23063
  }).on("end", function(e, t) {
22901
23064
  s.handleMarkerDrag({
22902
23065
  marker: t,
22903
- markerElement: w.select(this),
23066
+ markerElement: I.select(this),
22904
23067
  dragEvent: e
22905
23068
  });
22906
- }), w.selectAll(`.${H.marker}`).data(this.sortedMarkers).call(this.markersDragBehavior);
23069
+ }), I.selectAll(`.${G.marker}`).data(this.sortedMarkers).call(this.markersDragBehavior);
22907
23070
  },
22908
23071
  initCurtains() {
22909
- if (!this.curtains)
22910
- return;
23072
+ this.createCurtains(), this.updateCurtains();
23073
+ },
23074
+ createCurtains() {
23075
+ this.curtains && (this.svg.append("rect").classed(`${G.curtain} ${G.curtain}--left`, !0).attr("fill", "rgba(0, 0, 0, 0.5)").on("mouseenter", () => this.isHoveringCurtain = !0).on("mouseleave", () => this.isHoveringCurtain = !1).call(
23076
+ I.drag().on("start", this.handleDragStart).on("drag", this.handleLeftDrag).on("end", this.handleDragEnd)
23077
+ ), this.svg.append("rect").classed(`${G.curtain} ${G.curtain}--right`, !0).attr("fill", "rgba(0, 0, 0, 0.5)").on("mouseenter", () => this.isHoveringCurtain = !0).on("mouseleave", () => this.isHoveringCurtain = !1).call(
23078
+ I.drag().on("start", this.handleDragStart).on("drag", this.handleRightDrag).on("end", this.handleDragEnd)
23079
+ ), this.updateCurtains());
23080
+ },
23081
+ updateCurtains() {
22911
23082
  const s = this.timeline.offsetWidth, e = this.timelineHeight;
22912
- this.svg.append("rect").classed(`${H.curtain} ${H.curtain}--left`, !0).attr("width", this.leftCurtainWidth).attr("height", e + this.curtainHandleWidth * 2).attr("y", -this.curtainHandleWidth).attr("x", -this.curtainHandleWidth).attr("fill", "rgba(0, 0, 0, 0.5)").on("mouseenter", () => this.isHoveringCurtain = !0).on("mouseleave", () => this.isHoveringCurtain = !1).call(
22913
- w.drag().on("start", this.handleDragStart).on("drag", this.handleLeftDrag).on("end", this.handleDragEnd)
22914
- ), this.svg.append("rect").classed(`${H.curtain} ${H.curtain}--right`, !0).attr(
23083
+ this.svg.select(`.${G.curtain}--left`).attr("width", this.leftCurtainWidth).attr("height", e + this.curtainHandleWidth * 2).attr("y", -this.curtainHandleWidth).attr("x", -this.curtainHandleWidth), this.svg.select(`.${G.curtain}--right`).attr(
22915
23084
  "x",
22916
- s - this.rightCurtainWidth + this.curtainHandleWidth * 2
22917
- ).attr("y", -this.curtainHandleWidth).attr("width", this.rightCurtainWidth + this.curtainHandleWidth * 2).attr("height", e + this.curtainHandleWidth * 2).attr("fill", "rgba(0, 0, 0, 0.5)").on("mouseenter", () => this.isHoveringCurtain = !0).on("mouseleave", () => this.isHoveringCurtain = !1).call(
22918
- w.drag().on("start", this.handleDragStart).on("drag", this.handleRightDrag).on("end", this.handleDragEnd)
22919
- );
22920
- },
22921
- initForbiddenIntervals() {
22922
- this.minDate && this.svg.append("rect").attr(
22923
- "class",
22924
- `${H.forbiddenInterval} ${H.forbiddenInterval}--min`
22925
- ), this.maxDate && this.svg.append("rect").attr(
22926
- "class",
22927
- `${H.forbiddenInterval} ${H.forbiddenInterval}--max`
22928
- ), this.updateForbiddenIntervals();
22929
- },
22930
- updateForbiddenIntervals() {
22931
- const s = this.minDate ? this.tzStringToDate(this.minDate).getTime() : null, e = this.maxDate ? this.tzStringToDate(this.maxDate).getTime() : null;
22932
- if (s) {
22933
- const t = this.timeScale(s);
22934
- this.svg.select(`.${H.forbiddenInterval}--min`).attr("x", 0).attr("y", 0).attr("width", t > 0 ? t : 0).attr("height", this.timelineHeight).attr("fill", `url(#${De.stripedPattern})`);
22935
- }
22936
- if (e) {
22937
- const t = this.timeline.offsetWidth - this.timeScale(e), i = this.timeScale(e);
22938
- this.svg.select(`.${H.forbiddenInterval}--max`).attr("x", i > 0 ? i : 0).attr("y", 0).attr("width", t > 0 ? t : 0).attr("height", this.timelineHeight).attr("fill", `url(#${De.stripedPattern})`);
22939
- }
23085
+ s - this.rightCurtainWidth + this.curtainHandleWidth
23086
+ ).attr("y", -this.curtainHandleWidth).attr("width", this.rightCurtainWidth + this.curtainHandleWidth * 2).attr("height", e + this.curtainHandleWidth * 2);
23087
+ },
23088
+ updateForbiddenIntervals(s = !1) {
23089
+ s && this.svg.selectAll(`.${G.forbiddenInterval}`).remove();
23090
+ const e = this.timeScale.domain();
23091
+ this.forbiddenIntervals.forEach((t, i) => {
23092
+ const r = t.startDate === -1 / 0 ? e[0] : this.tzStringToDate(t.startDate), n = t.endDate === 1 / 0 ? e[1] : this.tzStringToDate(t.endDate), a = this.timeScale(r), o = this.timeScale(n), l = Math.max(o - a, 0);
23093
+ let c = this.svg.select(`.${G.forbiddenInterval}-${i}`);
23094
+ c.empty() && (c = this.svg.append("rect").attr(
23095
+ "class",
23096
+ `${G.forbiddenInterval} ${G.forbiddenInterval}-${i}`
23097
+ ).attr("fill", `url(#${Ue.stripedPattern})`)), c.attr("x", a).attr("y", 0).attr("width", l).attr("height", this.timelineHeight);
23098
+ });
22940
23099
  },
22941
23100
  drawEventsGroups() {
22942
- this.svg.selectAll(`g.${H.eventGroup}`).remove(), this.drawLineGraphEventsGroups(), this.drawBarEventsGroups(), this.drawBarChartEventsGroups(), this.drawMilestonesPlaceholder();
23101
+ this.svg.selectAll(`g.${G.eventGroup}`).remove(), this.svg.selectAll(`.${G.barChartGroup}`).remove(), this.svg.selectAll(`.${G.lineGraphGroup}`).remove(), this.svg.selectAll(`.${G.lineGraphGroupLabel}`).remove(), this.svg.selectAll(`.${G.loadingIndicator}`).remove(), this.drawLineGraphEventsGroups(), this.drawBarEventsGroups(), this.drawBarChartEventsGroups(), this.drawMilestonesPlaceholder();
22943
23102
  },
22944
23103
  drawLineGraphEventsGroups() {
22945
- const s = this.combinedXAxesHeight, e = this.insertZerosAtInterval ? this.filledGapsLineGraphGroups : this.lineGraphGroups;
23104
+ const s = this.combinedXAxesHeight + this.chartsYOffset, e = this.insertZerosAtInterval ? this.filledGapsLineGraphGroups : this.lineGraphGroups;
22946
23105
  Object.entries(e).forEach(([t, i]) => {
22947
23106
  const r = this.svg.append("g").classed(
22948
- `${H.lineGraphGroup} ${H.lineGraphGroup}-${t}`,
23107
+ `${G.lineGraphGroup} ${G.lineGraphGroup}-${t}`,
22949
23108
  !0
22950
23109
  ).attr("transform", `translate(0,${s})`), { color: n, events: a } = i;
22951
23110
  this.drawLineGraph({
@@ -22961,18 +23120,22 @@ const Ih = _h.exports, H = {
22961
23120
  });
22962
23121
  }), Object.entries(this.lineGraphGroups).forEach(
22963
23122
  ([t, i], r) => {
22964
- const { color: n, isLoading: a, label: o } = i, l = this.chartHeight - this.barChartHeight * (r + 1), c = s + this.chartHeight - this.barChartHeight, u = this.svg.append("g").classed(`${H.lineGraphGroup}-label`, !0).attr("transform", `translate(0,${s})`).on("mouseover", () => this.handleLabelMouseOver(t)).on("mouseleave", () => this.handleLabelMouseLeave(t));
23123
+ const { color: n, isLoading: a, label: o } = i, l = Math.max(
23124
+ this.chartMinLabelHeight,
23125
+ this.barChartHeight
23126
+ ), c = this.chartHeight - l * (r + 1), u = s + this.chartHeight - l, h = this.svg.append("g").classed(G.lineGraphGroupLabel, !0).attr("transform", `translate(0,${s})`).on("mouseover", () => this.handleLabelMouseOver(t)).on("mouseleave", () => this.handleLabelMouseLeave(t));
22965
23127
  this.drawProgressIndicator({
22966
23128
  type: t,
22967
23129
  color: n,
22968
23130
  isLoading: a,
22969
- yPosition: c
23131
+ yPosition: u
22970
23132
  }), this.drawTextLabel({
22971
23133
  color: n,
22972
23134
  label: o,
22973
23135
  type: t,
22974
- yPosition: l,
22975
- gElement: u
23136
+ height: l,
23137
+ yPosition: c,
23138
+ gElement: h
22976
23139
  });
22977
23140
  }
22978
23141
  );
@@ -22983,8 +23146,8 @@ const Ih = _h.exports, H = {
22983
23146
  color: t,
22984
23147
  type: i
22985
23148
  }) {
22986
- const r = w.area().x((a) => this.timeScale(this.tzStringToDate(a.timestamp))).y0(this.timelineHeight).y1((a) => this.yScale(a.count)).curve(w.curveMonotoneX), n = `clip-${i}`;
22987
- e.append("defs").append("clipPath").attr("id", n).append("rect").attr("width", this.timeline.offsetWidth).attr("height", this.chartHeight), e.append("path").datum(s).classed(`${H.lineGraphPath}-${i}`, !0).attr("fill", `url(#${De.transparencyGradientLight}-${i})`).attr("stroke", t).attr("stroke-linejoin", "round").attr("stroke-linecap", "round").attr("stroke-width", 1).attr("d", (a) => r(a)).attr("clip-path", `url(#${n})`);
23149
+ const r = I.area().x((a) => this.timeScale(this.tzStringToDate(a.timestamp))).y0(this.timelineHeight).y1((a) => this.yScale(a.count)).curve(I.curveMonotoneX), n = `clip-${i}`;
23150
+ e.append("defs").append("clipPath").attr("id", n).append("rect").attr("width", this.timeline.offsetWidth).attr("height", this.chartHeight), e.append("path").datum(s).classed(`${G.lineGraphPath}-${i}`, !0).attr("fill", `url(#${Ue.transparencyGradientLight}-${i})`).attr("stroke", t).attr("stroke-linejoin", "round").attr("stroke-linecap", "round").attr("stroke-width", 1).attr("d", (a) => r(a)).attr("clip-path", `url(#${n})`);
22988
23151
  },
22989
23152
  drawLineGraphHoverZones({
22990
23153
  events: s,
@@ -22999,19 +23162,19 @@ const Ih = _h.exports, H = {
22999
23162
  [i]: r.count
23000
23163
  };
23001
23164
  const a = e.append("circle").classed(
23002
- `${H.lineGraphDot} ${H.lineGraphDot}-${i}`,
23165
+ `${G.lineGraphDot} ${G.lineGraphDot}-${i}`,
23003
23166
  !0
23004
23167
  ).attr("cx", this.timeScale(this.tzStringToDate(r.timestamp))).attr("cy", this.yScale(r.count)).attr("r", 1.5).attr("fill", t).attr("stroke-width", 0).datum(r);
23005
23168
  this.dotsByTimestamp[n] = [
23006
23169
  ...this.dotsByTimestamp[n] || [],
23007
23170
  a
23008
- ], e.append("rect").classed(`${H.lineGraphHoverZone}-${i}`, !0).attr("x", this.timeScale(this.tzStringToDate(r.timestamp)) - 15).attr("y", 0).attr("width", 30).attr("height", this.chartHeight).attr("fill", "transparent").datum(r).on("mouseover", (o) => {
23171
+ ], e.append("rect").classed(`${G.lineGraphHoverZone}-${i}`, !0).attr("x", this.timeScale(this.tzStringToDate(r.timestamp)) - 15).attr("y", 0).attr("width", 30).attr("height", this.chartHeight).attr("fill", "transparent").datum(r).on("mouseover", (o) => {
23009
23172
  this.handleLineMouseOver(o, r, i), this.dotsByTimestamp[n].forEach(
23010
- (l) => l.classed(`${H.lineGraphDot}--active`, !0)
23173
+ (l) => l.classed(`${G.lineGraphDot}--active`, !0)
23011
23174
  );
23012
23175
  }).on("mouseout", () => {
23013
23176
  this.handleLineMouseOut(), this.dotsByTimestamp[n].forEach(
23014
- (o) => o.classed(`${H.lineGraphDot}--active`, !1)
23177
+ (o) => o.classed(`${G.lineGraphDot}--active`, !1)
23015
23178
  );
23016
23179
  });
23017
23180
  });
@@ -23019,42 +23182,71 @@ const Ih = _h.exports, H = {
23019
23182
  drawSingleBarEventsGroup({
23020
23183
  type: s,
23021
23184
  eventsGroup: e,
23022
- index: t,
23023
- milestone: i,
23024
- height: r
23185
+ milestone: t,
23186
+ dots: i,
23187
+ dotsSize: r,
23188
+ bottom: n
23025
23189
  }) {
23026
- const { color: n, bgColor: a, label: o, events: l, isLoading: c } = e, u = this.hasChart ? this.chartHeight : 0;
23027
- let h = t * this.barChartHeight + this.combinedXAxesHeight + u;
23028
- i && (h = this.getMilestoneGroupYPosition(s)), this.drawProgressIndicator({
23029
- yPosition: h,
23190
+ const {
23191
+ color: a,
23192
+ bgColor: o,
23193
+ label: l,
23194
+ events: c,
23195
+ barBorderRadius: u,
23196
+ isLoading: h,
23197
+ height: d,
23198
+ chartType: f
23199
+ } = e;
23200
+ let m = this.getBarGroupYPosition(s, n);
23201
+ const y = [
23202
+ Ae.bars,
23203
+ Ae.dots,
23204
+ void 0
23205
+ ].includes(f) ? this.getBarGroupHeight(e) : d;
23206
+ t && (m = this.getMilestoneGroupYPosition(s)), this.drawProgressIndicator({
23207
+ yPosition: m,
23030
23208
  type: s,
23031
- color: n,
23032
- isLoading: c
23209
+ color: a,
23210
+ isLoading: h
23033
23211
  });
23034
- const d = this.svg.append("g").attr("data-color", n).classed(H.eventGroup, !0).classed(`${H.eventGroup}-${s}`, !0);
23035
- this.drawBackground({
23036
- color: a || n,
23037
- gElement: d,
23038
- yPosition: h,
23039
- height: r
23040
- }), this.drawBars({
23041
- events: l,
23042
- color: n,
23043
- gElement: d,
23044
- yPosition: h,
23045
- type: s
23046
- }), i && d.append("line").classed(Ye.milestoneLine, !0).attr("x1", 0).attr("x2", this.timeline.offsetWidth).style("stroke", n).style("stroke-width", 2), o && this.drawTextLabel({
23047
- color: n,
23048
- label: o,
23212
+ const v = this.svg.append("g").attr("data-color", a).classed(G.eventGroup, !0).classed(`${G.eventGroup}-${s}`, !0);
23213
+ if (this.drawBackground({
23214
+ color: o || a,
23215
+ gElement: v,
23216
+ yPosition: m,
23217
+ height: y
23218
+ }), t || i) {
23219
+ const T = i ? 0.5 : 2, x = m + y / 2;
23220
+ v.append("line").classed(je.milestoneLine, !0).attr("x1", 0).attr("x2", this.timeline.offsetWidth).attr("y1", x).attr("y2", x).style("stroke", a).style("stroke-width", T);
23221
+ }
23222
+ this.drawBars({
23223
+ events: c,
23224
+ color: a,
23225
+ gElement: v,
23226
+ yPosition: m,
23049
23227
  type: s,
23050
- gElement: d,
23051
- yPosition: h,
23052
- height: r
23228
+ dots: i,
23229
+ dotsSize: r,
23230
+ height: d,
23231
+ barBorderRadius: u
23232
+ }), l && this.drawTextLabel({
23233
+ color: a,
23234
+ label: l,
23235
+ type: s,
23236
+ gElement: v,
23237
+ yPosition: m,
23238
+ height: d
23053
23239
  });
23054
23240
  },
23055
23241
  drawBarEventsGroups() {
23056
23242
  Object.entries(this.barGroups).forEach(
23057
- ([s, e], t) => this.drawSingleBarEventsGroup({ type: s, eventsGroup: e, index: t })
23243
+ ([s, e]) => this.drawSingleBarEventsGroup({
23244
+ type: s,
23245
+ eventsGroup: e,
23246
+ bottom: e.bottom,
23247
+ dots: e.chartType === Ae.dots,
23248
+ dotsSize: e.dotsSize || 3
23249
+ })
23058
23250
  );
23059
23251
  },
23060
23252
  drawMilestonesPlaceholder() {
@@ -23066,14 +23258,13 @@ const Ih = _h.exports, H = {
23066
23258
  events: [],
23067
23259
  isLoading: !1
23068
23260
  },
23069
- milestone: !0,
23070
- height: e.height
23261
+ milestone: !0
23071
23262
  })
23072
23263
  ), this.updateMilestonesPositions();
23073
23264
  },
23074
23265
  getMilestoneClass(s) {
23075
23266
  return {
23076
- [Ye.milestoneSelected]: [
23267
+ [je.milestoneSelected]: [
23077
23268
  s.id,
23078
23269
  s.timestamp
23079
23270
  ].includes(this.selectedMilestoneId)
@@ -23087,38 +23278,50 @@ const Ih = _h.exports, H = {
23087
23278
  },
23088
23279
  getMilestoneGroupYPosition(s) {
23089
23280
  let e = 0;
23090
- for (const [i, r] of Object.entries(this.milestonesGroups)) {
23281
+ for (const [t, i] of Object.entries(this.milestonesGroups)) {
23282
+ if (t === s)
23283
+ break;
23284
+ e += i.height || this.barChartHeight;
23285
+ }
23286
+ return this.combinedXAxesHeight + this.milestonesYOffset + e;
23287
+ },
23288
+ getBarGroupYPosition(s, e) {
23289
+ let t = this.combinedXAxesHeight;
23290
+ e ? t += (this.hasChart ? this.chartHeight : 0) + (this.hasMilestones ? this.combinedMilestonesHeight : 0) : t += this.barsYOffset;
23291
+ for (const [i, r] of Object.entries(this.barGroups)) {
23091
23292
  if (i === s)
23092
23293
  break;
23093
- e += r.height || this.barChartHeight;
23294
+ !e && r.bottom || (t += this.getBarGroupHeight(r));
23094
23295
  }
23095
- const t = this.hasChart ? this.chartHeight : 0;
23096
- return Object.keys(this.barGroups).length * this.barChartHeight + this.combinedXAxesHeight + t + e;
23296
+ return t;
23297
+ },
23298
+ getBarGroupHeight(s) {
23299
+ return s.height ? Math.max(s.height + this.barYPadding, 1) : this.barChartHeight;
23097
23300
  },
23098
23301
  updateMilestonesPositions() {
23099
23302
  Object.entries(this.milestonesGroups).forEach(([s, e]) => {
23100
23303
  const t = this.getMilestoneGroupYPosition(s), i = this.svg.select(
23101
- `g.${H.eventGroup}-${s}`
23102
- ), r = t + (e.height || this.barChartHeight) / 2;
23103
- i.attr("x1", 0).attr("x2", this.timeline.offsetWidth).select(`.${Ye.milestoneLine}`).attr("y1", r).attr("y2", r);
23104
- const n = w.select(
23105
- `.${Ye.milestonesContainer}-${s}`
23304
+ `g.${G.eventGroup}-${s}`
23305
+ ), r = 2, a = (e.height || this.barChartHeight) / 2, o = t + a - r / 2;
23306
+ i.attr("x1", 0).attr("x2", this.timeline.offsetWidth).select(`.${je.milestoneLine}`).attr("y1", o).attr("y2", o);
23307
+ const l = I.select(
23308
+ `.${je.milestonesContainer}-${s}`
23106
23309
  );
23107
- n.style("top", `${t}px`).style("height", `${e.height || this.barChartHeight}px`);
23108
- const a = n.selectAll(
23109
- `.${Ye.milestone}`
23110
- ).data(e.events);
23111
- a.exit().remove(), a.enter().append("div").merge(a).style(
23310
+ l.style("top", `${t}px`).style("height", `${e.height || this.barChartHeight}px`);
23311
+ const c = l.selectAll(
23312
+ `.${je.milestone}`
23313
+ ).data(this.getSortedEvents(e.events));
23314
+ c.exit().remove(), c.enter().append("div").merge(c).style(
23112
23315
  "left",
23113
- (o) => `${this.timeScale(this.tzStringToDate(o.timestamp))}px`
23114
- ).style("top", `${r}px`).style("transform", "translate(-50%, -50%)");
23316
+ (u) => `${this.timeScale(this.tzStringToDate(u.timestamp))}px`
23317
+ ).style("top", `${o}px`);
23115
23318
  });
23116
23319
  },
23117
23320
  drawBarChartEventsGroups() {
23118
23321
  const s = this.combinedXAxesHeight, e = this.barChartGroups;
23119
23322
  Object.entries(e).forEach(([t, i], r) => {
23120
23323
  const n = this.svg.append("g").classed(
23121
- `${H.barChartGroup} ${H.barChartGroup}-${t}`,
23324
+ `${G.barChartGroup} ${G.barChartGroup}-${t}`,
23122
23325
  !0
23123
23326
  ).attr("transform", `translate(0,${s})`), { color: a, events: o } = i;
23124
23327
  this.drawBarsChart({
@@ -23137,9 +23340,9 @@ const Ih = _h.exports, H = {
23137
23340
  isLoading: t
23138
23341
  }) {
23139
23342
  this.svg.append("rect").classed(
23140
- `${H.loadingIndicator} ${H.loadingIndicator}-${e}`,
23343
+ `${G.loadingIndicator} ${G.loadingIndicator}-${e}`,
23141
23344
  !0
23142
- ).attr("x", 0).attr("y", s).attr("width", this.timeline.offsetWidth / 3).attr("height", this.barChartHeight).attr("fill", `url(#${De.loadingGradient}-${e})`).style("visibility", t ? "visible" : "hidden");
23345
+ ).attr("x", 0).attr("y", s).attr("width", this.timeline.offsetWidth / 3).attr("height", this.barChartHeight).attr("fill", `url(#${Ue.loadingGradient}-${e})`).style("visibility", t ? "visible" : "hidden");
23143
23346
  },
23144
23347
  drawBackground({
23145
23348
  color: s,
@@ -23147,26 +23350,34 @@ const Ih = _h.exports, H = {
23147
23350
  gElement: t,
23148
23351
  height: i
23149
23352
  }) {
23150
- t.append("rect").attr("class", H.eventGroupBg).attr("x", 0).attr("y", e).attr("width", this.timeline.offsetWidth).attr("height", i || this.barChartHeight).attr("fill", w.color(s).toString()).style("opacity", 0.1);
23353
+ t.append("rect").attr("class", G.eventGroupBg).attr("x", 0).attr("y", e).attr("width", this.timeline.offsetWidth).attr("height", i || this.barChartHeight).attr("fill", I.color(s).toString()).style("opacity", 0.1);
23151
23354
  },
23152
23355
  drawBars({
23153
23356
  events: s,
23154
23357
  gElement: e,
23155
23358
  yPosition: t,
23156
23359
  color: i,
23157
- type: r
23360
+ type: r,
23361
+ dots: n,
23362
+ dotsSize: a,
23363
+ height: o,
23364
+ barBorderRadius: l = 1.5
23158
23365
  }) {
23159
- const n = this;
23160
- e.selectAll(H.eventRect).data(s).enter().append("rect").attr(
23366
+ const c = this, u = t + this.barYPadding / 2, h = n ? ((o || this.barChartHeight) - a) / 2 : 0;
23367
+ let d = Math.max(
23368
+ (o != null ? o : this.barChartHeight) - this.barYPadding,
23369
+ 1
23370
+ );
23371
+ n && (d = a), e.selectAll(G.eventRect).data(s).enter().append("rect").attr(
23161
23372
  "class",
23162
- (a) => H.eventRect + (a.className ? ` ${a.className}` : "")
23163
- ).attr("x", this.getEventRectX).attr("y", t + this.barYPadding / 2).attr("ry", 1.5).attr("rx", 1.5).attr("width", this.getEventRectWidth).attr("height", this.barChartHeight - this.barYPadding).attr("stroke-width", 5).attr("cursor", "pointer").attr("stroke", "#0000").style("fill", (a) => a.color || i).on("mouseover", function(a, o) {
23164
- w.select(this).classed(H.eventRectHovered, !0), n.handleBarMouseOver(a, o, r);
23373
+ (f) => G.eventRect + (n ? ` ${G.eventRect}--dot` : "") + (f.className ? ` ${f.className}` : "")
23374
+ ).attr("x", this.getEventRectX).attr("y", u + h).attr("ry", n ? a : l).attr("rx", n ? a : l).attr("width", n ? a : this.getEventRectWidth).attr("height", d).attr("stroke-width", 5).attr("cursor", "pointer").attr("stroke", "#0000").style("fill", (f) => f.color || i).on("mouseover", function(f, m) {
23375
+ I.select(this).classed(G.eventRectHovered, !0), c.handleBarMouseOver(f, m, r);
23165
23376
  }).on("mouseout", function() {
23166
- w.select(this).classed(H.eventRectHovered, !1), n.handleBarMouseOut();
23167
- }), e.selectAll(H.eventRectText).data(s.filter((a) => !!a.text)).enter().append("text").attr("class", H.eventRectText).attr("x", (a) => this.getEventRectX(a) + this.textPadding).attr("y", t + this.barChartHeight / 2).attr("dy", "0.35em").style("text-anchor", "start").style("font-size", "12px").style("font-weight", 600).style("stroke-linejoin", "round").style("paint-order", "stroke").style("pointer-events", "none").style(
23377
+ I.select(this).classed(G.eventRectHovered, !1), c.handleBarMouseOut();
23378
+ }), e.selectAll(G.eventRectText).data(s.filter((f) => !!f.text)).enter().append("text").attr("class", G.eventRectText).attr("x", (f) => this.getEventRectX(f) + this.textPadding).attr("y", t + this.barChartHeight / 2).attr("dy", "0.35em").style("text-anchor", "start").style("font-size", "12px").style("font-weight", 600).style("stroke-linejoin", "round").style("paint-order", "stroke").style("pointer-events", "none").style(
23168
23379
  "fill",
23169
- (a) => this.getTextFillColor(a.color || i, 0.75)
23380
+ (f) => this.getTextFillColor(f.color || i, 0.75)
23170
23381
  ).text(this.getEventText);
23171
23382
  },
23172
23383
  drawBarsChart({
@@ -23177,38 +23388,38 @@ const Ih = _h.exports, H = {
23177
23388
  type: r,
23178
23389
  index: n
23179
23390
  }) {
23180
- const a = this, o = Object.keys(this.barChartGroups).length, l = (f) => (this.getEventRectWidth(f) - this.barXPadding * 2) / o, c = (f) => this.yScale.range()[0] - this.yScale(f.count), u = (f) => this.getEventRectX(f) + this.barXPadding + n * l(f), h = (f) => this.yScale(f.count), d = e.selectAll(H.eventBarContainer).data(s).enter().append("g").attr(
23391
+ const a = this, o = Object.keys(this.barChartGroups).length, l = (f) => (this.getEventRectWidth(f) - this.barXPadding * 2) / o, c = (f) => this.yScale.range()[0] - this.yScale(f.count), u = (f) => this.getEventRectX(f) + this.barXPadding + n * l(f), h = (f) => this.yScale(f.count), d = e.selectAll(G.eventBarContainer).data(s).enter().append("g").attr(
23181
23392
  "class",
23182
- `${H.eventBarContainer} ${H.eventBarContainer}-${r}`
23393
+ `${G.eventBarContainer} ${G.eventBarContainer}-${r}`
23183
23394
  );
23184
23395
  d.append("rect").attr(
23185
23396
  "class",
23186
- (f) => H.eventBarHoverZone + (f.className ? ` ${f.className}` : "")
23397
+ (f) => G.eventBarHoverZone + (f.className ? ` ${f.className}` : "")
23187
23398
  ).attr("x", u).attr("y", -i).attr("width", l).attr("height", this.yScale.range()[0] + i).attr("fill", (f) => f.color || t).attr("fill-opacity", 0), d.append("rect").attr(
23188
23399
  "class",
23189
- (f) => H.eventBar + (f.className ? ` ${f.className}` : "")
23190
- ).attr("x", u).attr("y", h).attr("width", l).attr("height", c).attr("stroke-width", 5).attr("cursor", "pointer").attr("stroke", "#0000").attr("fill", `url(#${De.transparencyGradient}-${r})`), d.append("rect").attr(
23400
+ (f) => G.eventBar + (f.className ? ` ${f.className}` : "")
23401
+ ).attr("x", u).attr("y", h).attr("width", l).attr("height", c).attr("stroke-width", 5).attr("cursor", "pointer").attr("stroke", "#0000").attr("fill", `url(#${Ue.transparencyGradient}-${r})`), d.append("rect").attr(
23191
23402
  "class",
23192
- (f) => H.eventBarCap + (f.className ? ` ${f.className}` : "")
23403
+ (f) => G.eventBarCap + (f.className ? ` ${f.className}` : "")
23193
23404
  ).attr("x", u).attr("y", h).attr("width", l).attr("height", 2).attr("stroke-width", 0).style("fill", (f) => f.color || t), d.on("mouseover", function(f, m) {
23194
- const g = w.select(this);
23405
+ const g = I.select(this);
23195
23406
  a.onBarChartBarMouseOver(g, t), a.handleBarMouseOver(f, m, r);
23196
23407
  }).on("mouseout", function() {
23197
- const f = w.select(this);
23408
+ const f = I.select(this);
23198
23409
  a.onBarChartBarMouseOut(f, r), a.handleBarMouseOut();
23199
23410
  }).on("click", function() {
23200
- e.selectAll(`.${H.eventBarContainerSelected}`).classed(H.eventBarContainerSelected, !1), w.select(this).classed(H.eventBarContainerSelected, !0);
23411
+ e.selectAll(`.${G.eventBarContainerSelected}`).classed(G.eventBarContainerSelected, !1), I.select(this).classed(G.eventBarContainerSelected, !0);
23201
23412
  });
23202
23413
  },
23203
23414
  onBarChartBarMouseOver(s, e) {
23204
- s.classed(H.eventBarContainerHovered, !0), s.selectAll(`.${H.eventBarHoverZone}`).attr("fill-opacity", 0.2);
23205
- const i = s.selectAll(`.${H.eventBar}`);
23415
+ s.classed(G.eventBarContainerHovered, !0), s.selectAll(`.${G.eventBarHoverZone}`).attr("fill-opacity", 0.2);
23416
+ const i = s.selectAll(`.${G.eventBar}`);
23206
23417
  i.attr("fill", e), i.attr("fill-opacity", 0.5);
23207
23418
  },
23208
23419
  onBarChartBarMouseOut(s, e) {
23209
- s.classed(H.eventBarContainerHovered, !1), s.selectAll(`.${H.eventBarHoverZone}`).attr("fill-opacity", 0);
23210
- const i = s.selectAll(`.${H.eventBar}`);
23211
- i.attr("fill", `url(#${De.transparencyGradient}-${e})`), i.attr("fill-opacity", 1);
23420
+ s.classed(G.eventBarContainerHovered, !1), s.selectAll(`.${G.eventBarHoverZone}`).attr("fill-opacity", 0);
23421
+ const i = s.selectAll(`.${G.eventBar}`);
23422
+ i.attr("fill", `url(#${Ue.transparencyGradient}-${e})`), i.attr("fill-opacity", 1);
23212
23423
  },
23213
23424
  drawTextLabel({
23214
23425
  gElement: s,
@@ -23226,15 +23437,15 @@ const Ih = _h.exports, H = {
23226
23437
  w: this.labelRectWidth,
23227
23438
  h: n || this.barChartHeight,
23228
23439
  radius: 3
23229
- }, o = s.append("g").attr("class", `${H.labelGroup} ${H.labelGroup}-${r}`).style("cursor", "pointer").on("click", () => this.toggleGroupVisibility(r));
23230
- o.append("rect").attr("class", H.labelBg).attr("data-color", t).attr("x", a.x).attr("y", a.y).attr("width", a.w).attr("height", a.h).attr("rx", a.radius).attr("ry", a.radius).style("fill", this.dark ? "#131a29" : "white"), o.append("rect").attr("class", H.labelBgFill).attr("data-color", t).attr("x", a.x).attr("y", a.y).attr("width", a.w).attr("height", a.h).attr("rx", a.radius).attr("ry", a.radius).style("fill", this.getLabelBackgroundColor(t)).style("stroke", this.getTextFillColor(t)).style("stroke-width", 0.25), o.append("text").attr("class", H.labelText).attr("data-color", t).attr("x", 5).attr("y", e + (n || this.barChartHeight) / 2).attr("dy", "0.35em").style("text-anchor", "start").style("font-size", "12px").style("font-weight", 500).style("stroke-linejoin", "round").style("paint-order", "stroke").style("fill", this.getTextFillColor(t)).text(i);
23440
+ }, o = s.append("g").attr("class", `${G.labelGroup} ${G.labelGroup}-${r}`).style("cursor", "pointer").on("click", () => this.toggleGroupVisibility(r));
23441
+ o.append("rect").attr("class", G.labelBg).attr("data-color", t).attr("x", a.x).attr("y", a.y).attr("width", a.w).attr("height", a.h).attr("rx", a.radius).attr("ry", a.radius).style("fill", this.dark ? "#131a29" : "white"), o.append("rect").attr("class", G.labelBgFill).attr("data-color", t).attr("x", a.x).attr("y", a.y).attr("width", a.w).attr("height", a.h).attr("rx", a.radius).attr("ry", a.radius).style("fill", this.getLabelBackgroundColor(t)).style("stroke", this.getTextFillColor(t)).style("stroke-width", 0.25), o.append("text").attr("class", G.labelText).attr("data-color", t).attr("x", 5).attr("y", e + (n || this.barChartHeight) / 2).attr("dy", "0.35em").style("text-anchor", "start").style("font-size", "12px").style("font-weight", 500).style("stroke-linejoin", "round").style("paint-order", "stroke").style("fill", this.getTextFillColor(t)).text(i);
23231
23442
  },
23232
23443
  getTextFillColor(s, e = 0) {
23233
23444
  var t, i;
23234
- return (this.dark ? (t = w.color(s)) == null ? void 0 : t.brighter(1.5 + e) : (i = w.color(s)) == null ? void 0 : i.darker(2 + e)).toString();
23445
+ return (this.dark ? (t = I.color(s)) == null ? void 0 : t.brighter(1.5 + e) : (i = I.color(s)) == null ? void 0 : i.darker(2 + e)).toString();
23235
23446
  },
23236
23447
  getLabelBackgroundColor(s) {
23237
- let e = w.color(s);
23448
+ let e = I.color(s);
23238
23449
  return e.opacity = this.dark ? 0.2 : 0.5, e.toString();
23239
23450
  },
23240
23451
  getCurrentGroupVisibility(s) {
@@ -23291,18 +23502,18 @@ const Ih = _h.exports, H = {
23291
23502
  };
23292
23503
  },
23293
23504
  tzStringToDate(s) {
23294
- return Ve(s).add(this.utcOffset, "minutes").toDate();
23505
+ return Ke(s).add(this.utcOffset, "minutes").toDate();
23295
23506
  },
23296
23507
  dateToTzString(s) {
23297
23508
  const e = new Date(s).getTimezoneOffset();
23298
- return Ve(s).add(e, "minutes").utcOffset(this.utcOffset, !0).format();
23509
+ return Ke(s).add(e, "minutes").utcOffset(this.utcOffset, !0).format();
23299
23510
  },
23300
23511
  getCurrentTimeBounds() {
23301
23512
  const s = this.timeScale.domain();
23302
23513
  return { startDate: s[0], endDate: s[1] };
23303
23514
  },
23304
23515
  getFormattedTimestamp(s) {
23305
- return Ve.parseZone(s).format("YYYY-MM-DDTHH:mm:ss");
23516
+ return Ke.parseZone(s).format("YYYY-MM-DDTHH:mm:ss");
23306
23517
  },
23307
23518
  fillTimeGaps(s) {
23308
23519
  if (s.length <= 1)
@@ -23313,14 +23524,14 @@ const Ih = _h.exports, H = {
23313
23524
  const a = s[n];
23314
23525
  if (r.push(a), n === s.length - 1)
23315
23526
  break;
23316
- const o = s[n + 1], l = Ve(a.timestamp), c = Ve(o.timestamp);
23527
+ const o = s[n + 1], l = Ke(a.timestamp), c = Ke(o.timestamp);
23317
23528
  if (c.diff(l, e) > 1) {
23318
23529
  const u = t(l).toISOString(), h = i(c).toISOString();
23319
23530
  r.push({ timestamp: u, count: 0 }), u !== h && r.push({ timestamp: h, count: 0 });
23320
23531
  }
23321
23532
  }
23322
23533
  if (this.flattenLineGraphEnds) {
23323
- const n = Ve(s[0].timestamp), a = Ve(s[s.length - 1].timestamp), o = i(n).toISOString(), l = t(a).toISOString();
23534
+ const n = Ke(s[0].timestamp), a = Ke(s[s.length - 1].timestamp), o = i(n).toISOString(), l = t(a).toISOString();
23324
23535
  r = [
23325
23536
  { timestamp: o, count: 0 },
23326
23537
  ...r,
@@ -23336,6 +23547,11 @@ const Ih = _h.exports, H = {
23336
23547
  },
23337
23548
  onMilestoneClick(s, e) {
23338
23549
  this.panOnDateClick && this.panToTimestamp(s.timestamp), this.selectedMilestoneId = s.id || s.timestamp, this.$emit("milestone-click", { milestone: s, milestoneType: e });
23550
+ },
23551
+ getSortedEvents(s) {
23552
+ return [...s].sort(
23553
+ (e, t) => new Date(e.timestamp || e.startDate) > new Date(t.timestamp || t.startDate) ? 1 : -1
23554
+ );
23339
23555
  }
23340
23556
  }
23341
23557
  });
@@ -23348,13 +23564,13 @@ var kh = function() {
23348
23564
  return [e._v(" " + e._s(i.label) + " ")];
23349
23565
  }, { marker: i })], 2)]), t("div", { staticClass: "marker-line e-absolute e-pointer-events-none", style: e.getMarkerLineStyle(i) })]);
23350
23566
  }), e.autoResize ? t("div", { directives: [{ name: "resize-observer", rawName: "v-resize-observer", value: e.onResize, expression: "onResize" }], ref: "timelineContainer", staticClass: "e-timeline__svg-container e-relative e-h-13 e-rounded e-select-none e-overflow-x-hidden" }) : t("div", { ref: "timelineContainer", staticClass: "e-timeline__svg-container e-relative e-h-13 e-rounded e-select-none e-overflow-x-hidden" }), e._l(e.milestonesGroups, function(i, r) {
23351
- return t("div", { key: r, staticClass: "e-timeline-milestones" }, [t("div", { class: `e-tl-milestones e-tl-milestones-${r}` }, e._l(i.events, function(n, a) {
23352
- return t("ETimelineMilestone", { key: `${n.milestoneType}-${a}`, class: e.getMilestoneClass(n), attrs: { size: n.size || e.milestoneBulletSize, milestone: n, "background-color": e.getMilestoneColors(n.color, i.color).background, "border-color": e.getMilestoneColors(n.color, i.color).border }, on: { "milestone-click": function(o) {
23567
+ return t("div", { key: `${r}`, staticClass: "e-timeline-milestones" }, [t("div", { class: `e-tl-milestones e-tl-milestones-${r}` }, e._l(e.getSortedEvents(i.events), function(n, a) {
23568
+ return t("ETimelineMilestone", { key: `${n.milestoneType}-${a}`, class: e.getMilestoneClass(n), attrs: { "data-timestamp": n.timestamp, milestone: n, dot: i.dots, size: n.size || e.milestoneBulletSize, "transition-duration": i.milestonesTransitionDuration, "line-height": i.milestonesLineHeight, "dot-size": i.milestonesDotSize, "background-color": e.getMilestoneColors(n.color, i.color).background, "border-color": e.getMilestoneColors(n.color, i.color).border }, on: { "milestone-click": function(o) {
23353
23569
  return e.onMilestoneClick(n, r);
23354
23570
  } }, scopedSlots: e._u([{ key: "content", fn: function() {
23355
23571
  return [e._t(`milestoneContent.${n.milestoneType}`, function() {
23356
- return [t("span", [e._v(" " + e._s(n.text) + " ")])];
23357
- }, { milestone: n })];
23572
+ return [t("span", { staticClass: "e-px-2" }, [e._v(" " + e._s(n.text) + " ")])];
23573
+ }, { milestone: n, index: a })];
23358
23574
  }, proxy: !0 }, { key: "label", fn: function() {
23359
23575
  return [e._t(`milestoneLabel.${n.milestoneType}`, null, { milestone: n })];
23360
23576
  }, proxy: !0 }], null, !0) });
@@ -23363,14 +23579,14 @@ var kh = function() {
23363
23579
  return t("div", { key: i, staticClass: "external-label", class: e.classes.background, style: e.getExternalLabelWrapperStyles(i), on: { click: function(r) {
23364
23580
  return e.toggleGroupVisibility(i);
23365
23581
  } } }, [t("div", { staticClass: "external-label__content", style: e.getExternalLabelStyles(i) }, [e._v(" " + e._s(i) + " ")])]);
23366
- }), 0), t("div", { ref: "tooltip", staticClass: "e-absolute", style: e.eventTooltipStyle }, [e._t("tooltip", function() {
23582
+ }), 0), t("div", { key: "tooltip", ref: "tooltip", staticClass: "e-absolute", style: e.eventTooltipStyle }, [e._t("tooltip", function() {
23367
23583
  return [t("div", { directives: [{ name: "show", rawName: "v-show", value: e.isHoveringTimeline && !e.isHoveringEvent && !e.isInteractingWithCurtain && !e.cursorTimestamp, expression: `
23368
23584
  isHoveringTimeline &&
23369
23585
  !isHoveringEvent &&
23370
23586
  !isInteractingWithCurtain &&
23371
23587
  !cursorTimestamp
23372
23588
  ` }], staticClass: "e-timeline__tooltip e-border e-rounded e-px-2 -e-left-2/4 e-relative", class: e.classes.tooltipSlot }, [e._v(" " + e._s(e.hoveredTimestamp) + " ")])];
23373
- }, { timestamp: e.hoveredTimestamp, active: e.isHoveringTimeline && !e.isInteractingWithCurtain && !e.cursorTimestamp })], 2), t("div", { ref: "eventPreviewTooltip", staticClass: "e-absolute e-z-50", style: e.eventTooltipStyle }, [e._t("eventTooltip", function() {
23589
+ }, { timestamp: e.hoveredTimestamp, active: e.isHoveringTimeline && !e.isInteractingWithCurtain && !e.cursorTimestamp })], 2), t("div", { key: "eventTooltip", staticClass: "e-absolute e-z-50", style: e.eventTooltipStyle }, [e._t("eventTooltip", function() {
23374
23590
  return [e.showEventTooltip && (e.hoveredEvent || e.hoveredCounts.length) ? t("div", { directives: [{ name: "show", rawName: "v-show", value: e.isHoveringEvent && !e.isInteractingWithCurtain, expression: "isHoveringEvent && !isInteractingWithCurtain" }], staticClass: "e-timeline__event-tooltip e-border e-rounded e-px-2 -e-left-2/4 e-relative", class: e.classes.eventTooltipSlot }, [e.hoveredCounts.length ? t("div", [t("strong", [e._v("Timestamp")]), e._v(": " + e._s(e.hoveredEvent.timestamp) + " "), e._l(e.hoveredCounts, function(i, r) {
23375
23591
  return t("div", { key: r }, [t("strong", [e._v(e._s(i.type) + " Count")]), e._v(": " + e._s(i.count) + " ")]);
23376
23592
  })], 2) : e.hoveredEvent ? t("div", [e.hoveredEvent.timestamp ? t("div", [t("strong", [e._v("Event time")]), e._v(": " + e._s(e.hoveredEvent.timestamp) + " ")]) : e._e(), e.hoveredEvent.startDate ? t("div", [t("strong", [e._v("From")]), e._v(":" + e._s(e.hoveredEvent.startDate) + " ")]) : e._e(), e.hoveredEvent.endDate ? t("div", [t("strong", [e._v("To")]), e._v(":" + e._s(e.hoveredEvent.endDate) + " ")]) : e._e()]) : e._e()]) : e._e()];
@@ -23493,7 +23709,7 @@ export {
23493
23709
  Y as Size,
23494
23710
  Ia as TextSizes,
23495
23711
  kt as TimelineAxis,
23496
- qe as TimelineChartType,
23712
+ Ae as TimelineChartType,
23497
23713
  Pt as TimelineIntervalChangeTrigger,
23498
23714
  Cr as components,
23499
23715
  vh as debounce,