pollcatch 2.5.8 → 2.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/pc.js +467 -454
package/pc.js
CHANGED
|
@@ -3,18 +3,18 @@
|
|
|
3
3
|
* Copyright 2019 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
5
|
*/
|
|
6
|
-
const
|
|
7
|
-
let
|
|
6
|
+
const $t = globalThis, Yt = $t.ShadowRoot && ($t.ShadyCSS === void 0 || $t.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, Kt = Symbol(), ee = /* @__PURE__ */ new WeakMap();
|
|
7
|
+
let Ee = class {
|
|
8
8
|
constructor(t, o, r) {
|
|
9
|
-
if (this._$cssResult$ = !0, r !==
|
|
9
|
+
if (this._$cssResult$ = !0, r !== Kt) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
|
|
10
10
|
this.cssText = t, this.t = o;
|
|
11
11
|
}
|
|
12
12
|
get styleSheet() {
|
|
13
13
|
let t = this.o;
|
|
14
14
|
const o = this.t;
|
|
15
|
-
if (
|
|
15
|
+
if (Yt && t === void 0) {
|
|
16
16
|
const r = o !== void 0 && o.length === 1;
|
|
17
|
-
r && (t =
|
|
17
|
+
r && (t = ee.get(o)), t === void 0 && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), r && ee.set(o, t));
|
|
18
18
|
}
|
|
19
19
|
return t;
|
|
20
20
|
}
|
|
@@ -22,33 +22,33 @@ let ke = class {
|
|
|
22
22
|
return this.cssText;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
const
|
|
25
|
+
const We = (e) => new Ee(typeof e == "string" ? e : e + "", void 0, Kt), R = (e, ...t) => {
|
|
26
26
|
const o = e.length === 1 ? e[0] : t.reduce((r, s, i) => r + ((a) => {
|
|
27
27
|
if (a._$cssResult$ === !0) return a.cssText;
|
|
28
28
|
if (typeof a == "number") return a;
|
|
29
29
|
throw Error("Value passed to 'css' function must be a 'css' function result: " + a + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
|
|
30
30
|
})(s) + e[i + 1], e[0]);
|
|
31
|
-
return new
|
|
32
|
-
},
|
|
33
|
-
if (
|
|
31
|
+
return new Ee(o, e, Kt);
|
|
32
|
+
}, Ge = (e, t) => {
|
|
33
|
+
if (Yt) e.adoptedStyleSheets = t.map((o) => o instanceof CSSStyleSheet ? o : o.styleSheet);
|
|
34
34
|
else for (const o of t) {
|
|
35
|
-
const r = document.createElement("style"), s =
|
|
35
|
+
const r = document.createElement("style"), s = $t.litNonce;
|
|
36
36
|
s !== void 0 && r.setAttribute("nonce", s), r.textContent = o.cssText, e.appendChild(r);
|
|
37
37
|
}
|
|
38
|
-
},
|
|
38
|
+
}, oe = Yt ? (e) => e : (e) => e instanceof CSSStyleSheet ? ((t) => {
|
|
39
39
|
let o = "";
|
|
40
40
|
for (const r of t.cssRules) o += r.cssText;
|
|
41
|
-
return
|
|
41
|
+
return We(o);
|
|
42
42
|
})(e) : e;
|
|
43
43
|
/**
|
|
44
44
|
* @license
|
|
45
45
|
* Copyright 2017 Google LLC
|
|
46
46
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
47
47
|
*/
|
|
48
|
-
const { is:
|
|
48
|
+
const { is: Ze, defineProperty: Xe, getOwnPropertyDescriptor: Je, getOwnPropertyNames: Qe, getOwnPropertySymbols: to, getPrototypeOf: eo } = Object, j = globalThis, re = j.trustedTypes, oo = re ? re.emptyScript : "", Mt = j.reactiveElementPolyfillSupport, ct = (e, t) => e, Ct = { toAttribute(e, t) {
|
|
49
49
|
switch (t) {
|
|
50
50
|
case Boolean:
|
|
51
|
-
e = e ?
|
|
51
|
+
e = e ? oo : null;
|
|
52
52
|
break;
|
|
53
53
|
case Object:
|
|
54
54
|
case Array:
|
|
@@ -73,7 +73,7 @@ const { is: Ge, defineProperty: Ze, getOwnPropertyDescriptor: Xe, getOwnProperty
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
return o;
|
|
76
|
-
} },
|
|
76
|
+
} }, Wt = (e, t) => !Ze(e, t), se = { attribute: !0, type: String, converter: Ct, reflect: !1, hasChanged: Wt };
|
|
77
77
|
Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), j.litPropertyMetadata ?? (j.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
|
|
78
78
|
let et = class extends HTMLElement {
|
|
79
79
|
static addInitializer(t) {
|
|
@@ -82,14 +82,14 @@ let et = class extends HTMLElement {
|
|
|
82
82
|
static get observedAttributes() {
|
|
83
83
|
return this.finalize(), this._$Eh && [...this._$Eh.keys()];
|
|
84
84
|
}
|
|
85
|
-
static createProperty(t, o =
|
|
85
|
+
static createProperty(t, o = se) {
|
|
86
86
|
if (o.state && (o.attribute = !1), this._$Ei(), this.elementProperties.set(t, o), !o.noAccessor) {
|
|
87
87
|
const r = Symbol(), s = this.getPropertyDescriptor(t, r, o);
|
|
88
|
-
s !== void 0 &&
|
|
88
|
+
s !== void 0 && Xe(this.prototype, t, s);
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
static getPropertyDescriptor(t, o, r) {
|
|
92
|
-
const { get: s, set: i } =
|
|
92
|
+
const { get: s, set: i } = Je(this.prototype, t) ?? { get() {
|
|
93
93
|
return this[o];
|
|
94
94
|
}, set(a) {
|
|
95
95
|
this[o] = a;
|
|
@@ -102,17 +102,17 @@ let et = class extends HTMLElement {
|
|
|
102
102
|
}, configurable: !0, enumerable: !0 };
|
|
103
103
|
}
|
|
104
104
|
static getPropertyOptions(t) {
|
|
105
|
-
return this.elementProperties.get(t) ??
|
|
105
|
+
return this.elementProperties.get(t) ?? se;
|
|
106
106
|
}
|
|
107
107
|
static _$Ei() {
|
|
108
|
-
if (this.hasOwnProperty(
|
|
109
|
-
const t =
|
|
108
|
+
if (this.hasOwnProperty(ct("elementProperties"))) return;
|
|
109
|
+
const t = eo(this);
|
|
110
110
|
t.finalize(), t.l !== void 0 && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
|
|
111
111
|
}
|
|
112
112
|
static finalize() {
|
|
113
|
-
if (this.hasOwnProperty(
|
|
114
|
-
if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(
|
|
115
|
-
const o = this.properties, r = [...
|
|
113
|
+
if (this.hasOwnProperty(ct("finalized"))) return;
|
|
114
|
+
if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(ct("properties"))) {
|
|
115
|
+
const o = this.properties, r = [...Qe(o), ...to(o)];
|
|
116
116
|
for (const s of r) this.createProperty(s, o[s]);
|
|
117
117
|
}
|
|
118
118
|
const t = this[Symbol.metadata];
|
|
@@ -131,8 +131,8 @@ let et = class extends HTMLElement {
|
|
|
131
131
|
const o = [];
|
|
132
132
|
if (Array.isArray(t)) {
|
|
133
133
|
const r = new Set(t.flat(1 / 0).reverse());
|
|
134
|
-
for (const s of r) o.unshift(
|
|
135
|
-
} else t !== void 0 && o.push(
|
|
134
|
+
for (const s of r) o.unshift(oe(s));
|
|
135
|
+
} else t !== void 0 && o.push(oe(t));
|
|
136
136
|
return o;
|
|
137
137
|
}
|
|
138
138
|
static _$Eu(t, o) {
|
|
@@ -161,7 +161,7 @@ let et = class extends HTMLElement {
|
|
|
161
161
|
}
|
|
162
162
|
createRenderRoot() {
|
|
163
163
|
const t = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
|
|
164
|
-
return
|
|
164
|
+
return Ge(t, this.constructor.elementStyles), t;
|
|
165
165
|
}
|
|
166
166
|
connectedCallback() {
|
|
167
167
|
var t;
|
|
@@ -186,7 +186,7 @@ let et = class extends HTMLElement {
|
|
|
186
186
|
var i;
|
|
187
187
|
const r = this.constructor.elementProperties.get(t), s = this.constructor._$Eu(t, r);
|
|
188
188
|
if (s !== void 0 && r.reflect === !0) {
|
|
189
|
-
const a = (((i = r.converter) == null ? void 0 : i.toAttribute) !== void 0 ? r.converter :
|
|
189
|
+
const a = (((i = r.converter) == null ? void 0 : i.toAttribute) !== void 0 ? r.converter : Ct).toAttribute(o, r.type);
|
|
190
190
|
this._$Em = t, a == null ? this.removeAttribute(s) : this.setAttribute(s, a), this._$Em = null;
|
|
191
191
|
}
|
|
192
192
|
}
|
|
@@ -194,13 +194,13 @@ let et = class extends HTMLElement {
|
|
|
194
194
|
var i;
|
|
195
195
|
const r = this.constructor, s = r._$Eh.get(t);
|
|
196
196
|
if (s !== void 0 && this._$Em !== s) {
|
|
197
|
-
const a = r.getPropertyOptions(s), l = typeof a.converter == "function" ? { fromAttribute: a.converter } : ((i = a.converter) == null ? void 0 : i.fromAttribute) !== void 0 ? a.converter :
|
|
197
|
+
const a = r.getPropertyOptions(s), l = typeof a.converter == "function" ? { fromAttribute: a.converter } : ((i = a.converter) == null ? void 0 : i.fromAttribute) !== void 0 ? a.converter : Ct;
|
|
198
198
|
this._$Em = s, this[s] = l.fromAttribute(o, a.type), this._$Em = null;
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
201
|
requestUpdate(t, o, r) {
|
|
202
202
|
if (t !== void 0) {
|
|
203
|
-
if (r ?? (r = this.constructor.getPropertyOptions(t)), !(r.hasChanged ??
|
|
203
|
+
if (r ?? (r = this.constructor.getPropertyOptions(t)), !(r.hasChanged ?? Wt)(this[t], o)) return;
|
|
204
204
|
this.P(t, o, r);
|
|
205
205
|
}
|
|
206
206
|
this.isUpdatePending === !1 && (this._$ES = this._$ET());
|
|
@@ -273,56 +273,56 @@ let et = class extends HTMLElement {
|
|
|
273
273
|
firstUpdated(t) {
|
|
274
274
|
}
|
|
275
275
|
};
|
|
276
|
-
et.elementStyles = [], et.shadowRootOptions = { mode: "open" }, et[
|
|
276
|
+
et.elementStyles = [], et.shadowRootOptions = { mode: "open" }, et[ct("elementProperties")] = /* @__PURE__ */ new Map(), et[ct("finalized")] = /* @__PURE__ */ new Map(), Mt == null || Mt({ ReactiveElement: et }), (j.reactiveElementVersions ?? (j.reactiveElementVersions = [])).push("2.0.4");
|
|
277
277
|
/**
|
|
278
278
|
* @license
|
|
279
279
|
* Copyright 2017 Google LLC
|
|
280
280
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
281
281
|
*/
|
|
282
|
-
const
|
|
283
|
-
\f\r]`,
|
|
284
|
-
\f\r"'\`<>=]|("|')|))|$)`, "g"),
|
|
285
|
-
function
|
|
286
|
-
if (!
|
|
287
|
-
return
|
|
282
|
+
const dt = globalThis, kt = dt.trustedTypes, ie = kt ? kt.createPolicy("lit-html", { createHTML: (e) => e }) : void 0, Ae = "$lit$", V = `lit$${Math.random().toFixed(9).slice(2)}$`, Pe = "?" + V, ro = `<${Pe}>`, G = document, ut = () => G.createComment(""), ht = (e) => e === null || typeof e != "object" && typeof e != "function", Gt = Array.isArray, so = (e) => Gt(e) || typeof (e == null ? void 0 : e[Symbol.iterator]) == "function", Lt = `[
|
|
283
|
+
\f\r]`, nt = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, ae = /-->/g, ne = />/g, K = RegExp(`>|${Lt}(?:([^\\s"'>=/]+)(${Lt}*=${Lt}*(?:[^
|
|
284
|
+
\f\r"'\`<>=]|("|')|))|$)`, "g"), le = /'/g, ce = /"/g, Te = /^(?:script|style|textarea|title)$/i, io = (e) => (t, ...o) => ({ _$litType$: e, strings: t, values: o }), c = io(1), q = Symbol.for("lit-noChange"), u = Symbol.for("lit-nothing"), de = /* @__PURE__ */ new WeakMap(), W = G.createTreeWalker(G, 129);
|
|
285
|
+
function _e(e, t) {
|
|
286
|
+
if (!Gt(e) || !e.hasOwnProperty("raw")) throw Error("invalid template strings array");
|
|
287
|
+
return ie !== void 0 ? ie.createHTML(t) : t;
|
|
288
288
|
}
|
|
289
|
-
const
|
|
289
|
+
const ao = (e, t) => {
|
|
290
290
|
const o = e.length - 1, r = [];
|
|
291
|
-
let s, i = t === 2 ? "<svg>" : t === 3 ? "<math>" : "", a =
|
|
291
|
+
let s, i = t === 2 ? "<svg>" : t === 3 ? "<math>" : "", a = nt;
|
|
292
292
|
for (let l = 0; l < o; l++) {
|
|
293
293
|
const n = e[l];
|
|
294
294
|
let d, p, h = -1, b = 0;
|
|
295
|
-
for (; b < n.length && (a.lastIndex = b, p = a.exec(n), p !== null); ) b = a.lastIndex, a ===
|
|
296
|
-
const
|
|
297
|
-
i += a ===
|
|
295
|
+
for (; b < n.length && (a.lastIndex = b, p = a.exec(n), p !== null); ) b = a.lastIndex, a === nt ? p[1] === "!--" ? a = ae : p[1] !== void 0 ? a = ne : p[2] !== void 0 ? (Te.test(p[2]) && (s = RegExp("</" + p[2], "g")), a = K) : p[3] !== void 0 && (a = K) : a === K ? p[0] === ">" ? (a = s ?? nt, h = -1) : p[1] === void 0 ? h = -2 : (h = a.lastIndex - p[2].length, d = p[1], a = p[3] === void 0 ? K : p[3] === '"' ? ce : le) : a === ce || a === le ? a = K : a === ae || a === ne ? a = nt : (a = K, s = void 0);
|
|
296
|
+
const x = a === K && e[l + 1].startsWith("/>") ? " " : "";
|
|
297
|
+
i += a === nt ? n + ro : h >= 0 ? (r.push(d), n.slice(0, h) + Ae + n.slice(h) + V + x) : n + V + (h === -2 ? l : x);
|
|
298
298
|
}
|
|
299
|
-
return [
|
|
299
|
+
return [_e(e, i + (e[o] || "<?>") + (t === 2 ? "</svg>" : t === 3 ? "</math>" : "")), r];
|
|
300
300
|
};
|
|
301
|
-
let
|
|
301
|
+
let Ft = class Oe {
|
|
302
302
|
constructor({ strings: t, _$litType$: o }, r) {
|
|
303
303
|
let s;
|
|
304
304
|
this.parts = [];
|
|
305
305
|
let i = 0, a = 0;
|
|
306
|
-
const l = t.length - 1, n = this.parts, [d, p] =
|
|
307
|
-
if (this.el =
|
|
306
|
+
const l = t.length - 1, n = this.parts, [d, p] = ao(t, o);
|
|
307
|
+
if (this.el = Oe.createElement(d, r), W.currentNode = this.el.content, o === 2 || o === 3) {
|
|
308
308
|
const h = this.el.content.firstChild;
|
|
309
309
|
h.replaceWith(...h.childNodes);
|
|
310
310
|
}
|
|
311
311
|
for (; (s = W.nextNode()) !== null && n.length < l; ) {
|
|
312
312
|
if (s.nodeType === 1) {
|
|
313
|
-
if (s.hasAttributes()) for (const h of s.getAttributeNames()) if (h.endsWith(
|
|
314
|
-
const b = p[a++],
|
|
315
|
-
n.push({ type: 1, index: i, name: E[2], strings:
|
|
313
|
+
if (s.hasAttributes()) for (const h of s.getAttributeNames()) if (h.endsWith(Ae)) {
|
|
314
|
+
const b = p[a++], x = s.getAttribute(h).split(V), E = /([.?@])?(.*)/.exec(b);
|
|
315
|
+
n.push({ type: 1, index: i, name: E[2], strings: x, ctor: E[1] === "." ? lo : E[1] === "?" ? co : E[1] === "@" ? po : Tt }), s.removeAttribute(h);
|
|
316
316
|
} else h.startsWith(V) && (n.push({ type: 6, index: i }), s.removeAttribute(h));
|
|
317
|
-
if (
|
|
317
|
+
if (Te.test(s.tagName)) {
|
|
318
318
|
const h = s.textContent.split(V), b = h.length - 1;
|
|
319
319
|
if (b > 0) {
|
|
320
|
-
s.textContent =
|
|
321
|
-
for (let
|
|
322
|
-
s.append(h[b],
|
|
320
|
+
s.textContent = kt ? kt.emptyScript : "";
|
|
321
|
+
for (let x = 0; x < b; x++) s.append(h[x], ut()), W.nextNode(), n.push({ type: 2, index: ++i });
|
|
322
|
+
s.append(h[b], ut());
|
|
323
323
|
}
|
|
324
324
|
}
|
|
325
|
-
} else if (s.nodeType === 8) if (s.data ===
|
|
325
|
+
} else if (s.nodeType === 8) if (s.data === Pe) n.push({ type: 2, index: i });
|
|
326
326
|
else {
|
|
327
327
|
let h = -1;
|
|
328
328
|
for (; (h = s.data.indexOf(V, h + 1)) !== -1; ) n.push({ type: 7, index: i }), h += V.length - 1;
|
|
@@ -339,10 +339,10 @@ function rt(e, t, o = e, r) {
|
|
|
339
339
|
var a, l;
|
|
340
340
|
if (t === q) return t;
|
|
341
341
|
let s = r !== void 0 ? (a = o._$Co) == null ? void 0 : a[r] : o._$Cl;
|
|
342
|
-
const i =
|
|
342
|
+
const i = ht(t) ? void 0 : t._$litDirective$;
|
|
343
343
|
return (s == null ? void 0 : s.constructor) !== i && ((l = s == null ? void 0 : s._$AO) == null || l.call(s, !1), i === void 0 ? s = void 0 : (s = new i(e), s._$AT(e, o, r)), r !== void 0 ? (o._$Co ?? (o._$Co = []))[r] = s : o._$Cl = s), s !== void 0 && (t = rt(e, s._$AS(e, t.values), s, r)), t;
|
|
344
344
|
}
|
|
345
|
-
let
|
|
345
|
+
let no = class {
|
|
346
346
|
constructor(t, o) {
|
|
347
347
|
this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = o;
|
|
348
348
|
}
|
|
@@ -359,7 +359,7 @@ let ao = class {
|
|
|
359
359
|
for (; n !== void 0; ) {
|
|
360
360
|
if (a === n.index) {
|
|
361
361
|
let d;
|
|
362
|
-
n.type === 2 ? d = new
|
|
362
|
+
n.type === 2 ? d = new ft(i, i.nextSibling, this, t) : n.type === 1 ? d = new n.ctor(i, n.name, n.strings, this, t) : n.type === 6 && (d = new uo(i, this, t)), this._$AV.push(d), n = r[++l];
|
|
363
363
|
}
|
|
364
364
|
a !== (n == null ? void 0 : n.index) && (i = W.nextNode(), a++);
|
|
365
365
|
}
|
|
@@ -370,7 +370,7 @@ let ao = class {
|
|
|
370
370
|
for (const r of this._$AV) r !== void 0 && (r.strings !== void 0 ? (r._$AI(t, r, o), o += r.strings.length - 2) : r._$AI(t[o])), o++;
|
|
371
371
|
}
|
|
372
372
|
};
|
|
373
|
-
class
|
|
373
|
+
class ft {
|
|
374
374
|
get _$AU() {
|
|
375
375
|
var t;
|
|
376
376
|
return ((t = this._$AM) == null ? void 0 : t._$AU) ?? this._$Cv;
|
|
@@ -390,7 +390,7 @@ class ht {
|
|
|
390
390
|
return this._$AB;
|
|
391
391
|
}
|
|
392
392
|
_$AI(t, o = this) {
|
|
393
|
-
t = rt(this, t, o),
|
|
393
|
+
t = rt(this, t, o), ht(t) ? t === u || t == null || t === "" ? (this._$AH !== u && this._$AR(), this._$AH = u) : t !== this._$AH && t !== q && this._(t) : t._$litType$ !== void 0 ? this.$(t) : t.nodeType !== void 0 ? this.T(t) : so(t) ? this.k(t) : this._(t);
|
|
394
394
|
}
|
|
395
395
|
O(t) {
|
|
396
396
|
return this._$AA.parentNode.insertBefore(t, this._$AB);
|
|
@@ -399,26 +399,26 @@ class ht {
|
|
|
399
399
|
this._$AH !== t && (this._$AR(), this._$AH = this.O(t));
|
|
400
400
|
}
|
|
401
401
|
_(t) {
|
|
402
|
-
this._$AH !== u &&
|
|
402
|
+
this._$AH !== u && ht(this._$AH) ? this._$AA.nextSibling.data = t : this.T(G.createTextNode(t)), this._$AH = t;
|
|
403
403
|
}
|
|
404
404
|
$(t) {
|
|
405
405
|
var i;
|
|
406
|
-
const { values: o, _$litType$: r } = t, s = typeof r == "number" ? this._$AC(t) : (r.el === void 0 && (r.el =
|
|
406
|
+
const { values: o, _$litType$: r } = t, s = typeof r == "number" ? this._$AC(t) : (r.el === void 0 && (r.el = Ft.createElement(_e(r.h, r.h[0]), this.options)), r);
|
|
407
407
|
if (((i = this._$AH) == null ? void 0 : i._$AD) === s) this._$AH.p(o);
|
|
408
408
|
else {
|
|
409
|
-
const a = new
|
|
409
|
+
const a = new no(s, this), l = a.u(this.options);
|
|
410
410
|
a.p(o), this.T(l), this._$AH = a;
|
|
411
411
|
}
|
|
412
412
|
}
|
|
413
413
|
_$AC(t) {
|
|
414
|
-
let o =
|
|
415
|
-
return o === void 0 &&
|
|
414
|
+
let o = de.get(t.strings);
|
|
415
|
+
return o === void 0 && de.set(t.strings, o = new Ft(t)), o;
|
|
416
416
|
}
|
|
417
417
|
k(t) {
|
|
418
|
-
|
|
418
|
+
Gt(this._$AH) || (this._$AH = [], this._$AR());
|
|
419
419
|
const o = this._$AH;
|
|
420
420
|
let r, s = 0;
|
|
421
|
-
for (const i of t) s === o.length ? o.push(r = new
|
|
421
|
+
for (const i of t) s === o.length ? o.push(r = new ft(this.O(ut()), this.O(ut()), this, this.options)) : r = o[s], r._$AI(i), s++;
|
|
422
422
|
s < o.length && (this._$AR(r && r._$AB.nextSibling, s), o.length = s);
|
|
423
423
|
}
|
|
424
424
|
_$AR(t = this._$AA.nextSibling, o) {
|
|
@@ -433,7 +433,7 @@ class ht {
|
|
|
433
433
|
this._$AM === void 0 && (this._$Cv = t, (o = this._$AP) == null || o.call(this, t));
|
|
434
434
|
}
|
|
435
435
|
}
|
|
436
|
-
class
|
|
436
|
+
class Tt {
|
|
437
437
|
get tagName() {
|
|
438
438
|
return this.element.tagName;
|
|
439
439
|
}
|
|
@@ -446,11 +446,11 @@ class At {
|
|
|
446
446
|
_$AI(t, o = this, r, s) {
|
|
447
447
|
const i = this.strings;
|
|
448
448
|
let a = !1;
|
|
449
|
-
if (i === void 0) t = rt(this, t, o, 0), a = !
|
|
449
|
+
if (i === void 0) t = rt(this, t, o, 0), a = !ht(t) || t !== this._$AH && t !== q, a && (this._$AH = t);
|
|
450
450
|
else {
|
|
451
451
|
const l = t;
|
|
452
452
|
let n, d;
|
|
453
|
-
for (t = i[0], n = 0; n < i.length - 1; n++) d = rt(this, l[r + n], o, n), d === q && (d = this._$AH[n]), a || (a = !
|
|
453
|
+
for (t = i[0], n = 0; n < i.length - 1; n++) d = rt(this, l[r + n], o, n), d === q && (d = this._$AH[n]), a || (a = !ht(d) || d !== this._$AH[n]), d === u ? t = u : t !== u && (t += (d ?? "") + i[n + 1]), this._$AH[n] = d;
|
|
454
454
|
}
|
|
455
455
|
a && !s && this.j(t);
|
|
456
456
|
}
|
|
@@ -458,7 +458,7 @@ class At {
|
|
|
458
458
|
t === u ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
|
|
459
459
|
}
|
|
460
460
|
}
|
|
461
|
-
let
|
|
461
|
+
let lo = class extends Tt {
|
|
462
462
|
constructor() {
|
|
463
463
|
super(...arguments), this.type = 3;
|
|
464
464
|
}
|
|
@@ -466,7 +466,7 @@ let no = class extends At {
|
|
|
466
466
|
this.element[this.name] = t === u ? void 0 : t;
|
|
467
467
|
}
|
|
468
468
|
};
|
|
469
|
-
class
|
|
469
|
+
class co extends Tt {
|
|
470
470
|
constructor() {
|
|
471
471
|
super(...arguments), this.type = 4;
|
|
472
472
|
}
|
|
@@ -474,7 +474,7 @@ class lo extends At {
|
|
|
474
474
|
this.element.toggleAttribute(this.name, !!t && t !== u);
|
|
475
475
|
}
|
|
476
476
|
}
|
|
477
|
-
class
|
|
477
|
+
class po extends Tt {
|
|
478
478
|
constructor(t, o, r, s, i) {
|
|
479
479
|
super(t, o, r, s, i), this.type = 5;
|
|
480
480
|
}
|
|
@@ -488,7 +488,7 @@ class co extends At {
|
|
|
488
488
|
typeof this._$AH == "function" ? this._$AH.call(((o = this.options) == null ? void 0 : o.host) ?? this.element, t) : this._$AH.handleEvent(t);
|
|
489
489
|
}
|
|
490
490
|
}
|
|
491
|
-
class
|
|
491
|
+
class uo {
|
|
492
492
|
constructor(t, o, r) {
|
|
493
493
|
this.element = t, this.type = 6, this._$AN = void 0, this._$AM = o, this.options = r;
|
|
494
494
|
}
|
|
@@ -499,14 +499,14 @@ class po {
|
|
|
499
499
|
rt(this, t);
|
|
500
500
|
}
|
|
501
501
|
}
|
|
502
|
-
const
|
|
503
|
-
|
|
504
|
-
const
|
|
502
|
+
const Nt = dt.litHtmlPolyfillSupport;
|
|
503
|
+
Nt == null || Nt(Ft, ft), (dt.litHtmlVersions ?? (dt.litHtmlVersions = [])).push("3.2.1");
|
|
504
|
+
const ho = (e, t, o) => {
|
|
505
505
|
const r = (o == null ? void 0 : o.renderBefore) ?? t;
|
|
506
506
|
let s = r._$litPart$;
|
|
507
507
|
if (s === void 0) {
|
|
508
508
|
const i = (o == null ? void 0 : o.renderBefore) ?? null;
|
|
509
|
-
r._$litPart$ = s = new
|
|
509
|
+
r._$litPart$ = s = new ft(t.insertBefore(ut(), i), i, void 0, o ?? {});
|
|
510
510
|
}
|
|
511
511
|
return s._$AI(e), s;
|
|
512
512
|
};
|
|
@@ -526,7 +526,7 @@ let N = class extends et {
|
|
|
526
526
|
}
|
|
527
527
|
update(t) {
|
|
528
528
|
const o = this.render();
|
|
529
|
-
this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do =
|
|
529
|
+
this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = ho(o, this.renderRoot, this.renderOptions);
|
|
530
530
|
}
|
|
531
531
|
connectedCallback() {
|
|
532
532
|
var t;
|
|
@@ -540,10 +540,10 @@ let N = class extends et {
|
|
|
540
540
|
return q;
|
|
541
541
|
}
|
|
542
542
|
};
|
|
543
|
-
var
|
|
544
|
-
N._$litElement$ = !0, N.finalized = !0, (
|
|
545
|
-
const
|
|
546
|
-
|
|
543
|
+
var ke;
|
|
544
|
+
N._$litElement$ = !0, N.finalized = !0, (ke = globalThis.litElementHydrateSupport) == null || ke.call(globalThis, { LitElement: N });
|
|
545
|
+
const Dt = globalThis.litElementPolyfillSupport;
|
|
546
|
+
Dt == null || Dt({ LitElement: N });
|
|
547
547
|
(globalThis.litElementVersions ?? (globalThis.litElementVersions = [])).push("4.1.1");
|
|
548
548
|
/**
|
|
549
549
|
* @license
|
|
@@ -560,7 +560,7 @@ const F = (e) => (t, o) => {
|
|
|
560
560
|
* Copyright 2017 Google LLC
|
|
561
561
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
562
562
|
*/
|
|
563
|
-
const
|
|
563
|
+
const fo = { attribute: !0, type: String, converter: Ct, reflect: !1, hasChanged: Wt }, go = (e = fo, t, o) => {
|
|
564
564
|
const { kind: r, metadata: s } = o;
|
|
565
565
|
let i = globalThis.litPropertyMetadata.get(s);
|
|
566
566
|
if (i === void 0 && globalThis.litPropertyMetadata.set(s, i = /* @__PURE__ */ new Map()), i.set(o.name, e), r === "accessor") {
|
|
@@ -582,7 +582,7 @@ const ho = { attribute: !0, type: String, converter: $t, reflect: !1, hasChanged
|
|
|
582
582
|
throw Error("Unsupported decorator location: " + r);
|
|
583
583
|
};
|
|
584
584
|
function f(e) {
|
|
585
|
-
return (t, o) => typeof o == "object" ?
|
|
585
|
+
return (t, o) => typeof o == "object" ? go(e, t, o) : ((r, s, i) => {
|
|
586
586
|
const a = s.hasOwnProperty(i);
|
|
587
587
|
return s.constructor.createProperty(i, a ? { ...r, wrapped: !0 } : r), a ? Object.getOwnPropertyDescriptor(s, i) : void 0;
|
|
588
588
|
})(e, t, o);
|
|
@@ -600,25 +600,25 @@ function k(e) {
|
|
|
600
600
|
* Copyright 2017 Google LLC
|
|
601
601
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
602
602
|
*/
|
|
603
|
-
const
|
|
603
|
+
const mo = (e, t, o) => (o.configurable = !0, o.enumerable = !0, Reflect.decorate && typeof t != "object" && Object.defineProperty(e, t, o), o);
|
|
604
604
|
/**
|
|
605
605
|
* @license
|
|
606
606
|
* Copyright 2017 Google LLC
|
|
607
607
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
608
608
|
*/
|
|
609
|
-
function
|
|
609
|
+
function gt(e, t) {
|
|
610
610
|
return (o, r, s) => {
|
|
611
611
|
const i = (a) => {
|
|
612
612
|
var l;
|
|
613
613
|
return ((l = a.renderRoot) == null ? void 0 : l.querySelector(e)) ?? null;
|
|
614
614
|
};
|
|
615
|
-
return
|
|
615
|
+
return mo(o, r, { get() {
|
|
616
616
|
return i(this);
|
|
617
617
|
} });
|
|
618
618
|
};
|
|
619
619
|
}
|
|
620
620
|
var $ = /* @__PURE__ */ ((e) => (e.reaction = "reaction", e.stars = "stars", e.poll = "poll", e.text = "text", e.nps = "nps", e))($ || {});
|
|
621
|
-
const
|
|
621
|
+
const Zt = c`
|
|
622
622
|
<svg
|
|
623
623
|
xmlns="http://www.w3.org/2000/svg"
|
|
624
624
|
height="24px"
|
|
@@ -628,7 +628,7 @@ const Gt = c`
|
|
|
628
628
|
>
|
|
629
629
|
<path d="M640-160v-280h160v280H640Zm-240 0v-640h160v640H400Zm-240 0v-440h160v440H160Z" />
|
|
630
630
|
</svg>
|
|
631
|
-
`,
|
|
631
|
+
`, Xt = c`
|
|
632
632
|
<svg
|
|
633
633
|
xmlns="http://www.w3.org/2000/svg"
|
|
634
634
|
height="24px"
|
|
@@ -640,7 +640,7 @@ const Gt = c`
|
|
|
640
640
|
d="M160-160v-440h160v440H160Zm240 0v-400l160 160v240H400Zm160-354L400-674v-126h160v286Zm240 240L640-434v-6h160v166Zm-9 219L55-791l57-57 736 736-57 57Z"
|
|
641
641
|
/>
|
|
642
642
|
</svg>
|
|
643
|
-
`,
|
|
643
|
+
`, Et = c`
|
|
644
644
|
<svg
|
|
645
645
|
xmlns="http://www.w3.org/2000/svg"
|
|
646
646
|
height="24px"
|
|
@@ -652,7 +652,7 @@ const Gt = c`
|
|
|
652
652
|
d="M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z"
|
|
653
653
|
/>
|
|
654
654
|
</svg>
|
|
655
|
-
`,
|
|
655
|
+
`, _t = c`
|
|
656
656
|
<svg
|
|
657
657
|
xmlns="http://www.w3.org/2000/svg"
|
|
658
658
|
width="16"
|
|
@@ -664,7 +664,7 @@ const Gt = c`
|
|
|
664
664
|
d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708"
|
|
665
665
|
/>
|
|
666
666
|
</svg>
|
|
667
|
-
`,
|
|
667
|
+
`, Ie = c`
|
|
668
668
|
<svg
|
|
669
669
|
xmlns="http://www.w3.org/2000/svg"
|
|
670
670
|
height="24px"
|
|
@@ -675,164 +675,164 @@ const Gt = c`
|
|
|
675
675
|
<path d="M440-440H200v-80h240v-240h80v240h240v80H520v240h-80v-240Z" />
|
|
676
676
|
</svg>
|
|
677
677
|
`;
|
|
678
|
-
var
|
|
678
|
+
var vo = { grad: 0.9, turn: 360, rad: 360 / (2 * Math.PI) }, M = function(e) {
|
|
679
679
|
return typeof e == "string" ? e.length > 0 : typeof e == "number";
|
|
680
680
|
}, S = function(e, t, o) {
|
|
681
681
|
return t === void 0 && (t = 0), o === void 0 && (o = Math.pow(10, t)), Math.round(o * e) / o + 0;
|
|
682
|
-
},
|
|
682
|
+
}, T = function(e, t, o) {
|
|
683
683
|
return t === void 0 && (t = 0), o === void 0 && (o = 1), e > o ? o : e > t ? e : t;
|
|
684
|
-
},
|
|
684
|
+
}, ze = function(e) {
|
|
685
685
|
return (e = isFinite(e) ? e % 360 : 0) > 0 ? e : e + 360;
|
|
686
|
-
},
|
|
687
|
-
return { r:
|
|
688
|
-
},
|
|
686
|
+
}, pe = function(e) {
|
|
687
|
+
return { r: T(e.r, 0, 255), g: T(e.g, 0, 255), b: T(e.b, 0, 255), a: T(e.a) };
|
|
688
|
+
}, Rt = function(e) {
|
|
689
689
|
return { r: S(e.r), g: S(e.g), b: S(e.b), a: S(e.a, 3) };
|
|
690
|
-
},
|
|
690
|
+
}, bo = /^#([0-9a-f]{3,8})$/i, yt = function(e) {
|
|
691
691
|
var t = e.toString(16);
|
|
692
692
|
return t.length < 2 ? "0" + t : t;
|
|
693
|
-
},
|
|
693
|
+
}, Me = function(e) {
|
|
694
694
|
var t = e.r, o = e.g, r = e.b, s = e.a, i = Math.max(t, o, r), a = i - Math.min(t, o, r), l = a ? i === t ? (o - r) / a : i === o ? 2 + (r - t) / a : 4 + (t - o) / a : 0;
|
|
695
695
|
return { h: 60 * (l < 0 ? l + 6 : l), s: i ? a / i * 100 : 0, v: i / 255 * 100, a: s };
|
|
696
|
-
},
|
|
696
|
+
}, Le = function(e) {
|
|
697
697
|
var t = e.h, o = e.s, r = e.v, s = e.a;
|
|
698
698
|
t = t / 360 * 6, o /= 100, r /= 100;
|
|
699
699
|
var i = Math.floor(t), a = r * (1 - o), l = r * (1 - (t - i) * o), n = r * (1 - (1 - t + i) * o), d = i % 6;
|
|
700
700
|
return { r: 255 * [r, l, a, a, n, r][d], g: 255 * [n, r, r, l, a, a][d], b: 255 * [a, a, n, r, r, l][d], a: s };
|
|
701
|
-
}, pe = function(e) {
|
|
702
|
-
return { h: Ie(e.h), s: A(e.s, 0, 100), l: A(e.l, 0, 100), a: A(e.a) };
|
|
703
701
|
}, ue = function(e) {
|
|
704
|
-
return { h:
|
|
702
|
+
return { h: ze(e.h), s: T(e.s, 0, 100), l: T(e.l, 0, 100), a: T(e.a) };
|
|
705
703
|
}, he = function(e) {
|
|
706
|
-
return
|
|
704
|
+
return { h: S(e.h), s: S(e.s), l: S(e.l), a: S(e.a, 3) };
|
|
705
|
+
}, fe = function(e) {
|
|
706
|
+
return Le((o = (t = e).s, { h: t.h, s: (o *= ((r = t.l) < 50 ? r : 100 - r) / 100) > 0 ? 2 * o / (r + o) * 100 : 0, v: r + o, a: t.a }));
|
|
707
707
|
var t, o, r;
|
|
708
|
-
},
|
|
709
|
-
return { h: (t =
|
|
708
|
+
}, pt = function(e) {
|
|
709
|
+
return { h: (t = Me(e)).h, s: (s = (200 - (o = t.s)) * (r = t.v) / 100) > 0 && s < 200 ? o * r / 100 / (s <= 100 ? s : 200 - s) * 100 : 0, l: s / 2, a: t.a };
|
|
710
710
|
var t, o, r, s;
|
|
711
|
-
},
|
|
712
|
-
var t =
|
|
711
|
+
}, yo = /^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i, xo = /^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i, wo = /^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i, $o = /^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i, ge = { string: [[function(e) {
|
|
712
|
+
var t = bo.exec(e);
|
|
713
713
|
return t ? (e = t[1]).length <= 4 ? { r: parseInt(e[0] + e[0], 16), g: parseInt(e[1] + e[1], 16), b: parseInt(e[2] + e[2], 16), a: e.length === 4 ? S(parseInt(e[3] + e[3], 16) / 255, 2) : 1 } : e.length === 6 || e.length === 8 ? { r: parseInt(e.substr(0, 2), 16), g: parseInt(e.substr(2, 2), 16), b: parseInt(e.substr(4, 2), 16), a: e.length === 8 ? S(parseInt(e.substr(6, 2), 16) / 255, 2) : 1 } : null : null;
|
|
714
714
|
}, "hex"], [function(e) {
|
|
715
|
-
var t =
|
|
716
|
-
return t ? t[2] !== t[4] || t[4] !== t[6] ? null :
|
|
715
|
+
var t = wo.exec(e) || $o.exec(e);
|
|
716
|
+
return t ? t[2] !== t[4] || t[4] !== t[6] ? null : pe({ r: Number(t[1]) / (t[2] ? 100 / 255 : 1), g: Number(t[3]) / (t[4] ? 100 / 255 : 1), b: Number(t[5]) / (t[6] ? 100 / 255 : 1), a: t[7] === void 0 ? 1 : Number(t[7]) / (t[8] ? 100 : 1) }) : null;
|
|
717
717
|
}, "rgb"], [function(e) {
|
|
718
|
-
var t =
|
|
718
|
+
var t = yo.exec(e) || xo.exec(e);
|
|
719
719
|
if (!t) return null;
|
|
720
|
-
var o, r, s =
|
|
721
|
-
return
|
|
720
|
+
var o, r, s = ue({ h: (o = t[1], r = t[2], r === void 0 && (r = "deg"), Number(o) * (vo[r] || 1)), s: Number(t[3]), l: Number(t[4]), a: t[5] === void 0 ? 1 : Number(t[5]) / (t[6] ? 100 : 1) });
|
|
721
|
+
return fe(s);
|
|
722
722
|
}, "hsl"]], object: [[function(e) {
|
|
723
723
|
var t = e.r, o = e.g, r = e.b, s = e.a, i = s === void 0 ? 1 : s;
|
|
724
|
-
return M(t) && M(o) && M(r) ?
|
|
724
|
+
return M(t) && M(o) && M(r) ? pe({ r: Number(t), g: Number(o), b: Number(r), a: Number(i) }) : null;
|
|
725
725
|
}, "rgb"], [function(e) {
|
|
726
726
|
var t = e.h, o = e.s, r = e.l, s = e.a, i = s === void 0 ? 1 : s;
|
|
727
727
|
if (!M(t) || !M(o) || !M(r)) return null;
|
|
728
|
-
var a =
|
|
729
|
-
return
|
|
728
|
+
var a = ue({ h: Number(t), s: Number(o), l: Number(r), a: Number(i) });
|
|
729
|
+
return fe(a);
|
|
730
730
|
}, "hsl"], [function(e) {
|
|
731
731
|
var t = e.h, o = e.s, r = e.v, s = e.a, i = s === void 0 ? 1 : s;
|
|
732
732
|
if (!M(t) || !M(o) || !M(r)) return null;
|
|
733
733
|
var a = function(l) {
|
|
734
|
-
return { h:
|
|
734
|
+
return { h: ze(l.h), s: T(l.s, 0, 100), v: T(l.v, 0, 100), a: T(l.a) };
|
|
735
735
|
}({ h: Number(t), s: Number(o), v: Number(r), a: Number(i) });
|
|
736
|
-
return
|
|
737
|
-
}, "hsv"]] },
|
|
736
|
+
return Le(a);
|
|
737
|
+
}, "hsv"]] }, me = function(e, t) {
|
|
738
738
|
for (var o = 0; o < t.length; o++) {
|
|
739
739
|
var r = t[o][0](e);
|
|
740
740
|
if (r) return [r, t[o][1]];
|
|
741
741
|
}
|
|
742
742
|
return [null, void 0];
|
|
743
|
-
},
|
|
744
|
-
return typeof e == "string" ?
|
|
745
|
-
},
|
|
746
|
-
var o =
|
|
747
|
-
return { h: o.h, s:
|
|
748
|
-
},
|
|
743
|
+
}, So = function(e) {
|
|
744
|
+
return typeof e == "string" ? me(e.trim(), ge.string) : typeof e == "object" && e !== null ? me(e, ge.object) : [null, void 0];
|
|
745
|
+
}, Bt = function(e, t) {
|
|
746
|
+
var o = pt(e);
|
|
747
|
+
return { h: o.h, s: T(o.s + 100 * t, 0, 100), l: o.l, a: o.a };
|
|
748
|
+
}, Vt = function(e) {
|
|
749
749
|
return (299 * e.r + 587 * e.g + 114 * e.b) / 1e3 / 255;
|
|
750
|
-
},
|
|
751
|
-
var o =
|
|
752
|
-
return { h: o.h, s: o.s, l:
|
|
753
|
-
},
|
|
750
|
+
}, ve = function(e, t) {
|
|
751
|
+
var o = pt(e);
|
|
752
|
+
return { h: o.h, s: o.s, l: T(o.l + 100 * t, 0, 100), a: o.a };
|
|
753
|
+
}, be = function() {
|
|
754
754
|
function e(t) {
|
|
755
|
-
this.parsed =
|
|
755
|
+
this.parsed = So(t)[0], this.rgba = this.parsed || { r: 0, g: 0, b: 0, a: 1 };
|
|
756
756
|
}
|
|
757
757
|
return e.prototype.isValid = function() {
|
|
758
758
|
return this.parsed !== null;
|
|
759
759
|
}, e.prototype.brightness = function() {
|
|
760
|
-
return S(
|
|
760
|
+
return S(Vt(this.rgba), 2);
|
|
761
761
|
}, e.prototype.isDark = function() {
|
|
762
|
-
return
|
|
762
|
+
return Vt(this.rgba) < 0.5;
|
|
763
763
|
}, e.prototype.isLight = function() {
|
|
764
|
-
return
|
|
764
|
+
return Vt(this.rgba) >= 0.5;
|
|
765
765
|
}, e.prototype.toHex = function() {
|
|
766
|
-
return t =
|
|
766
|
+
return t = Rt(this.rgba), o = t.r, r = t.g, s = t.b, a = (i = t.a) < 1 ? yt(S(255 * i)) : "", "#" + yt(o) + yt(r) + yt(s) + a;
|
|
767
767
|
var t, o, r, s, i, a;
|
|
768
768
|
}, e.prototype.toRgb = function() {
|
|
769
|
-
return
|
|
769
|
+
return Rt(this.rgba);
|
|
770
770
|
}, e.prototype.toRgbString = function() {
|
|
771
|
-
return t =
|
|
771
|
+
return t = Rt(this.rgba), o = t.r, r = t.g, s = t.b, (i = t.a) < 1 ? "rgba(" + o + ", " + r + ", " + s + ", " + i + ")" : "rgb(" + o + ", " + r + ", " + s + ")";
|
|
772
772
|
var t, o, r, s, i;
|
|
773
773
|
}, e.prototype.toHsl = function() {
|
|
774
|
-
return
|
|
774
|
+
return he(pt(this.rgba));
|
|
775
775
|
}, e.prototype.toHslString = function() {
|
|
776
|
-
return t =
|
|
776
|
+
return t = he(pt(this.rgba)), o = t.h, r = t.s, s = t.l, (i = t.a) < 1 ? "hsla(" + o + ", " + r + "%, " + s + "%, " + i + ")" : "hsl(" + o + ", " + r + "%, " + s + "%)";
|
|
777
777
|
var t, o, r, s, i;
|
|
778
778
|
}, e.prototype.toHsv = function() {
|
|
779
|
-
return t =
|
|
779
|
+
return t = Me(this.rgba), { h: S(t.h), s: S(t.s), v: S(t.v), a: S(t.a, 3) };
|
|
780
780
|
var t;
|
|
781
781
|
}, e.prototype.invert = function() {
|
|
782
|
-
return
|
|
782
|
+
return _({ r: 255 - (t = this.rgba).r, g: 255 - t.g, b: 255 - t.b, a: t.a });
|
|
783
783
|
var t;
|
|
784
784
|
}, e.prototype.saturate = function(t) {
|
|
785
|
-
return t === void 0 && (t = 0.1),
|
|
785
|
+
return t === void 0 && (t = 0.1), _(Bt(this.rgba, t));
|
|
786
786
|
}, e.prototype.desaturate = function(t) {
|
|
787
|
-
return t === void 0 && (t = 0.1),
|
|
787
|
+
return t === void 0 && (t = 0.1), _(Bt(this.rgba, -t));
|
|
788
788
|
}, e.prototype.grayscale = function() {
|
|
789
|
-
return
|
|
789
|
+
return _(Bt(this.rgba, -1));
|
|
790
790
|
}, e.prototype.lighten = function(t) {
|
|
791
|
-
return t === void 0 && (t = 0.1),
|
|
791
|
+
return t === void 0 && (t = 0.1), _(ve(this.rgba, t));
|
|
792
792
|
}, e.prototype.darken = function(t) {
|
|
793
|
-
return t === void 0 && (t = 0.1),
|
|
793
|
+
return t === void 0 && (t = 0.1), _(ve(this.rgba, -t));
|
|
794
794
|
}, e.prototype.rotate = function(t) {
|
|
795
795
|
return t === void 0 && (t = 15), this.hue(this.hue() + t);
|
|
796
796
|
}, e.prototype.alpha = function(t) {
|
|
797
|
-
return typeof t == "number" ?
|
|
797
|
+
return typeof t == "number" ? _({ r: (o = this.rgba).r, g: o.g, b: o.b, a: t }) : S(this.rgba.a, 3);
|
|
798
798
|
var o;
|
|
799
799
|
}, e.prototype.hue = function(t) {
|
|
800
|
-
var o =
|
|
801
|
-
return typeof t == "number" ?
|
|
800
|
+
var o = pt(this.rgba);
|
|
801
|
+
return typeof t == "number" ? _({ h: t, s: o.s, l: o.l, a: o.a }) : S(o.h);
|
|
802
802
|
}, e.prototype.isEqual = function(t) {
|
|
803
|
-
return this.toHex() ===
|
|
803
|
+
return this.toHex() === _(t).toHex();
|
|
804
804
|
}, e;
|
|
805
|
-
}(),
|
|
806
|
-
return e instanceof
|
|
805
|
+
}(), _ = function(e) {
|
|
806
|
+
return e instanceof be ? e : new be(e);
|
|
807
807
|
};
|
|
808
|
-
const
|
|
809
|
-
function
|
|
810
|
-
if (
|
|
808
|
+
const Co = typeof process < "u" && (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "test");
|
|
809
|
+
function Ut() {
|
|
810
|
+
if (Co) return !0;
|
|
811
811
|
try {
|
|
812
812
|
return typeof localStorage < "u" && localStorage.getItem("pc-mode") === "development";
|
|
813
813
|
} catch {
|
|
814
814
|
return !1;
|
|
815
815
|
}
|
|
816
816
|
}
|
|
817
|
-
function
|
|
817
|
+
function ko(e) {
|
|
818
818
|
return {
|
|
819
819
|
debug: (t, ...o) => {
|
|
820
|
-
|
|
820
|
+
Ut() && console.debug(`[${e}]`, t, ...o);
|
|
821
821
|
},
|
|
822
822
|
info: (t, ...o) => {
|
|
823
|
-
|
|
823
|
+
Ut() && console.info(`[${e}]`, t, ...o);
|
|
824
824
|
},
|
|
825
825
|
warn: (t, ...o) => {
|
|
826
|
-
|
|
826
|
+
Ut() && console.warn(`[${e}]`, t, ...o);
|
|
827
827
|
},
|
|
828
828
|
error: (t, ...o) => {
|
|
829
829
|
console.error(`[${e}]`, t, ...o);
|
|
830
830
|
}
|
|
831
831
|
};
|
|
832
832
|
}
|
|
833
|
-
const g =
|
|
834
|
-
var
|
|
835
|
-
const
|
|
833
|
+
const g = ko("Pollcatch");
|
|
834
|
+
var Ne = /* @__PURE__ */ ((e) => (e[e.AA_NORMAL = 4.5] = "AA_NORMAL", e[e.AA_LARGE = 3] = "AA_LARGE", e[e.AAA_NORMAL = 7] = "AAA_NORMAL", e[e.AAA_LARGE = 4.5] = "AAA_LARGE", e))(Ne || {});
|
|
835
|
+
const Eo = {
|
|
836
836
|
black: "#000000",
|
|
837
837
|
white: "#ffffff",
|
|
838
838
|
red: "#ff0000",
|
|
@@ -849,20 +849,20 @@ const ko = {
|
|
|
849
849
|
teal: "#008080",
|
|
850
850
|
navy: "#000080"
|
|
851
851
|
};
|
|
852
|
-
function
|
|
852
|
+
function Ao(e) {
|
|
853
853
|
const t = e.toLowerCase().trim();
|
|
854
|
-
return
|
|
854
|
+
return Eo[t] || null;
|
|
855
855
|
}
|
|
856
|
-
function
|
|
857
|
-
const o =
|
|
856
|
+
function jt(e, t) {
|
|
857
|
+
const o = ye(e), r = ye(t), s = Math.max(o, r), i = Math.min(o, r);
|
|
858
858
|
return (s + 0.05) / (i + 0.05);
|
|
859
859
|
}
|
|
860
|
-
function
|
|
861
|
-
const t =
|
|
860
|
+
function ye(e) {
|
|
861
|
+
const t = To(e), o = t.r / 255, r = t.g / 255, s = t.b / 255, i = o <= 0.03928 ? o / 12.92 : Math.pow((o + 0.055) / 1.055, 2.4), a = r <= 0.03928 ? r / 12.92 : Math.pow((r + 0.055) / 1.055, 2.4), l = s <= 0.03928 ? s / 12.92 : Math.pow((s + 0.055) / 1.055, 2.4);
|
|
862
862
|
return 0.2126 * i + 0.7152 * a + 0.0722 * l;
|
|
863
863
|
}
|
|
864
|
-
function
|
|
865
|
-
if (!
|
|
864
|
+
function Po(e, t = {}) {
|
|
865
|
+
if (!_(e).isValid())
|
|
866
866
|
return g.warn(`Invalid color provided: ${e}`), "black";
|
|
867
867
|
const {
|
|
868
868
|
minContrast: r = 4.5,
|
|
@@ -875,15 +875,15 @@ function Ao(e, t = {}) {
|
|
|
875
875
|
} = t, l = s.map((p) => p === "black" ? "#000000" : p === "white" ? "#ffffff" : p === "light" ? i.light || "#f8f9fa" : p === "dark" ? i.dark || "#343a40" : p);
|
|
876
876
|
let n = a, d = 0;
|
|
877
877
|
for (const p of l) {
|
|
878
|
-
const h =
|
|
878
|
+
const h = jt(e, p);
|
|
879
879
|
h >= r && h > d && (d = h, n = p);
|
|
880
880
|
}
|
|
881
881
|
if (d === 0) {
|
|
882
|
-
const p =
|
|
882
|
+
const p = jt(e, a);
|
|
883
883
|
n = a, d = p;
|
|
884
884
|
for (const h of l) {
|
|
885
885
|
if (h === a) continue;
|
|
886
|
-
const b =
|
|
886
|
+
const b = jt(e, h);
|
|
887
887
|
b > d && (d = b, n = h);
|
|
888
888
|
}
|
|
889
889
|
g.warn(
|
|
@@ -892,14 +892,14 @@ function Ao(e, t = {}) {
|
|
|
892
892
|
}
|
|
893
893
|
return n;
|
|
894
894
|
}
|
|
895
|
-
function
|
|
896
|
-
const o =
|
|
895
|
+
function To(e) {
|
|
896
|
+
const o = Ao(e) || e, r = _(o);
|
|
897
897
|
if (!r.isValid())
|
|
898
898
|
return g.warn(`Invalid color provided: ${e}`), { r: 0, g: 0, b: 0 };
|
|
899
899
|
const { r: s, g: i, b: a } = r.toRgb();
|
|
900
900
|
return { r: s, g: i, b: a };
|
|
901
901
|
}
|
|
902
|
-
function
|
|
902
|
+
function I(e, t) {
|
|
903
903
|
const r = t ? {
|
|
904
904
|
left: "start",
|
|
905
905
|
right: "end",
|
|
@@ -911,7 +911,7 @@ function O(e, t) {
|
|
|
911
911
|
}[t] : void 0;
|
|
912
912
|
return e === "left" || e === "right" ? r || "center" : e === "top" || e === "bottom" ? r || "start" : r || "center";
|
|
913
913
|
}
|
|
914
|
-
function
|
|
914
|
+
function qt(e, t = "1rem", o = 1) {
|
|
915
915
|
if (!e) return t;
|
|
916
916
|
const r = {
|
|
917
917
|
xs: 0.7,
|
|
@@ -930,7 +930,7 @@ function jt(e, t = "1rem", o = 1) {
|
|
|
930
930
|
const l = parseFloat(i);
|
|
931
931
|
return isNaN(l) ? t : `${l}rem`;
|
|
932
932
|
}
|
|
933
|
-
function
|
|
933
|
+
function _o(e, t = "4px") {
|
|
934
934
|
if (!e) return t;
|
|
935
935
|
const o = {
|
|
936
936
|
xs: "2px",
|
|
@@ -961,7 +961,7 @@ function ot(e) {
|
|
|
961
961
|
}
|
|
962
962
|
return t;
|
|
963
963
|
}
|
|
964
|
-
function
|
|
964
|
+
function Oo(e, t, o) {
|
|
965
965
|
return ot({
|
|
966
966
|
role: "button",
|
|
967
967
|
ariaLabel: e,
|
|
@@ -969,7 +969,7 @@ function _o(e, t, o) {
|
|
|
969
969
|
ariaDisabled: o
|
|
970
970
|
});
|
|
971
971
|
}
|
|
972
|
-
function
|
|
972
|
+
function Io(e, t, o, r = !1) {
|
|
973
973
|
return ot({
|
|
974
974
|
role: r ? "radio" : "checkbox",
|
|
975
975
|
ariaLabel: e,
|
|
@@ -977,38 +977,38 @@ function Oo(e, t, o, r = !1) {
|
|
|
977
977
|
ariaDisabled: o
|
|
978
978
|
});
|
|
979
979
|
}
|
|
980
|
-
function
|
|
980
|
+
function Ht(e, t, o) {
|
|
981
981
|
typeof o == "boolean" ? e.setAttribute(t, o ? "true" : "false") : e.setAttribute(t, o);
|
|
982
982
|
}
|
|
983
|
-
function
|
|
983
|
+
function zo(e) {
|
|
984
984
|
if (typeof e != "string")
|
|
985
985
|
return !1;
|
|
986
986
|
const t = e.replace(/[<>"']/g, "").trim();
|
|
987
987
|
return /^(#[0-9a-fA-F]{3,8}|rgb\([^)]+\)|rgba\([^)]+\)|hsl\([^)]+\)|hsla\([^)]+\)|[a-zA-Z]+)$/.test(t);
|
|
988
988
|
}
|
|
989
989
|
function tt(e) {
|
|
990
|
-
return
|
|
990
|
+
return zo(e) ? e.replace(/[<>"']/g, "").trim() : (g.warn("Invalid color value:", e), "#000000");
|
|
991
991
|
}
|
|
992
|
-
function
|
|
992
|
+
function Mo(e) {
|
|
993
993
|
if (typeof e != "string")
|
|
994
994
|
return g.warn("Non-string value passed to sanitizeCSS:", typeof e), "";
|
|
995
995
|
let t = e;
|
|
996
996
|
return t = t.replace(/@import[^;]+;/gi, "").replace(/expression\s*\([^)]*\)/gi, "").replace(/javascript:\s*[^"'\s;]*/gi, "").replace(/url\s*\(\s*["']?data:(?!image\/[^;]+;base64,)[^"')]*["']?\s*\)/gi, "").replace(/-moz-binding\s*:[^;]+;/gi, "").replace(/behavior\s*:[^;]+;/gi, ""), t;
|
|
997
997
|
}
|
|
998
|
-
function
|
|
998
|
+
function Lo(e) {
|
|
999
999
|
return typeof e != "string" || !e.trim() ? "" : e.replace(
|
|
1000
1000
|
/([^{}:;]+):\s*([^;{}!]+)(\s*!important)?\s*(;|})/gi,
|
|
1001
1001
|
(t, o, r, s, i) => s ? t : `${o}: ${r.trim()} !important${i}`
|
|
1002
1002
|
);
|
|
1003
1003
|
}
|
|
1004
|
-
const
|
|
1005
|
-
function
|
|
1004
|
+
const No = "https://jpxwfjorwcsrqraorpbj.supabase.co/functions/v1/data", Do = "pc_session_id", Ro = 24 * 60 * 60 * 1e3;
|
|
1005
|
+
function xe() {
|
|
1006
1006
|
return typeof crypto < "u" && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : (g.warn("crypto.randomUUID not available, using fallback UUID generator"), "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(e) {
|
|
1007
1007
|
const t = Math.random() * 16 | 0;
|
|
1008
1008
|
return (e === "x" ? t : t & 3 | 8).toString(16);
|
|
1009
1009
|
}));
|
|
1010
1010
|
}
|
|
1011
|
-
function
|
|
1011
|
+
function Jt() {
|
|
1012
1012
|
const e = "test-local-storage";
|
|
1013
1013
|
try {
|
|
1014
1014
|
return localStorage.setItem(e, e), localStorage.removeItem(e), !0;
|
|
@@ -1016,7 +1016,7 @@ function Xt() {
|
|
|
1016
1016
|
return g.warn("localStorage not available, session ID will not persist"), !1;
|
|
1017
1017
|
}
|
|
1018
1018
|
}
|
|
1019
|
-
function
|
|
1019
|
+
function De(e) {
|
|
1020
1020
|
try {
|
|
1021
1021
|
const t = localStorage.getItem(e);
|
|
1022
1022
|
return t ? JSON.parse(t) : void 0;
|
|
@@ -1025,34 +1025,34 @@ function Ne(e) {
|
|
|
1025
1025
|
return;
|
|
1026
1026
|
}
|
|
1027
1027
|
}
|
|
1028
|
-
function
|
|
1028
|
+
function Re(e, t) {
|
|
1029
1029
|
try {
|
|
1030
1030
|
return localStorage.setItem(e, JSON.stringify(t)), !0;
|
|
1031
1031
|
} catch (o) {
|
|
1032
1032
|
return g.warn(`Failed to set item in localStorage: ${e}`, o), !1;
|
|
1033
1033
|
}
|
|
1034
1034
|
}
|
|
1035
|
-
async function
|
|
1036
|
-
const e =
|
|
1037
|
-
if (
|
|
1038
|
-
const o =
|
|
1035
|
+
async function we() {
|
|
1036
|
+
const e = Do, t = Ro;
|
|
1037
|
+
if (Jt()) {
|
|
1038
|
+
const o = De(e);
|
|
1039
1039
|
if (o && o.id && o.timestamp && Date.now() - o.timestamp < t)
|
|
1040
1040
|
return g.debug("Using existing session ID from localStorage"), o.id;
|
|
1041
1041
|
g.debug(
|
|
1042
1042
|
o ? "Session ID expired" : "No session ID found",
|
|
1043
1043
|
"generating new one"
|
|
1044
1044
|
);
|
|
1045
|
-
const r =
|
|
1046
|
-
return
|
|
1045
|
+
const r = xe();
|
|
1046
|
+
return Re(e, {
|
|
1047
1047
|
id: r,
|
|
1048
1048
|
timestamp: Date.now()
|
|
1049
1049
|
}) ? g.debug("Generated and stored new session ID") : g.warn("Generated session ID but failed to store it"), r;
|
|
1050
1050
|
} else {
|
|
1051
|
-
const o =
|
|
1051
|
+
const o = xe();
|
|
1052
1052
|
return g.debug("Generated non-persistent session ID"), o;
|
|
1053
1053
|
}
|
|
1054
1054
|
}
|
|
1055
|
-
function
|
|
1055
|
+
function At(e) {
|
|
1056
1056
|
if (!e || typeof e != "object")
|
|
1057
1057
|
return 0;
|
|
1058
1058
|
let t = 0, o = 0, r = 0;
|
|
@@ -1065,7 +1065,7 @@ function kt(e) {
|
|
|
1065
1065
|
const s = t / r * 100, i = o / r * 100;
|
|
1066
1066
|
return Math.round(s - i);
|
|
1067
1067
|
}
|
|
1068
|
-
function
|
|
1068
|
+
function Bo(e) {
|
|
1069
1069
|
if (!e || typeof e != "object")
|
|
1070
1070
|
return { promoters: 0, passives: 0, detractors: 0 };
|
|
1071
1071
|
let t = 0, o = 0, r = 0;
|
|
@@ -1075,14 +1075,14 @@ function Ro(e) {
|
|
|
1075
1075
|
}
|
|
1076
1076
|
return { promoters: t, passives: o, detractors: r };
|
|
1077
1077
|
}
|
|
1078
|
-
function
|
|
1078
|
+
function Vo(e, t) {
|
|
1079
1079
|
const o = {};
|
|
1080
1080
|
for (const r of t)
|
|
1081
1081
|
o[r] = e[r] || 0;
|
|
1082
1082
|
return o;
|
|
1083
1083
|
}
|
|
1084
|
-
function
|
|
1085
|
-
const o = t ?
|
|
1084
|
+
function Uo(e, t) {
|
|
1085
|
+
const o = t ? Vo(e, t) : e;
|
|
1086
1086
|
let r = 0, s = 0;
|
|
1087
1087
|
for (const [a, l] of Object.entries(o)) {
|
|
1088
1088
|
s += l;
|
|
@@ -1101,26 +1101,26 @@ function U() {
|
|
|
1101
1101
|
updated: (/* @__PURE__ */ new Date()).toISOString()
|
|
1102
1102
|
};
|
|
1103
1103
|
}
|
|
1104
|
-
function
|
|
1105
|
-
if (!
|
|
1104
|
+
function jo(e) {
|
|
1105
|
+
if (!Jt())
|
|
1106
1106
|
return U();
|
|
1107
1107
|
try {
|
|
1108
|
-
const t =
|
|
1108
|
+
const t = De(e);
|
|
1109
1109
|
return t ? { ...U(), ...t } : U();
|
|
1110
1110
|
} catch (t) {
|
|
1111
1111
|
return g.warn("Failed to load localStats from localStorage", t), U();
|
|
1112
1112
|
}
|
|
1113
1113
|
}
|
|
1114
|
-
function
|
|
1115
|
-
if (!
|
|
1114
|
+
function qo(e, t) {
|
|
1115
|
+
if (!Jt())
|
|
1116
1116
|
return !1;
|
|
1117
1117
|
try {
|
|
1118
|
-
return
|
|
1118
|
+
return Re(e, t) ? (g.debug("Saved localStats to localStorage", t), !0) : !1;
|
|
1119
1119
|
} catch (o) {
|
|
1120
1120
|
return g.warn("Failed to save localStats to localStorage", o), !1;
|
|
1121
1121
|
}
|
|
1122
1122
|
}
|
|
1123
|
-
function
|
|
1123
|
+
function Ho(e, t) {
|
|
1124
1124
|
const o = {
|
|
1125
1125
|
count: Math.max(0, e.count - t.count),
|
|
1126
1126
|
sum: (e.sum || 0) - (t.sum || 0),
|
|
@@ -1133,9 +1133,9 @@ function qo(e, t) {
|
|
|
1133
1133
|
if (o.count > 0 && o.sum !== void 0 ? o.avg = Math.round(o.sum / o.count * 100) / 100 : o.avg = 0, t.breakdown && o.breakdown)
|
|
1134
1134
|
for (const [r, s] of Object.entries(t.breakdown))
|
|
1135
1135
|
o.breakdown[r] && (o.breakdown[r] = Math.max(0, o.breakdown[r] - s), o.breakdown[r] === 0 && delete o.breakdown[r]);
|
|
1136
|
-
return o.nps =
|
|
1136
|
+
return o.nps = At((o == null ? void 0 : o.breakdown) || {}), o;
|
|
1137
1137
|
}
|
|
1138
|
-
function
|
|
1138
|
+
function Fo(e, t) {
|
|
1139
1139
|
if (!e.count && !t.count)
|
|
1140
1140
|
return U();
|
|
1141
1141
|
if (!e.count)
|
|
@@ -1154,12 +1154,12 @@ function Ho(e, t) {
|
|
|
1154
1154
|
for (const [r, s] of Object.entries(t.breakdown))
|
|
1155
1155
|
o.breakdown[r] = (o.breakdown[r] || 0) + s;
|
|
1156
1156
|
}
|
|
1157
|
-
return o.nps =
|
|
1157
|
+
return o.nps = At((o == null ? void 0 : o.breakdown) || {}), o;
|
|
1158
1158
|
}
|
|
1159
|
-
function
|
|
1159
|
+
function Be(e) {
|
|
1160
1160
|
return !e || typeof e != "string" ? !1 : /^[\p{Emoji}]$/u.test(e) ? !0 : new RegExp("^\\p{Emoji}(\\p{Emoji_Modifier}|\\u200D\\p{Emoji})*$", "u").test(e);
|
|
1161
1161
|
}
|
|
1162
|
-
function
|
|
1162
|
+
function Ot(e) {
|
|
1163
1163
|
if (!e || typeof e != "string")
|
|
1164
1164
|
return !1;
|
|
1165
1165
|
const t = e.trim();
|
|
@@ -1173,7 +1173,7 @@ function Tt(e) {
|
|
|
1173
1173
|
return !1;
|
|
1174
1174
|
}
|
|
1175
1175
|
}
|
|
1176
|
-
function
|
|
1176
|
+
function Ve(e) {
|
|
1177
1177
|
if (!e || typeof e != "string")
|
|
1178
1178
|
return [];
|
|
1179
1179
|
const t = e.trim();
|
|
@@ -1188,44 +1188,57 @@ function Be(e) {
|
|
|
1188
1188
|
}
|
|
1189
1189
|
return t.split(",").map((o) => o.trim()).filter((o) => o !== "");
|
|
1190
1190
|
}
|
|
1191
|
-
function
|
|
1191
|
+
function Yo(e, t) {
|
|
1192
1192
|
const o = /{([^{}]+)}/g;
|
|
1193
1193
|
return e.replace(o, (r, s) => {
|
|
1194
1194
|
const i = s.trim(), a = t[i];
|
|
1195
1195
|
return a !== void 0 ? String(a) : r;
|
|
1196
1196
|
});
|
|
1197
1197
|
}
|
|
1198
|
-
function
|
|
1198
|
+
function Ko(e, t) {
|
|
1199
1199
|
let o = 2166136261;
|
|
1200
1200
|
const r = e + ":" + t;
|
|
1201
1201
|
for (let s = 0; s < r.length; s++)
|
|
1202
1202
|
o ^= r.charCodeAt(s), o += (o << 1) + (o << 4) + (o << 7) + (o << 8) + (o << 24);
|
|
1203
1203
|
return (o >>> 0).toString(16).padStart(8, "0");
|
|
1204
1204
|
}
|
|
1205
|
-
function
|
|
1205
|
+
function Wo(e, t = 50) {
|
|
1206
1206
|
return e.length <= t ? e : e.substring(0, t).trim() + "...";
|
|
1207
1207
|
}
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1208
|
+
function xt(e) {
|
|
1209
|
+
if (!e) return;
|
|
1210
|
+
const t = e.trim().toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-{2,}/g, "-").replace(/^-|-$/g, "");
|
|
1211
|
+
return t.length > 0 ? t : void 0;
|
|
1211
1212
|
}
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
return e
|
|
1213
|
+
const Go = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i, $e = 5;
|
|
1214
|
+
function Ue(e) {
|
|
1215
|
+
return e || No;
|
|
1215
1216
|
}
|
|
1216
|
-
|
|
1217
|
-
const
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1217
|
+
function je(e, t, o) {
|
|
1218
|
+
const r = Ue(t);
|
|
1219
|
+
let s;
|
|
1220
|
+
if (e.type === "registered" ? s = `${r}/widgets/${encodeURIComponent(e.widgetId)}` : s = `${r}/public-widgets/${encodeURIComponent(e.name)}`, o) {
|
|
1221
|
+
const i = new URLSearchParams();
|
|
1222
|
+
for (const [l, n] of Object.entries(o))
|
|
1223
|
+
n && i.set(l, n);
|
|
1224
|
+
const a = i.toString();
|
|
1225
|
+
a && (s += `?${a}`);
|
|
1226
|
+
}
|
|
1225
1227
|
return s;
|
|
1226
1228
|
}
|
|
1227
|
-
async function
|
|
1228
|
-
const r =
|
|
1229
|
+
async function Se(e, t, o) {
|
|
1230
|
+
const r = je(e, t, o);
|
|
1231
|
+
g.debug("API GET", { url: r });
|
|
1232
|
+
const s = await fetch(r);
|
|
1233
|
+
if (!s.ok)
|
|
1234
|
+
throw new Error(`API request failed with status: ${s.status}`);
|
|
1235
|
+
const i = await s.json();
|
|
1236
|
+
if (!i.success)
|
|
1237
|
+
throw new Error("Backend returned unsuccessful response");
|
|
1238
|
+
return i;
|
|
1239
|
+
}
|
|
1240
|
+
async function Zo(e, t, o) {
|
|
1241
|
+
const r = je(e, o);
|
|
1229
1242
|
if (g.debug("API POST", { url: r }), typeof navigator < "u" && navigator.sendBeacon) {
|
|
1230
1243
|
if (navigator.sendBeacon(r, t)) {
|
|
1231
1244
|
g.debug("Successfully sent stats via sendBeacon");
|
|
@@ -1245,7 +1258,7 @@ async function Go(e, t, o) {
|
|
|
1245
1258
|
throw new Error(`API request failed with status: ${s.status}`);
|
|
1246
1259
|
g.debug("Successfully sent stats via fetch");
|
|
1247
1260
|
}
|
|
1248
|
-
class
|
|
1261
|
+
class Xo {
|
|
1249
1262
|
// Set when a fatal error occurs (e.g. type mismatch for registered widget)
|
|
1250
1263
|
constructor(t) {
|
|
1251
1264
|
this.stats = U(), this.localStats = U(), this.isLoading = !0, this.isLoadingConfig = !1, this.isSubmitting = !1, this.hasInteracted = !1, this.hasError = !1, (this.host = t).addController(this);
|
|
@@ -1259,13 +1272,13 @@ class Zo {
|
|
|
1259
1272
|
*/
|
|
1260
1273
|
getWidgetIdentifier() {
|
|
1261
1274
|
const t = this.host;
|
|
1262
|
-
return t.widgetId ?
|
|
1263
|
-
`Widget name must be at least ${
|
|
1275
|
+
return t.widgetId ? Go.test(t.widgetId) ? { type: "registered", widgetId: t.widgetId } : (g.error(`Invalid widget-id format: ${t.widgetId}`), null) : t.name ? t.name.length < $e ? (g.error(
|
|
1276
|
+
`Widget name must be at least ${$e} characters long. Got: "${t.name}"`
|
|
1264
1277
|
), null) : { type: "public", name: t.name } : (g.error("Widget requires either widget-id or name attribute"), null);
|
|
1265
1278
|
}
|
|
1266
1279
|
async getLocalStatsKey() {
|
|
1267
|
-
const t = this.host, o = await
|
|
1268
|
-
return `pc-local-stats-${o}-${r}`;
|
|
1280
|
+
const t = this.host, o = await we(), r = t.widgetId || t.name || "unnamed", s = xt(t.metadata), i = s ? `-${s}` : "";
|
|
1281
|
+
return `pc-local-stats-${o}-${r}${i}`;
|
|
1269
1282
|
}
|
|
1270
1283
|
/**
|
|
1271
1284
|
* while 'hostConnected' is not async, we need to use this wrapper function
|
|
@@ -1288,7 +1301,7 @@ class Zo {
|
|
|
1288
1301
|
for (const [l, n] of Object.entries(o)) {
|
|
1289
1302
|
if (n == null) continue;
|
|
1290
1303
|
if (l === "options" && typeof n == "string") {
|
|
1291
|
-
const p =
|
|
1304
|
+
const p = Ve(n);
|
|
1292
1305
|
r.options = p.map((h) => ({
|
|
1293
1306
|
value: h,
|
|
1294
1307
|
label: h,
|
|
@@ -1317,47 +1330,47 @@ class Zo {
|
|
|
1317
1330
|
let n, d;
|
|
1318
1331
|
if (o.type === "registered") {
|
|
1319
1332
|
this.isLoadingConfig = !0, this.host.requestUpdate();
|
|
1320
|
-
const C = await
|
|
1321
|
-
if (
|
|
1333
|
+
const C = xt(t.metadata), A = await Se(o, void 0, C ? { meta: C } : void 0), P = (s = (r = A.data) == null ? void 0 : r.config) == null ? void 0 : s.type;
|
|
1334
|
+
if (P && P !== t.type) {
|
|
1322
1335
|
g.error(
|
|
1323
|
-
`Widget type mismatch: type="${t.type}" but server returned "${
|
|
1336
|
+
`Widget type mismatch: type="${t.type}" but server returned "${P}" for widget-id="${o.widgetId}"`
|
|
1324
1337
|
), this.hasError = !0;
|
|
1325
1338
|
return;
|
|
1326
1339
|
}
|
|
1327
|
-
const
|
|
1328
|
-
n = ((l =
|
|
1340
|
+
const at = ((a = (i = A.data) == null ? void 0 : i.config) == null ? void 0 : a.attributes) || null;
|
|
1341
|
+
n = ((l = A.data) == null ? void 0 : l.stats) || {}, this.applyWidgetAttributes(at);
|
|
1329
1342
|
} else {
|
|
1330
1343
|
let C;
|
|
1331
1344
|
if (t.dataFunc && typeof window < "u") {
|
|
1332
|
-
const
|
|
1333
|
-
let
|
|
1334
|
-
for (const
|
|
1335
|
-
if (
|
|
1336
|
-
C =
|
|
1345
|
+
const A = t.dataFunc.replace(/^window\./, "").split(".");
|
|
1346
|
+
let P = window;
|
|
1347
|
+
for (const at of A)
|
|
1348
|
+
if (P = P == null ? void 0 : P[at], P === void 0) break;
|
|
1349
|
+
C = P;
|
|
1337
1350
|
}
|
|
1338
1351
|
if (C && typeof C == "function") {
|
|
1339
1352
|
d = this.getValidOptionKeys(t), g.debug(`Using data function for: ${t.widgetId || t.name}`, {
|
|
1340
1353
|
dataFuncName: t.dataFunc,
|
|
1341
1354
|
options: d
|
|
1342
1355
|
});
|
|
1343
|
-
const
|
|
1344
|
-
if (
|
|
1345
|
-
if (!
|
|
1346
|
-
throw g.error("Custom data function returned unsuccessful response",
|
|
1347
|
-
n =
|
|
1356
|
+
const w = await C(t.widgetId, t.name, d);
|
|
1357
|
+
if (w && typeof w == "object" && "success" in w && "data" in w) {
|
|
1358
|
+
if (!w.success)
|
|
1359
|
+
throw g.error("Custom data function returned unsuccessful response", w), new Error("Custom data function returned unsuccessful response");
|
|
1360
|
+
n = w.data || {};
|
|
1348
1361
|
} else
|
|
1349
|
-
n =
|
|
1362
|
+
n = w || {};
|
|
1350
1363
|
} else
|
|
1351
|
-
n = (await
|
|
1364
|
+
n = (await Se(o, t.dataEndpoint)).data || {};
|
|
1352
1365
|
}
|
|
1353
1366
|
d ?? (d = this.getValidOptionKeys(t));
|
|
1354
|
-
const p =
|
|
1367
|
+
const p = Uo(n.breakdown ?? {}, d), h = p.count, b = p.sum, x = h > 0 ? Math.round(b / h * 10) / 10 : 0, E = h > 0 ? Math.round(b / h * 100) : 0;
|
|
1355
1368
|
this.stats = {
|
|
1356
1369
|
count: h,
|
|
1357
1370
|
sum: b,
|
|
1358
|
-
avg:
|
|
1371
|
+
avg: x,
|
|
1359
1372
|
pct: E,
|
|
1360
|
-
nps: t.type === $.nps ?
|
|
1373
|
+
nps: t.type === $.nps ? At(p.breakdown) : 0,
|
|
1361
1374
|
breakdown: p.breakdown,
|
|
1362
1375
|
updated: n.updatedAt || n.updated_at || (/* @__PURE__ */ new Date()).toISOString()
|
|
1363
1376
|
};
|
|
@@ -1393,7 +1406,7 @@ class Zo {
|
|
|
1393
1406
|
async loadLocalStats() {
|
|
1394
1407
|
const t = await this.getLocalStatsKey();
|
|
1395
1408
|
try {
|
|
1396
|
-
const o =
|
|
1409
|
+
const o = jo(t);
|
|
1397
1410
|
g.debug("Loaded localStats from localStorage", o), this.localStats = o;
|
|
1398
1411
|
} catch (o) {
|
|
1399
1412
|
g.warn("Failed to generate localStorage key for localStats", o), this.localStats = U();
|
|
@@ -1406,7 +1419,7 @@ class Zo {
|
|
|
1406
1419
|
async persistLocalStats() {
|
|
1407
1420
|
try {
|
|
1408
1421
|
const t = await this.getLocalStatsKey();
|
|
1409
|
-
|
|
1422
|
+
qo(t, this.localStats) || g.warn("Failed to save localStats to localStorage");
|
|
1410
1423
|
} catch (t) {
|
|
1411
1424
|
g.warn("Failed to save localStats to localStorage", t);
|
|
1412
1425
|
}
|
|
@@ -1420,7 +1433,7 @@ class Zo {
|
|
|
1420
1433
|
* @param textValues
|
|
1421
1434
|
*/
|
|
1422
1435
|
updateStats(t, o) {
|
|
1423
|
-
if (this.hasInteracted = !0, this.stats && (this.stats =
|
|
1436
|
+
if (this.hasInteracted = !0, this.stats && (this.stats = Ho(this.stats, this.localStats)), this.localStats = {
|
|
1424
1437
|
count: t > 0 || o.length > 0 ? 1 : 0,
|
|
1425
1438
|
sum: t,
|
|
1426
1439
|
// e.g. number of stars, nps value
|
|
@@ -1434,7 +1447,7 @@ class Zo {
|
|
|
1434
1447
|
}, o && o.length > 0)
|
|
1435
1448
|
for (const r of o)
|
|
1436
1449
|
r && (this.localStats.breakdown[r] = 1);
|
|
1437
|
-
this.stats =
|
|
1450
|
+
this.stats = Fo(this.stats, this.localStats), g.debug("Stats updated - remote: ", this.stats), g.debug("Stats updated - local: ", this.localStats), this.persistLocalStats(), this.host.requestUpdate();
|
|
1438
1451
|
}
|
|
1439
1452
|
async markStatsAsSubmitted() {
|
|
1440
1453
|
this.localStats.submitted = (/* @__PURE__ */ new Date()).toISOString(), await this.persistLocalStats(), this.host.requestUpdate();
|
|
@@ -1442,7 +1455,7 @@ class Zo {
|
|
|
1442
1455
|
async submitStats() {
|
|
1443
1456
|
if (!this.hasLocalStats() && !this.hasInteracted)
|
|
1444
1457
|
throw g.warn("No local stats to submit"), new Error("No local stats to submit");
|
|
1445
|
-
const t = this.host, o = Math.floor(Date.now() / 1e3).toString(), r = await
|
|
1458
|
+
const t = this.host, o = Math.floor(Date.now() / 1e3).toString(), r = await we(), s = this.localStats.sum, i = Object.keys(this.localStats.breakdown || {});
|
|
1446
1459
|
this.isSubmitting = !0, this.host.requestUpdate();
|
|
1447
1460
|
const a = {
|
|
1448
1461
|
sessionId: r,
|
|
@@ -1452,9 +1465,9 @@ class Zo {
|
|
|
1452
1465
|
url: window.location.href,
|
|
1453
1466
|
numericValue: s,
|
|
1454
1467
|
textValues: i,
|
|
1455
|
-
metadata: t.metadata,
|
|
1468
|
+
metadata: xt(t.metadata),
|
|
1456
1469
|
timestamp: o
|
|
1457
|
-
}, l =
|
|
1470
|
+
}, l = Ko(JSON.stringify(a), o);
|
|
1458
1471
|
try {
|
|
1459
1472
|
await this.sendStats({ ...a, hash: l }), await this.markStatsAsSubmitted(), this.dispatchSubmitEvent(a);
|
|
1460
1473
|
} catch (n) {
|
|
@@ -1471,12 +1484,12 @@ class Zo {
|
|
|
1471
1484
|
g.debug("Skip sending stats as data function is in use.");
|
|
1472
1485
|
return;
|
|
1473
1486
|
}
|
|
1474
|
-
const s = r.type === "registered" ? void 0 : o.dataEndpoint, i =
|
|
1475
|
-
if (!
|
|
1487
|
+
const s = r.type === "registered" ? void 0 : o.dataEndpoint, i = Ue(s);
|
|
1488
|
+
if (!Ot(i))
|
|
1476
1489
|
throw g.error("Invalid data endpoint", { dataEndpoint: i }), new Error(`Invalid data endpoint: ${i}`);
|
|
1477
1490
|
const a = JSON.stringify(t);
|
|
1478
1491
|
try {
|
|
1479
|
-
await
|
|
1492
|
+
await Zo(r, a, s);
|
|
1480
1493
|
} catch (l) {
|
|
1481
1494
|
throw g.error("Failed to send analytics:", l), l;
|
|
1482
1495
|
}
|
|
@@ -1493,9 +1506,9 @@ class Zo {
|
|
|
1493
1506
|
sum: (o == null ? void 0 : o.sum) || 0,
|
|
1494
1507
|
avg: s,
|
|
1495
1508
|
pct: (o == null ? void 0 : o.pct) || 0,
|
|
1496
|
-
nps: r.type === $.nps ?
|
|
1509
|
+
nps: r.type === $.nps ? At((o == null ? void 0 : o.breakdown) || {}) : 0
|
|
1497
1510
|
};
|
|
1498
|
-
return g.debug("Stats data: ", this.stats),
|
|
1511
|
+
return g.debug("Stats data: ", this.stats), Yo(t, i);
|
|
1499
1512
|
}
|
|
1500
1513
|
/**
|
|
1501
1514
|
* Checks if a value is selected in the local stats
|
|
@@ -1547,7 +1560,7 @@ class Zo {
|
|
|
1547
1560
|
widgetName: t.name,
|
|
1548
1561
|
numericValue: o,
|
|
1549
1562
|
textValues: r,
|
|
1550
|
-
metadata: t.metadata,
|
|
1563
|
+
metadata: xt(t.metadata),
|
|
1551
1564
|
url: typeof window < "u" ? window.location.href : "",
|
|
1552
1565
|
timestamp: Math.floor(Date.now() / 1e3).toString()
|
|
1553
1566
|
}, i = new CustomEvent("change", {
|
|
@@ -1599,7 +1612,7 @@ class Zo {
|
|
|
1599
1612
|
return ((t = this.localStats) == null ? void 0 : t.submitted) !== void 0 && this.hasLocalStats();
|
|
1600
1613
|
}
|
|
1601
1614
|
}
|
|
1602
|
-
class
|
|
1615
|
+
class Jo {
|
|
1603
1616
|
constructor(t, o) {
|
|
1604
1617
|
this.isEditing = !0, this.isChartVisible = !1, this.isStatsVisible = !1, this.isThankYouVisible = !1, this.isReactionPopoverVisible = !1, this.initialized = !1, this.handleClickOutside = (r) => {
|
|
1605
1618
|
r.target !== this.host && (this.toggleThankYouVisibility(!1), this.toggleReactionPopoverVisibility(!1));
|
|
@@ -1687,8 +1700,8 @@ class Xo {
|
|
|
1687
1700
|
return !(this.host.readonly || !this.isEditing);
|
|
1688
1701
|
}
|
|
1689
1702
|
}
|
|
1690
|
-
var
|
|
1691
|
-
function
|
|
1703
|
+
var Qt = /* @__PURE__ */ ((e) => (e.DECORATIVE = "decorative", e.FUNCTIONAL = "functional", e.STATUS = "status", e))(Qt || {});
|
|
1704
|
+
function qe(e, t = {}) {
|
|
1692
1705
|
const { type: o = "functional", alt: r, ariaLabel: s, isSelected: i } = t;
|
|
1693
1706
|
if (!e)
|
|
1694
1707
|
return { alt: "", ariaHidden: !0 };
|
|
@@ -1697,20 +1710,20 @@ function je(e, t = {}) {
|
|
|
1697
1710
|
o === "functional" && !r && !s && console.warn(
|
|
1698
1711
|
"No alt text or aria-label provided for functional icon. This may cause accessibility issues."
|
|
1699
1712
|
);
|
|
1700
|
-
const a = i ? " (selected)" : "", l =
|
|
1713
|
+
const a = i ? " (selected)" : "", l = Ot(e) && !r ? "" : r || e, n = s || (l ? `${l}${a}` : a);
|
|
1701
1714
|
return {
|
|
1702
1715
|
alt: l,
|
|
1703
1716
|
ariaLabel: n,
|
|
1704
1717
|
ariaHidden: !1
|
|
1705
1718
|
};
|
|
1706
1719
|
}
|
|
1707
|
-
function
|
|
1720
|
+
function Qo(e, t = "polite") {
|
|
1708
1721
|
let o = document.getElementById("screen-reader-announcer");
|
|
1709
1722
|
o ? o.setAttribute("aria-live", t) : (o = document.createElement("div"), o.id = "screen-reader-announcer", o.setAttribute("aria-live", t), o.setAttribute("role", "status"), o.setAttribute("aria-atomic", "true"), o.style.position = "absolute", o.style.width = "1px", o.style.height = "1px", o.style.margin = "-1px", o.style.padding = "0", o.style.overflow = "hidden", o.style.clip = "rect(0, 0, 0, 0)", o.style.whiteSpace = "nowrap", o.style.border = "0", document.body.appendChild(o)), o.textContent = "", setTimeout(() => {
|
|
1710
1723
|
o.textContent = e;
|
|
1711
1724
|
}, 50);
|
|
1712
1725
|
}
|
|
1713
|
-
function
|
|
1726
|
+
function tr(e, t) {
|
|
1714
1727
|
return `${e}: ${t}`;
|
|
1715
1728
|
}
|
|
1716
1729
|
/**
|
|
@@ -1718,8 +1731,8 @@ function Qo(e, t) {
|
|
|
1718
1731
|
* Copyright 2017 Google LLC
|
|
1719
1732
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
1720
1733
|
*/
|
|
1721
|
-
const
|
|
1722
|
-
let
|
|
1734
|
+
const He = { ATTRIBUTE: 1 }, Fe = (e) => (...t) => ({ _$litDirective$: e, values: t });
|
|
1735
|
+
let Ye = class {
|
|
1723
1736
|
constructor(t) {
|
|
1724
1737
|
}
|
|
1725
1738
|
get _$AU() {
|
|
@@ -1740,10 +1753,10 @@ let Fe = class {
|
|
|
1740
1753
|
* Copyright 2018 Google LLC
|
|
1741
1754
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
1742
1755
|
*/
|
|
1743
|
-
const y =
|
|
1756
|
+
const y = Fe(class extends Ye {
|
|
1744
1757
|
constructor(e) {
|
|
1745
1758
|
var t;
|
|
1746
|
-
if (super(e), e.type !==
|
|
1759
|
+
if (super(e), e.type !== He.ATTRIBUTE || e.name !== "class" || ((t = e.strings) == null ? void 0 : t.length) > 2) throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.");
|
|
1747
1760
|
}
|
|
1748
1761
|
render(e) {
|
|
1749
1762
|
return " " + Object.keys(e).filter((t) => e[t]).join(" ") + " ";
|
|
@@ -1764,18 +1777,18 @@ const y = He(class extends Fe {
|
|
|
1764
1777
|
return q;
|
|
1765
1778
|
}
|
|
1766
1779
|
});
|
|
1767
|
-
var
|
|
1780
|
+
var er = Object.defineProperty, v = (e, t, o, r) => {
|
|
1768
1781
|
for (var s = void 0, i = e.length - 1, a; i >= 0; i--)
|
|
1769
1782
|
(a = e[i]) && (s = a(t, o, s) || s);
|
|
1770
|
-
return s &&
|
|
1783
|
+
return s && er(t, o, s), s;
|
|
1771
1784
|
};
|
|
1772
|
-
const
|
|
1785
|
+
const wt = {
|
|
1773
1786
|
mobile: "480px",
|
|
1774
1787
|
tablet: "768px",
|
|
1775
1788
|
desktop: "1024px"
|
|
1776
|
-
},
|
|
1789
|
+
}, te = class te extends N {
|
|
1777
1790
|
constructor() {
|
|
1778
|
-
super(...arguments), this.dataController = new
|
|
1791
|
+
super(...arguments), this.dataController = new Xo(this), this.displayController = new Jo(this, this.dataController), this.hasEditButton = !0, this.showStats = "never", this.showChart = !1, this.initialized = !1, this.ariaLabel = null, this.minContrast = Ne.AA_NORMAL, this.options = [], this.questionPosition = "top", this.statsText = "{count} votes", this.buttonText = "Submit", this.buttonRadius = "sm", this.multiple = !1, this.inline = !1, this.readonly = !1, this.handleEditToggleKeyDown = (t) => {
|
|
1779
1792
|
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), this.handleEnterEditMode());
|
|
1780
1793
|
};
|
|
1781
1794
|
}
|
|
@@ -1810,7 +1823,7 @@ const yt = {
|
|
|
1810
1823
|
const i = tt(this.primaryColor);
|
|
1811
1824
|
o += `--pc-primary-color: ${i} !important;
|
|
1812
1825
|
`;
|
|
1813
|
-
const a =
|
|
1826
|
+
const a = Po(i, {
|
|
1814
1827
|
minContrast: this.minContrast,
|
|
1815
1828
|
colorOptions: ["black", "white", "light", "dark"]
|
|
1816
1829
|
});
|
|
@@ -1841,33 +1854,33 @@ const yt = {
|
|
|
1841
1854
|
const s = this.starHoverColor || (r ? `color-mix(in srgb, ${tt(r)} 80%, white)` : null);
|
|
1842
1855
|
if (s && (o += `--pc-star-hover-color: ${s} !important;
|
|
1843
1856
|
`), this.starSize) {
|
|
1844
|
-
const i =
|
|
1857
|
+
const i = qt(this.starSize, "1.5em", 1.5);
|
|
1845
1858
|
o += `--pc-stars-star-size: ${i} !important;
|
|
1846
1859
|
`;
|
|
1847
1860
|
}
|
|
1848
1861
|
if (this.reactionSize) {
|
|
1849
|
-
const i =
|
|
1862
|
+
const i = qt(this.reactionSize, "1em", 1);
|
|
1850
1863
|
o += `--pc-reaction-size: ${i} !important;
|
|
1851
1864
|
`;
|
|
1852
1865
|
}
|
|
1853
1866
|
if (this.size) {
|
|
1854
|
-
const i =
|
|
1867
|
+
const i = qt(this.size);
|
|
1855
1868
|
o += `font-size: ${i} !important;
|
|
1856
1869
|
`;
|
|
1857
1870
|
}
|
|
1858
1871
|
if (this.buttonRadius) {
|
|
1859
|
-
const i =
|
|
1872
|
+
const i = _o(this.buttonRadius);
|
|
1860
1873
|
o += `--pc-button-radius: ${i} !important;
|
|
1861
1874
|
`;
|
|
1862
1875
|
}
|
|
1863
1876
|
o += `}
|
|
1864
|
-
`, this.css && (o += Mo(
|
|
1877
|
+
`, this.css && (o += Lo(Mo(this.css))), t.textContent = o;
|
|
1865
1878
|
}
|
|
1866
1879
|
/**
|
|
1867
1880
|
* Update ARIA attributes for accessibility
|
|
1868
1881
|
*/
|
|
1869
1882
|
updateAriaAttributes() {
|
|
1870
|
-
this.ariaLabel &&
|
|
1883
|
+
this.ariaLabel && Ht(this, "aria-label", this.ariaLabel), this.ariaDescribedby && Ht(this, "aria-describedby", this.ariaDescribedby), Ht(this, "aria-busy", this.dataController.isLoading ? "true" : "false");
|
|
1871
1884
|
}
|
|
1872
1885
|
/**
|
|
1873
1886
|
* Update host CSS classes based on state
|
|
@@ -1880,11 +1893,11 @@ const yt = {
|
|
|
1880
1893
|
*/
|
|
1881
1894
|
getBreakpointClasses() {
|
|
1882
1895
|
return {
|
|
1883
|
-
"pc-mobile": window.matchMedia(`(max-width: ${
|
|
1896
|
+
"pc-mobile": window.matchMedia(`(max-width: ${wt.mobile})`).matches,
|
|
1884
1897
|
"pc-tablet": window.matchMedia(
|
|
1885
|
-
`(min-width: ${
|
|
1898
|
+
`(min-width: ${wt.mobile}) and (max-width: ${wt.tablet})`
|
|
1886
1899
|
).matches,
|
|
1887
|
-
"pc-desktop": window.matchMedia(`(min-width: ${
|
|
1900
|
+
"pc-desktop": window.matchMedia(`(min-width: ${wt.desktop})`).matches
|
|
1888
1901
|
};
|
|
1889
1902
|
}
|
|
1890
1903
|
/**
|
|
@@ -1892,7 +1905,7 @@ const yt = {
|
|
|
1892
1905
|
*/
|
|
1893
1906
|
announceSelectionChange(t, o, r) {
|
|
1894
1907
|
const s = `Poll for "${t}"`, i = r ? `${o.label} selected` : `${o.label} unselected`;
|
|
1895
|
-
|
|
1908
|
+
Qo(tr(s, i));
|
|
1896
1909
|
}
|
|
1897
1910
|
/** Common render methods */
|
|
1898
1911
|
renderLabel() {
|
|
@@ -1923,7 +1936,7 @@ const yt = {
|
|
|
1923
1936
|
tabindex="0"
|
|
1924
1937
|
aria-label="Edit vote"
|
|
1925
1938
|
@keydown="${this.handleEditToggleKeyDown}"
|
|
1926
|
-
>${
|
|
1939
|
+
>${Et}</span
|
|
1927
1940
|
>
|
|
1928
1941
|
` : u;
|
|
1929
1942
|
}
|
|
@@ -1942,7 +1955,7 @@ const yt = {
|
|
|
1942
1955
|
tabindex="0"
|
|
1943
1956
|
aria-label="${this.displayController.isChartVisible ? "Hide chart" : "Show chart"}"
|
|
1944
1957
|
@keydown="${() => this.displayController.toggleChartVisibility()}"
|
|
1945
|
-
>${this.displayController.isChartVisible ?
|
|
1958
|
+
>${this.displayController.isChartVisible ? Xt : Zt}</span
|
|
1946
1959
|
>
|
|
1947
1960
|
` : u;
|
|
1948
1961
|
}
|
|
@@ -1951,7 +1964,7 @@ const yt = {
|
|
|
1951
1964
|
return u;
|
|
1952
1965
|
const o = {
|
|
1953
1966
|
"pc-status": !0,
|
|
1954
|
-
[`pc-flex-content-${
|
|
1967
|
+
[`pc-flex-content-${I(this.statsPosition, this.statsAlign)}`]: !0
|
|
1955
1968
|
};
|
|
1956
1969
|
return c`<div class="${y(o)}" data-testid="pc-status">
|
|
1957
1970
|
${this.renderStatsText()} ${this.renderChartToggle()} ${this.renderEditToggleIcon()}
|
|
@@ -1969,7 +1982,7 @@ const yt = {
|
|
|
1969
1982
|
renderThankYouMessage() {
|
|
1970
1983
|
if (!this.displayController.shouldDisplayThankYouMsg())
|
|
1971
1984
|
return u;
|
|
1972
|
-
const t =
|
|
1985
|
+
const t = Wo(this.thankYouMsg || "");
|
|
1973
1986
|
return c`
|
|
1974
1987
|
<div class="pc-thank-you-overlay" data-testid="poll-thank-you-overlay">
|
|
1975
1988
|
<div class="pc-thank-you" data-testid="thank-you">
|
|
@@ -1981,7 +1994,7 @@ const yt = {
|
|
|
1981
1994
|
@click="${() => this.displayController.toggleThankYouVisibility(!1)}"
|
|
1982
1995
|
role="button"
|
|
1983
1996
|
aria-label="Close"
|
|
1984
|
-
>${
|
|
1997
|
+
>${_t}</span
|
|
1985
1998
|
>
|
|
1986
1999
|
</div>
|
|
1987
2000
|
</div>
|
|
@@ -1989,7 +2002,7 @@ const yt = {
|
|
|
1989
2002
|
`;
|
|
1990
2003
|
}
|
|
1991
2004
|
};
|
|
1992
|
-
|
|
2005
|
+
te.styles = [
|
|
1993
2006
|
R`
|
|
1994
2007
|
:host {
|
|
1995
2008
|
/* Default values for CSS variables - can be overridden by external :root or parent definitions */
|
|
@@ -2070,7 +2083,7 @@ Qt.styles = [
|
|
|
2070
2083
|
}
|
|
2071
2084
|
`
|
|
2072
2085
|
];
|
|
2073
|
-
let m =
|
|
2086
|
+
let m = te;
|
|
2074
2087
|
v([
|
|
2075
2088
|
f({ type: String, attribute: "show-stats" })
|
|
2076
2089
|
], m.prototype, "showStats");
|
|
@@ -2176,7 +2189,7 @@ v([
|
|
|
2176
2189
|
v([
|
|
2177
2190
|
f({ type: Boolean, reflect: !0 })
|
|
2178
2191
|
], m.prototype, "readonly");
|
|
2179
|
-
const
|
|
2192
|
+
const or = R`
|
|
2180
2193
|
/* CSS variables inherit from parent - defaults are specified at usage sites */
|
|
2181
2194
|
|
|
2182
2195
|
.pc-body {
|
|
@@ -2627,7 +2640,7 @@ const er = R`
|
|
|
2627
2640
|
animation: none;
|
|
2628
2641
|
}
|
|
2629
2642
|
}
|
|
2630
|
-
`,
|
|
2643
|
+
`, It = R`
|
|
2631
2644
|
/* Default values for CSS variables - can be overridden by external :root or parent definitions */
|
|
2632
2645
|
:host {
|
|
2633
2646
|
--default-primary-color: #2196f3;
|
|
@@ -3346,7 +3359,7 @@ const er = R`
|
|
|
3346
3359
|
opacity: 1;
|
|
3347
3360
|
}
|
|
3348
3361
|
}
|
|
3349
|
-
`,
|
|
3362
|
+
`, rr = R`
|
|
3350
3363
|
:host {
|
|
3351
3364
|
--popover-bg: light-dark(#ffffff, #1a1a1a);
|
|
3352
3365
|
--popover-border: light-dark(#e0e0e0, #333333);
|
|
@@ -3468,12 +3481,12 @@ const er = R`
|
|
|
3468
3481
|
max-width: 100%;
|
|
3469
3482
|
}
|
|
3470
3483
|
`;
|
|
3471
|
-
var
|
|
3472
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
3484
|
+
var sr = Object.defineProperty, ir = Object.getOwnPropertyDescriptor, B = (e, t, o, r) => {
|
|
3485
|
+
for (var s = r > 1 ? void 0 : r ? ir(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
3473
3486
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
3474
|
-
return r && s &&
|
|
3487
|
+
return r && s && sr(t, o, s), s;
|
|
3475
3488
|
};
|
|
3476
|
-
let
|
|
3489
|
+
let O = class extends N {
|
|
3477
3490
|
constructor() {
|
|
3478
3491
|
super(...arguments), this.open = !1, this.position = "auto", this.isClosing = !1, this.computedPosition = "bottom", this.popoverStyles = {}, this.arrowStyles = {}, this.updatePosition = () => {
|
|
3479
3492
|
var h;
|
|
@@ -3481,8 +3494,8 @@ let _ = class extends N {
|
|
|
3481
3494
|
const e = this.anchor.getBoundingClientRect(), t = window.innerWidth, o = window.innerHeight, r = 12, s = (h = this.popoverElement) == null ? void 0 : h.getBoundingClientRect(), i = (s == null ? void 0 : s.width) || 280, a = (s == null ? void 0 : s.height) || 200;
|
|
3482
3495
|
let l = this.position;
|
|
3483
3496
|
if (l === "auto") {
|
|
3484
|
-
const b = o - e.bottom,
|
|
3485
|
-
l = b >= a + r || b >=
|
|
3497
|
+
const b = o - e.bottom, x = e.top;
|
|
3498
|
+
l = b >= a + r || b >= x ? "bottom" : "top";
|
|
3486
3499
|
}
|
|
3487
3500
|
this.computedPosition = l;
|
|
3488
3501
|
let n, d;
|
|
@@ -3562,35 +3575,35 @@ let _ = class extends N {
|
|
|
3562
3575
|
`;
|
|
3563
3576
|
}
|
|
3564
3577
|
};
|
|
3565
|
-
|
|
3578
|
+
O.styles = [rr];
|
|
3566
3579
|
B([
|
|
3567
3580
|
f({ type: Boolean, reflect: !0 })
|
|
3568
|
-
],
|
|
3581
|
+
], O.prototype, "open", 2);
|
|
3569
3582
|
B([
|
|
3570
3583
|
f({ type: String })
|
|
3571
|
-
],
|
|
3584
|
+
], O.prototype, "position", 2);
|
|
3572
3585
|
B([
|
|
3573
3586
|
f({ attribute: !1 })
|
|
3574
|
-
],
|
|
3587
|
+
], O.prototype, "anchor", 2);
|
|
3575
3588
|
B([
|
|
3576
3589
|
k()
|
|
3577
|
-
],
|
|
3590
|
+
], O.prototype, "isClosing", 2);
|
|
3578
3591
|
B([
|
|
3579
3592
|
k()
|
|
3580
|
-
],
|
|
3593
|
+
], O.prototype, "computedPosition", 2);
|
|
3581
3594
|
B([
|
|
3582
3595
|
k()
|
|
3583
|
-
],
|
|
3596
|
+
], O.prototype, "popoverStyles", 2);
|
|
3584
3597
|
B([
|
|
3585
3598
|
k()
|
|
3586
|
-
],
|
|
3599
|
+
], O.prototype, "arrowStyles", 2);
|
|
3587
3600
|
B([
|
|
3588
|
-
|
|
3589
|
-
],
|
|
3590
|
-
|
|
3601
|
+
gt(".pc-popover")
|
|
3602
|
+
], O.prototype, "popoverElement", 2);
|
|
3603
|
+
O = B([
|
|
3591
3604
|
F("pc-popover")
|
|
3592
|
-
],
|
|
3593
|
-
const
|
|
3605
|
+
], O);
|
|
3606
|
+
const ar = R`
|
|
3594
3607
|
:host {
|
|
3595
3608
|
--sheet-bg: light-dark(#ffffff, #1a1a1a);
|
|
3596
3609
|
--sheet-border: light-dark(#e0e0e0, #333333);
|
|
@@ -3703,10 +3716,10 @@ const ir = R`
|
|
|
3703
3716
|
max-width: 100%;
|
|
3704
3717
|
}
|
|
3705
3718
|
`;
|
|
3706
|
-
var
|
|
3707
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
3719
|
+
var nr = Object.defineProperty, lr = Object.getOwnPropertyDescriptor, Q = (e, t, o, r) => {
|
|
3720
|
+
for (var s = r > 1 ? void 0 : r ? lr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
3708
3721
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
3709
|
-
return r && s &&
|
|
3722
|
+
return r && s && nr(t, o, s), s;
|
|
3710
3723
|
};
|
|
3711
3724
|
let D = class extends N {
|
|
3712
3725
|
constructor() {
|
|
@@ -3802,7 +3815,7 @@ let D = class extends N {
|
|
|
3802
3815
|
`;
|
|
3803
3816
|
}
|
|
3804
3817
|
};
|
|
3805
|
-
D.styles = [
|
|
3818
|
+
D.styles = [ar];
|
|
3806
3819
|
Q([
|
|
3807
3820
|
f({ type: Boolean, reflect: !0 })
|
|
3808
3821
|
], D.prototype, "open", 2);
|
|
@@ -3819,17 +3832,17 @@ Q([
|
|
|
3819
3832
|
k()
|
|
3820
3833
|
], D.prototype, "dragOffset", 2);
|
|
3821
3834
|
Q([
|
|
3822
|
-
|
|
3835
|
+
gt(".pc-bottom-sheet")
|
|
3823
3836
|
], D.prototype, "sheetElement", 2);
|
|
3824
3837
|
D = Q([
|
|
3825
3838
|
F("pc-bottom-sheet")
|
|
3826
3839
|
], D);
|
|
3827
|
-
var
|
|
3828
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
3840
|
+
var cr = Object.defineProperty, dr = Object.getOwnPropertyDescriptor, mt = (e, t, o, r) => {
|
|
3841
|
+
for (var s = r > 1 ? void 0 : r ? dr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
3829
3842
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
3830
|
-
return r && s &&
|
|
3843
|
+
return r && s && cr(t, o, s), s;
|
|
3831
3844
|
};
|
|
3832
|
-
const
|
|
3845
|
+
const pr = 768;
|
|
3833
3846
|
let Z = class extends N {
|
|
3834
3847
|
constructor() {
|
|
3835
3848
|
super(...arguments), this.open = !1, this.position = "auto", this.isMobile = !1, this.handleMediaChange = (e) => {
|
|
@@ -3846,7 +3859,7 @@ let Z = class extends N {
|
|
|
3846
3859
|
super.disconnectedCallback(), (e = this.mediaQuery) == null || e.removeEventListener("change", this.handleMediaChange);
|
|
3847
3860
|
}
|
|
3848
3861
|
setupMediaQuery() {
|
|
3849
|
-
this.mediaQuery = window.matchMedia(`(max-width: ${
|
|
3862
|
+
this.mediaQuery = window.matchMedia(`(max-width: ${pr - 1}px)`), this.isMobile = this.mediaQuery.matches, this.mediaQuery.addEventListener("change", this.handleMediaChange);
|
|
3850
3863
|
}
|
|
3851
3864
|
render() {
|
|
3852
3865
|
return this.isMobile ? c`
|
|
@@ -3870,27 +3883,27 @@ Z.styles = R`
|
|
|
3870
3883
|
display: contents;
|
|
3871
3884
|
}
|
|
3872
3885
|
`;
|
|
3873
|
-
|
|
3886
|
+
mt([
|
|
3874
3887
|
f({ type: Boolean, reflect: !0 })
|
|
3875
3888
|
], Z.prototype, "open", 2);
|
|
3876
|
-
|
|
3889
|
+
mt([
|
|
3877
3890
|
f({ type: String })
|
|
3878
3891
|
], Z.prototype, "position", 2);
|
|
3879
|
-
|
|
3892
|
+
mt([
|
|
3880
3893
|
f({ attribute: !1 })
|
|
3881
3894
|
], Z.prototype, "anchor", 2);
|
|
3882
|
-
|
|
3895
|
+
mt([
|
|
3883
3896
|
k()
|
|
3884
3897
|
], Z.prototype, "isMobile", 2);
|
|
3885
|
-
Z =
|
|
3898
|
+
Z = mt([
|
|
3886
3899
|
F("pc-responsive-modal")
|
|
3887
3900
|
], Z);
|
|
3888
|
-
var
|
|
3889
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
3901
|
+
var ur = Object.defineProperty, hr = Object.getOwnPropertyDescriptor, Y = (e, t, o, r) => {
|
|
3902
|
+
for (var s = r > 1 ? void 0 : r ? hr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
3890
3903
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
3891
|
-
return r && s &&
|
|
3904
|
+
return r && s && ur(t, o, s), s;
|
|
3892
3905
|
};
|
|
3893
|
-
let
|
|
3906
|
+
let z = class extends m {
|
|
3894
3907
|
constructor() {
|
|
3895
3908
|
super(), this.min = 0, this.max = 10, this.type = $.nps, this.minLabel = "Not at all", this.maxLabel = "Extremely", this.minMaxPosition = "top", this.hoverValue = -1, this.popoverOpen = !1, this.handleNumberLeave = () => {
|
|
3896
3909
|
this.hoverValue = -1;
|
|
@@ -3910,7 +3923,7 @@ let I = class extends m {
|
|
|
3910
3923
|
const i = this.dataController.isValueSelected(String(s)), a = {
|
|
3911
3924
|
"nps-button": !0,
|
|
3912
3925
|
selected: i
|
|
3913
|
-
}, l =
|
|
3926
|
+
}, l = Oo(`Rate ${s}`, i, !1);
|
|
3914
3927
|
return c`
|
|
3915
3928
|
<button
|
|
3916
3929
|
data-testid="nps-button-${s}"
|
|
@@ -3954,10 +3967,10 @@ let I = class extends m {
|
|
|
3954
3967
|
* NPS score displayed prominently in the middle
|
|
3955
3968
|
*/
|
|
3956
3969
|
renderChart() {
|
|
3957
|
-
const e = this.dataController.stats, t = (e == null ? void 0 : e.nps) ?? 0, o = 100, r = 100, s = 80, i = (
|
|
3958
|
-
x: o + s * Math.cos(
|
|
3959
|
-
y: r - s * Math.sin(
|
|
3960
|
-
}), a = i(Math.PI), l = i(Math.PI / 2), n = i(Math.PI / 4), d = i(0), p = (
|
|
3970
|
+
const e = this.dataController.stats, t = (e == null ? void 0 : e.nps) ?? 0, o = 100, r = 100, s = 80, i = (A) => ({
|
|
3971
|
+
x: o + s * Math.cos(A),
|
|
3972
|
+
y: r - s * Math.sin(A)
|
|
3973
|
+
}), a = i(Math.PI), l = i(Math.PI / 2), n = i(Math.PI / 4), d = i(0), p = (A, P, at = 0) => `M ${A.x} ${A.y} A ${s} ${s} 0 ${at} 1 ${P.x} ${P.y}`, h = p(a, l), b = p(l, n), x = p(n, d), C = ((A) => Math.PI - (A + 100) / 200 * Math.PI)(t), w = i(C);
|
|
3961
3974
|
return c`
|
|
3962
3975
|
<div class="nps-semicircle-gauge" data-testid="nps-semicircle-gauge">
|
|
3963
3976
|
<svg viewBox="0 0 200 115">
|
|
@@ -3970,10 +3983,10 @@ let I = class extends m {
|
|
|
3970
3983
|
<!-- Colored segments -->
|
|
3971
3984
|
<path class="gauge-arc gauge-arc-detractor" d="${h}" />
|
|
3972
3985
|
<path class="gauge-arc gauge-arc-passive" d="${b}" />
|
|
3973
|
-
<path class="gauge-arc gauge-arc-promoter" d="${
|
|
3986
|
+
<path class="gauge-arc gauge-arc-promoter" d="${x}" />
|
|
3974
3987
|
|
|
3975
3988
|
<!-- Needle indicator -->
|
|
3976
|
-
<circle class="gauge-needle" cx="${
|
|
3989
|
+
<circle class="gauge-needle" cx="${w.x}" cy="${w.y}" r="5" />
|
|
3977
3990
|
|
|
3978
3991
|
<!-- Score display in center -->
|
|
3979
3992
|
<text class="gauge-score" x="${o}" y="${r - 15}">${t}</text>
|
|
@@ -4033,7 +4046,7 @@ let I = class extends m {
|
|
|
4033
4046
|
* Uses SVG with 3 colored segments for detractors/passives/promoters
|
|
4034
4047
|
*/
|
|
4035
4048
|
renderInlineGauge() {
|
|
4036
|
-
const e = this.dataController.stats, t = (e == null ? void 0 : e.breakdown) || {}, o = 8, r = 2 * Math.PI * o, s =
|
|
4049
|
+
const e = this.dataController.stats, t = (e == null ? void 0 : e.breakdown) || {}, o = 8, r = 2 * Math.PI * o, s = Bo(t), i = s.detractors + s.passives + s.promoters;
|
|
4037
4050
|
if (i === 0)
|
|
4038
4051
|
return c`
|
|
4039
4052
|
<div class="inline-nps-gauge">
|
|
@@ -4042,9 +4055,9 @@ let I = class extends m {
|
|
|
4042
4055
|
</svg>
|
|
4043
4056
|
</div>
|
|
4044
4057
|
`;
|
|
4045
|
-
const a = s.detractors / i * 100, l = s.passives / i * 100, n = s.promoters / i * 100, d = a / 100 * r, p = l / 100 * r, h = n / 100 * r, b = 0,
|
|
4046
|
-
let
|
|
4047
|
-
return C !== null && (C <= 6 ?
|
|
4058
|
+
const a = s.detractors / i * 100, l = s.passives / i * 100, n = s.promoters / i * 100, d = a / 100 * r, p = l / 100 * r, h = n / 100 * r, b = 0, x = -d, E = -(d + p), C = this.getUserScore();
|
|
4059
|
+
let w = "gauge-bg";
|
|
4060
|
+
return C !== null && (C <= 6 ? w = "gauge-detractor" : C <= 8 ? w = "gauge-passive" : w = "gauge-promoter"), c`
|
|
4048
4061
|
<div class="inline-nps-gauge">
|
|
4049
4062
|
<svg viewBox="0 0 20 20">
|
|
4050
4063
|
<!-- Background circle -->
|
|
@@ -4065,7 +4078,7 @@ let I = class extends m {
|
|
|
4065
4078
|
cy="10"
|
|
4066
4079
|
r="${o}"
|
|
4067
4080
|
stroke-dasharray="${p} ${r}"
|
|
4068
|
-
stroke-dashoffset="${
|
|
4081
|
+
stroke-dashoffset="${x}"
|
|
4069
4082
|
/>
|
|
4070
4083
|
<!-- Promoter segment (green) -->
|
|
4071
4084
|
<circle
|
|
@@ -4077,7 +4090,7 @@ let I = class extends m {
|
|
|
4077
4090
|
stroke-dashoffset="${E}"
|
|
4078
4091
|
/>
|
|
4079
4092
|
<!-- Center dot showing user's score category -->
|
|
4080
|
-
<circle class="gauge-dot ${
|
|
4093
|
+
<circle class="gauge-dot ${w}" cx="10" cy="10" r="2" />
|
|
4081
4094
|
</svg>
|
|
4082
4095
|
</div>
|
|
4083
4096
|
`;
|
|
@@ -4088,7 +4101,7 @@ let I = class extends m {
|
|
|
4088
4101
|
* Shows add icon when no selection, edit icon when user has submitted
|
|
4089
4102
|
*/
|
|
4090
4103
|
renderInlineTrigger() {
|
|
4091
|
-
const t = this.displayController.shouldShowStats() && this.statsText ? this.dataController.formatStatsText(this.statsText) : "", r = this.dataController.hasLocalStats() ?
|
|
4104
|
+
const t = this.displayController.shouldShowStats() && this.statsText ? this.dataController.formatStatsText(this.statsText) : "", r = this.dataController.hasLocalStats() ? Et : Ie;
|
|
4092
4105
|
return c`
|
|
4093
4106
|
<button
|
|
4094
4107
|
class="pc-inline-trigger"
|
|
@@ -4154,7 +4167,7 @@ let I = class extends m {
|
|
|
4154
4167
|
@keydown="${(e) => {
|
|
4155
4168
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), this.displayController.toggleChartVisibility());
|
|
4156
4169
|
}}"
|
|
4157
|
-
>${this.displayController.isChartVisible ?
|
|
4170
|
+
>${this.displayController.isChartVisible ? Xt : Zt}</span
|
|
4158
4171
|
>
|
|
4159
4172
|
`;
|
|
4160
4173
|
}
|
|
@@ -4173,7 +4186,7 @@ let I = class extends m {
|
|
|
4173
4186
|
aria-label="Close"
|
|
4174
4187
|
data-testid="popover-close-button"
|
|
4175
4188
|
>
|
|
4176
|
-
${
|
|
4189
|
+
${_t}
|
|
4177
4190
|
</button>
|
|
4178
4191
|
${this.question ? c`<div class="pc-popover-question">${this.question}</div>` : u}
|
|
4179
4192
|
${this.renderPopoverNpsButtons()}
|
|
@@ -4223,11 +4236,11 @@ let I = class extends m {
|
|
|
4223
4236
|
renderStandardMode() {
|
|
4224
4237
|
const e = {
|
|
4225
4238
|
[`pc-flex-pos-${this.questionPosition}`]: !0,
|
|
4226
|
-
[`pc-flex-align-${
|
|
4239
|
+
[`pc-flex-align-${I(this.questionPosition, this.questionAlign)}`]: !0
|
|
4227
4240
|
}, t = {
|
|
4228
4241
|
nps: !0,
|
|
4229
4242
|
[`pc-flex-pos-${this.statsPosition}`]: !0,
|
|
4230
|
-
[`pc-flex-align-${
|
|
4243
|
+
[`pc-flex-align-${I(this.statsPosition, this.statsAlign)}`]: !0
|
|
4231
4244
|
};
|
|
4232
4245
|
return c`
|
|
4233
4246
|
<div class="pc-container ${y(e)}" data-testid="nps-container">
|
|
@@ -4246,32 +4259,32 @@ let I = class extends m {
|
|
|
4246
4259
|
return this.inline ? this.renderInlineMode() : this.readonly ? this.renderReadonlyMode() : this.renderStandardMode();
|
|
4247
4260
|
}
|
|
4248
4261
|
};
|
|
4249
|
-
|
|
4262
|
+
z.styles = [...m.styles, It, or];
|
|
4250
4263
|
Y([
|
|
4251
4264
|
f({ type: String, attribute: "min-label" })
|
|
4252
|
-
],
|
|
4265
|
+
], z.prototype, "minLabel", 2);
|
|
4253
4266
|
Y([
|
|
4254
4267
|
f({ type: String, attribute: "max-label" })
|
|
4255
|
-
],
|
|
4268
|
+
], z.prototype, "maxLabel", 2);
|
|
4256
4269
|
Y([
|
|
4257
4270
|
f({ type: String, attribute: "thank-you-msg" })
|
|
4258
|
-
],
|
|
4271
|
+
], z.prototype, "thankYouMsg", 2);
|
|
4259
4272
|
Y([
|
|
4260
4273
|
f({ type: String, attribute: "min-max-position" })
|
|
4261
|
-
],
|
|
4274
|
+
], z.prototype, "minMaxPosition", 2);
|
|
4262
4275
|
Y([
|
|
4263
4276
|
k()
|
|
4264
|
-
],
|
|
4277
|
+
], z.prototype, "hoverValue", 2);
|
|
4265
4278
|
Y([
|
|
4266
4279
|
k()
|
|
4267
|
-
],
|
|
4280
|
+
], z.prototype, "popoverOpen", 2);
|
|
4268
4281
|
Y([
|
|
4269
|
-
|
|
4270
|
-
],
|
|
4271
|
-
|
|
4282
|
+
gt(".pc-inline-trigger")
|
|
4283
|
+
], z.prototype, "triggerElement", 2);
|
|
4284
|
+
z = Y([
|
|
4272
4285
|
F("pc-nps")
|
|
4273
|
-
],
|
|
4274
|
-
const
|
|
4286
|
+
], z);
|
|
4287
|
+
const fr = R`
|
|
4275
4288
|
/* CSS variables inherit from parent - defaults are specified at usage sites */
|
|
4276
4289
|
|
|
4277
4290
|
.pc-container {
|
|
@@ -4656,10 +4669,10 @@ const hr = R`
|
|
|
4656
4669
|
opacity: 0.8;
|
|
4657
4670
|
}
|
|
4658
4671
|
`;
|
|
4659
|
-
var
|
|
4660
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
4672
|
+
var gr = Object.defineProperty, mr = Object.getOwnPropertyDescriptor, vt = (e, t, o, r) => {
|
|
4673
|
+
for (var s = r > 1 ? void 0 : r ? mr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
4661
4674
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
4662
|
-
return r && s &&
|
|
4675
|
+
return r && s && gr(t, o, s), s;
|
|
4663
4676
|
};
|
|
4664
4677
|
let X = class extends m {
|
|
4665
4678
|
constructor() {
|
|
@@ -4668,7 +4681,7 @@ let X = class extends m {
|
|
|
4668
4681
|
renderStatus() {
|
|
4669
4682
|
const t = {
|
|
4670
4683
|
"pc-status": !0,
|
|
4671
|
-
[`pc-flex-content-${
|
|
4684
|
+
[`pc-flex-content-${I("bottom", this.statsAlign)}`]: !0
|
|
4672
4685
|
};
|
|
4673
4686
|
return c`<div class="${y(t)}" data-testid="pc-status">
|
|
4674
4687
|
<span>${this.renderStatsText()} ${this.renderEditToggleIcon("stats-edit-button")}</span>
|
|
@@ -4719,16 +4732,16 @@ let X = class extends m {
|
|
|
4719
4732
|
*/
|
|
4720
4733
|
renderOptionIcon(e) {
|
|
4721
4734
|
if (!(e != null && e.icon)) return "";
|
|
4722
|
-
const t =
|
|
4735
|
+
const t = Qt.DECORATIVE, o = (e == null ? void 0 : e.label) || "", r = e ? this.dataController.isValueSelected(e.value) : !1, s = qe(e == null ? void 0 : e.icon, {
|
|
4723
4736
|
type: t,
|
|
4724
4737
|
alt: o,
|
|
4725
4738
|
isSelected: r
|
|
4726
4739
|
});
|
|
4727
|
-
return
|
|
4740
|
+
return Be(e == null ? void 0 : e.icon) ? c`<span
|
|
4728
4741
|
class="poll-option-icon"
|
|
4729
4742
|
aria-hidden="${s.ariaHidden ? "true" : "false"}"
|
|
4730
4743
|
>${e == null ? void 0 : e.icon}</span
|
|
4731
|
-
>` :
|
|
4744
|
+
>` : Ot(e == null ? void 0 : e.icon) ? c`<img
|
|
4732
4745
|
src="${e == null ? void 0 : e.icon}"
|
|
4733
4746
|
alt="${s.alt}"
|
|
4734
4747
|
class="poll-option-icon-img"
|
|
@@ -4756,7 +4769,7 @@ let X = class extends m {
|
|
|
4756
4769
|
selected: o,
|
|
4757
4770
|
"poll-option--compact": this.compact,
|
|
4758
4771
|
"poll-option--disabled": r
|
|
4759
|
-
}, i = t + 1, a = `poll-${this.type}-${i}`, l =
|
|
4772
|
+
}, i = t + 1, a = `poll-${this.type}-${i}`, l = Io(
|
|
4760
4773
|
e.label,
|
|
4761
4774
|
o,
|
|
4762
4775
|
r,
|
|
@@ -4813,12 +4826,12 @@ let X = class extends m {
|
|
|
4813
4826
|
renderBarChart() {
|
|
4814
4827
|
var n, d;
|
|
4815
4828
|
const e = ((n = this.dataController.stats) == null ? void 0 : n.breakdown) || {}, t = ((d = this.dataController.localStats) == null ? void 0 : d.breakdown) || {}, o = Object.values(e).reduce((p, h) => p + h, 0), r = this.options.map((p, h) => {
|
|
4816
|
-
const b = e[p.value] || 0,
|
|
4829
|
+
const b = e[p.value] || 0, x = o > 0 ? Math.round(b / o * 100) : 0, E = (t[p.value] || 0) > 0;
|
|
4817
4830
|
return {
|
|
4818
4831
|
option: p,
|
|
4819
4832
|
index: h,
|
|
4820
4833
|
voteCount: b,
|
|
4821
|
-
percentage:
|
|
4834
|
+
percentage: x,
|
|
4822
4835
|
isSelected: E
|
|
4823
4836
|
};
|
|
4824
4837
|
}), s = this.multiple ? L.GROUP : L.RADIOGROUP, i = this.question || this.name || "Options", a = ot({
|
|
@@ -4914,7 +4927,7 @@ let X = class extends m {
|
|
|
4914
4927
|
* Shows add icon when no selection, edit icon when user has submitted
|
|
4915
4928
|
*/
|
|
4916
4929
|
renderInlineTrigger() {
|
|
4917
|
-
const t = this.displayController.shouldShowStats() && this.statsText ? this.dataController.formatStatsText(this.statsText) : "", r = this.dataController.hasLocalStats() ?
|
|
4930
|
+
const t = this.displayController.shouldShowStats() && this.statsText ? this.dataController.formatStatsText(this.statsText) : "", r = this.dataController.hasLocalStats() ? Et : Ie;
|
|
4918
4931
|
return c`
|
|
4919
4932
|
<button
|
|
4920
4933
|
class="pc-inline-trigger"
|
|
@@ -4973,7 +4986,7 @@ let X = class extends m {
|
|
|
4973
4986
|
aria-label="Close"
|
|
4974
4987
|
data-testid="popover-close-button"
|
|
4975
4988
|
>
|
|
4976
|
-
${
|
|
4989
|
+
${_t}
|
|
4977
4990
|
</button>
|
|
4978
4991
|
${this.question ? c`<div class="pc-popover-question">${this.question}</div>` : u}
|
|
4979
4992
|
${e ? this.renderBarChart() : this.renderPollOptions()}
|
|
@@ -4990,7 +5003,7 @@ let X = class extends m {
|
|
|
4990
5003
|
@keydown=${(s) => {
|
|
4991
5004
|
(s.key === "Enter" || s.key === " ") && (s.preventDefault(), this.handlePopoverEditClick());
|
|
4992
5005
|
}}
|
|
4993
|
-
>${
|
|
5006
|
+
>${Et}</span
|
|
4994
5007
|
>` : u}
|
|
4995
5008
|
</div>` : u}
|
|
4996
5009
|
</div>
|
|
@@ -5047,10 +5060,10 @@ let X = class extends m {
|
|
|
5047
5060
|
* Render standard mode - original behavior
|
|
5048
5061
|
*/
|
|
5049
5062
|
renderStandardMode() {
|
|
5050
|
-
const e =
|
|
5063
|
+
const e = I(this.questionPosition, this.questionAlign), t = {
|
|
5051
5064
|
[`pc-flex-pos-${this.questionPosition}`]: !0,
|
|
5052
5065
|
[`pc-flex-align-${e}`]: !0
|
|
5053
|
-
}, o =
|
|
5066
|
+
}, o = I(this.statsPosition, this.statsAlign), r = {
|
|
5054
5067
|
"pc-body": !0,
|
|
5055
5068
|
[`pc-flex-pos-${this.statsPosition}`]: !0,
|
|
5056
5069
|
[`pc-flex-align-${o}`]: !0
|
|
@@ -5076,23 +5089,23 @@ let X = class extends m {
|
|
|
5076
5089
|
return this.inline ? this.renderInlineMode() : this.readonly ? this.renderReadonlyMode() : this.renderStandardMode();
|
|
5077
5090
|
}
|
|
5078
5091
|
};
|
|
5079
|
-
X.styles = [...m.styles,
|
|
5080
|
-
|
|
5092
|
+
X.styles = [...m.styles, It, fr];
|
|
5093
|
+
vt([
|
|
5081
5094
|
f({ type: Boolean })
|
|
5082
5095
|
], X.prototype, "multiple", 2);
|
|
5083
|
-
|
|
5096
|
+
vt([
|
|
5084
5097
|
f({ type: Boolean })
|
|
5085
5098
|
], X.prototype, "compact", 2);
|
|
5086
|
-
|
|
5099
|
+
vt([
|
|
5087
5100
|
k()
|
|
5088
5101
|
], X.prototype, "popoverOpen", 2);
|
|
5089
|
-
|
|
5090
|
-
|
|
5102
|
+
vt([
|
|
5103
|
+
gt(".pc-inline-trigger")
|
|
5091
5104
|
], X.prototype, "triggerElement", 2);
|
|
5092
|
-
X =
|
|
5105
|
+
X = vt([
|
|
5093
5106
|
F("pc-poll")
|
|
5094
5107
|
], X);
|
|
5095
|
-
const
|
|
5108
|
+
const vr = R`
|
|
5096
5109
|
/* CSS variables inherit from parent - defaults are specified at usage sites */
|
|
5097
5110
|
|
|
5098
5111
|
.pc-section {
|
|
@@ -5279,10 +5292,10 @@ const mr = R`
|
|
|
5279
5292
|
* Copyright 2018 Google LLC
|
|
5280
5293
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5281
5294
|
*/
|
|
5282
|
-
const
|
|
5295
|
+
const Ke = "important", br = " !" + Ke, yr = Fe(class extends Ye {
|
|
5283
5296
|
constructor(e) {
|
|
5284
5297
|
var t;
|
|
5285
|
-
if (super(e), e.type !==
|
|
5298
|
+
if (super(e), e.type !== He.ATTRIBUTE || e.name !== "style" || ((t = e.strings) == null ? void 0 : t.length) > 2) throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.");
|
|
5286
5299
|
}
|
|
5287
5300
|
render(e) {
|
|
5288
5301
|
return Object.keys(e).reduce((t, o) => {
|
|
@@ -5298,14 +5311,14 @@ const Ye = "important", vr = " !" + Ye, br = He(class extends Fe {
|
|
|
5298
5311
|
const s = t[r];
|
|
5299
5312
|
if (s != null) {
|
|
5300
5313
|
this.ft.add(r);
|
|
5301
|
-
const i = typeof s == "string" && s.endsWith(
|
|
5302
|
-
r.includes("-") || i ? o.setProperty(r, i ? s.slice(0, -11) : s, i ?
|
|
5314
|
+
const i = typeof s == "string" && s.endsWith(br);
|
|
5315
|
+
r.includes("-") || i ? o.setProperty(r, i ? s.slice(0, -11) : s, i ? Ke : "") : o[r] = s;
|
|
5303
5316
|
}
|
|
5304
5317
|
}
|
|
5305
5318
|
return q;
|
|
5306
5319
|
}
|
|
5307
5320
|
});
|
|
5308
|
-
function
|
|
5321
|
+
function St(e, t = {}) {
|
|
5309
5322
|
if (!e || e.length === 0)
|
|
5310
5323
|
return c`<div class="pc-bar-chart pc-bar-chart--empty">No data available</div>`;
|
|
5311
5324
|
const o = Math.max(...e.map((i) => i.value)), s = { ...{
|
|
@@ -5334,7 +5347,7 @@ function wt(e, t = {}) {
|
|
|
5334
5347
|
</div>
|
|
5335
5348
|
`;
|
|
5336
5349
|
}
|
|
5337
|
-
const
|
|
5350
|
+
const Ce = {
|
|
5338
5351
|
// Faces
|
|
5339
5352
|
smile: "😊",
|
|
5340
5353
|
laugh: "😄",
|
|
@@ -5477,17 +5490,17 @@ const Se = {
|
|
|
5477
5490
|
hiking: "🥾",
|
|
5478
5491
|
yoga: "🧘"
|
|
5479
5492
|
};
|
|
5480
|
-
function
|
|
5493
|
+
function Pt(e) {
|
|
5481
5494
|
let t = "❓", o = !1;
|
|
5482
|
-
return e ? e in
|
|
5495
|
+
return e ? e in Ce ? t = Ce[e] : Be(e) ? t = e : Ot(e) ? (o = !0, t = e) : /^\w+@\w+$/.test(e) ? t = e : e.endsWith(".svg") && !e.includes("/") ? (t = `https://cdn.jsdelivr.net/npm/@mdi/svg@7.4.47/svg/${e}`, o = !0) : t = e : t = "❓", {
|
|
5483
5496
|
icon: t,
|
|
5484
5497
|
isRemoteImage: o
|
|
5485
5498
|
};
|
|
5486
5499
|
}
|
|
5487
|
-
var
|
|
5488
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
5500
|
+
var xr = Object.defineProperty, wr = Object.getOwnPropertyDescriptor, it = (e, t, o, r) => {
|
|
5501
|
+
for (var s = r > 1 ? void 0 : r ? wr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
5489
5502
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
5490
|
-
return r && s &&
|
|
5503
|
+
return r && s && xr(t, o, s), s;
|
|
5491
5504
|
};
|
|
5492
5505
|
let H = class extends m {
|
|
5493
5506
|
constructor() {
|
|
@@ -5512,14 +5525,14 @@ let H = class extends m {
|
|
|
5512
5525
|
* Renders the star icon using resolveIcon for emoji, URL, or MDI support
|
|
5513
5526
|
*/
|
|
5514
5527
|
renderStarIcon() {
|
|
5515
|
-
const { icon: e, isRemoteImage: t } =
|
|
5528
|
+
const { icon: e, isRemoteImage: t } = Pt(this.icon);
|
|
5516
5529
|
return t ? c`<img class="star-icon-img" src="${e}" alt="star" />` : e;
|
|
5517
5530
|
}
|
|
5518
5531
|
/**
|
|
5519
5532
|
* Gets the resolved icon string (for use in chart labels)
|
|
5520
5533
|
*/
|
|
5521
5534
|
getResolvedIconString() {
|
|
5522
|
-
const { icon: e, isRemoteImage: t } =
|
|
5535
|
+
const { icon: e, isRemoteImage: t } = Pt(this.icon);
|
|
5523
5536
|
return t ? "★" : e;
|
|
5524
5537
|
}
|
|
5525
5538
|
/**
|
|
@@ -5530,7 +5543,7 @@ let H = class extends m {
|
|
|
5530
5543
|
renderStars(e = !1) {
|
|
5531
5544
|
var n;
|
|
5532
5545
|
const t = this.getUserVotePosition(), o = this.dataController.stats, r = (o == null ? void 0 : o.avg) ?? 0, s = ((n = this.dataController.localStats) == null ? void 0 : n.avg) ?? 0, i = this.readonly ? r : s, a = this.displayController.allowEdit(), l = Array.from({ length: this.numStars }, (d, p) => p + 1).map((d) => {
|
|
5533
|
-
const p = e ? t || 0 : Math.floor(i), h = d <= p || d <= (this.hoverValue || 0), b = !e && !h && d === Math.ceil(i) && i % 1 !== 0,
|
|
5546
|
+
const p = e ? t || 0 : Math.floor(i), h = d <= p || d <= (this.hoverValue || 0), b = !e && !h && d === Math.ceil(i) && i % 1 !== 0, x = {
|
|
5534
5547
|
star: !0,
|
|
5535
5548
|
selected: h,
|
|
5536
5549
|
partial: b,
|
|
@@ -5540,8 +5553,8 @@ let H = class extends m {
|
|
|
5540
5553
|
<div class="pc-section" data-testid="pc-section">
|
|
5541
5554
|
<span
|
|
5542
5555
|
data-testid="${e ? "popover" : "stars-view"}-star-${d}"
|
|
5543
|
-
class=${y(
|
|
5544
|
-
style=${
|
|
5556
|
+
class=${y(x)}
|
|
5557
|
+
style=${yr(E)}
|
|
5545
5558
|
role="${a ? "button" : "presentation"}"
|
|
5546
5559
|
tabindex="${a ? "0" : ""}"
|
|
5547
5560
|
aria-label="${a ? `Rate ${d} star${d > 1 ? "s" : ""}` : ""}"
|
|
@@ -5569,7 +5582,7 @@ let H = class extends m {
|
|
|
5569
5582
|
label: n,
|
|
5570
5583
|
value: d,
|
|
5571
5584
|
icon: r
|
|
5572
|
-
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l =
|
|
5585
|
+
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l = St(s, {
|
|
5573
5586
|
barColor: a,
|
|
5574
5587
|
labelFormatter: (n) => `${n.label} ${n.icon}`,
|
|
5575
5588
|
valueFormatter: (n) => `${o > 0 ? Math.round(n.value / o * 100) : 0}%`
|
|
@@ -5669,7 +5682,7 @@ let H = class extends m {
|
|
|
5669
5682
|
aria-label="Close"
|
|
5670
5683
|
data-testid="popover-close-button"
|
|
5671
5684
|
>
|
|
5672
|
-
${
|
|
5685
|
+
${_t}
|
|
5673
5686
|
</button>
|
|
5674
5687
|
${this.question ? c`<div class="pc-popover-question">${this.question}</div>` : u}
|
|
5675
5688
|
${this.renderStars(!0)}
|
|
@@ -5692,7 +5705,7 @@ let H = class extends m {
|
|
|
5692
5705
|
label: n,
|
|
5693
5706
|
value: d,
|
|
5694
5707
|
icon: r
|
|
5695
|
-
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l =
|
|
5708
|
+
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l = St(s, {
|
|
5696
5709
|
barColor: a,
|
|
5697
5710
|
labelFormatter: (n) => `${n.label} ${n.icon}`,
|
|
5698
5711
|
valueFormatter: (n) => `${o > 0 ? Math.round(n.value / o * 100) : 0}%`
|
|
@@ -5718,7 +5731,7 @@ let H = class extends m {
|
|
|
5718
5731
|
@keydown="${(e) => {
|
|
5719
5732
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), this.displayController.toggleChartVisibility());
|
|
5720
5733
|
}}"
|
|
5721
|
-
>${this.displayController.isChartVisible ?
|
|
5734
|
+
>${this.displayController.isChartVisible ? Xt : Zt}</span
|
|
5722
5735
|
>
|
|
5723
5736
|
`;
|
|
5724
5737
|
}
|
|
@@ -5761,7 +5774,7 @@ let H = class extends m {
|
|
|
5761
5774
|
label: n,
|
|
5762
5775
|
value: d,
|
|
5763
5776
|
icon: r
|
|
5764
|
-
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l =
|
|
5777
|
+
})), a = getComputedStyle(this).getPropertyValue("--pc-accent-color").trim() || "#ffc107", l = St(s, {
|
|
5765
5778
|
barColor: a,
|
|
5766
5779
|
labelFormatter: (n) => `${n.label} ${n.icon}`,
|
|
5767
5780
|
valueFormatter: (n) => `${o > 0 ? Math.round(n.value / o * 100) : 0}%`
|
|
@@ -5776,10 +5789,10 @@ let H = class extends m {
|
|
|
5776
5789
|
* Render standard mode - original behavior
|
|
5777
5790
|
*/
|
|
5778
5791
|
renderStandardMode() {
|
|
5779
|
-
const e =
|
|
5792
|
+
const e = I(this.questionPosition, this.questionAlign), t = {
|
|
5780
5793
|
[`pc-flex-pos-${this.questionPosition}`]: !0,
|
|
5781
5794
|
[`pc-flex-align-${e}`]: !0
|
|
5782
|
-
}, o =
|
|
5795
|
+
}, o = I(this.statsPosition, this.statsAlign), r = {
|
|
5783
5796
|
"pc-body": !0,
|
|
5784
5797
|
[`pc-flex-pos-${this.statsPosition}`]: !0,
|
|
5785
5798
|
[`pc-flex-align-${o}`]: !0
|
|
@@ -5799,7 +5812,7 @@ let H = class extends m {
|
|
|
5799
5812
|
return this.inline ? this.renderInlineMode() : this.readonly ? this.renderReadonlyMode() : this.renderStandardMode();
|
|
5800
5813
|
}
|
|
5801
5814
|
};
|
|
5802
|
-
H.styles = [...m.styles,
|
|
5815
|
+
H.styles = [...m.styles, It, vr];
|
|
5803
5816
|
it([
|
|
5804
5817
|
f({ type: String })
|
|
5805
5818
|
], H.prototype, "icon", 2);
|
|
@@ -5813,12 +5826,12 @@ it([
|
|
|
5813
5826
|
k()
|
|
5814
5827
|
], H.prototype, "popoverOpen", 2);
|
|
5815
5828
|
it([
|
|
5816
|
-
|
|
5829
|
+
gt(".pc-inline-trigger")
|
|
5817
5830
|
], H.prototype, "triggerElement", 2);
|
|
5818
5831
|
H = it([
|
|
5819
5832
|
F("pc-stars")
|
|
5820
5833
|
], H);
|
|
5821
|
-
const
|
|
5834
|
+
const $r = R`
|
|
5822
5835
|
/* Adjust stats text for reactions */
|
|
5823
5836
|
.pc-stats-text {
|
|
5824
5837
|
font-size: var(--pc-font-size-small, var(--default-font-size-small));
|
|
@@ -6081,11 +6094,11 @@ const wr = R`
|
|
|
6081
6094
|
animation: none;
|
|
6082
6095
|
}
|
|
6083
6096
|
}
|
|
6084
|
-
`,
|
|
6085
|
-
var
|
|
6086
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
6097
|
+
`, Sr = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='24px'%20viewBox='0%20-960%20960%20960'%20width='24px'%20fill='%23434343'%3e%3cpath%20d='M480-480Zm0%20400q-83%200-156-31.5T197-197q-54-54-85.5-127T80-480q0-83%2031.5-156T197-763q54-54%20127-85.5T480-880q43%200%2083%208.5t77%2024.5v90q-35-20-75.5-31.5T480-800q-133%200-226.5%2093.5T160-480q0%20133%2093.5%20226.5T480-160q133%200%20226.5-93.5T800-480q0-32-6.5-62T776-600h86q9%2029%2013.5%2058.5T880-480q0%2083-31.5%20156T763-197q-54%2054-127%2085.5T480-80Zm320-600v-80h-80v-80h80v-80h80v80h80v80h-80v80h-80ZM620-520q25%200%2042.5-17.5T680-580q0-25-17.5-42.5T620-640q-25%200-42.5%2017.5T560-580q0%2025%2017.5%2042.5T620-520Zm-280%200q25%200%2042.5-17.5T400-580q0-25-17.5-42.5T340-640q-25%200-42.5%2017.5T280-580q0%2025%2017.5%2042.5T340-520Zm140%20260q68%200%20123.5-38.5T684-400H276q25%2063%2080.5%20101.5T480-260Z'/%3e%3c/svg%3e";
|
|
6098
|
+
var Cr = Object.defineProperty, kr = Object.getOwnPropertyDescriptor, zt = (e, t, o, r) => {
|
|
6099
|
+
for (var s = r > 1 ? void 0 : r ? kr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
6087
6100
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
6088
|
-
return r && s &&
|
|
6101
|
+
return r && s && Cr(t, o, s), s;
|
|
6089
6102
|
};
|
|
6090
6103
|
let st = class extends m {
|
|
6091
6104
|
constructor() {
|
|
@@ -6111,7 +6124,7 @@ let st = class extends m {
|
|
|
6111
6124
|
* Renders the icon for a reaction
|
|
6112
6125
|
*/
|
|
6113
6126
|
renderReactionIcon(e, t) {
|
|
6114
|
-
const { icon: o, isRemoteImage: r } =
|
|
6127
|
+
const { icon: o, isRemoteImage: r } = Pt(e), s = Qt.FUNCTIONAL, i = t.tooltip || `${t.value} reaction`, a = qe(o, {
|
|
6115
6128
|
type: s,
|
|
6116
6129
|
alt: i,
|
|
6117
6130
|
ariaLabel: i,
|
|
@@ -6165,7 +6178,7 @@ let st = class extends m {
|
|
|
6165
6178
|
aria-expanded="${this.displayController.shouldShowReactionPopover()}"
|
|
6166
6179
|
aria-haspopup="true"
|
|
6167
6180
|
>
|
|
6168
|
-
<img src="${
|
|
6181
|
+
<img src="${Sr}" alt="" class="trigger-icon" />
|
|
6169
6182
|
</button>
|
|
6170
6183
|
`;
|
|
6171
6184
|
}
|
|
@@ -6263,7 +6276,7 @@ let st = class extends m {
|
|
|
6263
6276
|
icon: (p == null ? void 0 : p.icon) || n
|
|
6264
6277
|
// Use the icon or fall back to reaction value
|
|
6265
6278
|
};
|
|
6266
|
-
}), r = getComputedStyle(this), s = r.getPropertyValue("--pc-primary-color").trim(), a = r.getPropertyValue("--pc-accent-color").trim() || s || "#ffc107", l =
|
|
6279
|
+
}), r = getComputedStyle(this), s = r.getPropertyValue("--pc-primary-color").trim(), a = r.getPropertyValue("--pc-accent-color").trim() || s || "#ffc107", l = St(o, {
|
|
6267
6280
|
barColor: a,
|
|
6268
6281
|
labelFormatter: (n) => `${n.label}`,
|
|
6269
6282
|
valueFormatter: (n) => `${e.totalCount > 0 ? Math.round(n.value / e.totalCount * 100) : 0}%`
|
|
@@ -6304,10 +6317,10 @@ let st = class extends m {
|
|
|
6304
6317
|
* (Reactions are inherently inline, so inline mode = standard mode)
|
|
6305
6318
|
*/
|
|
6306
6319
|
renderStandardMode() {
|
|
6307
|
-
const e =
|
|
6320
|
+
const e = I(this.questionPosition, this.questionAlign), t = {
|
|
6308
6321
|
[`pc-flex-pos-${this.questionPosition}`]: !0,
|
|
6309
6322
|
[`pc-flex-align-${e}`]: !0
|
|
6310
|
-
}, o =
|
|
6323
|
+
}, o = I(this.statsPosition, this.statsAlign), r = {
|
|
6311
6324
|
"pc-body": !0,
|
|
6312
6325
|
[`pc-flex-pos-${this.statsPosition}`]: !0,
|
|
6313
6326
|
[`pc-flex-align-${o}`]: !0
|
|
@@ -6327,31 +6340,31 @@ let st = class extends m {
|
|
|
6327
6340
|
return this.readonly ? this.renderReadonlyMode() : this.renderStandardMode();
|
|
6328
6341
|
}
|
|
6329
6342
|
};
|
|
6330
|
-
st.styles = [...m.styles,
|
|
6331
|
-
|
|
6343
|
+
st.styles = [...m.styles, It, $r];
|
|
6344
|
+
zt([
|
|
6332
6345
|
f({ type: Boolean, attribute: "show-counts" })
|
|
6333
6346
|
], st.prototype, "showCounts", 2);
|
|
6334
|
-
|
|
6347
|
+
zt([
|
|
6335
6348
|
f({ type: Boolean, reflect: !0 })
|
|
6336
6349
|
], st.prototype, "compact", 2);
|
|
6337
|
-
|
|
6350
|
+
zt([
|
|
6338
6351
|
f({ type: String, attribute: "popup-position" })
|
|
6339
6352
|
], st.prototype, "popupPosition", 2);
|
|
6340
|
-
st =
|
|
6353
|
+
st = zt([
|
|
6341
6354
|
F("pc-reaction")
|
|
6342
6355
|
], st);
|
|
6343
|
-
function
|
|
6356
|
+
function lt(e, t, o = void 0) {
|
|
6344
6357
|
const r = e.getAttribute(t);
|
|
6345
6358
|
return r === null ? o : r == null ? void 0 : r.trim();
|
|
6346
6359
|
}
|
|
6347
|
-
function
|
|
6360
|
+
function Er(e, t = void 0) {
|
|
6348
6361
|
const o = e.textContent;
|
|
6349
6362
|
return o === "" || o === null ? t : o == null ? void 0 : o.trim();
|
|
6350
6363
|
}
|
|
6351
|
-
var
|
|
6352
|
-
for (var s = r > 1 ? void 0 : r ?
|
|
6364
|
+
var Ar = Object.defineProperty, Pr = Object.getOwnPropertyDescriptor, bt = (e, t, o, r) => {
|
|
6365
|
+
for (var s = r > 1 ? void 0 : r ? Pr(t, o) : t, i = e.length - 1, a; i >= 0; i--)
|
|
6353
6366
|
(a = e[i]) && (s = (r ? a(t, o, s) : a(s)) || s);
|
|
6354
|
-
return r && s &&
|
|
6367
|
+
return r && s && Ar(t, o, s), s;
|
|
6355
6368
|
};
|
|
6356
6369
|
let J = class extends N {
|
|
6357
6370
|
constructor() {
|
|
@@ -6412,16 +6425,16 @@ let J = class extends N {
|
|
|
6412
6425
|
const e = this.querySelector("pc-poll, pc-reaction");
|
|
6413
6426
|
if (!e) return;
|
|
6414
6427
|
const t = this.querySelectorAll("poll-catch-option");
|
|
6415
|
-
let r =
|
|
6428
|
+
let r = Ve(this.options).map((s) => ({
|
|
6416
6429
|
value: s,
|
|
6417
6430
|
label: s,
|
|
6418
6431
|
icon: e.tagName === "PC-REACTION" ? s : void 0
|
|
6419
6432
|
// REACTION widget uses options for the icon
|
|
6420
6433
|
}));
|
|
6421
6434
|
t && t.length > 0 && (r = Array.from(t).map((s) => {
|
|
6422
|
-
const i =
|
|
6435
|
+
const i = lt(s, "value", "") || "", a = lt(s, "label", Er(s, i)) || "", l = lt(s, "icon", void 0), n = lt(s, "tooltip", void 0), d = lt(s, "disabled", void 0), p = { value: i, label: a };
|
|
6423
6436
|
if (l !== void 0) {
|
|
6424
|
-
const h =
|
|
6437
|
+
const h = Pt(l);
|
|
6425
6438
|
p.icon = h.icon;
|
|
6426
6439
|
}
|
|
6427
6440
|
return n !== void 0 && (p.tooltip = n), d !== void 0 && (p.disabled = !0), p;
|
|
@@ -6447,19 +6460,19 @@ let J = class extends N {
|
|
|
6447
6460
|
}
|
|
6448
6461
|
}
|
|
6449
6462
|
};
|
|
6450
|
-
|
|
6463
|
+
bt([
|
|
6451
6464
|
f({ type: String })
|
|
6452
6465
|
], J.prototype, "type", 2);
|
|
6453
|
-
|
|
6466
|
+
bt([
|
|
6454
6467
|
f({ type: String })
|
|
6455
6468
|
], J.prototype, "options", 2);
|
|
6456
|
-
|
|
6469
|
+
bt([
|
|
6457
6470
|
f({ type: String, attribute: "widget-id" })
|
|
6458
6471
|
], J.prototype, "widgetId", 2);
|
|
6459
|
-
|
|
6472
|
+
bt([
|
|
6460
6473
|
k()
|
|
6461
6474
|
], J.prototype, "parsedOptions", 2);
|
|
6462
|
-
J =
|
|
6475
|
+
J = bt([
|
|
6463
6476
|
F("poll-catch")
|
|
6464
6477
|
], J);
|
|
6465
6478
|
export {
|