@gamention/pulse-elements 0.1.14 → 0.1.15

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.
@@ -3,7 +3,7 @@
3
3
  * Copyright 2021 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
5
5
  */
6
- let vt = class extends Event {
6
+ let yt = class extends Event {
7
7
  constructor(e, t, i, s) {
8
8
  super("context-request", { bubbles: !0, composed: !0 }), this.context = e, this.contextTarget = t, this.callback = i, this.subscribe = s ?? !1;
9
9
  }
@@ -18,7 +18,7 @@ let vt = class extends Event {
18
18
  * Copyright 2021 Google LLC
19
19
  * SPDX-License-Identifier: BSD-3-Clause
20
20
  */
21
- let We = class {
21
+ let Ye = class {
22
22
  constructor(e, t, i, s) {
23
23
  if (this.subscribe = !1, this.provided = !1, this.value = void 0, this.t = (o, r) => {
24
24
  this.unsubscribe && (this.unsubscribe !== r && (this.provided = !1, this.unsubscribe()), this.subscribe || this.unsubscribe()), this.value = o, this.host.requestUpdate(), this.provided && !this.subscribe || (this.provided = !0, this.callback && this.callback(o, r)), this.unsubscribe = r;
@@ -35,7 +35,7 @@ let We = class {
35
35
  this.unsubscribe && (this.unsubscribe(), this.unsubscribe = void 0);
36
36
  }
37
37
  dispatchRequest() {
38
- this.host.dispatchEvent(new vt(this.context, this.host, this.t, this.subscribe));
38
+ this.host.dispatchEvent(new yt(this.context, this.host, this.t, this.subscribe));
39
39
  }
40
40
  };
41
41
  /**
@@ -43,7 +43,7 @@ let We = class {
43
43
  * Copyright 2021 Google LLC
44
44
  * SPDX-License-Identifier: BSD-3-Clause
45
45
  */
46
- let At = class {
46
+ let It = class {
47
47
  get value() {
48
48
  return this.o;
49
49
  }
@@ -76,11 +76,11 @@ let At = class {
76
76
  * Copyright 2021 Google LLC
77
77
  * SPDX-License-Identifier: BSD-3-Clause
78
78
  */
79
- let It = class extends Event {
79
+ let Mt = class extends Event {
80
80
  constructor(e, t) {
81
81
  super("context-provider", { bubbles: !0, composed: !0 }), this.context = e, this.contextTarget = t;
82
82
  }
83
- }, Xe = class extends At {
83
+ }, Ke = class extends It {
84
84
  constructor(e, t, i) {
85
85
  var s, o;
86
86
  super(t.context !== void 0 ? t.initialValue : i), this.onContextRequest = (r) => {
@@ -90,7 +90,7 @@ let It = class extends Event {
90
90
  }, this.onProviderRequest = (r) => {
91
91
  if (r.context !== this.context || (r.contextTarget ?? r.composedPath()[0]) === this.host) return;
92
92
  const l = /* @__PURE__ */ new Set();
93
- for (const [a, { consumerHost: c }] of this.subscriptions) l.has(a) || (l.add(a), c.dispatchEvent(new vt(this.context, c, a, !0)));
93
+ for (const [a, { consumerHost: c }] of this.subscriptions) l.has(a) || (l.add(a), c.dispatchEvent(new yt(this.context, c, a, !0)));
94
94
  r.stopPropagation();
95
95
  }, this.host = e, t.context !== void 0 ? this.context = t.context : this.context = t, this.attachListeners(), (o = (s = this.host).addController) == null || o.call(s, this);
96
96
  }
@@ -98,7 +98,7 @@ let It = class extends Event {
98
98
  this.host.addEventListener("context-request", this.onContextRequest), this.host.addEventListener("context-provider", this.onProviderRequest);
99
99
  }
100
100
  hostConnected() {
101
- this.host.dispatchEvent(new It(this.context, this.host));
101
+ this.host.dispatchEvent(new Mt(this.context, this.host));
102
102
  }
103
103
  };
104
104
  /**
@@ -106,7 +106,7 @@ let It = class extends Event {
106
106
  * Copyright 2017 Google LLC
107
107
  * SPDX-License-Identifier: BSD-3-Clause
108
108
  */
109
- function Mt({ context: n }) {
109
+ function Ot({ context: n }) {
110
110
  return (e, t) => {
111
111
  const i = /* @__PURE__ */ new WeakMap();
112
112
  if (typeof t == "object") return { get() {
@@ -114,11 +114,11 @@ function Mt({ context: n }) {
114
114
  }, set(s) {
115
115
  return i.get(this).setValue(s), e.set.call(this, s);
116
116
  }, init(s) {
117
- return i.set(this, new Xe(this, { context: n, initialValue: s })), s;
117
+ return i.set(this, new Ke(this, { context: n, initialValue: s })), s;
118
118
  } };
119
119
  {
120
120
  e.constructor.addInitializer(((r) => {
121
- i.set(r, new Xe(r, { context: n }));
121
+ i.set(r, new Ke(r, { context: n }));
122
122
  }));
123
123
  const s = Object.getOwnPropertyDescriptor(e, t);
124
124
  let o;
@@ -144,22 +144,22 @@ function Mt({ context: n }) {
144
144
  * Copyright 2022 Google LLC
145
145
  * SPDX-License-Identifier: BSD-3-Clause
146
146
  */
147
- function pe({ context: n, subscribe: e }) {
147
+ function ue({ context: n, subscribe: e }) {
148
148
  return (t, i) => {
149
149
  typeof i == "object" ? i.addInitializer((function() {
150
- new We(this, { context: n, callback: (s) => {
150
+ new Ye(this, { context: n, callback: (s) => {
151
151
  t.set.call(this, s);
152
152
  }, subscribe: e });
153
153
  })) : t.constructor.addInitializer(((s) => {
154
- new We(s, { context: n, callback: (o) => {
154
+ new Ye(s, { context: n, callback: (o) => {
155
155
  s[i] = o;
156
156
  }, subscribe: e });
157
157
  }));
158
158
  };
159
159
  }
160
- var Ot = Object.defineProperty, Rt = (n, e, t) => e in n ? Ot(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t, $ = (n, e, t) => Rt(n, typeof e != "symbol" ? e + "" : e, t);
161
- const Lt = "ws://localhost:4567";
162
- let je = class {
160
+ var Rt = Object.defineProperty, Lt = (n, e, t) => e in n ? Rt(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t, $ = (n, e, t) => Lt(n, typeof e != "symbol" ? e + "" : e, t);
161
+ const jt = "ws://localhost:4567";
162
+ let Ue = class {
163
163
  constructor() {
164
164
  $(this, "handlers", /* @__PURE__ */ new Map());
165
165
  }
@@ -179,9 +179,9 @@ let je = class {
179
179
  removeAll() {
180
180
  this.handlers.clear();
181
181
  }
182
- }, jt = class extends je {
182
+ }, zt = class extends Ue {
183
183
  constructor(e) {
184
- super(), $(this, "ws", null), $(this, "endpoint"), $(this, "reconnectAttempt", 0), $(this, "reconnectTimer", null), $(this, "_state", "disconnected"), this.endpoint = e ?? Lt;
184
+ super(), $(this, "ws", null), $(this, "endpoint"), $(this, "reconnectAttempt", 0), $(this, "reconnectTimer", null), $(this, "_state", "disconnected"), this.endpoint = e ?? jt;
185
185
  }
186
186
  get state() {
187
187
  return this._state;
@@ -216,7 +216,7 @@ let je = class {
216
216
  this.reconnectTimer = null, this.connect();
217
217
  }, e);
218
218
  }
219
- }, zt = class extends je {
219
+ }, Ut = class extends Ue {
220
220
  constructor() {
221
221
  super(...arguments), $(this, "baseUrl", ""), $(this, "_user", null), $(this, "_users", /* @__PURE__ */ new Map()), $(this, "_presence", /* @__PURE__ */ new Map()), $(this, "_threads", /* @__PURE__ */ new Map()), $(this, "_reactions", /* @__PURE__ */ new Map()), $(this, "_notifications", []), $(this, "_activityLogs", []), $(this, "_typing", /* @__PURE__ */ new Map()), $(this, "_viewports", /* @__PURE__ */ new Map()), $(this, "_selections", /* @__PURE__ */ new Map());
222
222
  }
@@ -426,12 +426,12 @@ let je = class {
426
426
  reset() {
427
427
  this._user = null, this._users.clear(), this._presence.clear(), this._threads.clear(), this._reactions.clear(), this._notifications = [], this._activityLogs = [], this._typing.clear(), this._viewports.clear(), this._selections.clear();
428
428
  }
429
- }, xt = class extends je {
429
+ }, wt = class extends Ue {
430
430
  constructor(e) {
431
431
  var t;
432
- super(), $(this, "state"), $(this, "connection"), $(this, "config"), $(this, "heartbeatTimer", null), $(this, "lastCursorSend", 0), $(this, "pendingCursor", null), $(this, "cursorTimer", null), this.config = e, this.state = new zt(), this.state.baseUrl = (e.endpoint ?? "").replace(/^ws(s?):/, "http$1:").replace(/\/$/, "");
432
+ super(), $(this, "state"), $(this, "connection"), $(this, "config"), $(this, "heartbeatTimer", null), $(this, "lastCursorSend", 0), $(this, "pendingCursor", null), $(this, "cursorTimer", null), this.config = e, this.state = new Ut(), this.state.baseUrl = (e.endpoint ?? "").replace(/^ws(s?):/, "http$1:").replace(/\/$/, "");
433
433
  const i = ((t = e.endpoint) == null ? void 0 : t.replace(/^http/, "ws")) ?? void 0;
434
- this.connection = new jt(i), this.connection.on("message", (s) => {
434
+ this.connection = new zt(i), this.connection.on("message", (s) => {
435
435
  this.state.handleMessage(s), this.emit(s.type, s);
436
436
  }), this.connection.on("state", (s) => {
437
437
  this.emit("connection", s), s === "connected" ? (this.authenticate(), this.startHeartbeat()) : s === "disconnected" && this.stopHeartbeat();
@@ -575,18 +575,18 @@ let je = class {
575
575
  * Copyright 2019 Google LLC
576
576
  * SPDX-License-Identifier: BSD-3-Clause
577
577
  */
578
- const ve = globalThis, ze = ve.ShadowRoot && (ve.ShadyCSS === void 0 || ve.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, Ue = Symbol(), Ye = /* @__PURE__ */ new WeakMap();
579
- let yt = class {
578
+ const xe = globalThis, De = xe.ShadowRoot && (xe.ShadyCSS === void 0 || xe.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, He = Symbol(), Ge = /* @__PURE__ */ new WeakMap();
579
+ let $t = class {
580
580
  constructor(e, t, i) {
581
- if (this._$cssResult$ = !0, i !== Ue) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
581
+ if (this._$cssResult$ = !0, i !== He) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
582
582
  this.cssText = e, this.t = t;
583
583
  }
584
584
  get styleSheet() {
585
585
  let e = this.o;
586
586
  const t = this.t;
587
- if (ze && e === void 0) {
587
+ if (De && e === void 0) {
588
588
  const i = t !== void 0 && t.length === 1;
589
- i && (e = Ye.get(t)), e === void 0 && ((this.o = e = new CSSStyleSheet()).replaceSync(this.cssText), i && Ye.set(t, e));
589
+ i && (e = Ge.get(t)), e === void 0 && ((this.o = e = new CSSStyleSheet()).replaceSync(this.cssText), i && Ge.set(t, e));
590
590
  }
591
591
  return e;
592
592
  }
@@ -594,33 +594,33 @@ let yt = class {
594
594
  return this.cssText;
595
595
  }
596
596
  };
597
- const Ut = (n) => new yt(typeof n == "string" ? n : n + "", void 0, Ue), M = (n, ...e) => {
597
+ const Dt = (n) => new $t(typeof n == "string" ? n : n + "", void 0, He), O = (n, ...e) => {
598
598
  const t = n.length === 1 ? n[0] : e.reduce((i, s, o) => i + ((r) => {
599
599
  if (r._$cssResult$ === !0) return r.cssText;
600
600
  if (typeof r == "number") return r;
601
601
  throw Error("Value passed to 'css' function must be a 'css' function result: " + r + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
602
602
  })(s) + n[o + 1], n[0]);
603
- return new yt(t, n, Ue);
604
- }, Dt = (n, e) => {
605
- if (ze) n.adoptedStyleSheets = e.map((t) => t instanceof CSSStyleSheet ? t : t.styleSheet);
603
+ return new $t(t, n, He);
604
+ }, Ht = (n, e) => {
605
+ if (De) n.adoptedStyleSheets = e.map((t) => t instanceof CSSStyleSheet ? t : t.styleSheet);
606
606
  else for (const t of e) {
607
- const i = document.createElement("style"), s = ve.litNonce;
607
+ const i = document.createElement("style"), s = xe.litNonce;
608
608
  s !== void 0 && i.setAttribute("nonce", s), i.textContent = t.cssText, n.appendChild(i);
609
609
  }
610
- }, Ke = ze ? (n) => n : (n) => n instanceof CSSStyleSheet ? ((e) => {
610
+ }, Ze = De ? (n) => n : (n) => n instanceof CSSStyleSheet ? ((e) => {
611
611
  let t = "";
612
612
  for (const i of e.cssRules) t += i.cssText;
613
- return Ut(t);
613
+ return Dt(t);
614
614
  })(n) : n;
615
615
  /**
616
616
  * @license
617
617
  * Copyright 2017 Google LLC
618
618
  * SPDX-License-Identifier: BSD-3-Clause
619
619
  */
620
- const { is: Ht, defineProperty: Nt, getOwnPropertyDescriptor: Bt, getOwnPropertyNames: Ft, getOwnPropertySymbols: Vt, getPrototypeOf: qt } = Object, U = globalThis, Ge = U.trustedTypes, Wt = Ge ? Ge.emptyScript : "", Te = U.reactiveElementPolyfillSupport, ie = (n, e) => n, we = { toAttribute(n, e) {
620
+ const { is: Nt, defineProperty: Ft, getOwnPropertyDescriptor: Bt, getOwnPropertyNames: qt, getOwnPropertySymbols: Vt, getPrototypeOf: Wt } = Object, D = globalThis, Je = D.trustedTypes, Xt = Je ? Je.emptyScript : "", Pe = D.reactiveElementPolyfillSupport, se = (n, e) => n, $e = { toAttribute(n, e) {
621
621
  switch (e) {
622
622
  case Boolean:
623
- n = n ? Wt : null;
623
+ n = n ? Xt : null;
624
624
  break;
625
625
  case Object:
626
626
  case Array:
@@ -645,19 +645,19 @@ const { is: Ht, defineProperty: Nt, getOwnPropertyDescriptor: Bt, getOwnProperty
645
645
  }
646
646
  }
647
647
  return t;
648
- } }, De = (n, e) => !Ht(n, e), Ze = { attribute: !0, type: String, converter: we, reflect: !1, useDefault: !1, hasChanged: De };
649
- Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), U.litPropertyMetadata ?? (U.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
650
- let Y = class extends HTMLElement {
648
+ } }, Ne = (n, e) => !Nt(n, e), Qe = { attribute: !0, type: String, converter: $e, reflect: !1, useDefault: !1, hasChanged: Ne };
649
+ Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), D.litPropertyMetadata ?? (D.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
650
+ let K = class extends HTMLElement {
651
651
  static addInitializer(e) {
652
652
  this._$Ei(), (this.l ?? (this.l = [])).push(e);
653
653
  }
654
654
  static get observedAttributes() {
655
655
  return this.finalize(), this._$Eh && [...this._$Eh.keys()];
656
656
  }
657
- static createProperty(e, t = Ze) {
657
+ static createProperty(e, t = Qe) {
658
658
  if (t.state && (t.attribute = !1), this._$Ei(), this.prototype.hasOwnProperty(e) && ((t = Object.create(t)).wrapped = !0), this.elementProperties.set(e, t), !t.noAccessor) {
659
659
  const i = Symbol(), s = this.getPropertyDescriptor(e, i, t);
660
- s !== void 0 && Nt(this.prototype, e, s);
660
+ s !== void 0 && Ft(this.prototype, e, s);
661
661
  }
662
662
  }
663
663
  static getPropertyDescriptor(e, t, i) {
@@ -672,17 +672,17 @@ let Y = class extends HTMLElement {
672
672
  }, configurable: !0, enumerable: !0 };
673
673
  }
674
674
  static getPropertyOptions(e) {
675
- return this.elementProperties.get(e) ?? Ze;
675
+ return this.elementProperties.get(e) ?? Qe;
676
676
  }
677
677
  static _$Ei() {
678
- if (this.hasOwnProperty(ie("elementProperties"))) return;
679
- const e = qt(this);
678
+ if (this.hasOwnProperty(se("elementProperties"))) return;
679
+ const e = Wt(this);
680
680
  e.finalize(), e.l !== void 0 && (this.l = [...e.l]), this.elementProperties = new Map(e.elementProperties);
681
681
  }
682
682
  static finalize() {
683
- if (this.hasOwnProperty(ie("finalized"))) return;
684
- if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(ie("properties"))) {
685
- const t = this.properties, i = [...Ft(t), ...Vt(t)];
683
+ if (this.hasOwnProperty(se("finalized"))) return;
684
+ if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(se("properties"))) {
685
+ const t = this.properties, i = [...qt(t), ...Vt(t)];
686
686
  for (const s of i) this.createProperty(s, t[s]);
687
687
  }
688
688
  const e = this[Symbol.metadata];
@@ -701,8 +701,8 @@ let Y = class extends HTMLElement {
701
701
  const t = [];
702
702
  if (Array.isArray(e)) {
703
703
  const i = new Set(e.flat(1 / 0).reverse());
704
- for (const s of i) t.unshift(Ke(s));
705
- } else e !== void 0 && t.push(Ke(e));
704
+ for (const s of i) t.unshift(Ze(s));
705
+ } else e !== void 0 && t.push(Ze(e));
706
706
  return t;
707
707
  }
708
708
  static _$Eu(e, t) {
@@ -731,7 +731,7 @@ let Y = class extends HTMLElement {
731
731
  }
732
732
  createRenderRoot() {
733
733
  const e = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
734
- return Dt(e, this.constructor.elementStyles), e;
734
+ return Ht(e, this.constructor.elementStyles), e;
735
735
  }
736
736
  connectedCallback() {
737
737
  var e;
@@ -756,7 +756,7 @@ let Y = class extends HTMLElement {
756
756
  var o;
757
757
  const i = this.constructor.elementProperties.get(e), s = this.constructor._$Eu(e, i);
758
758
  if (s !== void 0 && i.reflect === !0) {
759
- const r = (((o = i.converter) == null ? void 0 : o.toAttribute) !== void 0 ? i.converter : we).toAttribute(t, i.type);
759
+ const r = (((o = i.converter) == null ? void 0 : o.toAttribute) !== void 0 ? i.converter : $e).toAttribute(t, i.type);
760
760
  this._$Em = e, r == null ? this.removeAttribute(s) : this.setAttribute(s, r), this._$Em = null;
761
761
  }
762
762
  }
@@ -764,7 +764,7 @@ let Y = class extends HTMLElement {
764
764
  var o, r;
765
765
  const i = this.constructor, s = i._$Eh.get(e);
766
766
  if (s !== void 0 && this._$Em !== s) {
767
- const l = i.getPropertyOptions(s), a = typeof l.converter == "function" ? { fromAttribute: l.converter } : ((o = l.converter) == null ? void 0 : o.fromAttribute) !== void 0 ? l.converter : we;
767
+ const l = i.getPropertyOptions(s), a = typeof l.converter == "function" ? { fromAttribute: l.converter } : ((o = l.converter) == null ? void 0 : o.fromAttribute) !== void 0 ? l.converter : $e;
768
768
  this._$Em = s;
769
769
  const c = a.fromAttribute(t, l.type);
770
770
  this[s] = c ?? ((r = this._$Ej) == null ? void 0 : r.get(s)) ?? c, this._$Em = null;
@@ -774,7 +774,7 @@ let Y = class extends HTMLElement {
774
774
  var r;
775
775
  if (e !== void 0) {
776
776
  const l = this.constructor;
777
- if (s === !1 && (o = this[e]), i ?? (i = l.getPropertyOptions(e)), !((i.hasChanged ?? De)(o, t) || i.useDefault && i.reflect && o === ((r = this._$Ej) == null ? void 0 : r.get(e)) && !this.hasAttribute(l._$Eu(e, i)))) return;
777
+ if (s === !1 && (o = this[e]), i ?? (i = l.getPropertyOptions(e)), !((i.hasChanged ?? Ne)(o, t) || i.useDefault && i.reflect && o === ((r = this._$Ej) == null ? void 0 : r.get(e)) && !this.hasAttribute(l._$Eu(e, i)))) return;
778
778
  this.C(e, t, i);
779
779
  }
780
780
  this.isUpdatePending === !1 && (this._$ES = this._$EP());
@@ -850,76 +850,76 @@ let Y = class extends HTMLElement {
850
850
  firstUpdated(e) {
851
851
  }
852
852
  };
853
- Y.elementStyles = [], Y.shadowRootOptions = { mode: "open" }, Y[ie("elementProperties")] = /* @__PURE__ */ new Map(), Y[ie("finalized")] = /* @__PURE__ */ new Map(), Te == null || Te({ ReactiveElement: Y }), (U.reactiveElementVersions ?? (U.reactiveElementVersions = [])).push("2.1.2");
853
+ K.elementStyles = [], K.shadowRootOptions = { mode: "open" }, K[se("elementProperties")] = /* @__PURE__ */ new Map(), K[se("finalized")] = /* @__PURE__ */ new Map(), Pe == null || Pe({ ReactiveElement: K }), (D.reactiveElementVersions ?? (D.reactiveElementVersions = [])).push("2.1.2");
854
854
  /**
855
855
  * @license
856
856
  * Copyright 2017 Google LLC
857
857
  * SPDX-License-Identifier: BSD-3-Clause
858
858
  */
859
- const se = globalThis, Je = (n) => n, $e = se.trustedTypes, Qe = $e ? $e.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, wt = "$lit$", z = `lit$${Math.random().toFixed(9).slice(2)}$`, $t = "?" + z, Xt = `<${$t}>`, F = document, oe = () => F.createComment(""), re = (n) => n === null || typeof n != "object" && typeof n != "function", He = Array.isArray, Yt = (n) => He(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", Se = `[
860
- \f\r]`, te = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, et = /-->/g, tt = />/g, H = RegExp(`>|${Se}(?:([^\\s"'>=/]+)(${Se}*=${Se}*(?:[^
861
- \f\r"'\`<>=]|("|')|))|$)`, "g"), it = /'/g, st = /"/g, kt = /^(?:script|style|textarea|title)$/i, Et = (n) => (e, ...t) => ({ _$litType$: n, strings: e, values: t }), d = Et(1), Kt = Et(2), V = Symbol.for("lit-noChange"), g = Symbol.for("lit-nothing"), nt = /* @__PURE__ */ new WeakMap(), N = F.createTreeWalker(F, 129);
862
- function Ct(n, e) {
863
- if (!He(n) || !n.hasOwnProperty("raw")) throw Error("invalid template strings array");
864
- return Qe !== void 0 ? Qe.createHTML(e) : e;
859
+ const ne = globalThis, et = (n) => n, ke = ne.trustedTypes, tt = ke ? ke.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, kt = "$lit$", U = `lit$${Math.random().toFixed(9).slice(2)}$`, Et = "?" + U, Yt = `<${Et}>`, q = document, re = () => q.createComment(""), ae = (n) => n === null || typeof n != "object" && typeof n != "function", Fe = Array.isArray, Kt = (n) => Fe(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", Ae = `[
860
+ \f\r]`, ie = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, it = /-->/g, st = />/g, N = RegExp(`>|${Ae}(?:([^\\s"'>=/]+)(${Ae}*=${Ae}*(?:[^
861
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), nt = /'/g, ot = /"/g, Ct = /^(?:script|style|textarea|title)$/i, Tt = (n) => (e, ...t) => ({ _$litType$: n, strings: e, values: t }), d = Tt(1), Gt = Tt(2), V = Symbol.for("lit-noChange"), g = Symbol.for("lit-nothing"), rt = /* @__PURE__ */ new WeakMap(), F = q.createTreeWalker(q, 129);
862
+ function _t(n, e) {
863
+ if (!Fe(n) || !n.hasOwnProperty("raw")) throw Error("invalid template strings array");
864
+ return tt !== void 0 ? tt.createHTML(e) : e;
865
865
  }
866
- const Gt = (n, e) => {
866
+ const Zt = (n, e) => {
867
867
  const t = n.length - 1, i = [];
868
- let s, o = e === 2 ? "<svg>" : e === 3 ? "<math>" : "", r = te;
868
+ let s, o = e === 2 ? "<svg>" : e === 3 ? "<math>" : "", r = ie;
869
869
  for (let l = 0; l < t; l++) {
870
870
  const a = n[l];
871
871
  let c, h, p = -1, u = 0;
872
- for (; u < a.length && (r.lastIndex = u, h = r.exec(a), h !== null); ) u = r.lastIndex, r === te ? h[1] === "!--" ? r = et : h[1] !== void 0 ? r = tt : h[2] !== void 0 ? (kt.test(h[2]) && (s = RegExp("</" + h[2], "g")), r = H) : h[3] !== void 0 && (r = H) : r === H ? h[0] === ">" ? (r = s ?? te, p = -1) : h[1] === void 0 ? p = -2 : (p = r.lastIndex - h[2].length, c = h[1], r = h[3] === void 0 ? H : h[3] === '"' ? st : it) : r === st || r === it ? r = H : r === et || r === tt ? r = te : (r = H, s = void 0);
873
- const f = r === H && n[l + 1].startsWith("/>") ? " " : "";
874
- o += r === te ? a + Xt : p >= 0 ? (i.push(c), a.slice(0, p) + wt + a.slice(p) + z + f) : a + z + (p === -2 ? l : f);
872
+ for (; u < a.length && (r.lastIndex = u, h = r.exec(a), h !== null); ) u = r.lastIndex, r === ie ? h[1] === "!--" ? r = it : h[1] !== void 0 ? r = st : h[2] !== void 0 ? (Ct.test(h[2]) && (s = RegExp("</" + h[2], "g")), r = N) : h[3] !== void 0 && (r = N) : r === N ? h[0] === ">" ? (r = s ?? ie, p = -1) : h[1] === void 0 ? p = -2 : (p = r.lastIndex - h[2].length, c = h[1], r = h[3] === void 0 ? N : h[3] === '"' ? ot : nt) : r === ot || r === nt ? r = N : r === it || r === st ? r = ie : (r = N, s = void 0);
873
+ const f = r === N && n[l + 1].startsWith("/>") ? " " : "";
874
+ o += r === ie ? a + Yt : p >= 0 ? (i.push(c), a.slice(0, p) + kt + a.slice(p) + U + f) : a + U + (p === -2 ? l : f);
875
875
  }
876
- return [Ct(n, o + (n[t] || "<?>") + (e === 2 ? "</svg>" : e === 3 ? "</math>" : "")), i];
876
+ return [_t(n, o + (n[t] || "<?>") + (e === 2 ? "</svg>" : e === 3 ? "</math>" : "")), i];
877
877
  };
878
- class ae {
878
+ class le {
879
879
  constructor({ strings: e, _$litType$: t }, i) {
880
880
  let s;
881
881
  this.parts = [];
882
882
  let o = 0, r = 0;
883
- const l = e.length - 1, a = this.parts, [c, h] = Gt(e, t);
884
- if (this.el = ae.createElement(c, i), N.currentNode = this.el.content, t === 2 || t === 3) {
883
+ const l = e.length - 1, a = this.parts, [c, h] = Zt(e, t);
884
+ if (this.el = le.createElement(c, i), F.currentNode = this.el.content, t === 2 || t === 3) {
885
885
  const p = this.el.content.firstChild;
886
886
  p.replaceWith(...p.childNodes);
887
887
  }
888
- for (; (s = N.nextNode()) !== null && a.length < l; ) {
888
+ for (; (s = F.nextNode()) !== null && a.length < l; ) {
889
889
  if (s.nodeType === 1) {
890
- if (s.hasAttributes()) for (const p of s.getAttributeNames()) if (p.endsWith(wt)) {
891
- const u = h[r++], f = s.getAttribute(p).split(z), m = /([.?@])?(.*)/.exec(u);
892
- a.push({ type: 1, index: o, name: m[2], strings: f, ctor: m[1] === "." ? Jt : m[1] === "?" ? Qt : m[1] === "@" ? ei : Ee }), s.removeAttribute(p);
893
- } else p.startsWith(z) && (a.push({ type: 6, index: o }), s.removeAttribute(p));
894
- if (kt.test(s.tagName)) {
895
- const p = s.textContent.split(z), u = p.length - 1;
890
+ if (s.hasAttributes()) for (const p of s.getAttributeNames()) if (p.endsWith(kt)) {
891
+ const u = h[r++], f = s.getAttribute(p).split(U), m = /([.?@])?(.*)/.exec(u);
892
+ a.push({ type: 1, index: o, name: m[2], strings: f, ctor: m[1] === "." ? Qt : m[1] === "?" ? ei : m[1] === "@" ? ti : Te }), s.removeAttribute(p);
893
+ } else p.startsWith(U) && (a.push({ type: 6, index: o }), s.removeAttribute(p));
894
+ if (Ct.test(s.tagName)) {
895
+ const p = s.textContent.split(U), u = p.length - 1;
896
896
  if (u > 0) {
897
- s.textContent = $e ? $e.emptyScript : "";
898
- for (let f = 0; f < u; f++) s.append(p[f], oe()), N.nextNode(), a.push({ type: 2, index: ++o });
899
- s.append(p[u], oe());
897
+ s.textContent = ke ? ke.emptyScript : "";
898
+ for (let f = 0; f < u; f++) s.append(p[f], re()), F.nextNode(), a.push({ type: 2, index: ++o });
899
+ s.append(p[u], re());
900
900
  }
901
901
  }
902
- } else if (s.nodeType === 8) if (s.data === $t) a.push({ type: 2, index: o });
902
+ } else if (s.nodeType === 8) if (s.data === Et) a.push({ type: 2, index: o });
903
903
  else {
904
904
  let p = -1;
905
- for (; (p = s.data.indexOf(z, p + 1)) !== -1; ) a.push({ type: 7, index: o }), p += z.length - 1;
905
+ for (; (p = s.data.indexOf(U, p + 1)) !== -1; ) a.push({ type: 7, index: o }), p += U.length - 1;
906
906
  }
907
907
  o++;
908
908
  }
909
909
  }
910
910
  static createElement(e, t) {
911
- const i = F.createElement("template");
911
+ const i = q.createElement("template");
912
912
  return i.innerHTML = e, i;
913
913
  }
914
914
  }
915
- function K(n, e, t = n, i) {
915
+ function G(n, e, t = n, i) {
916
916
  var r, l;
917
917
  if (e === V) return e;
918
918
  let s = i !== void 0 ? (r = t._$Co) == null ? void 0 : r[i] : t._$Cl;
919
- const o = re(e) ? void 0 : e._$litDirective$;
920
- return (s == null ? void 0 : s.constructor) !== o && ((l = s == null ? void 0 : s._$AO) == null || l.call(s, !1), o === void 0 ? s = void 0 : (s = new o(n), s._$AT(n, t, i)), i !== void 0 ? (t._$Co ?? (t._$Co = []))[i] = s : t._$Cl = s), s !== void 0 && (e = K(n, s._$AS(n, e.values), s, i)), e;
919
+ const o = ae(e) ? void 0 : e._$litDirective$;
920
+ return (s == null ? void 0 : s.constructor) !== o && ((l = s == null ? void 0 : s._$AO) == null || l.call(s, !1), o === void 0 ? s = void 0 : (s = new o(n), s._$AT(n, t, i)), i !== void 0 ? (t._$Co ?? (t._$Co = []))[i] = s : t._$Cl = s), s !== void 0 && (e = G(n, s._$AS(n, e.values), s, i)), e;
921
921
  }
922
- class Zt {
922
+ class Jt {
923
923
  constructor(e, t) {
924
924
  this._$AV = [], this._$AN = void 0, this._$AD = e, this._$AM = t;
925
925
  }
@@ -930,24 +930,24 @@ class Zt {
930
930
  return this._$AM._$AU;
931
931
  }
932
932
  u(e) {
933
- const { el: { content: t }, parts: i } = this._$AD, s = ((e == null ? void 0 : e.creationScope) ?? F).importNode(t, !0);
934
- N.currentNode = s;
935
- let o = N.nextNode(), r = 0, l = 0, a = i[0];
933
+ const { el: { content: t }, parts: i } = this._$AD, s = ((e == null ? void 0 : e.creationScope) ?? q).importNode(t, !0);
934
+ F.currentNode = s;
935
+ let o = F.nextNode(), r = 0, l = 0, a = i[0];
936
936
  for (; a !== void 0; ) {
937
937
  if (r === a.index) {
938
938
  let c;
939
- a.type === 2 ? c = new ue(o, o.nextSibling, this, e) : a.type === 1 ? c = new a.ctor(o, a.name, a.strings, this, e) : a.type === 6 && (c = new ti(o, this, e)), this._$AV.push(c), a = i[++l];
939
+ a.type === 2 ? c = new fe(o, o.nextSibling, this, e) : a.type === 1 ? c = new a.ctor(o, a.name, a.strings, this, e) : a.type === 6 && (c = new ii(o, this, e)), this._$AV.push(c), a = i[++l];
940
940
  }
941
- r !== (a == null ? void 0 : a.index) && (o = N.nextNode(), r++);
941
+ r !== (a == null ? void 0 : a.index) && (o = F.nextNode(), r++);
942
942
  }
943
- return N.currentNode = F, s;
943
+ return F.currentNode = q, s;
944
944
  }
945
945
  p(e) {
946
946
  let t = 0;
947
947
  for (const i of this._$AV) i !== void 0 && (i.strings !== void 0 ? (i._$AI(e, i, t), t += i.strings.length - 2) : i._$AI(e[t])), t++;
948
948
  }
949
949
  }
950
- class ue {
950
+ class fe {
951
951
  get _$AU() {
952
952
  var e;
953
953
  return ((e = this._$AM) == null ? void 0 : e._$AU) ?? this._$Cv;
@@ -967,7 +967,7 @@ class ue {
967
967
  return this._$AB;
968
968
  }
969
969
  _$AI(e, t = this) {
970
- e = K(this, e, t), re(e) ? e === g || e == null || e === "" ? (this._$AH !== g && this._$AR(), this._$AH = g) : e !== this._$AH && e !== V && this._(e) : e._$litType$ !== void 0 ? this.$(e) : e.nodeType !== void 0 ? this.T(e) : Yt(e) ? this.k(e) : this._(e);
970
+ e = G(this, e, t), ae(e) ? e === g || e == null || e === "" ? (this._$AH !== g && this._$AR(), this._$AH = g) : e !== this._$AH && e !== V && this._(e) : e._$litType$ !== void 0 ? this.$(e) : e.nodeType !== void 0 ? this.T(e) : Kt(e) ? this.k(e) : this._(e);
971
971
  }
972
972
  O(e) {
973
973
  return this._$AA.parentNode.insertBefore(e, this._$AB);
@@ -976,33 +976,33 @@ class ue {
976
976
  this._$AH !== e && (this._$AR(), this._$AH = this.O(e));
977
977
  }
978
978
  _(e) {
979
- this._$AH !== g && re(this._$AH) ? this._$AA.nextSibling.data = e : this.T(F.createTextNode(e)), this._$AH = e;
979
+ this._$AH !== g && ae(this._$AH) ? this._$AA.nextSibling.data = e : this.T(q.createTextNode(e)), this._$AH = e;
980
980
  }
981
981
  $(e) {
982
982
  var o;
983
- const { values: t, _$litType$: i } = e, s = typeof i == "number" ? this._$AC(e) : (i.el === void 0 && (i.el = ae.createElement(Ct(i.h, i.h[0]), this.options)), i);
983
+ const { values: t, _$litType$: i } = e, s = typeof i == "number" ? this._$AC(e) : (i.el === void 0 && (i.el = le.createElement(_t(i.h, i.h[0]), this.options)), i);
984
984
  if (((o = this._$AH) == null ? void 0 : o._$AD) === s) this._$AH.p(t);
985
985
  else {
986
- const r = new Zt(s, this), l = r.u(this.options);
986
+ const r = new Jt(s, this), l = r.u(this.options);
987
987
  r.p(t), this.T(l), this._$AH = r;
988
988
  }
989
989
  }
990
990
  _$AC(e) {
991
- let t = nt.get(e.strings);
992
- return t === void 0 && nt.set(e.strings, t = new ae(e)), t;
991
+ let t = rt.get(e.strings);
992
+ return t === void 0 && rt.set(e.strings, t = new le(e)), t;
993
993
  }
994
994
  k(e) {
995
- He(this._$AH) || (this._$AH = [], this._$AR());
995
+ Fe(this._$AH) || (this._$AH = [], this._$AR());
996
996
  const t = this._$AH;
997
997
  let i, s = 0;
998
- for (const o of e) s === t.length ? t.push(i = new ue(this.O(oe()), this.O(oe()), this, this.options)) : i = t[s], i._$AI(o), s++;
998
+ for (const o of e) s === t.length ? t.push(i = new fe(this.O(re()), this.O(re()), this, this.options)) : i = t[s], i._$AI(o), s++;
999
999
  s < t.length && (this._$AR(i && i._$AB.nextSibling, s), t.length = s);
1000
1000
  }
1001
1001
  _$AR(e = this._$AA.nextSibling, t) {
1002
1002
  var i;
1003
1003
  for ((i = this._$AP) == null ? void 0 : i.call(this, !1, !0, t); e !== this._$AB; ) {
1004
- const s = Je(e).nextSibling;
1005
- Je(e).remove(), e = s;
1004
+ const s = et(e).nextSibling;
1005
+ et(e).remove(), e = s;
1006
1006
  }
1007
1007
  }
1008
1008
  setConnected(e) {
@@ -1010,7 +1010,7 @@ class ue {
1010
1010
  this._$AM === void 0 && (this._$Cv = e, (t = this._$AP) == null || t.call(this, e));
1011
1011
  }
1012
1012
  }
1013
- class Ee {
1013
+ class Te {
1014
1014
  get tagName() {
1015
1015
  return this.element.tagName;
1016
1016
  }
@@ -1023,11 +1023,11 @@ class Ee {
1023
1023
  _$AI(e, t = this, i, s) {
1024
1024
  const o = this.strings;
1025
1025
  let r = !1;
1026
- if (o === void 0) e = K(this, e, t, 0), r = !re(e) || e !== this._$AH && e !== V, r && (this._$AH = e);
1026
+ if (o === void 0) e = G(this, e, t, 0), r = !ae(e) || e !== this._$AH && e !== V, r && (this._$AH = e);
1027
1027
  else {
1028
1028
  const l = e;
1029
1029
  let a, c;
1030
- for (e = o[0], a = 0; a < o.length - 1; a++) c = K(this, l[i + a], t, a), c === V && (c = this._$AH[a]), r || (r = !re(c) || c !== this._$AH[a]), c === g ? e = g : e !== g && (e += (c ?? "") + o[a + 1]), this._$AH[a] = c;
1030
+ for (e = o[0], a = 0; a < o.length - 1; a++) c = G(this, l[i + a], t, a), c === V && (c = this._$AH[a]), r || (r = !ae(c) || c !== this._$AH[a]), c === g ? e = g : e !== g && (e += (c ?? "") + o[a + 1]), this._$AH[a] = c;
1031
1031
  }
1032
1032
  r && !s && this.j(e);
1033
1033
  }
@@ -1035,7 +1035,7 @@ class Ee {
1035
1035
  e === g ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, e ?? "");
1036
1036
  }
1037
1037
  }
1038
- class Jt extends Ee {
1038
+ class Qt extends Te {
1039
1039
  constructor() {
1040
1040
  super(...arguments), this.type = 3;
1041
1041
  }
@@ -1043,7 +1043,7 @@ class Jt extends Ee {
1043
1043
  this.element[this.name] = e === g ? void 0 : e;
1044
1044
  }
1045
1045
  }
1046
- class Qt extends Ee {
1046
+ class ei extends Te {
1047
1047
  constructor() {
1048
1048
  super(...arguments), this.type = 4;
1049
1049
  }
@@ -1051,12 +1051,12 @@ class Qt extends Ee {
1051
1051
  this.element.toggleAttribute(this.name, !!e && e !== g);
1052
1052
  }
1053
1053
  }
1054
- class ei extends Ee {
1054
+ class ti extends Te {
1055
1055
  constructor(e, t, i, s, o) {
1056
1056
  super(e, t, i, s, o), this.type = 5;
1057
1057
  }
1058
1058
  _$AI(e, t = this) {
1059
- if ((e = K(this, e, t, 0) ?? g) === V) return;
1059
+ if ((e = G(this, e, t, 0) ?? g) === V) return;
1060
1060
  const i = this._$AH, s = e === g && i !== g || e.capture !== i.capture || e.once !== i.once || e.passive !== i.passive, o = e !== g && (i === g || s);
1061
1061
  s && this.element.removeEventListener(this.name, this, i), o && this.element.addEventListener(this.name, this, e), this._$AH = e;
1062
1062
  }
@@ -1065,7 +1065,7 @@ class ei extends Ee {
1065
1065
  typeof this._$AH == "function" ? this._$AH.call(((t = this.options) == null ? void 0 : t.host) ?? this.element, e) : this._$AH.handleEvent(e);
1066
1066
  }
1067
1067
  }
1068
- class ti {
1068
+ class ii {
1069
1069
  constructor(e, t, i) {
1070
1070
  this.element = e, this.type = 6, this._$AN = void 0, this._$AM = t, this.options = i;
1071
1071
  }
@@ -1073,17 +1073,17 @@ class ti {
1073
1073
  return this._$AM._$AU;
1074
1074
  }
1075
1075
  _$AI(e) {
1076
- K(this, e);
1076
+ G(this, e);
1077
1077
  }
1078
1078
  }
1079
- const Pe = se.litHtmlPolyfillSupport;
1080
- Pe == null || Pe(ae, ue), (se.litHtmlVersions ?? (se.litHtmlVersions = [])).push("3.3.2");
1081
- const ii = (n, e, t) => {
1079
+ const Ie = ne.litHtmlPolyfillSupport;
1080
+ Ie == null || Ie(le, fe), (ne.litHtmlVersions ?? (ne.litHtmlVersions = [])).push("3.3.2");
1081
+ const si = (n, e, t) => {
1082
1082
  const i = (t == null ? void 0 : t.renderBefore) ?? e;
1083
1083
  let s = i._$litPart$;
1084
1084
  if (s === void 0) {
1085
1085
  const o = (t == null ? void 0 : t.renderBefore) ?? null;
1086
- i._$litPart$ = s = new ue(e.insertBefore(oe(), o), o, void 0, t ?? {});
1086
+ i._$litPart$ = s = new fe(e.insertBefore(re(), o), o, void 0, t ?? {});
1087
1087
  }
1088
1088
  return s._$AI(n), s;
1089
1089
  };
@@ -1093,7 +1093,7 @@ const ii = (n, e, t) => {
1093
1093
  * SPDX-License-Identifier: BSD-3-Clause
1094
1094
  */
1095
1095
  const B = globalThis;
1096
- let S = class extends Y {
1096
+ let P = class extends K {
1097
1097
  constructor() {
1098
1098
  super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
1099
1099
  }
@@ -1104,7 +1104,7 @@ let S = class extends Y {
1104
1104
  }
1105
1105
  update(e) {
1106
1106
  const t = this.render();
1107
- this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(e), this._$Do = ii(t, this.renderRoot, this.renderOptions);
1107
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(e), this._$Do = si(t, this.renderRoot, this.renderOptions);
1108
1108
  }
1109
1109
  connectedCallback() {
1110
1110
  var e;
@@ -1118,17 +1118,17 @@ let S = class extends Y {
1118
1118
  return V;
1119
1119
  }
1120
1120
  };
1121
- var bt;
1122
- S._$litElement$ = !0, S.finalized = !0, (bt = B.litElementHydrateSupport) == null || bt.call(B, { LitElement: S });
1123
- const Ae = B.litElementPolyfillSupport;
1124
- Ae == null || Ae({ LitElement: S });
1121
+ var xt;
1122
+ P._$litElement$ = !0, P.finalized = !0, (xt = B.litElementHydrateSupport) == null || xt.call(B, { LitElement: P });
1123
+ const Me = B.litElementPolyfillSupport;
1124
+ Me == null || Me({ LitElement: P });
1125
1125
  (B.litElementVersions ?? (B.litElementVersions = [])).push("4.2.2");
1126
1126
  /**
1127
1127
  * @license
1128
1128
  * Copyright 2017 Google LLC
1129
1129
  * SPDX-License-Identifier: BSD-3-Clause
1130
1130
  */
1131
- const R = (n) => (e, t) => {
1131
+ const L = (n) => (e, t) => {
1132
1132
  t !== void 0 ? t.addInitializer(() => {
1133
1133
  customElements.define(n, e);
1134
1134
  }) : customElements.define(n, e);
@@ -1138,7 +1138,7 @@ const R = (n) => (e, t) => {
1138
1138
  * Copyright 2017 Google LLC
1139
1139
  * SPDX-License-Identifier: BSD-3-Clause
1140
1140
  */
1141
- const si = { attribute: !0, type: String, converter: we, reflect: !1, hasChanged: De }, ni = (n = si, e, t) => {
1141
+ const ni = { attribute: !0, type: String, converter: $e, reflect: !1, hasChanged: Ne }, oi = (n = ni, e, t) => {
1142
1142
  const { kind: i, metadata: s } = t;
1143
1143
  let o = globalThis.litPropertyMetadata.get(s);
1144
1144
  if (o === void 0 && globalThis.litPropertyMetadata.set(s, o = /* @__PURE__ */ new Map()), i === "setter" && ((n = Object.create(n)).wrapped = !0), o.set(t.name, n), i === "accessor") {
@@ -1160,7 +1160,7 @@ const si = { attribute: !0, type: String, converter: we, reflect: !1, hasChanged
1160
1160
  throw Error("Unsupported decorator location: " + i);
1161
1161
  };
1162
1162
  function v(n) {
1163
- return (e, t) => typeof t == "object" ? ni(n, e, t) : ((i, s, o) => {
1163
+ return (e, t) => typeof t == "object" ? oi(n, e, t) : ((i, s, o) => {
1164
1164
  const r = s.hasOwnProperty(o);
1165
1165
  return s.constructor.createProperty(o, i), r ? Object.getOwnPropertyDescriptor(s, o) : void 0;
1166
1166
  })(n, e, t);
@@ -1173,13 +1173,13 @@ function v(n) {
1173
1173
  function w(n) {
1174
1174
  return v({ ...n, state: !0, attribute: !1 });
1175
1175
  }
1176
- const Z = "pulse-client";
1177
- var oi = Object.defineProperty, ri = Object.getOwnPropertyDescriptor, J = (n, e, t, i) => {
1178
- for (var s = i > 1 ? void 0 : i ? ri(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1176
+ const J = "pulse-client";
1177
+ var ri = Object.defineProperty, ai = Object.getOwnPropertyDescriptor, Q = (n, e, t, i) => {
1178
+ for (var s = i > 1 ? void 0 : i ? ai(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1179
1179
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
1180
- return i && s && oi(e, t, s), s;
1180
+ return i && s && ri(e, t, s), s;
1181
1181
  };
1182
- let q = class extends S {
1182
+ let W = class extends P {
1183
1183
  constructor() {
1184
1184
  super(...arguments), this.apiKey = "", this.token = "", this.room = "";
1185
1185
  }
@@ -1191,7 +1191,7 @@ let q = class extends S {
1191
1191
  room: this.room,
1192
1192
  endpoint: this.endpoint
1193
1193
  };
1194
- this.client = new xt(n), this.client.connect();
1194
+ this.client = new wt(n), this.client.connect();
1195
1195
  }
1196
1196
  disconnectedCallback() {
1197
1197
  var n;
@@ -1201,30 +1201,30 @@ let q = class extends S {
1201
1201
  return d`<slot></slot>`;
1202
1202
  }
1203
1203
  };
1204
- J([
1204
+ Q([
1205
1205
  v({ attribute: "api-key" })
1206
- ], q.prototype, "apiKey", 2);
1207
- J([
1206
+ ], W.prototype, "apiKey", 2);
1207
+ Q([
1208
1208
  v()
1209
- ], q.prototype, "token", 2);
1210
- J([
1209
+ ], W.prototype, "token", 2);
1210
+ Q([
1211
1211
  v()
1212
- ], q.prototype, "room", 2);
1213
- J([
1212
+ ], W.prototype, "room", 2);
1213
+ Q([
1214
1214
  v()
1215
- ], q.prototype, "endpoint", 2);
1216
- J([
1217
- Mt({ context: Z })
1218
- ], q.prototype, "client", 2);
1219
- q = J([
1220
- R("pulse-provider")
1221
- ], q);
1222
- var ai = Object.defineProperty, li = Object.getOwnPropertyDescriptor, Ce = (n, e, t, i) => {
1223
- for (var s = i > 1 ? void 0 : i ? li(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1215
+ ], W.prototype, "endpoint", 2);
1216
+ Q([
1217
+ Ot({ context: J })
1218
+ ], W.prototype, "client", 2);
1219
+ W = Q([
1220
+ L("pulse-provider")
1221
+ ], W);
1222
+ var li = Object.defineProperty, ci = Object.getOwnPropertyDescriptor, _e = (n, e, t, i) => {
1223
+ for (var s = i > 1 ? void 0 : i ? ci(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1224
1224
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
1225
- return i && s && ai(e, t, s), s;
1225
+ return i && s && li(e, t, s), s;
1226
1226
  };
1227
- let G = class extends S {
1227
+ let Z = class extends P {
1228
1228
  constructor() {
1229
1229
  super(...arguments), this.maxVisible = 5, this.users = [];
1230
1230
  }
@@ -1268,7 +1268,7 @@ let G = class extends S {
1268
1268
  `;
1269
1269
  }
1270
1270
  };
1271
- G.styles = M`
1271
+ Z.styles = O`
1272
1272
  :host {
1273
1273
  display: inline-flex;
1274
1274
  align-items: center;
@@ -1372,25 +1372,25 @@ G.styles = M`
1372
1372
  opacity: 1;
1373
1373
  }
1374
1374
  `;
1375
- Ce([
1376
- pe({ context: Z, subscribe: !0 }),
1375
+ _e([
1376
+ ue({ context: J, subscribe: !0 }),
1377
1377
  v({ attribute: !1 })
1378
- ], G.prototype, "client", 2);
1379
- Ce([
1378
+ ], Z.prototype, "client", 2);
1379
+ _e([
1380
1380
  v({ type: Number, attribute: "max-visible" })
1381
- ], G.prototype, "maxVisible", 2);
1382
- Ce([
1381
+ ], Z.prototype, "maxVisible", 2);
1382
+ _e([
1383
1383
  w()
1384
- ], G.prototype, "users", 2);
1385
- G = Ce([
1386
- R("pulse-presence")
1387
- ], G);
1388
- var ci = Object.defineProperty, di = Object.getOwnPropertyDescriptor, Ne = (n, e, t, i) => {
1389
- for (var s = i > 1 ? void 0 : i ? di(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1384
+ ], Z.prototype, "users", 2);
1385
+ Z = _e([
1386
+ L("pulse-presence")
1387
+ ], Z);
1388
+ var di = Object.defineProperty, hi = Object.getOwnPropertyDescriptor, Be = (n, e, t, i) => {
1389
+ for (var s = i > 1 ? void 0 : i ? hi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1390
1390
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
1391
- return i && s && ci(e, t, s), s;
1391
+ return i && s && di(e, t, s), s;
1392
1392
  };
1393
- let le = class extends S {
1393
+ let ce = class extends P {
1394
1394
  constructor() {
1395
1395
  super(...arguments), this.cursors = /* @__PURE__ */ new Map(), this.unsubs = [], this.handleLocalCursor = (n) => {
1396
1396
  var e;
@@ -1467,7 +1467,7 @@ let le = class extends S {
1467
1467
  `;
1468
1468
  }
1469
1469
  };
1470
- le.styles = M`
1470
+ ce.styles = O`
1471
1471
  :host {
1472
1472
  position: fixed;
1473
1473
  top: 0;
@@ -1504,22 +1504,22 @@ le.styles = M`
1504
1504
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
1505
1505
  }
1506
1506
  `;
1507
- Ne([
1508
- pe({ context: Z, subscribe: !0 }),
1507
+ Be([
1508
+ ue({ context: J, subscribe: !0 }),
1509
1509
  v({ attribute: !1 })
1510
- ], le.prototype, "client", 2);
1511
- Ne([
1510
+ ], ce.prototype, "client", 2);
1511
+ Be([
1512
1512
  w()
1513
- ], le.prototype, "cursors", 2);
1514
- le = Ne([
1515
- R("pulse-cursors")
1516
- ], le);
1517
- var hi = Object.defineProperty, pi = Object.getOwnPropertyDescriptor, fe = (n, e, t, i) => {
1518
- for (var s = i > 1 ? void 0 : i ? pi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1513
+ ], ce.prototype, "cursors", 2);
1514
+ ce = Be([
1515
+ L("pulse-cursors")
1516
+ ], ce);
1517
+ var pi = Object.defineProperty, ui = Object.getOwnPropertyDescriptor, me = (n, e, t, i) => {
1518
+ for (var s = i > 1 ? void 0 : i ? ui(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1519
1519
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
1520
- return i && s && hi(e, t, s), s;
1520
+ return i && s && pi(e, t, s), s;
1521
1521
  };
1522
- let W = class extends S {
1522
+ let X = class extends P {
1523
1523
  constructor() {
1524
1524
  super(...arguments), this.showResolved = !1, this.threads = [], this.replyingTo = null;
1525
1525
  }
@@ -1637,7 +1637,7 @@ let W = class extends S {
1637
1637
  return o < 24 ? `${o}h ago` : e.toLocaleDateString();
1638
1638
  }
1639
1639
  };
1640
- W.styles = M`
1640
+ X.styles = O`
1641
1641
  :host {
1642
1642
  display: block;
1643
1643
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
@@ -1849,41 +1849,41 @@ W.styles = M`
1849
1849
  opacity: 0.4;
1850
1850
  }
1851
1851
  `;
1852
- fe([
1853
- pe({ context: Z, subscribe: !0 }),
1852
+ me([
1853
+ ue({ context: J, subscribe: !0 }),
1854
1854
  v({ attribute: !1 })
1855
- ], W.prototype, "client", 2);
1856
- fe([
1855
+ ], X.prototype, "client", 2);
1856
+ me([
1857
1857
  v({ type: Boolean, attribute: "show-resolved" })
1858
- ], W.prototype, "showResolved", 2);
1859
- fe([
1858
+ ], X.prototype, "showResolved", 2);
1859
+ me([
1860
1860
  w()
1861
- ], W.prototype, "threads", 2);
1862
- fe([
1861
+ ], X.prototype, "threads", 2);
1862
+ me([
1863
1863
  w()
1864
- ], W.prototype, "replyingTo", 2);
1865
- W = fe([
1866
- R("pulse-comments")
1867
- ], W);
1868
- var ui = Object.defineProperty, fi = Object.getOwnPropertyDescriptor, Be = (n, e, t, i) => {
1869
- for (var s = i > 1 ? void 0 : i ? fi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1864
+ ], X.prototype, "replyingTo", 2);
1865
+ X = me([
1866
+ L("pulse-comments")
1867
+ ], X);
1868
+ var fi = Object.defineProperty, mi = Object.getOwnPropertyDescriptor, qe = (n, e, t, i) => {
1869
+ for (var s = i > 1 ? void 0 : i ? mi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
1870
1870
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
1871
- return i && s && ui(e, t, s), s;
1871
+ return i && s && fi(e, t, s), s;
1872
1872
  };
1873
- const mi = {
1873
+ const gi = {
1874
1874
  "comment:created": "left a comment",
1875
1875
  "comment:mention": "mentioned you",
1876
1876
  "comment:reply": "replied to your comment",
1877
1877
  "thread:resolved": "resolved a thread",
1878
1878
  "reaction:added": "reacted to your comment"
1879
- }, gi = {
1879
+ }, bi = {
1880
1880
  "comment:created": "💬",
1881
1881
  "comment:mention": "📣",
1882
1882
  "comment:reply": "↩️",
1883
1883
  "thread:resolved": "✅",
1884
1884
  "reaction:added": "🎉"
1885
1885
  };
1886
- let ce = class extends S {
1886
+ let de = class extends P {
1887
1887
  constructor() {
1888
1888
  super(...arguments), this.notifications = [];
1889
1889
  }
@@ -1950,11 +1950,11 @@ let ce = class extends S {
1950
1950
  class="item ${e.read ? "" : "unread"}"
1951
1951
  @click=${() => this.handleClick(e)}
1952
1952
  >
1953
- <span class="icon">${gi[e.type] ?? "🔔"}</span>
1953
+ <span class="icon">${bi[e.type] ?? "🔔"}</span>
1954
1954
  <div class="content">
1955
1955
  <div class="text">
1956
1956
  <span class="actor">${this.getActorName(e.actorId)}</span>
1957
- ${mi[e.type] ?? e.type}
1957
+ ${gi[e.type] ?? e.type}
1958
1958
  </div>
1959
1959
  <div class="time">${this.formatTime(e.createdAt)}</div>
1960
1960
  </div>
@@ -1966,7 +1966,7 @@ let ce = class extends S {
1966
1966
  `;
1967
1967
  }
1968
1968
  };
1969
- ce.styles = M`
1969
+ de.styles = O`
1970
1970
  :host {
1971
1971
  display: block;
1972
1972
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
@@ -2107,23 +2107,23 @@ ce.styles = M`
2107
2107
  opacity: 0.4;
2108
2108
  }
2109
2109
  `;
2110
- Be([
2111
- pe({ context: Z, subscribe: !0 }),
2110
+ qe([
2111
+ ue({ context: J, subscribe: !0 }),
2112
2112
  v({ attribute: !1 })
2113
- ], ce.prototype, "client", 2);
2114
- Be([
2113
+ ], de.prototype, "client", 2);
2114
+ qe([
2115
2115
  w()
2116
- ], ce.prototype, "notifications", 2);
2117
- ce = Be([
2118
- R("pulse-notifications")
2119
- ], ce);
2120
- var bi = Object.defineProperty, vi = Object.getOwnPropertyDescriptor, Q = (n, e, t, i) => {
2121
- for (var s = i > 1 ? void 0 : i ? vi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
2116
+ ], de.prototype, "notifications", 2);
2117
+ de = qe([
2118
+ L("pulse-notifications")
2119
+ ], de);
2120
+ var vi = Object.defineProperty, xi = Object.getOwnPropertyDescriptor, ee = (n, e, t, i) => {
2121
+ for (var s = i > 1 ? void 0 : i ? xi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
2122
2122
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
2123
- return i && s && bi(e, t, s), s;
2123
+ return i && s && vi(e, t, s), s;
2124
2124
  };
2125
- const xi = ["👍", "👎", "❤️", "🎉", "👀", "🚀"];
2126
- let D = class extends S {
2125
+ const yi = ["👍", "👎", "❤️", "🎉", "👀", "🚀"];
2126
+ let H = class extends P {
2127
2127
  constructor() {
2128
2128
  super(...arguments), this.targetId = "", this.targetType = "comment", this.reactions = [], this.showPicker = !1;
2129
2129
  }
@@ -2184,7 +2184,7 @@ let D = class extends S {
2184
2184
  </button>
2185
2185
  ${this.showPicker ? d`
2186
2186
  <div class="picker">
2187
- ${xi.map(
2187
+ ${yi.map(
2188
2188
  (e) => d`
2189
2189
  <button @click=${() => this.addEmoji(e)}>
2190
2190
  ${e}
@@ -2197,7 +2197,7 @@ let D = class extends S {
2197
2197
  `;
2198
2198
  }
2199
2199
  };
2200
- D.styles = M`
2200
+ H.styles = O`
2201
2201
  :host {
2202
2202
  display: inline-flex;
2203
2203
  align-items: center;
@@ -2309,32 +2309,32 @@ D.styles = M`
2309
2309
  transform: scale(1.2);
2310
2310
  }
2311
2311
  `;
2312
- Q([
2313
- pe({ context: Z, subscribe: !0 }),
2312
+ ee([
2313
+ ue({ context: J, subscribe: !0 }),
2314
2314
  v({ attribute: !1 })
2315
- ], D.prototype, "client", 2);
2316
- Q([
2315
+ ], H.prototype, "client", 2);
2316
+ ee([
2317
2317
  v({ attribute: "target-id" })
2318
- ], D.prototype, "targetId", 2);
2319
- Q([
2318
+ ], H.prototype, "targetId", 2);
2319
+ ee([
2320
2320
  v({ attribute: "target-type" })
2321
- ], D.prototype, "targetType", 2);
2322
- Q([
2321
+ ], H.prototype, "targetType", 2);
2322
+ ee([
2323
2323
  w()
2324
- ], D.prototype, "reactions", 2);
2325
- Q([
2324
+ ], H.prototype, "reactions", 2);
2325
+ ee([
2326
2326
  w()
2327
- ], D.prototype, "showPicker", 2);
2328
- D = Q([
2329
- R("pulse-reactions")
2330
- ], D);
2327
+ ], H.prototype, "showPicker", 2);
2328
+ H = ee([
2329
+ L("pulse-reactions")
2330
+ ], H);
2331
2331
  /**
2332
2332
  * @license
2333
2333
  * Copyright 2017 Google LLC
2334
2334
  * SPDX-License-Identifier: BSD-3-Clause
2335
2335
  */
2336
- const yi = { CHILD: 2 }, wi = (n) => (...e) => ({ _$litDirective$: n, values: e });
2337
- class $i {
2336
+ const wi = { CHILD: 2 }, $i = (n) => (...e) => ({ _$litDirective$: n, values: e });
2337
+ class ki {
2338
2338
  constructor(e) {
2339
2339
  }
2340
2340
  get _$AU() {
@@ -2355,9 +2355,9 @@ class $i {
2355
2355
  * Copyright 2017 Google LLC
2356
2356
  * SPDX-License-Identifier: BSD-3-Clause
2357
2357
  */
2358
- class Ie extends $i {
2358
+ class Oe extends ki {
2359
2359
  constructor(e) {
2360
- if (super(e), this.it = g, e.type !== yi.CHILD) throw Error(this.constructor.directiveName + "() can only be used in child bindings");
2360
+ if (super(e), this.it = g, e.type !== wi.CHILD) throw Error(this.constructor.directiveName + "() can only be used in child bindings");
2361
2361
  }
2362
2362
  render(e) {
2363
2363
  if (e === g || e == null) return this._t = void 0, this.it = e;
@@ -2369,23 +2369,23 @@ class Ie extends $i {
2369
2369
  return t.raw = t, this._t = { _$litType$: this.constructor.resultType, strings: t, values: [] };
2370
2370
  }
2371
2371
  }
2372
- Ie.directiveName = "unsafeHTML", Ie.resultType = 1;
2372
+ Oe.directiveName = "unsafeHTML", Oe.resultType = 1;
2373
2373
  /**
2374
2374
  * @license
2375
2375
  * Copyright 2017 Google LLC
2376
2376
  * SPDX-License-Identifier: BSD-3-Clause
2377
2377
  */
2378
- class Me extends Ie {
2378
+ class Re extends Oe {
2379
2379
  }
2380
- Me.directiveName = "unsafeSVG", Me.resultType = 2;
2381
- const ki = wi(Me);
2380
+ Re.directiveName = "unsafeSVG", Re.resultType = 2;
2381
+ const Ei = $i(Re);
2382
2382
  /**
2383
2383
  * @license lucide v0.577.0 - ISC
2384
2384
  *
2385
2385
  * This source code is licensed under the ISC license.
2386
2386
  * See the LICENSE file in the root directory of this source tree.
2387
2387
  */
2388
- const Ei = [
2388
+ const Ci = [
2389
2389
  ["path", { d: "M10.268 21a2 2 0 0 0 3.464 0" }],
2390
2390
  [
2391
2391
  "path",
@@ -2400,7 +2400,7 @@ const Ei = [
2400
2400
  * This source code is licensed under the ISC license.
2401
2401
  * See the LICENSE file in the root directory of this source tree.
2402
2402
  */
2403
- const Ci = [
2403
+ const Ti = [
2404
2404
  ["circle", { cx: "12", cy: "12", r: "10" }],
2405
2405
  ["path", { d: "M12 6v6l4 2" }]
2406
2406
  ];
@@ -2424,7 +2424,7 @@ const _i = [
2424
2424
  * This source code is licensed under the ISC license.
2425
2425
  * See the LICENSE file in the root directory of this source tree.
2426
2426
  */
2427
- const Ti = [
2427
+ const Si = [
2428
2428
  ["path", { d: "M12 19v3" }],
2429
2429
  ["path", { d: "M19 10v2a7 7 0 0 1-14 0v-2" }],
2430
2430
  ["rect", { x: "9", y: "2", width: "6", height: "13", rx: "3" }]
@@ -2435,7 +2435,7 @@ const Ti = [
2435
2435
  * This source code is licensed under the ISC license.
2436
2436
  * See the LICENSE file in the root directory of this source tree.
2437
2437
  */
2438
- const Si = [
2438
+ const Pi = [
2439
2439
  [
2440
2440
  "path",
2441
2441
  {
@@ -2449,7 +2449,7 @@ const Si = [
2449
2449
  * This source code is licensed under the ISC license.
2450
2450
  * See the LICENSE file in the root directory of this source tree.
2451
2451
  */
2452
- const Pi = [
2452
+ const Ai = [
2453
2453
  [
2454
2454
  "path",
2455
2455
  {
@@ -2471,7 +2471,7 @@ const Pi = [
2471
2471
  * This source code is licensed under the ISC license.
2472
2472
  * See the LICENSE file in the root directory of this source tree.
2473
2473
  */
2474
- const Ai = [
2474
+ const Ii = [
2475
2475
  [
2476
2476
  "path",
2477
2477
  {
@@ -2486,7 +2486,7 @@ const Ai = [
2486
2486
  * This source code is licensed under the ISC license.
2487
2487
  * See the LICENSE file in the root directory of this source tree.
2488
2488
  */
2489
- const _t = [
2489
+ const St = [
2490
2490
  ["path", { d: "M12 17v5" }],
2491
2491
  [
2492
2492
  "path",
@@ -2501,7 +2501,7 @@ const _t = [
2501
2501
  * This source code is licensed under the ISC license.
2502
2502
  * See the LICENSE file in the root directory of this source tree.
2503
2503
  */
2504
- const Ii = [
2504
+ const Mi = [
2505
2505
  [
2506
2506
  "path",
2507
2507
  {
@@ -2516,7 +2516,7 @@ const Ii = [
2516
2516
  * This source code is licensed under the ISC license.
2517
2517
  * See the LICENSE file in the root directory of this source tree.
2518
2518
  */
2519
- const Mi = [
2519
+ const Oi = [
2520
2520
  ["path", { d: "M10 11v6" }],
2521
2521
  ["path", { d: "M14 11v6" }],
2522
2522
  ["path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6" }],
@@ -2529,7 +2529,7 @@ const Mi = [
2529
2529
  * This source code is licensed under the ISC license.
2530
2530
  * See the LICENSE file in the root directory of this source tree.
2531
2531
  */
2532
- const Oi = [
2532
+ const Ri = [
2533
2533
  ["path", { d: "m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5" }],
2534
2534
  ["rect", { x: "2", y: "6", width: "14", height: "12", rx: "2" }]
2535
2535
  ];
@@ -2539,7 +2539,7 @@ const Oi = [
2539
2539
  * This source code is licensed under the ISC license.
2540
2540
  * See the LICENSE file in the root directory of this source tree.
2541
2541
  */
2542
- const me = [
2542
+ const ge = [
2543
2543
  ["path", { d: "M18 6 6 18" }],
2544
2544
  ["path", { d: "m6 6 12 12" }]
2545
2545
  ];
@@ -2549,7 +2549,7 @@ const me = [
2549
2549
  * This source code is licensed under the ISC license.
2550
2550
  * See the LICENSE file in the root directory of this source tree.
2551
2551
  */
2552
- const Ri = [
2552
+ const Li = [
2553
2553
  [
2554
2554
  "path",
2555
2555
  {
@@ -2557,14 +2557,14 @@ const Ri = [
2557
2557
  }
2558
2558
  ]
2559
2559
  ];
2560
- function Li(n) {
2560
+ function ji(n) {
2561
2561
  return n.map(([e, t]) => {
2562
2562
  const i = Object.entries(t).filter(([, s]) => s != null).map(([s, o]) => `${s}="${o}"`).join(" ");
2563
2563
  return `<${e} ${i}/>`;
2564
2564
  }).join("");
2565
2565
  }
2566
2566
  function C(n, e = 18) {
2567
- return Kt`<svg
2567
+ return Gt`<svg
2568
2568
  xmlns="http://www.w3.org/2000/svg"
2569
2569
  width="${e}"
2570
2570
  height="${e}"
@@ -2574,9 +2574,9 @@ function C(n, e = 18) {
2574
2574
  stroke-width="2"
2575
2575
  stroke-linecap="round"
2576
2576
  stroke-linejoin="round"
2577
- >${ki(Li(n))}</svg>`;
2577
+ >${Ei(ji(n))}</svg>`;
2578
2578
  }
2579
- const ee = M`
2579
+ const te = O`
2580
2580
  * {
2581
2581
  box-sizing: border-box;
2582
2582
  margin: 0;
@@ -2619,7 +2619,7 @@ const ee = M`
2619
2619
  --pw-shadow: var(--pulse-shadow);
2620
2620
  --pw-shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.16), 0 2px 8px rgba(0, 0, 0, 0.08);
2621
2621
  }
2622
- `, ge = M`
2622
+ `, be = O`
2623
2623
  .pw-btn {
2624
2624
  display: inline-flex;
2625
2625
  align-items: center;
@@ -2663,7 +2663,7 @@ const ee = M`
2663
2663
  width: 18px;
2664
2664
  height: 18px;
2665
2665
  }
2666
- `, _e = M`
2666
+ `, Se = O`
2667
2667
  .pw-scrollable::-webkit-scrollbar {
2668
2668
  width: 4px;
2669
2669
  }
@@ -2675,12 +2675,12 @@ const ee = M`
2675
2675
  background: transparent;
2676
2676
  }
2677
2677
  `;
2678
- var ji = Object.defineProperty, zi = Object.getOwnPropertyDescriptor, Fe = (n, e, t, i) => {
2679
- for (var s = i > 1 ? void 0 : i ? zi(e, t) : e, o = n.length - 1, r; o >= 0; o--)
2678
+ var zi = Object.defineProperty, Ui = Object.getOwnPropertyDescriptor, Ve = (n, e, t, i) => {
2679
+ for (var s = i > 1 ? void 0 : i ? Ui(e, t) : e, o = n.length - 1, r; o >= 0; o--)
2680
2680
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
2681
- return i && s && ji(e, t, s), s;
2681
+ return i && s && zi(e, t, s), s;
2682
2682
  };
2683
- let X = class extends S {
2683
+ let Y = class extends P {
2684
2684
  constructor() {
2685
2685
  super(...arguments), this.items = [], this.unsubs = [], this.counter = 0;
2686
2686
  }
@@ -2709,7 +2709,7 @@ let X = class extends S {
2709
2709
  userId: n.userId,
2710
2710
  description: n.description,
2711
2711
  timestamp: new Date(n.createdAt).getTime(),
2712
- color: X.TYPE_COLORS[n.type] ?? "#94a3b8"
2712
+ color: Y.TYPE_COLORS[n.type] ?? "#94a3b8"
2713
2713
  };
2714
2714
  }
2715
2715
  getUserName(n) {
@@ -2731,7 +2731,7 @@ let X = class extends S {
2731
2731
  <div class="panel-header">
2732
2732
  <span class="panel-title">Activity</span>
2733
2733
  <button class="close-btn" @click=${this.fireClose} title="Close">
2734
- ${C(me, 16)}
2734
+ ${C(ge, 16)}
2735
2735
  </button>
2736
2736
  </div>
2737
2737
 
@@ -2762,11 +2762,11 @@ let X = class extends S {
2762
2762
  `;
2763
2763
  }
2764
2764
  };
2765
- X.styles = [
2766
- ee,
2767
- ge,
2768
- _e,
2769
- M`
2765
+ Y.styles = [
2766
+ te,
2767
+ be,
2768
+ Se,
2769
+ O`
2770
2770
  :host {
2771
2771
  display: block;
2772
2772
  }
@@ -2884,28 +2884,28 @@ X.styles = [
2884
2884
  }
2885
2885
  `
2886
2886
  ];
2887
- X.TYPE_COLORS = {
2887
+ Y.TYPE_COLORS = {
2888
2888
  join: "#22c55e",
2889
2889
  leave: "#94a3b8",
2890
2890
  thread: "var(--pw-accent, #6366f1)",
2891
2891
  comment: "#3b82f6",
2892
2892
  resolve: "#22c55e"
2893
2893
  };
2894
- Fe([
2894
+ Ve([
2895
2895
  v({ attribute: !1 })
2896
- ], X.prototype, "client", 2);
2897
- Fe([
2896
+ ], Y.prototype, "client", 2);
2897
+ Ve([
2898
2898
  w()
2899
- ], X.prototype, "items", 2);
2900
- X = Fe([
2901
- R("pulse-widget-activity-panel")
2902
- ], X);
2903
- const Ui = "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif", ot = "#6366f1", rt = "#e2e8f0", Di = "#f8fafc", Hi = "#e2e8f0", at = "#64748b", xe = 28, Ni = Array.from({ length: xe }, (n, e) => 0.2 + Math.abs(Math.sin(e * 12.9898 + 78.233) * 43758.5453) % 1 * 0.8);
2904
- function lt(n) {
2899
+ ], Y.prototype, "items", 2);
2900
+ Y = Ve([
2901
+ L("pulse-widget-activity-panel")
2902
+ ], Y);
2903
+ const Di = "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif", at = "#6366f1", lt = "#e2e8f0", Hi = "#f8fafc", Ni = "#e2e8f0", ct = "#64748b", ye = 28, Fi = Array.from({ length: ye }, (n, e) => 0.2 + Math.abs(Math.sin(e * 12.9898 + 78.233) * 43758.5453) % 1 * 0.8);
2904
+ function dt(n) {
2905
2905
  const e = Math.max(0, Math.floor(n)), t = Math.floor(e / 60), i = e % 60;
2906
2906
  return `${t}:${i.toString().padStart(2, "0")}`;
2907
2907
  }
2908
- class Oe {
2908
+ class Le {
2909
2909
  /**
2910
2910
  * Create and return a fully self-contained inline audio player element.
2911
2911
  *
@@ -2926,12 +2926,12 @@ class Oe {
2926
2926
  width: "220px",
2927
2927
  height: "44px",
2928
2928
  padding: "0 10px",
2929
- background: Di,
2929
+ background: Hi,
2930
2930
  borderRadius: "12px",
2931
- border: `1px solid ${Hi}`,
2932
- fontFamily: Ui,
2931
+ border: `1px solid ${Ni}`,
2932
+ fontFamily: Di,
2933
2933
  fontSize: "11px",
2934
- color: at,
2934
+ color: ct,
2935
2935
  userSelect: "none",
2936
2936
  boxSizing: "border-box"
2937
2937
  });
@@ -2942,7 +2942,7 @@ class Oe {
2942
2942
  minWidth: "28px",
2943
2943
  borderRadius: "50%",
2944
2944
  border: "none",
2945
- background: ot,
2945
+ background: at,
2946
2946
  cursor: "pointer",
2947
2947
  display: "flex",
2948
2948
  alignItems: "center",
@@ -2988,39 +2988,39 @@ class Oe {
2988
2988
  cursor: "pointer"
2989
2989
  });
2990
2990
  const m = [];
2991
- for (let E = 0; E < xe; E++) {
2992
- const I = document.createElement("div"), k = Math.round(Ni[E] * 20);
2993
- Object.assign(I.style, {
2991
+ for (let E = 0; E < ye; E++) {
2992
+ const M = document.createElement("div"), k = Math.round(Fi[E] * 20);
2993
+ Object.assign(M.style, {
2994
2994
  flex: "1",
2995
2995
  height: `${Math.max(3, k)}px`,
2996
2996
  borderRadius: "1px",
2997
- background: rt,
2997
+ background: lt,
2998
2998
  transition: "background 0.1s ease",
2999
2999
  minWidth: "0"
3000
- }), m.push(I), f.appendChild(I);
3000
+ }), m.push(M), f.appendChild(M);
3001
3001
  }
3002
3002
  const x = document.createElement("div");
3003
3003
  Object.assign(x.style, {
3004
3004
  fontSize: "10px",
3005
- color: at,
3005
+ color: ct,
3006
3006
  whiteSpace: "nowrap",
3007
3007
  lineHeight: "1"
3008
3008
  });
3009
3009
  function b() {
3010
- const E = lt(o), I = lt(s);
3011
- x.textContent = `${E} / ${I}`;
3010
+ const E = dt(o), M = dt(s);
3011
+ x.textContent = `${E} / ${M}`;
3012
3012
  }
3013
3013
  b(), u.appendChild(f), u.appendChild(x), l.appendChild(a), l.appendChild(u);
3014
3014
  function y() {
3015
- const E = s > 0 ? o / s : 0, I = Math.floor(E * xe);
3016
- for (let k = 0; k < xe; k++)
3017
- m[k].style.background = k <= I ? ot : rt;
3015
+ const E = s > 0 ? o / s : 0, M = Math.floor(E * ye);
3016
+ for (let k = 0; k < ye; k++)
3017
+ m[k].style.background = k <= M ? at : lt;
3018
3018
  }
3019
3019
  return f.addEventListener("click", (E) => {
3020
3020
  if (s <= 0) return;
3021
- const I = f.getBoundingClientRect(), k = Math.min(
3021
+ const M = f.getBoundingClientRect(), k = Math.min(
3022
3022
  1,
3023
- Math.max(0, (E.clientX - I.left) / I.width)
3023
+ Math.max(0, (E.clientX - M.left) / M.width)
3024
3024
  );
3025
3025
  r.currentTime = k * s, o = r.currentTime, y(), b();
3026
3026
  }), a.addEventListener("click", () => {
@@ -3041,7 +3041,7 @@ class Oe {
3041
3041
  }), l;
3042
3042
  }
3043
3043
  }
3044
- class Re {
3044
+ class je {
3045
3045
  constructor() {
3046
3046
  this.container = null, this.stream = null, this.recorder = null, this.analyser = null, this.audioCtx = null, this.recording = !1, this.animFrame = null, this.startTime = 0, this.maxDuration = 12e4, this.maxTimer = null, this.canvas = null, this.timerEl = null, this.resolve = null, this.animate = () => {
3047
3047
  this.recording && (this.drawWaveform(), this.updateTimer(), this.animFrame = requestAnimationFrame(this.animate));
@@ -3191,11 +3191,11 @@ class Re {
3191
3191
  this.recorder = null, this.container && (this.container.remove(), this.container = null), this.canvas = null, this.timerEl = null;
3192
3192
  }
3193
3193
  }
3194
- const ct = 80, Bi = "#e2e8f0", Fi = `
3194
+ const ht = 80, Bi = "#e2e8f0", qi = `
3195
3195
  <svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
3196
3196
  <circle cx="14" cy="14" r="14" fill="rgba(0,0,0,0.35)"/>
3197
3197
  <polygon points="11,8 22,14 11,20" fill="rgba(255,255,255,0.9)"/>
3198
- </svg>`, dt = `
3198
+ </svg>`, pt = `
3199
3199
  <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="rgba(255,255,255,0.9)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg">
3200
3200
  <polygon points="11,5 6,9 2,9 2,15 6,15 11,19"/>
3201
3201
  <line x1="23" y1="9" x2="17" y2="15"/>
@@ -3205,8 +3205,11 @@ const ct = 80, Bi = "#e2e8f0", Fi = `
3205
3205
  <polygon points="11,5 6,9 2,9 2,15 6,15 11,19"/>
3206
3206
  <path d="M19.07 4.93a10 10 0 0 1 0 14.14"/>
3207
3207
  <path d="M15.54 8.46a5 5 0 0 1 0 7.07"/>
3208
- </svg>`;
3209
- class Tt {
3208
+ </svg>`, Wi = `
3209
+ <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="rgba(255,255,255,0.9)" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg">
3210
+ <polyline points="15,3 21,3 21,9"/><line x1="21" y1="3" x2="14" y2="10"/>
3211
+ <polyline points="9,21 3,21 3,15"/><line x1="3" y1="21" x2="10" y2="14"/>
3212
+ </svg>`, _ = class _ {
3210
3213
  /**
3211
3214
  * Renders an inline circular video player and returns the root container.
3212
3215
  * @param url - Video source URL
@@ -3218,8 +3221,8 @@ class Tt {
3218
3221
  Object.assign(o.style, {
3219
3222
  position: "relative",
3220
3223
  display: "inline-block",
3221
- width: `${ct}px`,
3222
- height: `${ct}px`,
3224
+ width: `${ht}px`,
3225
+ height: `${ht}px`,
3223
3226
  borderRadius: "50%",
3224
3227
  border: `2px solid ${Bi}`,
3225
3228
  boxShadow: "0 2px 8px rgba(0,0,0,0.1)",
@@ -3251,7 +3254,7 @@ class Tt {
3251
3254
  transition: "opacity 0.25s ease",
3252
3255
  opacity: "1",
3253
3256
  pointerEvents: "none"
3254
- }), l.innerHTML = Fi, o.appendChild(l);
3257
+ }), l.innerHTML = qi, o.appendChild(l);
3255
3258
  const a = document.createElement("div");
3256
3259
  Object.assign(a.style, {
3257
3260
  position: "absolute",
@@ -3266,22 +3269,113 @@ class Tt {
3266
3269
  justifyContent: "center",
3267
3270
  pointerEvents: "none",
3268
3271
  transition: "opacity 0.2s ease"
3269
- }), a.innerHTML = dt, o.appendChild(a);
3270
- function c() {
3272
+ }), a.innerHTML = pt, o.appendChild(a);
3273
+ const c = document.createElement("div");
3274
+ Object.assign(c.style, {
3275
+ position: "absolute",
3276
+ top: "2px",
3277
+ right: "2px",
3278
+ width: "22px",
3279
+ height: "22px",
3280
+ borderRadius: "50%",
3281
+ background: "rgba(0,0,0,0.45)",
3282
+ display: "none",
3283
+ alignItems: "center",
3284
+ justifyContent: "center",
3285
+ cursor: "pointer",
3286
+ pointerEvents: "auto",
3287
+ transition: "opacity 0.2s ease, background 0.15s ease"
3288
+ }), c.innerHTML = Wi, c.title = "Fullscreen", c.addEventListener("mouseenter", () => {
3289
+ c.style.background = "rgba(0,0,0,0.7)";
3290
+ }), c.addEventListener("mouseleave", () => {
3291
+ c.style.background = "rgba(0,0,0,0.45)";
3292
+ }), c.addEventListener("click", (u) => {
3293
+ u.stopPropagation(), _.openFullscreen(e, t);
3294
+ }), o.appendChild(c);
3295
+ function h() {
3271
3296
  l.style.opacity = i ? "0" : "1";
3272
3297
  }
3273
- function h() {
3274
- a.style.display = i ? "flex" : "none", a.innerHTML = s ? dt : Vi;
3298
+ function p() {
3299
+ a.style.display = i ? "flex" : "none", a.innerHTML = s ? pt : Vi, c.style.display = i ? "flex" : "none";
3275
3300
  }
3276
- return o.addEventListener("click", (p) => {
3277
- p.stopPropagation(), i ? s ? (r.muted = !1, s = !1) : (r.pause(), i = !1, s = !0, r.muted = !0) : (r.muted = !0, s = !0, r.play().catch(() => {
3278
- }), i = !0), c(), h();
3301
+ return o.addEventListener("click", (u) => {
3302
+ u.stopPropagation(), i ? s ? (r.muted = !1, s = !1) : (r.pause(), i = !1, s = !0, r.muted = !0) : (r.muted = !0, s = !0, r.play().catch(() => {
3303
+ }), i = !0), h(), p();
3279
3304
  }), r.addEventListener("pause", () => {
3280
- i && (i = !1, s = !0, r.muted = !0, c(), h());
3305
+ i && (i = !1, s = !0, r.muted = !0, h(), p());
3281
3306
  }), o;
3282
3307
  }
3283
- }
3284
- const ht = 60, qi = `
3308
+ static openFullscreen(e, t) {
3309
+ _.closeFullscreen();
3310
+ const i = document.createElement("div");
3311
+ Object.assign(i.style, {
3312
+ position: "fixed",
3313
+ top: "0",
3314
+ left: "0",
3315
+ width: "100%",
3316
+ height: "100%",
3317
+ zIndex: "100000",
3318
+ background: "rgba(0,0,0,0.85)",
3319
+ display: "flex",
3320
+ alignItems: "center",
3321
+ justifyContent: "center",
3322
+ opacity: "0",
3323
+ transition: "opacity 200ms ease",
3324
+ cursor: "pointer",
3325
+ fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"
3326
+ });
3327
+ const s = document.createElement("button");
3328
+ s.textContent = "×", Object.assign(s.style, {
3329
+ position: "absolute",
3330
+ top: "16px",
3331
+ right: "16px",
3332
+ width: "40px",
3333
+ height: "40px",
3334
+ border: "none",
3335
+ borderRadius: "50%",
3336
+ background: "rgba(255,255,255,0.15)",
3337
+ color: "#fff",
3338
+ fontSize: "24px",
3339
+ cursor: "pointer",
3340
+ padding: "0",
3341
+ display: "flex",
3342
+ alignItems: "center",
3343
+ justifyContent: "center",
3344
+ transition: "background 150ms ease",
3345
+ zIndex: "1"
3346
+ }), s.addEventListener("mouseenter", () => {
3347
+ s.style.background = "rgba(255,255,255,0.3)";
3348
+ }), s.addEventListener("mouseleave", () => {
3349
+ s.style.background = "rgba(255,255,255,0.15)";
3350
+ }), s.addEventListener("click", (l) => {
3351
+ l.stopPropagation(), _.closeFullscreen();
3352
+ });
3353
+ const o = document.createElement("video");
3354
+ Object.assign(o.style, {
3355
+ maxWidth: "90vw",
3356
+ maxHeight: "90vh",
3357
+ borderRadius: "8px",
3358
+ outline: "none",
3359
+ cursor: "default"
3360
+ }), o.src = e, o.controls = !0, o.autoplay = !0, o.playsInline = !0, t && (o.poster = t), o.addEventListener("click", (l) => l.stopPropagation()), i.appendChild(s), i.appendChild(o), i.addEventListener("click", () => _.closeFullscreen());
3361
+ const r = (l) => {
3362
+ l.key === "Escape" && _.closeFullscreen();
3363
+ };
3364
+ document.addEventListener("keydown", r), _.fullscreenOverlay = i, _.fullscreenKeyHandler = r, document.body.appendChild(i), requestAnimationFrame(() => {
3365
+ i.style.opacity = "1";
3366
+ });
3367
+ }
3368
+ static closeFullscreen() {
3369
+ if (!_.fullscreenOverlay) return;
3370
+ const e = _.fullscreenOverlay;
3371
+ _.fullscreenKeyHandler && (document.removeEventListener("keydown", _.fullscreenKeyHandler), _.fullscreenKeyHandler = null);
3372
+ const t = e.querySelector("video");
3373
+ t && t.pause(), e.style.opacity = "0", e.addEventListener("transitionend", () => e.remove()), _.fullscreenOverlay = null;
3374
+ }
3375
+ };
3376
+ _.fullscreenOverlay = null, _.fullscreenKeyHandler = null;
3377
+ let Ee = _;
3378
+ const ut = 60, Xi = `
3285
3379
  .vr-overlay {
3286
3380
  display: flex;
3287
3381
  flex-direction: column;
@@ -3388,14 +3482,14 @@ const ht = 60, qi = `
3388
3482
  color: #0f172a;
3389
3483
  }
3390
3484
  `;
3391
- function pt(n) {
3485
+ function ft(n) {
3392
3486
  return n.toString().padStart(2, "0");
3393
3487
  }
3394
- function Wi(n) {
3488
+ function Yi(n) {
3395
3489
  const e = Math.floor(n / 60), t = n % 60;
3396
- return `${pt(e)}:${pt(t)}`;
3490
+ return `${ft(e)}:${ft(t)}`;
3397
3491
  }
3398
- function Xi() {
3492
+ function Ki() {
3399
3493
  const n = [
3400
3494
  "video/webm;codecs=vp9,opus",
3401
3495
  "video/webm;codecs=vp8,opus",
@@ -3406,7 +3500,7 @@ function Xi() {
3406
3500
  if (MediaRecorder.isTypeSupported(e)) return e;
3407
3501
  return "";
3408
3502
  }
3409
- function Yi(n) {
3503
+ function Gi(n) {
3410
3504
  return new Promise((e, t) => {
3411
3505
  const i = URL.createObjectURL(n), s = document.createElement("video");
3412
3506
  s.muted = !0, s.playsInline = !0, s.preload = "auto", s.src = i, s.addEventListener("loadeddata", () => {
@@ -3425,7 +3519,7 @@ function Yi(n) {
3425
3519
  }), s.load();
3426
3520
  });
3427
3521
  }
3428
- class Le {
3522
+ class ze {
3429
3523
  constructor() {
3430
3524
  this.recording = !1, this.container = null, this.stream = null, this.mediaRecorder = null, this.chunks = [], this.timerInterval = null, this.elapsed = 0, this.resolvePromise = null, this.root = null, this.styleEl = null, this.videoEl = null, this.timerEl = null;
3431
3525
  }
@@ -3442,7 +3536,7 @@ class Le {
3442
3536
  }
3443
3537
  this.stream = t, this.container = e, this.recording = !0, this.elapsed = 0, this.chunks = [], this.buildUI(e), this.videoEl && (this.videoEl.srcObject = t, this.videoEl.play().catch(() => {
3444
3538
  }));
3445
- const i = Xi(), s = {};
3539
+ const i = Ki(), s = {};
3446
3540
  i && (s.mimeType = i);
3447
3541
  const o = new MediaRecorder(t, s);
3448
3542
  return this.mediaRecorder = o, o.ondataavailable = (r) => {
@@ -3450,7 +3544,7 @@ class Le {
3450
3544
  }, o.onstop = () => {
3451
3545
  this.handleRecordingComplete();
3452
3546
  }, o.start(), this.timerInterval = setInterval(() => {
3453
- this.elapsed++, this.updateTimer(), this.elapsed >= ht && this.stopRecording();
3547
+ this.elapsed++, this.updateTimer(), this.elapsed >= ut && this.stopRecording();
3454
3548
  }, 1e3), new Promise((r) => {
3455
3549
  this.resolvePromise = r;
3456
3550
  });
@@ -3467,7 +3561,7 @@ class Le {
3467
3561
  }
3468
3562
  // ── Private ──
3469
3563
  buildUI(e) {
3470
- this.styleEl = document.createElement("style"), this.styleEl.textContent = qi, document.head.appendChild(this.styleEl), this.root = document.createElement("div"), this.root.className = "vr-overlay";
3564
+ this.styleEl = document.createElement("style"), this.styleEl.textContent = Xi, document.head.appendChild(this.styleEl), this.root = document.createElement("div"), this.root.className = "vr-overlay";
3471
3565
  const t = document.createElement("div");
3472
3566
  t.className = "vr-circle-wrapper";
3473
3567
  const i = document.createElement("div");
@@ -3483,15 +3577,15 @@ class Le {
3483
3577
  }
3484
3578
  updateTimer() {
3485
3579
  if (!this.timerEl) return;
3486
- const e = ht - this.elapsed;
3487
- this.timerEl.textContent = Wi(this.elapsed), e <= 10 ? this.timerEl.classList.add("vr-countdown") : this.timerEl.classList.remove("vr-countdown");
3580
+ const e = ut - this.elapsed;
3581
+ this.timerEl.textContent = Yi(this.elapsed), e <= 10 ? this.timerEl.classList.add("vr-countdown") : this.timerEl.classList.remove("vr-countdown");
3488
3582
  }
3489
3583
  async handleRecordingComplete() {
3490
3584
  var s, o;
3491
3585
  const e = ((s = this.mediaRecorder) == null ? void 0 : s.mimeType) || "video/webm", t = new Blob(this.chunks, { type: e });
3492
3586
  let i;
3493
3587
  try {
3494
- i = await Yi(t);
3588
+ i = await Gi(t);
3495
3589
  } catch {
3496
3590
  const r = document.createElement("canvas");
3497
3591
  r.width = 1, r.height = 1, i = await new Promise((l) => {
@@ -3514,10 +3608,10 @@ class Le {
3514
3608
  this.videoEl && (this.videoEl.srcObject = null, this.videoEl = null), this.root && this.root.parentElement && this.root.parentElement.removeChild(this.root), this.root = null, this.styleEl && this.styleEl.parentElement && this.styleEl.parentElement.removeChild(this.styleEl), this.styleEl = null, this.chunks = [], this.elapsed = 0;
3515
3609
  }
3516
3610
  }
3517
- const T = class T {
3611
+ const S = class S {
3518
3612
  /** Opens a fullscreen lightbox overlay showing the image. */
3519
3613
  static open(e) {
3520
- T.close();
3614
+ S.close();
3521
3615
  const t = document.createElement("div");
3522
3616
  t.id = "pulse-widget-lightbox", Object.assign(t.style, {
3523
3617
  position: "fixed",
@@ -3561,7 +3655,7 @@ const T = class T {
3561
3655
  }), i.addEventListener("mouseleave", () => {
3562
3656
  i.style.background = "rgba(255,255,255,0.15)";
3563
3657
  }), i.addEventListener("click", (r) => {
3564
- r.stopPropagation(), T.close();
3658
+ r.stopPropagation(), S.close();
3565
3659
  });
3566
3660
  const s = document.createElement("img");
3567
3661
  s.src = e, s.alt = "Lightbox image", Object.assign(s.style, {
@@ -3574,27 +3668,27 @@ const T = class T {
3574
3668
  }), s.addEventListener("click", (r) => {
3575
3669
  r.stopPropagation();
3576
3670
  }), t.appendChild(i), t.appendChild(s), t.addEventListener("click", () => {
3577
- T.close();
3671
+ S.close();
3578
3672
  });
3579
3673
  const o = (r) => {
3580
- r.key === "Escape" && T.close();
3674
+ r.key === "Escape" && S.close();
3581
3675
  };
3582
- document.addEventListener("keydown", o), T.overlay = t, T.onKeyDown = o, document.body.appendChild(t), requestAnimationFrame(() => {
3676
+ document.addEventListener("keydown", o), S.overlay = t, S.onKeyDown = o, document.body.appendChild(t), requestAnimationFrame(() => {
3583
3677
  t.style.opacity = "1";
3584
3678
  });
3585
3679
  }
3586
3680
  /** Closes the lightbox if open. */
3587
3681
  static close() {
3588
- if (!T.overlay) return;
3589
- const e = T.overlay;
3590
- T.onKeyDown && (document.removeEventListener("keydown", T.onKeyDown), T.onKeyDown = null), e.style.opacity = "0", e.addEventListener("transitionend", () => {
3682
+ if (!S.overlay) return;
3683
+ const e = S.overlay;
3684
+ S.onKeyDown && (document.removeEventListener("keydown", S.onKeyDown), S.onKeyDown = null), e.style.opacity = "0", e.addEventListener("transitionend", () => {
3591
3685
  e.remove();
3592
- }), T.overlay = null;
3686
+ }), S.overlay = null;
3593
3687
  }
3594
3688
  };
3595
- T.overlay = null, T.onKeyDown = null;
3596
- let ke = T;
3597
- class ne {
3689
+ S.overlay = null, S.onKeyDown = null;
3690
+ let Ce = S;
3691
+ class oe {
3598
3692
  constructor(e) {
3599
3693
  this.uploading = !1, this.client = e, this.input = document.createElement("input"), this.input.type = "file", this.input.style.display = "none", document.body.appendChild(this.input);
3600
3694
  }
@@ -3688,7 +3782,7 @@ class ne {
3688
3782
  this.input.remove();
3689
3783
  }
3690
3784
  }
3691
- const Ki = ["👍", "👎", "❤️", "🎉", "👀", "🚀"], be = "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif", Gi = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"/><path d="m15 5 4 4"/></svg>', Zi = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>', ut = `<button class="pulse-close-btn" style="
3785
+ const Zi = ["👍", "👎", "❤️", "🎉", "👀", "🚀"], ve = "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif", Ji = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"/><path d="m15 5 4 4"/></svg>', Qi = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>', mt = `<button class="pulse-close-btn" style="
3692
3786
  border:none;background:none;cursor:pointer;color:#94a3b8;padding:4px;
3693
3787
  border-radius:6px;display:flex;align-items:center;justify-content:center;
3694
3788
  transition:all 0.15s;flex-shrink:0;
@@ -3696,7 +3790,7 @@ const Ki = ["👍", "👎", "❤️", "🎉", "👀", "🚀"], be = "-apple-syst
3696
3790
  onmouseout="this.style.background='none';this.style.color='#94a3b8'">
3697
3791
  <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>
3698
3792
  </button>`;
3699
- class Ji {
3793
+ class es {
3700
3794
  constructor(e, t = {}) {
3701
3795
  this.container = null, this.overlay = null, this.form = null, this.popover = null, this.threads = [], this.pinEls = /* @__PURE__ */ new Map(), this._pinModeActive = !1, this.editingPopoverCommentId = null, this.popoverPickerOpen = null, this.lastTypingSendPins = /* @__PURE__ */ new Map(), this.repositionDebounce = null, this.mutationObserver = null, this.upload = null, this.audioRecorder = null, this.videoRecorder = null, this.pendingAttachmentIds = [], this.handleReposition = () => {
3702
3796
  this.repositionDebounce || (this.repositionDebounce = setTimeout(() => {
@@ -3832,11 +3926,11 @@ class Ji {
3832
3926
  boxShadow: "0 8px 40px rgba(0,0,0,0.18), 0 2px 8px rgba(0,0,0,0.08)",
3833
3927
  border: "1px solid #e2e8f0",
3834
3928
  padding: "14px",
3835
- fontFamily: be
3929
+ fontFamily: ve
3836
3930
  }), this.form.innerHTML = `
3837
3931
  <div style="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;">
3838
3932
  <span style="font-size:13px;font-weight:600;color:#0f172a;">Add a comment here</span>
3839
- ${ut}
3933
+ ${mt}
3840
3934
  </div>
3841
3935
  <textarea
3842
3936
  placeholder="Write a comment..."
@@ -3869,7 +3963,7 @@ class Ji {
3869
3963
  <div class="pin-attachments-preview" style="margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;"></div>
3870
3964
  `;
3871
3965
  const a = this.form.querySelector("textarea"), c = this.form.querySelector(".pulse-close-btn"), h = this.form.querySelector(".pin-submit");
3872
- c.addEventListener("click", () => this.exitPinMode()), this.pendingAttachmentIds = [], this.upload || (this.upload = new ne(this.client));
3966
+ c.addEventListener("click", () => this.exitPinMode()), this.pendingAttachmentIds = [], this.upload || (this.upload = new oe(this.client));
3873
3967
  const p = this.form.querySelector(".pin-attachments-preview"), u = (m, x) => {
3874
3968
  const b = document.createElement("div");
3875
3969
  Object.assign(b.style, { position: "relative", display: "inline-block" }), b.appendChild(x);
@@ -3908,7 +4002,7 @@ class Ji {
3908
4002
  }
3909
4003
  }), this.form.querySelector(".attach-mic").addEventListener("click", async () => {
3910
4004
  if (this.pendingAttachmentIds.length >= f) return;
3911
- this.audioRecorder || (this.audioRecorder = new Re());
4005
+ this.audioRecorder || (this.audioRecorder = new je());
3912
4006
  const m = await this.audioRecorder.startRecording(p);
3913
4007
  if (m) {
3914
4008
  const x = await this.upload.uploadBlob(m, "audio.webm");
@@ -3920,7 +4014,7 @@ class Ji {
3920
4014
  }
3921
4015
  }), this.form.querySelector(".attach-video").addEventListener("click", async () => {
3922
4016
  if (this.pendingAttachmentIds.length >= f) return;
3923
- this.videoRecorder || (this.videoRecorder = new Le());
4017
+ this.videoRecorder || (this.videoRecorder = new ze());
3924
4018
  const m = await this.videoRecorder.startRecording(p);
3925
4019
  if (m) {
3926
4020
  const x = await this.upload.uploadBlob(m.blob, "video.webm");
@@ -3955,7 +4049,7 @@ class Ji {
3955
4049
  borderRadius: i ? "16px 16px 0 0" : "12px",
3956
4050
  boxShadow: "0 8px 40px rgba(0,0,0,0.18), 0 2px 8px rgba(0,0,0,0.08)",
3957
4051
  border: "1px solid #e2e8f0",
3958
- fontFamily: be,
4052
+ fontFamily: ve,
3959
4053
  display: "flex",
3960
4054
  flexDirection: "column",
3961
4055
  overflow: "hidden",
@@ -3972,7 +4066,7 @@ class Ji {
3972
4066
  flexShrink: "0"
3973
4067
  }), a.innerHTML = `
3974
4068
  <span style="font-size:13px;font-weight:700;color:#0f172a;">Thread</span>
3975
- ${ut}
4069
+ ${mt}
3976
4070
  `, a.querySelector(".pulse-close-btn").addEventListener("click", () => {
3977
4071
  this.closePopover();
3978
4072
  }), this.popover.appendChild(a), this.refreshPopoverComments(e), this.addPopoverReplyForm(e), document.body.appendChild(this.popover);
@@ -4022,20 +4116,20 @@ class Ji {
4022
4116
  '<span style="color:#6366f1;font-weight:600;background:#eef2ff;padding:0 3px;border-radius:3px;">@$1</span>'
4023
4117
  ) : "", y = (a.attachments ?? []).map((k) => {
4024
4118
  if (k.type === "image") {
4025
- const Pt = k.thumbnailUrl || k.url;
4119
+ const At = k.thumbnailUrl || k.url;
4026
4120
  return `<div class="popover-attachment-img" data-full-url="${this.escapeHtml(k.url)}" style="margin:4px 0 4px 29px;cursor:pointer;">
4027
- <img src="${this.escapeHtml(Pt)}" alt="${this.escapeHtml(k.filename)}" style="max-width:180px;max-height:120px;border-radius:8px;border:1px solid #e2e8f0;display:block;" />
4121
+ <img src="${this.escapeHtml(At)}" alt="${this.escapeHtml(k.filename)}" style="max-width:180px;max-height:120px;border-radius:8px;border:1px solid #e2e8f0;display:block;" />
4028
4122
  </div>`;
4029
4123
  }
4030
4124
  return k.type === "audio" ? `<div class="popover-attachment-audio" data-url="${this.escapeHtml(k.url)}" data-duration="${k.durationMs ?? ""}" style="margin:4px 0 4px 29px;"></div>` : k.type === "video" ? `<div class="popover-attachment-video" data-url="${this.escapeHtml(k.url)}" data-poster="${this.escapeHtml(k.thumbnailUrl ?? "")}" style="margin:4px 0 4px 29px;"></div>` : "";
4031
4125
  }).join(""), E = m ? `<div class="popover-comment-actions" style="display:flex;gap:2px;margin-top:2px;margin-left:29px;">
4032
4126
  <button class="edit-btn" data-comment-id="${a.id}" style="border:none;background:none;cursor:pointer;color:#94a3b8;padding:3px;border-radius:4px;display:flex;align-items:center;transition:all 0.15s;" title="Edit"
4033
4127
  onmouseover="this.style.color='#6366f1';this.style.background='#eef2ff'"
4034
- onmouseout="this.style.color='#94a3b8';this.style.background='none'">${Gi}</button>
4128
+ onmouseout="this.style.color='#94a3b8';this.style.background='none'">${Ji}</button>
4035
4129
  <button class="delete-btn" data-comment-id="${a.id}" style="border:none;background:none;cursor:pointer;color:#94a3b8;padding:3px;border-radius:4px;display:flex;align-items:center;transition:all 0.15s;" title="Delete"
4036
4130
  onmouseover="this.style.color='#ef4444';this.style.background='#fef2f2'"
4037
- onmouseout="this.style.color='#94a3b8';this.style.background='none'">${Zi}</button>
4038
- </div>` : "", I = this.buildReactionPillsHtml(a.id);
4131
+ onmouseout="this.style.color='#94a3b8';this.style.background='none'">${Qi}</button>
4132
+ </div>` : "", M = this.buildReactionPillsHtml(a.id);
4039
4133
  return `
4040
4134
  <div class="popover-comment" style="margin-bottom:10px;" data-comment-id="${a.id}">
4041
4135
  <div style="display:flex;align-items:center;gap:7px;margin-bottom:2px;">
@@ -4047,7 +4141,7 @@ class Ji {
4047
4141
  ${b ? `<div style="font-size:13px;color:#334155;line-height:1.45;margin-left:29px;word-wrap:break-word;">${b}</div>` : ""}
4048
4142
  ${y}
4049
4143
  ${E}
4050
- ${I}
4144
+ ${M}
4051
4145
  </div>
4052
4146
  `;
4053
4147
  }).join(""), t.querySelectorAll(".edit-btn").forEach((a) => {
@@ -4088,18 +4182,18 @@ class Ji {
4088
4182
  }), t.querySelectorAll(".popover-attachment-img").forEach((a) => {
4089
4183
  a.addEventListener("click", () => {
4090
4184
  const c = a.dataset.fullUrl;
4091
- c && ke.open(c);
4185
+ c && Ce.open(c);
4092
4186
  });
4093
4187
  }), t.querySelectorAll(".popover-attachment-audio").forEach((a) => {
4094
4188
  const c = a.dataset.url;
4095
4189
  if (c) {
4096
- const h = a.dataset.duration ? parseInt(a.dataset.duration) : void 0, p = Oe.render(c, h);
4190
+ const h = a.dataset.duration ? parseInt(a.dataset.duration) : void 0, p = Le.render(c, h);
4097
4191
  a.appendChild(p);
4098
4192
  }
4099
4193
  }), t.querySelectorAll(".popover-attachment-video").forEach((a) => {
4100
4194
  const c = a.dataset.url;
4101
4195
  if (c) {
4102
- const h = a.dataset.poster || void 0, p = Tt.render(c, h);
4196
+ const h = a.dataset.poster || void 0, p = Ee.render(c, h);
4103
4197
  a.appendChild(p);
4104
4198
  }
4105
4199
  }), t.scrollTop = t.scrollHeight;
@@ -4132,7 +4226,7 @@ class Ji {
4132
4226
  </div>
4133
4227
  `;
4134
4228
  const o = t.querySelector("input"), r = t.querySelector(".reply-send"), l = t.querySelector(".reply-attachments-preview");
4135
- this.upload || (this.upload = new ne(this.client));
4229
+ this.upload || (this.upload = new oe(this.client));
4136
4230
  const a = [], c = (u, f) => {
4137
4231
  const m = document.createElement("span");
4138
4232
  Object.assign(m.style, { position: "relative", display: "inline-flex", alignItems: "center", padding: "2px 18px 2px 8px", borderRadius: "4px", background: "#f1f5f9", fontSize: "10px", color: "#64748b" }), m.textContent = f;
@@ -4168,7 +4262,7 @@ class Ji {
4168
4262
  a.push(m.id), c(m.id, "📎 Image");
4169
4263
  }), t.querySelector(".reply-attach-mic").addEventListener("click", async () => {
4170
4264
  if (a.length >= h) return;
4171
- this.audioRecorder || (this.audioRecorder = new Re());
4265
+ this.audioRecorder || (this.audioRecorder = new je());
4172
4266
  const u = await this.audioRecorder.startRecording(t);
4173
4267
  if (u) {
4174
4268
  const f = await this.upload.uploadBlob(u, "audio.webm");
@@ -4176,7 +4270,7 @@ class Ji {
4176
4270
  }
4177
4271
  }), t.querySelector(".reply-attach-video").addEventListener("click", async () => {
4178
4272
  if (a.length >= h) return;
4179
- this.videoRecorder || (this.videoRecorder = new Le());
4273
+ this.videoRecorder || (this.videoRecorder = new ze());
4180
4274
  const u = await this.videoRecorder.startRecording(t);
4181
4275
  if (u) {
4182
4276
  const f = await this.upload.uploadBlob(u.blob, "video.webm");
@@ -4216,9 +4310,9 @@ class Ji {
4216
4310
  borderRadius: "8px",
4217
4311
  boxShadow: "0 4px 24px rgba(0,0,0,0.12)",
4218
4312
  zIndex: "10002",
4219
- fontFamily: be
4313
+ fontFamily: ve
4220
4314
  });
4221
- for (const s of Ki) {
4315
+ for (const s of Zi) {
4222
4316
  const o = document.createElement("button");
4223
4317
  Object.assign(o.style, {
4224
4318
  border: "none",
@@ -4328,7 +4422,7 @@ class Ji {
4328
4422
  justifyContent: "center",
4329
4423
  fontSize: "11px",
4330
4424
  fontWeight: "700",
4331
- fontFamily: be,
4425
+ fontFamily: ve,
4332
4426
  cursor: "pointer",
4333
4427
  pointerEvents: "auto",
4334
4428
  boxShadow: "0 2px 8px rgba(99,102,241,0.4)",
@@ -4353,13 +4447,13 @@ class Ji {
4353
4447
  });
4354
4448
  }
4355
4449
  }
4356
- var Qi = Object.defineProperty, es = Object.getOwnPropertyDescriptor, j = (n, e, t, i) => {
4357
- for (var s = i > 1 ? void 0 : i ? es(e, t) : e, o = n.length - 1, r; o >= 0; o--)
4450
+ var ts = Object.defineProperty, is = Object.getOwnPropertyDescriptor, z = (n, e, t, i) => {
4451
+ for (var s = i > 1 ? void 0 : i ? is(e, t) : e, o = n.length - 1, r; o >= 0; o--)
4358
4452
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
4359
- return i && s && Qi(e, t, s), s;
4453
+ return i && s && ts(e, t, s), s;
4360
4454
  };
4361
- const ts = ["👍", "👎", "❤️", "🎉", "👀", "🚀"];
4362
- let P = class extends S {
4455
+ const ss = ["👍", "👎", "❤️", "🎉", "👀", "🚀"];
4456
+ let A = class extends P {
4363
4457
  constructor() {
4364
4458
  super(...arguments), this.highlightThreadId = null, this.threadsVersion = 0, this.replyingTo = null, this.editingCommentId = null, this.editBody = "", this.pickerOpenForComment = null, this.typingByThread = /* @__PURE__ */ new Map(), this.reactionsVersion = 0, this.typingTimers = /* @__PURE__ */ new Map(), this.lastTypingSend = /* @__PURE__ */ new Map(), this.replyAttachmentIds = [];
4365
4459
  }
@@ -4383,12 +4477,12 @@ let P = class extends S {
4383
4477
  const s = i.dataset.url;
4384
4478
  if (s) {
4385
4479
  const o = i.dataset.duration ? parseInt(i.dataset.duration) : void 0;
4386
- i.appendChild(Oe.render(s, o));
4480
+ i.appendChild(Le.render(s, o));
4387
4481
  }
4388
4482
  }), (t = this.shadowRoot) == null || t.querySelectorAll(".video-player-host").forEach((i) => {
4389
4483
  if (i.children.length > 0) return;
4390
4484
  const s = i.dataset.url;
4391
- s && i.appendChild(Tt.render(s, i.dataset.poster || void 0));
4485
+ s && i.appendChild(Ee.render(s, i.dataset.poster || void 0));
4392
4486
  });
4393
4487
  }
4394
4488
  teardownListeners() {
@@ -4473,16 +4567,16 @@ let P = class extends S {
4473
4567
  return o < 24 ? `${o}h` : e.toLocaleDateString();
4474
4568
  }
4475
4569
  async handleAttachImage() {
4476
- this.upload || (this.upload = new ne(this.client));
4477
- const n = P.MAX_ATTACHMENTS - this.replyAttachmentIds.length;
4570
+ this.upload || (this.upload = new oe(this.client));
4571
+ const n = A.MAX_ATTACHMENTS - this.replyAttachmentIds.length;
4478
4572
  if (n <= 0) return;
4479
4573
  const e = await this.upload.pickFiles("image/*", n);
4480
4574
  e.length > 0 && (this.replyAttachmentIds.push(...e.map((t) => t.id)), this.requestUpdate());
4481
4575
  }
4482
4576
  async handleRecordAudio(n) {
4483
4577
  var i;
4484
- if (this.replyAttachmentIds.length >= P.MAX_ATTACHMENTS) return;
4485
- this.upload || (this.upload = new ne(this.client)), this.audioRecorder || (this.audioRecorder = new Re());
4578
+ if (this.replyAttachmentIds.length >= A.MAX_ATTACHMENTS) return;
4579
+ this.upload || (this.upload = new oe(this.client)), this.audioRecorder || (this.audioRecorder = new je());
4486
4580
  const e = (i = this.shadowRoot) == null ? void 0 : i.querySelector(`[data-thread-id="${n}"]`), t = await this.audioRecorder.startRecording(e ?? document.body);
4487
4581
  if (t) {
4488
4582
  const s = await this.upload.uploadBlob(t, "audio.webm");
@@ -4491,8 +4585,8 @@ let P = class extends S {
4491
4585
  }
4492
4586
  async handleRecordVideo(n) {
4493
4587
  var i;
4494
- if (this.replyAttachmentIds.length >= P.MAX_ATTACHMENTS) return;
4495
- this.upload || (this.upload = new ne(this.client)), this.videoRecorder || (this.videoRecorder = new Le());
4588
+ if (this.replyAttachmentIds.length >= A.MAX_ATTACHMENTS) return;
4589
+ this.upload || (this.upload = new oe(this.client)), this.videoRecorder || (this.videoRecorder = new ze());
4496
4590
  const e = (i = this.shadowRoot) == null ? void 0 : i.querySelector(`[data-thread-id="${n}"]`), t = await this.videoRecorder.startRecording(e ?? document.body);
4497
4591
  if (t) {
4498
4592
  const s = await this.upload.uploadBlob(t.blob, "video.webm");
@@ -4576,7 +4670,7 @@ let P = class extends S {
4576
4670
  +
4577
4671
  ${this.pickerOpenForComment === n.id ? d`
4578
4672
  <div class="emoji-picker">
4579
- ${ts.map(
4673
+ ${ss.map(
4580
4674
  (o) => d`
4581
4675
  <button @click=${(r) => {
4582
4676
  r.stopPropagation(), this.toggleReaction(n.id, o);
@@ -4612,7 +4706,7 @@ let P = class extends S {
4612
4706
  <span class="thread-count">${this.threads.length}</span>
4613
4707
  </span>
4614
4708
  <button class="close-btn" @click=${this.fireClose} title="Close">
4615
- ${C(me, 16)}
4709
+ ${C(ge, 16)}
4616
4710
  </button>
4617
4711
  </div>
4618
4712
 
@@ -4640,7 +4734,7 @@ let P = class extends S {
4640
4734
  class="comment-attachment-img"
4641
4735
  src=${t}
4642
4736
  alt=${e.filename}
4643
- @click=${() => ke.open(e.url)}
4737
+ @click=${() => Ce.open(e.url)}
4644
4738
  />
4645
4739
  </div>
4646
4740
  `;
@@ -4658,7 +4752,7 @@ let P = class extends S {
4658
4752
  `;
4659
4753
  }
4660
4754
  renderAudioPlayer(n) {
4661
- const e = document.createElement("div"), t = Oe.render(n.url, n.durationMs);
4755
+ const e = document.createElement("div"), t = Le.render(n.url, n.durationMs);
4662
4756
  return e.appendChild(t), d`<div class="audio-player-host" data-url=${n.url} data-duration=${n.durationMs ?? ""}></div>`;
4663
4757
  }
4664
4758
  renderVideoPlayer(n) {
@@ -4672,7 +4766,7 @@ let P = class extends S {
4672
4766
  data-thread-id=${n.id}
4673
4767
  >
4674
4768
  ${n.position ? d`<div class="pin-badge">
4675
- ${C(_t, 12)}
4769
+ ${C(St, 12)}
4676
4770
  Pinned
4677
4771
  </div>` : g}
4678
4772
  ${n.comments.map((t, i) => {
@@ -4696,8 +4790,8 @@ let P = class extends S {
4696
4790
  ${this.renderAttachments(t.attachments ?? [])}
4697
4791
  `}
4698
4792
  ${o && !r ? d`<div class="comment-actions">
4699
- <button @click=${() => this.startEdit(t)} title="Edit">${C(Ai, 14)}</button>
4700
- <button class="danger" @click=${() => this.deleteComment(t.id)} title="Delete">${C(Mi, 14)}</button>
4793
+ <button @click=${() => this.startEdit(t)} title="Edit">${C(Ii, 14)}</button>
4794
+ <button class="danger" @click=${() => this.deleteComment(t.id)} title="Delete">${C(Oi, 14)}</button>
4701
4795
  </div>` : g}
4702
4796
  ${this.renderReactions(t)}
4703
4797
  </div>
@@ -4738,19 +4832,19 @@ let P = class extends S {
4738
4832
  class="reply-media-btn"
4739
4833
  title="Attach image"
4740
4834
  @click=${() => this.handleAttachImage()}
4741
- >${C(Si, 16)}</button>
4835
+ >${C(Pi, 16)}</button>
4742
4836
  <button
4743
4837
  type="button"
4744
4838
  class="reply-media-btn"
4745
4839
  title="Record audio"
4746
4840
  @click=${() => this.handleRecordAudio(n.id)}
4747
- >${C(Ti, 16)}</button>
4841
+ >${C(Si, 16)}</button>
4748
4842
  <button
4749
4843
  type="button"
4750
4844
  class="reply-media-btn"
4751
4845
  title="Record video"
4752
4846
  @click=${() => this.handleRecordVideo(n.id)}
4753
- >${C(Oi, 16)}</button>
4847
+ >${C(Ri, 16)}</button>
4754
4848
  <div class="reply-preview">
4755
4849
  ${this.replyAttachmentIds.map(
4756
4850
  (t, i) => d`<span class="reply-preview-badge">
@@ -4770,11 +4864,11 @@ let P = class extends S {
4770
4864
  `;
4771
4865
  }
4772
4866
  };
4773
- P.styles = [
4774
- ee,
4775
- ge,
4776
- _e,
4777
- M`
4867
+ A.styles = [
4868
+ te,
4869
+ be,
4870
+ Se,
4871
+ O`
4778
4872
  :host {
4779
4873
  display: block;
4780
4874
  }
@@ -5314,56 +5408,56 @@ P.styles = [
5314
5408
  }
5315
5409
  `
5316
5410
  ];
5317
- P.MAX_ATTACHMENTS = 5;
5318
- j([
5411
+ A.MAX_ATTACHMENTS = 5;
5412
+ z([
5319
5413
  v({ attribute: !1 })
5320
- ], P.prototype, "client", 2);
5321
- j([
5414
+ ], A.prototype, "client", 2);
5415
+ z([
5322
5416
  v()
5323
- ], P.prototype, "highlightThreadId", 2);
5324
- j([
5417
+ ], A.prototype, "highlightThreadId", 2);
5418
+ z([
5325
5419
  w()
5326
- ], P.prototype, "threadsVersion", 2);
5327
- j([
5420
+ ], A.prototype, "threadsVersion", 2);
5421
+ z([
5328
5422
  w()
5329
- ], P.prototype, "replyingTo", 2);
5330
- j([
5423
+ ], A.prototype, "replyingTo", 2);
5424
+ z([
5331
5425
  w()
5332
- ], P.prototype, "editingCommentId", 2);
5333
- j([
5426
+ ], A.prototype, "editingCommentId", 2);
5427
+ z([
5334
5428
  w()
5335
- ], P.prototype, "editBody", 2);
5336
- j([
5429
+ ], A.prototype, "editBody", 2);
5430
+ z([
5337
5431
  w()
5338
- ], P.prototype, "pickerOpenForComment", 2);
5339
- j([
5432
+ ], A.prototype, "pickerOpenForComment", 2);
5433
+ z([
5340
5434
  w()
5341
- ], P.prototype, "typingByThread", 2);
5342
- j([
5435
+ ], A.prototype, "typingByThread", 2);
5436
+ z([
5343
5437
  w()
5344
- ], P.prototype, "reactionsVersion", 2);
5345
- P = j([
5346
- R("pulse-widget-comments-panel")
5347
- ], P);
5348
- var is = Object.defineProperty, ss = Object.getOwnPropertyDescriptor, Ve = (n, e, t, i) => {
5349
- for (var s = i > 1 ? void 0 : i ? ss(e, t) : e, o = n.length - 1, r; o >= 0; o--)
5438
+ ], A.prototype, "reactionsVersion", 2);
5439
+ A = z([
5440
+ L("pulse-widget-comments-panel")
5441
+ ], A);
5442
+ var ns = Object.defineProperty, os = Object.getOwnPropertyDescriptor, We = (n, e, t, i) => {
5443
+ for (var s = i > 1 ? void 0 : i ? os(e, t) : e, o = n.length - 1, r; o >= 0; o--)
5350
5444
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
5351
- return i && s && is(e, t, s), s;
5445
+ return i && s && ns(e, t, s), s;
5352
5446
  };
5353
- const ns = {
5447
+ const rs = {
5354
5448
  "comment:created": "left a comment",
5355
5449
  "comment:mention": "mentioned you",
5356
5450
  "comment:reply": "replied to your comment",
5357
5451
  "thread:resolved": "resolved a thread",
5358
5452
  "reaction:added": "reacted to your comment"
5359
- }, os = {
5453
+ }, as = {
5360
5454
  "comment:created": "💬",
5361
5455
  "comment:mention": "📣",
5362
5456
  "comment:reply": "↩️",
5363
5457
  "thread:resolved": "✅",
5364
5458
  "reaction:added": "🎉"
5365
5459
  };
5366
- let de = class extends S {
5460
+ let he = class extends P {
5367
5461
  constructor() {
5368
5462
  super(...arguments), this.notifications = [];
5369
5463
  }
@@ -5419,7 +5513,7 @@ let de = class extends S {
5419
5513
  Mark all read
5420
5514
  </button>` : g}
5421
5515
  <button class="close-btn" @click=${this.fireClose} title="Close">
5422
- ${C(me, 16)}
5516
+ ${C(ge, 16)}
5423
5517
  </button>
5424
5518
  </div>
5425
5519
  </div>
@@ -5434,11 +5528,11 @@ let de = class extends S {
5434
5528
  class="item ${e.read ? "" : "unread"}"
5435
5529
  @click=${() => this.handleClick(e)}
5436
5530
  >
5437
- <span class="icon">${os[e.type] ?? "🔔"}</span>
5531
+ <span class="icon">${as[e.type] ?? "🔔"}</span>
5438
5532
  <div class="content">
5439
5533
  <div class="text">
5440
5534
  <span class="actor">${this.getActorName(e.actorId)}</span>
5441
- ${ns[e.type] ?? e.type}
5535
+ ${rs[e.type] ?? e.type}
5442
5536
  </div>
5443
5537
  <div class="time">${this.formatTime(e.createdAt)}</div>
5444
5538
  </div>
@@ -5451,11 +5545,11 @@ let de = class extends S {
5451
5545
  `;
5452
5546
  }
5453
5547
  };
5454
- de.styles = [
5455
- ee,
5456
- ge,
5457
- _e,
5458
- M`
5548
+ he.styles = [
5549
+ te,
5550
+ be,
5551
+ Se,
5552
+ O`
5459
5553
  :host {
5460
5554
  display: block;
5461
5555
  }
@@ -5648,17 +5742,17 @@ de.styles = [
5648
5742
  }
5649
5743
  `
5650
5744
  ];
5651
- Ve([
5745
+ We([
5652
5746
  v({ attribute: !1 })
5653
- ], de.prototype, "client", 2);
5654
- Ve([
5747
+ ], he.prototype, "client", 2);
5748
+ We([
5655
5749
  w()
5656
- ], de.prototype, "notifications", 2);
5657
- de = Ve([
5658
- R("pulse-widget-notifications-panel")
5659
- ], de);
5660
- const rs = 3e3;
5661
- class as {
5750
+ ], he.prototype, "notifications", 2);
5751
+ he = We([
5752
+ L("pulse-widget-notifications-panel")
5753
+ ], he);
5754
+ const ls = 3e3;
5755
+ class cs {
5662
5756
  constructor(e) {
5663
5757
  this.container = null, this.cursors = /* @__PURE__ */ new Map(), this.cursorEls = /* @__PURE__ */ new Map(), this.cursorLastSeen = /* @__PURE__ */ new Map(), this.unsubs = [], this.enabled = !1, this.sending = !1, this.staleTimer = null, this.handleLocalCursor = (t) => {
5664
5758
  t.pointerType !== "touch" && this.client.moveCursor({
@@ -5710,7 +5804,7 @@ class as {
5710
5804
  ), this.setSending(!0), this.staleTimer = setInterval(() => {
5711
5805
  const e = Date.now();
5712
5806
  for (const [t, i] of this.cursorLastSeen)
5713
- if (e - i > rs) {
5807
+ if (e - i > ls) {
5714
5808
  this.cursors.delete(t);
5715
5809
  const s = this.cursorEls.get(t);
5716
5810
  s && s.remove(), this.cursorEls.delete(t), this.cursorLastSeen.delete(t);
@@ -5806,7 +5900,7 @@ class as {
5806
5900
  i.style.transform = `translate(${t.position.x}px, ${t.position.y}px)`;
5807
5901
  }
5808
5902
  }
5809
- class ls {
5903
+ class ds {
5810
5904
  constructor(e) {
5811
5905
  this.container = null, this.unsubs = [], this.enabled = !1, this.drawMode = !1, this.currentPoints = [], this.currentPath = null, this.lastPoint = null, this.fadeTimers = /* @__PURE__ */ new Map(), this.handlePointerDown = (t) => {
5812
5906
  var l, a, c;
@@ -5889,9 +5983,9 @@ class ls {
5889
5983
  this.fadeTimers.set(e, t);
5890
5984
  }
5891
5985
  }
5892
- function cs(n) {
5986
+ function hs(n) {
5893
5987
  if (!n.rangeCount || n.isCollapsed) return null;
5894
- const e = n.getRangeAt(0), t = e.startContainer, i = e.endContainer, s = ft(t), o = ft(i);
5988
+ const e = n.getRangeAt(0), t = e.startContainer, i = e.endContainer, s = gt(t), o = gt(i);
5895
5989
  return !s || !o ? null : {
5896
5990
  startSelector: s,
5897
5991
  startOffset: e.startOffset,
@@ -5899,10 +5993,10 @@ function cs(n) {
5899
5993
  endOffset: e.endOffset
5900
5994
  };
5901
5995
  }
5902
- function ds(n) {
5996
+ function ps(n) {
5903
5997
  var e, t;
5904
5998
  try {
5905
- const i = gt(n.startSelector), s = gt(n.endSelector);
5999
+ const i = vt(n.startSelector), s = vt(n.endSelector);
5906
6000
  if (!i || !s) return null;
5907
6001
  const o = document.createRange(), r = i.nodeType === Node.TEXT_NODE ? ((e = i.textContent) == null ? void 0 : e.length) ?? 0 : i.childNodes.length, l = s.nodeType === Node.TEXT_NODE ? ((t = s.textContent) == null ? void 0 : t.length) ?? 0 : s.childNodes.length;
5908
6002
  return o.setStart(i, Math.min(n.startOffset, r)), o.setEnd(s, Math.min(n.endOffset, l)), o;
@@ -5910,18 +6004,18 @@ function ds(n) {
5910
6004
  return null;
5911
6005
  }
5912
6006
  }
5913
- function ft(n) {
6007
+ function gt(n) {
5914
6008
  if (n.nodeType === Node.TEXT_NODE) {
5915
6009
  const e = n.parentElement;
5916
6010
  if (!e) return null;
5917
- const t = mt(e);
6011
+ const t = bt(e);
5918
6012
  if (!t) return null;
5919
6013
  const i = Array.from(e.childNodes).indexOf(n);
5920
6014
  return `${t}::text(${i})`;
5921
6015
  }
5922
- return n.nodeType === Node.ELEMENT_NODE ? mt(n) : null;
6016
+ return n.nodeType === Node.ELEMENT_NODE ? bt(n) : null;
5923
6017
  }
5924
- function mt(n) {
6018
+ function bt(n) {
5925
6019
  if (!n || n === document.documentElement) return "html";
5926
6020
  if (n === document.body) return "body";
5927
6021
  if (n.id) return `#${CSS.escape(n.id)}`;
@@ -5947,7 +6041,7 @@ function mt(n) {
5947
6041
  }
5948
6042
  return e.length > 0 ? e.join(" > ") : null;
5949
6043
  }
5950
- function gt(n) {
6044
+ function vt(n) {
5951
6045
  const e = n.match(/^(.+)::text\((\d+)\)$/);
5952
6046
  if (e) {
5953
6047
  const t = e[1], i = parseInt(e[2], 10);
@@ -5964,7 +6058,7 @@ function gt(n) {
5964
6058
  return null;
5965
6059
  }
5966
6060
  }
5967
- class hs {
6061
+ class us {
5968
6062
  constructor(e) {
5969
6063
  this.container = null, this.unsubs = [], this.enabled = !1, this.selectionEls = /* @__PURE__ */ new Map(), this.clearTimers = /* @__PURE__ */ new Map(), this.client = e;
5970
6064
  }
@@ -6008,7 +6102,7 @@ class hs {
6008
6102
  if (!this.container) return;
6009
6103
  const i = (l = this.client.state.user) == null ? void 0 : l.id;
6010
6104
  if (e === i || (this.clearSelection(e), !t)) return;
6011
- const s = ds(t);
6105
+ const s = ps(t);
6012
6106
  if (!s) return;
6013
6107
  const o = this.client.state.presence.find(
6014
6108
  (a) => a.user.id === e
@@ -6047,12 +6141,12 @@ class hs {
6047
6141
  }
6048
6142
  }
6049
6143
  }
6050
- var ps = Object.defineProperty, us = Object.getOwnPropertyDescriptor, qe = (n, e, t, i) => {
6051
- for (var s = i > 1 ? void 0 : i ? us(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6144
+ var fs = Object.defineProperty, ms = Object.getOwnPropertyDescriptor, Xe = (n, e, t, i) => {
6145
+ for (var s = i > 1 ? void 0 : i ? ms(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6052
6146
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
6053
- return i && s && ps(e, t, s), s;
6147
+ return i && s && fs(e, t, s), s;
6054
6148
  };
6055
- let he = class extends S {
6149
+ let pe = class extends P {
6056
6150
  constructor() {
6057
6151
  super(...arguments), this.roomId = "";
6058
6152
  }
@@ -6093,7 +6187,7 @@ let he = class extends S {
6093
6187
  <div class="panel-header">
6094
6188
  <span class="panel-title">Settings</span>
6095
6189
  <button class="close-btn" @click=${this.fireClose} title="Close">
6096
- ${C(me, 16)}
6190
+ ${C(ge, 16)}
6097
6191
  </button>
6098
6192
  </div>
6099
6193
 
@@ -6138,11 +6232,11 @@ let he = class extends S {
6138
6232
  `;
6139
6233
  }
6140
6234
  };
6141
- he.styles = [
6142
- ee,
6143
- ge,
6144
- _e,
6145
- M`
6235
+ pe.styles = [
6236
+ te,
6237
+ be,
6238
+ Se,
6239
+ O`
6146
6240
  :host {
6147
6241
  display: block;
6148
6242
  }
@@ -6313,16 +6407,16 @@ he.styles = [
6313
6407
  }
6314
6408
  `
6315
6409
  ];
6316
- qe([
6410
+ Xe([
6317
6411
  v({ attribute: !1 })
6318
- ], he.prototype, "settings", 2);
6319
- qe([
6412
+ ], pe.prototype, "settings", 2);
6413
+ Xe([
6320
6414
  v()
6321
- ], he.prototype, "roomId", 2);
6322
- he = qe([
6323
- R("pulse-widget-settings-panel")
6324
- ], he);
6325
- const ye = {
6415
+ ], pe.prototype, "roomId", 2);
6416
+ pe = Xe([
6417
+ L("pulse-widget-settings-panel")
6418
+ ], pe);
6419
+ const we = {
6326
6420
  enabled: !0,
6327
6421
  showMyCursor: !0,
6328
6422
  showOthersCursors: !0,
@@ -6333,24 +6427,24 @@ const ye = {
6333
6427
  showViewportIndicators: !0,
6334
6428
  showSelections: !0,
6335
6429
  showDrawings: !0
6336
- }, St = "pulse:settings:";
6337
- function fs(n) {
6430
+ }, Pt = "pulse:settings:";
6431
+ function gs(n) {
6338
6432
  try {
6339
- const e = localStorage.getItem(`${St}${n}`);
6340
- return e ? { ...ye, ...JSON.parse(e) } : { ...ye };
6433
+ const e = localStorage.getItem(`${Pt}${n}`);
6434
+ return e ? { ...we, ...JSON.parse(e) } : { ...we };
6341
6435
  } catch {
6342
- return { ...ye };
6436
+ return { ...we };
6343
6437
  }
6344
6438
  }
6345
- function ms(n, e) {
6346
- localStorage.setItem(`${St}${n}`, JSON.stringify(e));
6439
+ function bs(n, e) {
6440
+ localStorage.setItem(`${Pt}${n}`, JSON.stringify(e));
6347
6441
  }
6348
- var gs = Object.defineProperty, bs = Object.getOwnPropertyDescriptor, L = (n, e, t, i) => {
6349
- for (var s = i > 1 ? void 0 : i ? bs(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6442
+ var vs = Object.defineProperty, xs = Object.getOwnPropertyDescriptor, j = (n, e, t, i) => {
6443
+ for (var s = i > 1 ? void 0 : i ? xs(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6350
6444
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
6351
- return i && s && gs(e, t, s), s;
6445
+ return i && s && vs(e, t, s), s;
6352
6446
  };
6353
- let O = class extends S {
6447
+ let R = class extends P {
6354
6448
  constructor() {
6355
6449
  super(...arguments), this.collapsed = !1, this.activePanel = null, this.pinModeActive = !1, this.featuresDisabled = !1, this.drawModeActive = !1, this.followingUserId = null, this.display = "floating", this.users = [], this.unreadCount = 0;
6356
6450
  }
@@ -6403,7 +6497,7 @@ let O = class extends S {
6403
6497
  if (this.collapsed)
6404
6498
  return d`
6405
6499
  <div class="toolbar collapsed ${n ? "inline" : ""}" @click=${this.fireToggle}>
6406
- <span class="fab-icon">${C(Ri, n ? 18 : 24)}</span>
6500
+ <span class="fab-icon">${C(Li, n ? 18 : 24)}</span>
6407
6501
  </div>
6408
6502
  `;
6409
6503
  const e = this.users.slice(0, 3), t = this.users.length - 3;
@@ -6439,7 +6533,7 @@ let O = class extends S {
6439
6533
  ?disabled=${this.featuresDisabled}
6440
6534
  style="${this.featuresDisabled ? "opacity:0.35;pointer-events:none" : ""}"
6441
6535
  >
6442
- ${C(_t)}
6536
+ ${C(St)}
6443
6537
  </button>
6444
6538
 
6445
6539
  <!-- View comments -->
@@ -6461,7 +6555,7 @@ let O = class extends S {
6461
6555
  ?disabled=${this.featuresDisabled}
6462
6556
  style="${this.featuresDisabled ? "opacity:0.35;pointer-events:none" : ""}"
6463
6557
  >
6464
- ${C(Ci)}
6558
+ ${C(Ti)}
6465
6559
  </button>
6466
6560
 
6467
6561
  <!-- Draw mode -->
@@ -6472,7 +6566,7 @@ let O = class extends S {
6472
6566
  ?disabled=${this.featuresDisabled}
6473
6567
  style="${this.featuresDisabled ? "opacity:0.35;pointer-events:none" : ""}"
6474
6568
  >
6475
- ${C(Pi)}
6569
+ ${C(Ai)}
6476
6570
  </button>
6477
6571
 
6478
6572
  <!-- Notifications -->
@@ -6483,7 +6577,7 @@ let O = class extends S {
6483
6577
  ?disabled=${this.featuresDisabled}
6484
6578
  style="${this.featuresDisabled ? "opacity:0.35;pointer-events:none" : "position:relative"}"
6485
6579
  >
6486
- ${C(Ei)}
6580
+ ${C(Ci)}
6487
6581
  ${this.unreadCount > 0 ? d`<span class="badge">${this.unreadCount > 9 ? "9+" : this.unreadCount}</span>` : g}
6488
6582
  </button>
6489
6583
 
@@ -6493,7 +6587,7 @@ let O = class extends S {
6493
6587
  @click=${() => this.fire("settings")}
6494
6588
  title="Settings"
6495
6589
  >
6496
- ${C(Ii)}
6590
+ ${C(Mi)}
6497
6591
  </button>
6498
6592
 
6499
6593
  <div class="separator"></div>
@@ -6504,16 +6598,16 @@ let O = class extends S {
6504
6598
  @click=${this.fireToggle}
6505
6599
  title="Collapse"
6506
6600
  >
6507
- ${C(me, 14)}
6601
+ ${C(ge, 14)}
6508
6602
  </button>
6509
6603
  </div>
6510
6604
  `;
6511
6605
  }
6512
6606
  };
6513
- O.styles = [
6514
- ee,
6515
- ge,
6516
- M`
6607
+ R.styles = [
6608
+ te,
6609
+ be,
6610
+ O`
6517
6611
  :host {
6518
6612
  display: block;
6519
6613
  }
@@ -6725,40 +6819,40 @@ O.styles = [
6725
6819
  }
6726
6820
  `
6727
6821
  ];
6728
- L([
6822
+ j([
6729
6823
  v({ attribute: !1 })
6730
- ], O.prototype, "client", 2);
6731
- L([
6824
+ ], R.prototype, "client", 2);
6825
+ j([
6732
6826
  v({ type: Boolean })
6733
- ], O.prototype, "collapsed", 2);
6734
- L([
6827
+ ], R.prototype, "collapsed", 2);
6828
+ j([
6735
6829
  v()
6736
- ], O.prototype, "activePanel", 2);
6737
- L([
6830
+ ], R.prototype, "activePanel", 2);
6831
+ j([
6738
6832
  v({ type: Boolean })
6739
- ], O.prototype, "pinModeActive", 2);
6740
- L([
6833
+ ], R.prototype, "pinModeActive", 2);
6834
+ j([
6741
6835
  v({ type: Boolean })
6742
- ], O.prototype, "featuresDisabled", 2);
6743
- L([
6836
+ ], R.prototype, "featuresDisabled", 2);
6837
+ j([
6744
6838
  v({ type: Boolean })
6745
- ], O.prototype, "drawModeActive", 2);
6746
- L([
6839
+ ], R.prototype, "drawModeActive", 2);
6840
+ j([
6747
6841
  v()
6748
- ], O.prototype, "followingUserId", 2);
6749
- L([
6842
+ ], R.prototype, "followingUserId", 2);
6843
+ j([
6750
6844
  v()
6751
- ], O.prototype, "display", 2);
6752
- L([
6845
+ ], R.prototype, "display", 2);
6846
+ j([
6753
6847
  w()
6754
- ], O.prototype, "users", 2);
6755
- L([
6848
+ ], R.prototype, "users", 2);
6849
+ j([
6756
6850
  w()
6757
- ], O.prototype, "unreadCount", 2);
6758
- O = L([
6759
- R("pulse-widget-toolbar")
6760
- ], O);
6761
- class vs {
6851
+ ], R.prototype, "unreadCount", 2);
6852
+ R = j([
6853
+ L("pulse-widget-toolbar")
6854
+ ], R);
6855
+ class ys {
6762
6856
  constructor(e) {
6763
6857
  this.container = null, this.unsubs = [], this.enabled = !1, this.pillEls = /* @__PURE__ */ new Map(), this.client = e;
6764
6858
  }
@@ -6836,14 +6930,14 @@ class vs {
6836
6930
  return e.split(" ").map((t) => t[0]).join("").toUpperCase().slice(0, 2);
6837
6931
  }
6838
6932
  }
6839
- var xs = Object.defineProperty, ys = Object.getOwnPropertyDescriptor, A = (n, e, t, i) => {
6840
- for (var s = i > 1 ? void 0 : i ? ys(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6933
+ var ws = Object.defineProperty, $s = Object.getOwnPropertyDescriptor, I = (n, e, t, i) => {
6934
+ for (var s = i > 1 ? void 0 : i ? $s(e, t) : e, o = n.length - 1, r; o >= 0; o--)
6841
6935
  (r = n[o]) && (s = (i ? r(e, t, s) : r(s)) || s);
6842
- return i && s && xs(e, t, s), s;
6936
+ return i && s && ws(e, t, s), s;
6843
6937
  };
6844
- let _ = class extends S {
6938
+ let T = class extends P {
6845
6939
  constructor() {
6846
- super(...arguments), this.apiKey = "", this.token = "", this.room = "", this.position = "bottom-right", this.display = "floating", this.collapsed = !0, this.activePanel = null, this.pinModeActive = !1, this.highlightThreadId = null, this.settings = { ...ye }, this.followingUserId = null, this.drawModeActive = !1, this.connectionState = "disconnected", this.showConnectedFlash = !1, this.unsubs = [], this.clientConfigKey = "", this._isFollowScrolling = !1, this._viewportThrottleTimer = null, this._selectionThrottleTimer = null, this._connectedFlashTimer = null, this._wasDisconnected = !1, this.handleScroll = () => {
6940
+ super(...arguments), this.apiKey = "", this.token = "", this.room = "", this.position = "bottom-right", this.display = "floating", this.collapsed = !0, this.activePanel = null, this.pinModeActive = !1, this.highlightThreadId = null, this.settings = { ...we }, this.followingUserId = null, this.drawModeActive = !1, this.connectionState = "disconnected", this.showConnectedFlash = !1, this.unsubs = [], this.clientConfigKey = "", this._isFollowScrolling = !1, this._viewportThrottleTimer = null, this._selectionThrottleTimer = null, this._connectedFlashTimer = null, this._wasDisconnected = !1, this.handleScroll = () => {
6847
6941
  !this.settings.enabled || !this.client || this._isFollowScrolling || (this.followingUserId && (this.followingUserId = null), !this._viewportThrottleTimer && (this._viewportThrottleTimer = setTimeout(() => {
6848
6942
  var n;
6849
6943
  this._viewportThrottleTimer = null, (n = this.client) == null || n.updateViewport({
@@ -6864,7 +6958,7 @@ let _ = class extends S {
6864
6958
  (t = this.client) == null || t.updateSelection(null);
6865
6959
  return;
6866
6960
  }
6867
- const e = cs(n);
6961
+ const e = hs(n);
6868
6962
  (i = this.client) == null || i.updateSelection(e);
6869
6963
  }, 500));
6870
6964
  }, this.handleDocumentClick = (n) => {
@@ -6896,11 +6990,11 @@ let _ = class extends S {
6896
6990
  room: this.room,
6897
6991
  endpoint: this.endpoint
6898
6992
  };
6899
- this.client = new xt(n), this.clientConfigKey = this.getConfigKey(), this.cursorOverlay = new as(this.client), this.commentPins = new Ji(this.client, {
6993
+ this.client = new wt(n), this.clientConfigKey = this.getConfigKey(), this.cursorOverlay = new cs(this.client), this.commentPins = new es(this.client, {
6900
6994
  onPinModeExit: () => {
6901
6995
  this.pinModeActive = !1;
6902
6996
  }
6903
- }), this.viewportOverlay = new vs(this.client), this.selectionOverlay = new hs(this.client), this.drawingOverlay = new ls(this.client), this.settings = fs(this.room), this.applySettings(this.settings), this.unsubs.push(
6997
+ }), this.viewportOverlay = new ys(this.client), this.selectionOverlay = new us(this.client), this.drawingOverlay = new ds(this.client), this.settings = gs(this.room), this.applySettings(this.settings), this.unsubs.push(
6904
6998
  this.client.on("connection", (e) => {
6905
6999
  this.connectionState = e, e === "connected" && this._wasDisconnected ? (this.showConnectedFlash = !0, this._connectedFlashTimer && clearTimeout(this._connectedFlashTimer), this._connectedFlashTimer = setTimeout(() => {
6906
7000
  this.showConnectedFlash = !1, this._connectedFlashTimer = null;
@@ -6967,7 +7061,7 @@ let _ = class extends S {
6967
7061
  }
6968
7062
  handleSettingsChange(n) {
6969
7063
  const e = n.detail;
6970
- this.settings = e, ms(this.room, e), this.applySettings(e);
7064
+ this.settings = e, bs(this.room, e), this.applySettings(e);
6971
7065
  }
6972
7066
  applySettings(n) {
6973
7067
  var e, t, i, s, o, r, l, a, c, h, p, u, f, m, x, b, y;
@@ -6995,8 +7089,8 @@ let _ = class extends S {
6995
7089
  const s = i.getBoundingClientRect(), o = window.innerWidth, r = window.innerHeight, l = 8, a = (b = this.shadowRoot) == null ? void 0 : b.querySelector(".toolbar-popover");
6996
7090
  if (a) {
6997
7091
  Object.assign(a.style, { top: "auto", left: "auto" });
6998
- const E = a.getBoundingClientRect(), I = this.computePosition(s, E, o, r, l);
6999
- a.style.top = `${I.top}px`, a.style.left = `${I.left}px`;
7092
+ const E = a.getBoundingClientRect(), M = this.computePosition(s, E, o, r, l);
7093
+ a.style.top = `${M.top}px`, a.style.left = `${M.left}px`;
7000
7094
  }
7001
7095
  const c = (y = this.shadowRoot) == null ? void 0 : y.querySelector(".panel-container");
7002
7096
  if (!c) return;
@@ -7114,9 +7208,9 @@ let _ = class extends S {
7114
7208
  `;
7115
7209
  }
7116
7210
  };
7117
- _.styles = [
7118
- ee,
7119
- M`
7211
+ T.styles = [
7212
+ te,
7213
+ O`
7120
7214
  :host {
7121
7215
  display: block;
7122
7216
  }
@@ -7292,60 +7386,60 @@ _.styles = [
7292
7386
  }
7293
7387
  `
7294
7388
  ];
7295
- A([
7389
+ I([
7296
7390
  v({ attribute: "api-key" })
7297
- ], _.prototype, "apiKey", 2);
7298
- A([
7391
+ ], T.prototype, "apiKey", 2);
7392
+ I([
7299
7393
  v()
7300
- ], _.prototype, "token", 2);
7301
- A([
7394
+ ], T.prototype, "token", 2);
7395
+ I([
7302
7396
  v()
7303
- ], _.prototype, "room", 2);
7304
- A([
7397
+ ], T.prototype, "room", 2);
7398
+ I([
7305
7399
  v()
7306
- ], _.prototype, "endpoint", 2);
7307
- A([
7400
+ ], T.prototype, "endpoint", 2);
7401
+ I([
7308
7402
  v({ reflect: !0 })
7309
- ], _.prototype, "position", 2);
7310
- A([
7403
+ ], T.prototype, "position", 2);
7404
+ I([
7311
7405
  v({ reflect: !0 })
7312
- ], _.prototype, "display", 2);
7313
- A([
7406
+ ], T.prototype, "display", 2);
7407
+ I([
7314
7408
  w()
7315
- ], _.prototype, "collapsed", 2);
7316
- A([
7409
+ ], T.prototype, "collapsed", 2);
7410
+ I([
7317
7411
  w()
7318
- ], _.prototype, "activePanel", 2);
7319
- A([
7412
+ ], T.prototype, "activePanel", 2);
7413
+ I([
7320
7414
  w()
7321
- ], _.prototype, "pinModeActive", 2);
7322
- A([
7415
+ ], T.prototype, "pinModeActive", 2);
7416
+ I([
7323
7417
  w()
7324
- ], _.prototype, "highlightThreadId", 2);
7325
- A([
7418
+ ], T.prototype, "highlightThreadId", 2);
7419
+ I([
7326
7420
  w()
7327
- ], _.prototype, "settings", 2);
7328
- A([
7421
+ ], T.prototype, "settings", 2);
7422
+ I([
7329
7423
  w()
7330
- ], _.prototype, "followingUserId", 2);
7331
- A([
7424
+ ], T.prototype, "followingUserId", 2);
7425
+ I([
7332
7426
  w()
7333
- ], _.prototype, "drawModeActive", 2);
7334
- A([
7427
+ ], T.prototype, "drawModeActive", 2);
7428
+ I([
7335
7429
  w()
7336
- ], _.prototype, "connectionState", 2);
7337
- A([
7430
+ ], T.prototype, "connectionState", 2);
7431
+ I([
7338
7432
  w()
7339
- ], _.prototype, "showConnectedFlash", 2);
7340
- _ = A([
7341
- R("pulse-widget")
7342
- ], _);
7433
+ ], T.prototype, "showConnectedFlash", 2);
7434
+ T = I([
7435
+ L("pulse-widget")
7436
+ ], T);
7343
7437
  export {
7344
- W as PulseComments,
7345
- le as PulseCursors,
7346
- ce as PulseNotifications,
7347
- G as PulsePresence,
7348
- q as PulseProvider,
7349
- D as PulseReactions,
7350
- _ as PulseWidget
7438
+ X as PulseComments,
7439
+ ce as PulseCursors,
7440
+ de as PulseNotifications,
7441
+ Z as PulsePresence,
7442
+ W as PulseProvider,
7443
+ H as PulseReactions,
7444
+ T as PulseWidget
7351
7445
  };