umaki 0.1.1 → 0.2.1

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.
Files changed (67) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +8 -0
  2. package/dist/_virtual/dayjs.min.js +4 -0
  3. package/dist/_virtual/index.js +4 -0
  4. package/dist/_virtual/isBetween.js +4 -0
  5. package/dist/_virtual/purify.js +4 -0
  6. package/dist/_virtual/store2.js +4 -0
  7. package/dist/_virtual/ua-parser.js +4 -0
  8. package/dist/index.d.ts +1 -0
  9. package/dist/index.js +86 -2869
  10. package/dist/libs/control/bgScrollStop.js +7 -0
  11. package/dist/libs/control/pd.js +4 -0
  12. package/dist/libs/control/scrollToHash.js +21 -0
  13. package/dist/libs/control/videoPlayControl.js +19 -0
  14. package/dist/libs/convert/changeDateStringToSpecificFormat.js +5 -0
  15. package/dist/libs/convert/jsonStringToJsonObject.js +9 -0
  16. package/dist/libs/get/getAspectRatio.js +8 -0
  17. package/dist/libs/get/getClassNames.js +4 -0
  18. package/dist/libs/get/getDocumentHeight.js +4 -0
  19. package/dist/libs/get/getEventPaths.js +17 -0
  20. package/dist/libs/get/getGcd.js +8 -0
  21. package/dist/libs/get/getOrientation.js +4 -0
  22. package/dist/libs/get/getParentList.js +7 -0
  23. package/dist/libs/get/getQueryParams.js +16 -0
  24. package/dist/libs/get/getRem.js +4 -0
  25. package/dist/libs/get/getScrollbarWidth.js +4 -0
  26. package/dist/libs/get/getSessionStorage.js +8 -0
  27. package/dist/libs/get/getStringLength.js +5 -0
  28. package/dist/libs/get/getStylePropertyValue.js +4 -0
  29. package/dist/libs/get/getStylePropertyValueToNumber.js +5 -0
  30. package/dist/libs/get/getUaData.js +16 -0
  31. package/dist/libs/is/isBetweenDateTime.js +12 -0
  32. package/dist/libs/is/isExistAllElements.js +4 -0
  33. package/dist/libs/is/isIpad.js +9 -0
  34. package/dist/libs/is/isKeyExists.js +4 -0
  35. package/dist/libs/is/isSafari.js +8 -0
  36. package/dist/libs/is/isScrollable.js +7 -0
  37. package/dist/libs/is/isTouchSupport.js +5 -0
  38. package/dist/libs/remove/removeAllHtmlTags.js +9 -0
  39. package/dist/libs/remove/removeAttribute.js +6 -0
  40. package/dist/libs/remove/removeSessionStorage.js +7 -0
  41. package/dist/libs/remove/removeStylePropertyValue.js +6 -0
  42. package/dist/libs/set/set100vh.js +7 -0
  43. package/dist/libs/set/set100vw.js +7 -0
  44. package/dist/libs/set/setAttribute.js +6 -0
  45. package/dist/libs/set/setScrollPositionToCenter.js +7 -0
  46. package/dist/libs/set/setSessionStorage.js +7 -0
  47. package/dist/libs/set/setStylePropertyValue.js +6 -0
  48. package/dist/libs/to/toBoolean.js +4 -0
  49. package/dist/libs/to/toPositiveNumber.js +4 -0
  50. package/dist/libs/transform/wrapTextWithSpans.js +17 -0
  51. package/dist/libs/wait/sleep.js +4 -0
  52. package/dist/libs/wait/waitForAllMediaLoaded.js +28 -0
  53. package/dist/node_modules/dayjs/dayjs.min.js +282 -0
  54. package/dist/node_modules/dayjs/plugin/isBetween.js +19 -0
  55. package/dist/node_modules/decode-uri-component/index.js +55 -0
  56. package/dist/node_modules/dompurify/dist/purify.js +531 -0
  57. package/dist/node_modules/filter-obj/index.js +20 -0
  58. package/dist/node_modules/is-touch-device/build/index.js +16 -0
  59. package/dist/node_modules/isomorphic-dompurify/browser.js +7 -0
  60. package/dist/node_modules/query-string/base.js +257 -0
  61. package/dist/node_modules/query-string/index.js +4 -0
  62. package/dist/node_modules/runes2/dist/index.esm.js +76 -0
  63. package/dist/node_modules/split-on-first/index.js +14 -0
  64. package/dist/node_modules/store2/dist/store2.js +225 -0
  65. package/dist/node_modules/ua-parser-js/src/ua-parser.js +1218 -0
  66. package/package.json +4 -1
  67. package/dist/index.umd.cjs +0 -3
package/dist/index.js CHANGED
@@ -1,2871 +1,88 @@
1
- const qr = () => window.innerWidth - document.body.clientWidth, Ln = (e = !0) => {
2
- document.body.style.paddingRight = e ? `${qr()}px` : "", e && (document.body.style.overflow = "hidden"), e || (document.body.style.overflow = "");
3
- }, Pn = (e) => e.preventDefault(), kn = async (e, t = !0, i) => {
4
- const r = e.replace("#", ""), s = document.getElementById(r);
5
- if (!s) return !1;
6
- const c = Math.floor(
7
- s.getBoundingClientRect().top + window.scrollY
8
- ) - (i || 0);
9
- return window.scrollTo({
10
- top: c,
11
- behavior: t ? "smooth" : "instant"
12
- }), new Promise((d) => {
13
- const O = setTimeout(() => {
14
- window.removeEventListener("scroll", P), d(!1);
15
- }, 1e3), P = () => {
16
- window.scrollY === c && (window.removeEventListener("scroll", P), clearTimeout(O), d(!0));
17
- };
18
- window.scrollY === c && (clearTimeout(O), d(!0)), window.scrollY !== c && window.addEventListener("scroll", P, !1);
19
- });
20
- }, or = (e) => e ? e.toLowerCase() === "true" : !1, Fn = async (e, t) => {
21
- if (t && e.paused) {
22
- if (or(e.dataset.playing)) return;
23
- const r = e.play();
24
- if (r === void 0) return;
25
- try {
26
- await r, e.currentTime = 0, e.dataset.playing = "true";
27
- } catch {
28
- }
29
- }
30
- if (!t && !e.paused) {
31
- if (!or(e.dataset.playing)) return;
32
- e.pause(), e.dataset.playing = "false";
33
- }
34
- };
35
- var Ue = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
36
- function Ye(e) {
37
- return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
38
- }
39
- var hr = { exports: {} };
40
- (function(e, t) {
41
- (function(i, r) {
42
- e.exports = r();
43
- })(Ue, function() {
44
- var i = 1e3, r = 6e4, s = 36e5, o = "millisecond", a = "second", c = "minute", d = "hour", O = "day", P = "week", j = "month", u = "quarter", m = "year", l = "date", f = "Invalid Date", h = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, oe = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, pe = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(S) {
45
- var w = ["th", "st", "nd", "rd"], g = S % 100;
46
- return "[" + S + (w[(g - 20) % 10] || w[g] || w[0]) + "]";
47
- } }, M = function(S, w, g) {
48
- var T = String(S);
49
- return !T || T.length >= w ? S : "" + Array(w + 1 - T.length).join(g) + S;
50
- }, C = { s: M, z: function(S) {
51
- var w = -S.utcOffset(), g = Math.abs(w), T = Math.floor(g / 60), b = g % 60;
52
- return (w <= 0 ? "+" : "-") + M(T, 2, "0") + ":" + M(b, 2, "0");
53
- }, m: function S(w, g) {
54
- if (w.date() < g.date()) return -S(g, w);
55
- var T = 12 * (g.year() - w.year()) + (g.month() - w.month()), b = w.clone().add(T, j), R = g - b < 0, v = w.clone().add(T + (R ? -1 : 1), j);
56
- return +(-(T + (g - b) / (R ? b - v : v - b)) || 0);
57
- }, a: function(S) {
58
- return S < 0 ? Math.ceil(S) || 0 : Math.floor(S);
59
- }, p: function(S) {
60
- return { M: j, y: m, w: P, d: O, D: l, h: d, m: c, s: a, ms: o, Q: u }[S] || String(S || "").toLowerCase().replace(/s$/, "");
61
- }, u: function(S) {
62
- return S === void 0;
63
- } }, B = "en", z = {};
64
- z[B] = pe;
65
- var be = "$isDayjsObject", X = function(S) {
66
- return S instanceof ae || !(!S || !S[be]);
67
- }, Ae = function S(w, g, T) {
68
- var b;
69
- if (!w) return B;
70
- if (typeof w == "string") {
71
- var R = w.toLowerCase();
72
- z[R] && (b = R), g && (z[R] = g, b = R);
73
- var v = w.split("-");
74
- if (!b && v.length > 1) return S(v[0]);
75
- } else {
76
- var H = w.name;
77
- z[H] = w, b = H;
78
- }
79
- return !T && b && (B = b), b || !T && B;
80
- }, _ = function(S, w) {
81
- if (X(S)) return S.clone();
82
- var g = typeof w == "object" ? w : {};
83
- return g.date = S, g.args = arguments, new ae(g);
84
- }, U = C;
85
- U.l = Ae, U.i = X, U.w = function(S, w) {
86
- return _(S, { locale: w.$L, utc: w.$u, x: w.$x, $offset: w.$offset });
87
- };
88
- var ae = function() {
89
- function S(g) {
90
- this.$L = Ae(g.locale, null, !0), this.parse(g), this.$x = this.$x || g.x || {}, this[be] = !0;
91
- }
92
- var w = S.prototype;
93
- return w.parse = function(g) {
94
- this.$d = function(T) {
95
- var b = T.date, R = T.utc;
96
- if (b === null) return /* @__PURE__ */ new Date(NaN);
97
- if (U.u(b)) return /* @__PURE__ */ new Date();
98
- if (b instanceof Date) return new Date(b);
99
- if (typeof b == "string" && !/Z$/i.test(b)) {
100
- var v = b.match(h);
101
- if (v) {
102
- var H = v[2] - 1 || 0, W = (v[7] || "0").substring(0, 3);
103
- return R ? new Date(Date.UTC(v[1], H, v[3] || 1, v[4] || 0, v[5] || 0, v[6] || 0, W)) : new Date(v[1], H, v[3] || 1, v[4] || 0, v[5] || 0, v[6] || 0, W);
104
- }
105
- }
106
- return new Date(b);
107
- }(g), this.init();
108
- }, w.init = function() {
109
- var g = this.$d;
110
- this.$y = g.getFullYear(), this.$M = g.getMonth(), this.$D = g.getDate(), this.$W = g.getDay(), this.$H = g.getHours(), this.$m = g.getMinutes(), this.$s = g.getSeconds(), this.$ms = g.getMilliseconds();
111
- }, w.$utils = function() {
112
- return U;
113
- }, w.isValid = function() {
114
- return this.$d.toString() !== f;
115
- }, w.isSame = function(g, T) {
116
- var b = _(g);
117
- return this.startOf(T) <= b && b <= this.endOf(T);
118
- }, w.isAfter = function(g, T) {
119
- return _(g) < this.startOf(T);
120
- }, w.isBefore = function(g, T) {
121
- return this.endOf(T) < _(g);
122
- }, w.$g = function(g, T, b) {
123
- return U.u(g) ? this[T] : this.set(b, g);
124
- }, w.unix = function() {
125
- return Math.floor(this.valueOf() / 1e3);
126
- }, w.valueOf = function() {
127
- return this.$d.getTime();
128
- }, w.startOf = function(g, T) {
129
- var b = this, R = !!U.u(T) || T, v = U.p(g), H = function(_e, J) {
130
- var ge = U.w(b.$u ? Date.UTC(b.$y, J, _e) : new Date(b.$y, J, _e), b);
131
- return R ? ge : ge.endOf(O);
132
- }, W = function(_e, J) {
133
- return U.w(b.toDate()[_e].apply(b.toDate("s"), (R ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(J)), b);
134
- }, Y = this.$W, q = this.$M, ee = this.$D, we = "set" + (this.$u ? "UTC" : "");
135
- switch (v) {
136
- case m:
137
- return R ? H(1, 0) : H(31, 11);
138
- case j:
139
- return R ? H(1, q) : H(0, q + 1);
140
- case P:
141
- var he = this.$locale().weekStart || 0, Ee = (Y < he ? Y + 7 : Y) - he;
142
- return H(R ? ee - Ee : ee + (6 - Ee), q);
143
- case O:
144
- case l:
145
- return W(we + "Hours", 0);
146
- case d:
147
- return W(we + "Minutes", 1);
148
- case c:
149
- return W(we + "Seconds", 2);
150
- case a:
151
- return W(we + "Milliseconds", 3);
152
- default:
153
- return this.clone();
154
- }
155
- }, w.endOf = function(g) {
156
- return this.startOf(g, !1);
157
- }, w.$set = function(g, T) {
158
- var b, R = U.p(g), v = "set" + (this.$u ? "UTC" : ""), H = (b = {}, b[O] = v + "Date", b[l] = v + "Date", b[j] = v + "Month", b[m] = v + "FullYear", b[d] = v + "Hours", b[c] = v + "Minutes", b[a] = v + "Seconds", b[o] = v + "Milliseconds", b)[R], W = R === O ? this.$D + (T - this.$W) : T;
159
- if (R === j || R === m) {
160
- var Y = this.clone().set(l, 1);
161
- Y.$d[H](W), Y.init(), this.$d = Y.set(l, Math.min(this.$D, Y.daysInMonth())).$d;
162
- } else H && this.$d[H](W);
163
- return this.init(), this;
164
- }, w.set = function(g, T) {
165
- return this.clone().$set(g, T);
166
- }, w.get = function(g) {
167
- return this[U.p(g)]();
168
- }, w.add = function(g, T) {
169
- var b, R = this;
170
- g = Number(g);
171
- var v = U.p(T), H = function(q) {
172
- var ee = _(R);
173
- return U.w(ee.date(ee.date() + Math.round(q * g)), R);
174
- };
175
- if (v === j) return this.set(j, this.$M + g);
176
- if (v === m) return this.set(m, this.$y + g);
177
- if (v === O) return H(1);
178
- if (v === P) return H(7);
179
- var W = (b = {}, b[c] = r, b[d] = s, b[a] = i, b)[v] || 1, Y = this.$d.getTime() + g * W;
180
- return U.w(Y, this);
181
- }, w.subtract = function(g, T) {
182
- return this.add(-1 * g, T);
183
- }, w.format = function(g) {
184
- var T = this, b = this.$locale();
185
- if (!this.isValid()) return b.invalidDate || f;
186
- var R = g || "YYYY-MM-DDTHH:mm:ssZ", v = U.z(this), H = this.$H, W = this.$m, Y = this.$M, q = b.weekdays, ee = b.months, we = b.meridiem, he = function(J, ge, Re, Te) {
187
- return J && (J[ge] || J(T, R)) || Re[ge].slice(0, Te);
188
- }, Ee = function(J) {
189
- return U.s(H % 12 || 12, J, "0");
190
- }, _e = we || function(J, ge, Re) {
191
- var Te = J < 12 ? "AM" : "PM";
192
- return Re ? Te.toLowerCase() : Te;
193
- };
194
- return R.replace(oe, function(J, ge) {
195
- return ge || function(Re) {
196
- switch (Re) {
197
- case "YY":
198
- return String(T.$y).slice(-2);
199
- case "YYYY":
200
- return U.s(T.$y, 4, "0");
201
- case "M":
202
- return Y + 1;
203
- case "MM":
204
- return U.s(Y + 1, 2, "0");
205
- case "MMM":
206
- return he(b.monthsShort, Y, ee, 3);
207
- case "MMMM":
208
- return he(ee, Y);
209
- case "D":
210
- return T.$D;
211
- case "DD":
212
- return U.s(T.$D, 2, "0");
213
- case "d":
214
- return String(T.$W);
215
- case "dd":
216
- return he(b.weekdaysMin, T.$W, q, 2);
217
- case "ddd":
218
- return he(b.weekdaysShort, T.$W, q, 3);
219
- case "dddd":
220
- return q[T.$W];
221
- case "H":
222
- return String(H);
223
- case "HH":
224
- return U.s(H, 2, "0");
225
- case "h":
226
- return Ee(1);
227
- case "hh":
228
- return Ee(2);
229
- case "a":
230
- return _e(H, W, !0);
231
- case "A":
232
- return _e(H, W, !1);
233
- case "m":
234
- return String(W);
235
- case "mm":
236
- return U.s(W, 2, "0");
237
- case "s":
238
- return String(T.$s);
239
- case "ss":
240
- return U.s(T.$s, 2, "0");
241
- case "SSS":
242
- return U.s(T.$ms, 3, "0");
243
- case "Z":
244
- return v;
245
- }
246
- return null;
247
- }(J) || v.replace(":", "");
248
- });
249
- }, w.utcOffset = function() {
250
- return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
251
- }, w.diff = function(g, T, b) {
252
- var R, v = this, H = U.p(T), W = _(g), Y = (W.utcOffset() - this.utcOffset()) * r, q = this - W, ee = function() {
253
- return U.m(v, W);
254
- };
255
- switch (H) {
256
- case m:
257
- R = ee() / 12;
258
- break;
259
- case j:
260
- R = ee();
261
- break;
262
- case u:
263
- R = ee() / 3;
264
- break;
265
- case P:
266
- R = (q - Y) / 6048e5;
267
- break;
268
- case O:
269
- R = (q - Y) / 864e5;
270
- break;
271
- case d:
272
- R = q / s;
273
- break;
274
- case c:
275
- R = q / r;
276
- break;
277
- case a:
278
- R = q / i;
279
- break;
280
- default:
281
- R = q;
282
- }
283
- return b ? R : U.a(R);
284
- }, w.daysInMonth = function() {
285
- return this.endOf(j).$D;
286
- }, w.$locale = function() {
287
- return z[this.$L];
288
- }, w.locale = function(g, T) {
289
- if (!g) return this.$L;
290
- var b = this.clone(), R = Ae(g, T, !0);
291
- return R && (b.$L = R), b;
292
- }, w.clone = function() {
293
- return U.w(this.$d, this);
294
- }, w.toDate = function() {
295
- return new Date(this.valueOf());
296
- }, w.toJSON = function() {
297
- return this.isValid() ? this.toISOString() : null;
298
- }, w.toISOString = function() {
299
- return this.$d.toISOString();
300
- }, w.toString = function() {
301
- return this.$d.toUTCString();
302
- }, S;
303
- }(), de = ae.prototype;
304
- return _.prototype = de, [["$ms", o], ["$s", a], ["$m", c], ["$H", d], ["$W", O], ["$M", j], ["$y", m], ["$D", l]].forEach(function(S) {
305
- de[S[1]] = function(w) {
306
- return this.$g(w, S[0], S[1]);
307
- };
308
- }), _.extend = function(S, w) {
309
- return S.$i || (S(w, ae, _), S.$i = !0), _;
310
- }, _.locale = Ae, _.isDayjs = X, _.unix = function(S) {
311
- return _(1e3 * S);
312
- }, _.en = z[B], _.Ls = z, _.p = {}, _;
313
- });
314
- })(hr);
315
- var Xr = hr.exports;
316
- const Fe = /* @__PURE__ */ Ye(Xr), Un = (e, t = "YYYY年MM月DD日") => Fe(e).format(t), Hn = (e) => {
317
- try {
318
- return JSON.parse(e);
319
- } catch {
320
- }
321
- }, sr = (e) => Math.abs(e), gr = (e, t) => {
322
- const i = sr(Math.abs(e)), r = sr(Math.abs(t));
323
- return r === 0 ? i : gr(r, i % r);
324
- }, $n = (e, t) => {
325
- const i = gr(e, t);
326
- return { w: e / i, h: t / i };
327
- }, Bn = (e) => String(e.classList).split(" ").filter((i) => i), zn = () => document.body.clientHeight - window.innerHeight, Wn = (e) => {
328
- var s;
329
- let t = ((s = e.composedPath) == null ? void 0 : s.call(e)) || null;
330
- const i = e.target;
331
- if (t != null)
332
- return t = t.indexOf(window) < 0 ? t.concat([window]) : t, t;
333
- if (i instanceof Window)
334
- return [window];
335
- const r = (o, a) => {
336
- const c = a || [], d = o.parentNode;
337
- return d ? r(d, c.concat([d])) : a;
338
- };
339
- return [i].concat(r(i, [])).concat([window]);
340
- }, Zr = () => window.matchMedia("(orientation: landscape)").matches ? "landscape" : "portrait", Kr = (e) => {
341
- const t = e.parentElement;
342
- return t ? [e].concat(Kr(t)) : [e];
343
- }, br = "%[a-f0-9]{2}", ar = new RegExp("(" + br + ")|([^%]+?)", "gi"), cr = new RegExp("(" + br + ")+", "gi");
344
- function Et(e, t) {
345
- try {
346
- return [decodeURIComponent(e.join(""))];
347
- } catch {
348
- }
349
- if (e.length === 1)
350
- return e;
351
- t = t || 1;
352
- const i = e.slice(0, t), r = e.slice(t);
353
- return Array.prototype.concat.call([], Et(i), Et(r));
354
- }
355
- function Jr(e) {
356
- try {
357
- return decodeURIComponent(e);
358
- } catch {
359
- let t = e.match(ar) || [];
360
- for (let i = 1; i < t.length; i++)
361
- e = Et(t, i).join(""), t = e.match(ar) || [];
362
- return e;
363
- }
364
- }
365
- function Qr(e) {
366
- const t = {
367
- "%FE%FF": "��",
368
- "%FF%FE": "��"
369
- };
370
- let i = cr.exec(e);
371
- for (; i; ) {
372
- try {
373
- t[i[0]] = decodeURIComponent(i[0]);
374
- } catch {
375
- const s = Jr(i[0]);
376
- s !== i[0] && (t[i[0]] = s);
377
- }
378
- i = cr.exec(e);
379
- }
380
- t["%C2"] = "�";
381
- const r = Object.keys(t);
382
- for (const s of r)
383
- e = e.replace(new RegExp(s, "g"), t[s]);
384
- return e;
385
- }
386
- function en(e) {
387
- if (typeof e != "string")
388
- throw new TypeError("Expected `encodedURI` to be of type `string`, got `" + typeof e + "`");
389
- try {
390
- return decodeURIComponent(e);
391
- } catch {
392
- return Qr(e);
393
- }
394
- }
395
- function tn(e, t) {
396
- const i = {};
397
- if (Array.isArray(t))
398
- for (const r of t) {
399
- const s = Object.getOwnPropertyDescriptor(e, r);
400
- s != null && s.enumerable && Object.defineProperty(i, r, s);
401
- }
402
- else
403
- for (const r of Reflect.ownKeys(e)) {
404
- const s = Object.getOwnPropertyDescriptor(e, r);
405
- if (s.enumerable) {
406
- const o = e[r];
407
- t(r, o, e) && Object.defineProperty(i, r, s);
408
- }
409
- }
410
- return i;
411
- }
412
- function wr(e, t) {
413
- if (!(typeof e == "string" && typeof t == "string"))
414
- throw new TypeError("Expected the arguments to be of type `string`");
415
- if (e === "" || t === "")
416
- return [];
417
- const i = e.indexOf(t);
418
- return i === -1 ? [] : [
419
- e.slice(0, i),
420
- e.slice(i + t.length)
421
- ];
422
- }
423
- const rn = (e) => e == null, nn = (e) => encodeURIComponent(e).replaceAll(/[!'()*]/g, (t) => `%${t.charCodeAt(0).toString(16).toUpperCase()}`), St = Symbol("encodeFragmentIdentifier");
424
- function on(e) {
425
- switch (e.arrayFormat) {
426
- case "index":
427
- return (t) => (i, r) => {
428
- const s = i.length;
429
- return r === void 0 || e.skipNull && r === null || e.skipEmptyString && r === "" ? i : r === null ? [
430
- ...i,
431
- [Q(t, e), "[", s, "]"].join("")
432
- ] : [
433
- ...i,
434
- [Q(t, e), "[", Q(s, e), "]=", Q(r, e)].join("")
435
- ];
436
- };
437
- case "bracket":
438
- return (t) => (i, r) => r === void 0 || e.skipNull && r === null || e.skipEmptyString && r === "" ? i : r === null ? [
439
- ...i,
440
- [Q(t, e), "[]"].join("")
441
- ] : [
442
- ...i,
443
- [Q(t, e), "[]=", Q(r, e)].join("")
444
- ];
445
- case "colon-list-separator":
446
- return (t) => (i, r) => r === void 0 || e.skipNull && r === null || e.skipEmptyString && r === "" ? i : r === null ? [
447
- ...i,
448
- [Q(t, e), ":list="].join("")
449
- ] : [
450
- ...i,
451
- [Q(t, e), ":list=", Q(r, e)].join("")
452
- ];
453
- case "comma":
454
- case "separator":
455
- case "bracket-separator": {
456
- const t = e.arrayFormat === "bracket-separator" ? "[]=" : "=";
457
- return (i) => (r, s) => s === void 0 || e.skipNull && s === null || e.skipEmptyString && s === "" ? r : (s = s === null ? "" : s, r.length === 0 ? [[Q(i, e), t, Q(s, e)].join("")] : [[r, Q(s, e)].join(e.arrayFormatSeparator)]);
458
- }
459
- default:
460
- return (t) => (i, r) => r === void 0 || e.skipNull && r === null || e.skipEmptyString && r === "" ? i : r === null ? [
461
- ...i,
462
- Q(t, e)
463
- ] : [
464
- ...i,
465
- [Q(t, e), "=", Q(r, e)].join("")
466
- ];
467
- }
468
- }
469
- function sn(e) {
470
- let t;
471
- switch (e.arrayFormat) {
472
- case "index":
473
- return (i, r, s) => {
474
- if (t = /\[(\d*)]$/.exec(i), i = i.replace(/\[\d*]$/, ""), !t) {
475
- s[i] = r;
476
- return;
477
- }
478
- s[i] === void 0 && (s[i] = {}), s[i][t[1]] = r;
479
- };
480
- case "bracket":
481
- return (i, r, s) => {
482
- if (t = /(\[])$/.exec(i), i = i.replace(/\[]$/, ""), !t) {
483
- s[i] = r;
484
- return;
485
- }
486
- if (s[i] === void 0) {
487
- s[i] = [r];
488
- return;
489
- }
490
- s[i] = [...s[i], r];
491
- };
492
- case "colon-list-separator":
493
- return (i, r, s) => {
494
- if (t = /(:list)$/.exec(i), i = i.replace(/:list$/, ""), !t) {
495
- s[i] = r;
496
- return;
497
- }
498
- if (s[i] === void 0) {
499
- s[i] = [r];
500
- return;
501
- }
502
- s[i] = [...s[i], r];
503
- };
504
- case "comma":
505
- case "separator":
506
- return (i, r, s) => {
507
- const o = typeof r == "string" && r.includes(e.arrayFormatSeparator), a = typeof r == "string" && !o && Me(r, e).includes(e.arrayFormatSeparator);
508
- r = a ? Me(r, e) : r;
509
- const c = o || a ? r.split(e.arrayFormatSeparator).map((d) => Me(d, e)) : r === null ? r : Me(r, e);
510
- s[i] = c;
511
- };
512
- case "bracket-separator":
513
- return (i, r, s) => {
514
- const o = /(\[])$/.test(i);
515
- if (i = i.replace(/\[]$/, ""), !o) {
516
- s[i] = r && Me(r, e);
517
- return;
518
- }
519
- const a = r === null ? [] : Me(r, e).split(e.arrayFormatSeparator);
520
- if (s[i] === void 0) {
521
- s[i] = a;
522
- return;
523
- }
524
- s[i] = [...s[i], ...a];
525
- };
526
- default:
527
- return (i, r, s) => {
528
- if (s[i] === void 0) {
529
- s[i] = r;
530
- return;
531
- }
532
- s[i] = [...[s[i]].flat(), r];
533
- };
534
- }
535
- }
536
- function _r(e) {
537
- if (typeof e != "string" || e.length !== 1)
538
- throw new TypeError("arrayFormatSeparator must be single character string");
539
- }
540
- function Q(e, t) {
541
- return t.encode ? t.strict ? nn(e) : encodeURIComponent(e) : e;
542
- }
543
- function Me(e, t) {
544
- return t.decode ? en(e) : e;
545
- }
546
- function Tr(e) {
547
- return Array.isArray(e) ? e.sort() : typeof e == "object" ? Tr(Object.keys(e)).sort((t, i) => Number(t) - Number(i)).map((t) => e[t]) : e;
548
- }
549
- function yr(e) {
550
- const t = e.indexOf("#");
551
- return t !== -1 && (e = e.slice(0, t)), e;
552
- }
553
- function an(e) {
554
- let t = "";
555
- const i = e.indexOf("#");
556
- return i !== -1 && (t = e.slice(i)), t;
557
- }
558
- function lr(e, t, i) {
559
- return i === "string" && typeof e == "string" ? e : typeof i == "function" && typeof e == "string" ? i(e) : t.parseBooleans && e !== null && (e.toLowerCase() === "true" || e.toLowerCase() === "false") ? e.toLowerCase() === "true" : i === "number" && !Number.isNaN(Number(e)) && typeof e == "string" && e.trim() !== "" || t.parseNumbers && !Number.isNaN(Number(e)) && typeof e == "string" && e.trim() !== "" ? Number(e) : e;
560
- }
561
- function Rt(e) {
562
- e = yr(e);
563
- const t = e.indexOf("?");
564
- return t === -1 ? "" : e.slice(t + 1);
565
- }
566
- function xt(e, t) {
567
- t = {
568
- decode: !0,
569
- sort: !0,
570
- arrayFormat: "none",
571
- arrayFormatSeparator: ",",
572
- parseNumbers: !1,
573
- parseBooleans: !1,
574
- types: /* @__PURE__ */ Object.create(null),
575
- ...t
576
- }, _r(t.arrayFormatSeparator);
577
- const i = sn(t), r = /* @__PURE__ */ Object.create(null);
578
- if (typeof e != "string" || (e = e.trim().replace(/^[?#&]/, ""), !e))
579
- return r;
580
- for (const s of e.split("&")) {
581
- if (s === "")
582
- continue;
583
- const o = t.decode ? s.replaceAll("+", " ") : s;
584
- let [a, c] = wr(o, "=");
585
- a === void 0 && (a = o), c = c === void 0 ? null : ["comma", "separator", "bracket-separator"].includes(t.arrayFormat) ? c : Me(c, t), i(Me(a, t), c, r);
586
- }
587
- for (const [s, o] of Object.entries(r))
588
- if (typeof o == "object" && o !== null && t.types[s] !== "string")
589
- for (const [a, c] of Object.entries(o)) {
590
- const d = t.types[s] ? t.types[s].replace("[]", "") : void 0;
591
- o[a] = lr(c, t, d);
592
- }
593
- else typeof o == "object" && o !== null && t.types[s] === "string" ? r[s] = Object.values(o).join(t.arrayFormatSeparator) : r[s] = lr(o, t, t.types[s]);
594
- return t.sort === !1 ? r : (t.sort === !0 ? Object.keys(r).sort() : Object.keys(r).sort(t.sort)).reduce((s, o) => {
595
- const a = r[o];
596
- return s[o] = a && typeof a == "object" && !Array.isArray(a) ? Tr(a) : a, s;
597
- }, /* @__PURE__ */ Object.create(null));
598
- }
599
- function Ar(e, t) {
600
- if (!e)
601
- return "";
602
- t = {
603
- encode: !0,
604
- strict: !0,
605
- arrayFormat: "none",
606
- arrayFormatSeparator: ",",
607
- ...t
608
- }, _r(t.arrayFormatSeparator);
609
- const i = (a) => t.skipNull && rn(e[a]) || t.skipEmptyString && e[a] === "", r = on(t), s = {};
610
- for (const [a, c] of Object.entries(e))
611
- i(a) || (s[a] = c);
612
- const o = Object.keys(s);
613
- return t.sort !== !1 && o.sort(t.sort), o.map((a) => {
614
- const c = e[a];
615
- return c === void 0 ? "" : c === null ? Q(a, t) : Array.isArray(c) ? c.length === 0 && t.arrayFormat === "bracket-separator" ? Q(a, t) + "[]" : c.reduce(r(a), []).join("&") : Q(a, t) + "=" + Q(c, t);
616
- }).filter((a) => a.length > 0).join("&");
617
- }
618
- function Er(e, t) {
619
- var s;
620
- t = {
621
- decode: !0,
622
- ...t
623
- };
624
- let [i, r] = wr(e, "#");
625
- return i === void 0 && (i = e), {
626
- url: ((s = i == null ? void 0 : i.split("?")) == null ? void 0 : s[0]) ?? "",
627
- query: xt(Rt(e), t),
628
- ...t && t.parseFragmentIdentifier && r ? { fragmentIdentifier: Me(r, t) } : {}
629
- };
630
- }
631
- function Sr(e, t) {
632
- t = {
633
- encode: !0,
634
- strict: !0,
635
- [St]: !0,
636
- ...t
637
- };
638
- const i = yr(e.url).split("?")[0] || "", r = Rt(e.url), s = {
639
- ...xt(r, { sort: !1 }),
640
- ...e.query
641
- };
642
- let o = Ar(s, t);
643
- o && (o = `?${o}`);
644
- let a = an(e.url);
645
- if (typeof e.fragmentIdentifier == "string") {
646
- const c = new URL(i);
647
- c.hash = e.fragmentIdentifier, a = t[St] ? c.hash : `#${e.fragmentIdentifier}`;
648
- }
649
- return `${i}${o}${a}`;
650
- }
651
- function Or(e, t, i) {
652
- i = {
653
- parseFragmentIdentifier: !0,
654
- [St]: !1,
655
- ...i
656
- };
657
- const { url: r, query: s, fragmentIdentifier: o } = Er(e, i);
658
- return Sr({
659
- url: r,
660
- query: tn(s, t),
661
- fragmentIdentifier: o
662
- }, i);
663
- }
664
- function cn(e, t, i) {
665
- const r = Array.isArray(t) ? (s) => !t.includes(s) : (s, o) => !t(s, o);
666
- return Or(e, r, i);
667
- }
668
- const ln = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
669
- __proto__: null,
670
- exclude: cn,
671
- extract: Rt,
672
- parse: xt,
673
- parseUrl: Er,
674
- pick: Or,
675
- stringify: Ar,
676
- stringifyUrl: Sr
677
- }, Symbol.toStringTag, { value: "Module" })), un = {
678
- arrayFormat: "comma",
679
- parseNumbers: !0
680
- }, Gn = (e, t) => {
681
- const i = {
682
- ...un,
683
- ...t
684
- }, r = ln.parse(window.location.search, i);
685
- if (!r) return null;
686
- const s = r[e];
687
- return s ?? null;
688
- }, jn = (e) => `${e / 16}rem`;
689
- var vr = { exports: {} };
690
- /*! store2 - v2.14.3 - 2024-02-14
691
- * Copyright (c) 2024 Nathan Bubna; Licensed MIT */
692
- (function(e) {
693
- (function(t, i) {
694
- var r = {
695
- version: "2.14.3",
696
- areas: {},
697
- apis: {},
698
- nsdelim: ".",
699
- // utilities
700
- inherit: function(o, a) {
701
- for (var c in o)
702
- a.hasOwnProperty(c) || Object.defineProperty(a, c, Object.getOwnPropertyDescriptor(o, c));
703
- return a;
704
- },
705
- stringify: function(o, a) {
706
- return o === void 0 || typeof o == "function" ? o + "" : JSON.stringify(o, a || r.replace);
707
- },
708
- parse: function(o, a) {
709
- try {
710
- return JSON.parse(o, a || r.revive);
711
- } catch {
712
- return o;
713
- }
714
- },
715
- // extension hooks
716
- fn: function(o, a) {
717
- r.storeAPI[o] = a;
718
- for (var c in r.apis)
719
- r.apis[c][o] = a;
720
- },
721
- get: function(o, a) {
722
- return o.getItem(a);
723
- },
724
- set: function(o, a, c) {
725
- o.setItem(a, c);
726
- },
727
- remove: function(o, a) {
728
- o.removeItem(a);
729
- },
730
- key: function(o, a) {
731
- return o.key(a);
732
- },
733
- length: function(o) {
734
- return o.length;
735
- },
736
- clear: function(o) {
737
- o.clear();
738
- },
739
- // core functions
740
- Store: function(o, a, c) {
741
- var d = r.inherit(r.storeAPI, function(P, j, u) {
742
- return arguments.length === 0 ? d.getAll() : typeof j == "function" ? d.transact(P, j, u) : j !== void 0 ? d.set(P, j, u) : typeof P == "string" || typeof P == "number" ? d.get(P) : typeof P == "function" ? d.each(P) : P ? d.setAll(P, j) : d.clear();
743
- });
744
- d._id = o;
745
- try {
746
- var O = "__store2_test";
747
- a.setItem(O, "ok"), d._area = a, a.removeItem(O);
748
- } catch {
749
- d._area = r.storage("fake");
750
- }
751
- return d._ns = c || "", r.areas[o] || (r.areas[o] = d._area), r.apis[d._ns + d._id] || (r.apis[d._ns + d._id] = d), d;
752
- },
753
- storeAPI: {
754
- // admin functions
755
- area: function(o, a) {
756
- var c = this[o];
757
- return (!c || !c.area) && (c = r.Store(o, a, this._ns), this[o] || (this[o] = c)), c;
758
- },
759
- namespace: function(o, a, c) {
760
- if (c = c || this._delim || r.nsdelim, !o)
761
- return this._ns ? this._ns.substring(0, this._ns.length - c.length) : "";
762
- var d = o, O = this[d];
763
- if ((!O || !O.namespace) && (O = r.Store(this._id, this._area, this._ns + d + c), O._delim = c, this[d] || (this[d] = O), !a))
764
- for (var P in r.areas)
765
- O.area(P, r.areas[P]);
766
- return O;
767
- },
768
- isFake: function(o) {
769
- return o ? (this._real = this._area, this._area = r.storage("fake")) : o === !1 && (this._area = this._real || this._area), this._area.name === "fake";
770
- },
771
- toString: function() {
772
- return "store" + (this._ns ? "." + this.namespace() : "") + "[" + this._id + "]";
773
- },
774
- // storage functions
775
- has: function(o) {
776
- return this._area.has ? this._area.has(this._in(o)) : this._in(o) in this._area;
777
- },
778
- size: function() {
779
- return this.keys().length;
780
- },
781
- each: function(o, a) {
782
- for (var c = 0, d = r.length(this._area); c < d; c++) {
783
- var O = this._out(r.key(this._area, c));
784
- if (O !== void 0 && o.call(this, O, this.get(O), a) === !1)
785
- break;
786
- d > r.length(this._area) && (d--, c--);
787
- }
788
- return a || this;
789
- },
790
- keys: function(o) {
791
- return this.each(function(a, c, d) {
792
- d.push(a);
793
- }, o || []);
794
- },
795
- get: function(o, a) {
796
- var c = r.get(this._area, this._in(o)), d;
797
- return typeof a == "function" && (d = a, a = null), c !== null ? r.parse(c, d) : a ?? c;
798
- },
799
- getAll: function(o) {
800
- return this.each(function(a, c, d) {
801
- d[a] = c;
802
- }, o || {});
803
- },
804
- transact: function(o, a, c) {
805
- var d = this.get(o, c), O = a(d);
806
- return this.set(o, O === void 0 ? d : O), this;
807
- },
808
- set: function(o, a, c) {
809
- var d = this.get(o), O;
810
- return d != null && c === !1 ? a : (typeof c == "function" && (O = c, c = void 0), r.set(this._area, this._in(o), r.stringify(a, O), c) || d);
811
- },
812
- setAll: function(o, a) {
813
- var c, d;
814
- for (var O in o)
815
- d = o[O], this.set(O, d, a) !== d && (c = !0);
816
- return c;
817
- },
818
- add: function(o, a, c) {
819
- var d = this.get(o);
820
- if (d instanceof Array)
821
- a = d.concat(a);
822
- else if (d !== null) {
823
- var O = typeof d;
824
- if (O === typeof a && O === "object") {
825
- for (var P in a)
826
- d[P] = a[P];
827
- a = d;
828
- } else
829
- a = d + a;
830
- }
831
- return r.set(this._area, this._in(o), r.stringify(a, c)), a;
832
- },
833
- remove: function(o, a) {
834
- var c = this.get(o, a);
835
- return r.remove(this._area, this._in(o)), c;
836
- },
837
- clear: function() {
838
- return this._ns ? this.each(function(o) {
839
- r.remove(this._area, this._in(o));
840
- }, 1) : r.clear(this._area), this;
841
- },
842
- clearAll: function() {
843
- var o = this._area;
844
- for (var a in r.areas)
845
- r.areas.hasOwnProperty(a) && (this._area = r.areas[a], this.clear());
846
- return this._area = o, this;
847
- },
848
- // internal use functions
849
- _in: function(o) {
850
- return typeof o != "string" && (o = r.stringify(o)), this._ns ? this._ns + o : o;
851
- },
852
- _out: function(o) {
853
- return this._ns ? o && o.indexOf(this._ns) === 0 ? o.substring(this._ns.length) : void 0 : (
854
- // so each() knows to skip it
855
- o
856
- );
857
- }
858
- },
859
- // end _.storeAPI
860
- storage: function(o) {
861
- return r.inherit(r.storageAPI, { items: {}, name: o });
862
- },
863
- storageAPI: {
864
- length: 0,
865
- has: function(o) {
866
- return this.items.hasOwnProperty(o);
867
- },
868
- key: function(o) {
869
- var a = 0;
870
- for (var c in this.items)
871
- if (this.has(c) && o === a++)
872
- return c;
873
- },
874
- setItem: function(o, a) {
875
- this.has(o) || this.length++, this.items[o] = a;
876
- },
877
- removeItem: function(o) {
878
- this.has(o) && (delete this.items[o], this.length--);
879
- },
880
- getItem: function(o) {
881
- return this.has(o) ? this.items[o] : null;
882
- },
883
- clear: function() {
884
- for (var o in this.items)
885
- this.removeItem(o);
886
- }
887
- }
888
- // end _.storageAPI
889
- }, s = (
890
- // safely set this up (throws error in IE10/32bit mode for local files)
891
- r.Store("local", function() {
892
- try {
893
- return localStorage;
894
- } catch {
895
- }
896
- }())
897
- );
898
- s.local = s, s._ = r, s.area("session", function() {
899
- try {
900
- return sessionStorage;
901
- } catch {
902
- }
903
- }()), s.area("page", r.storage("page")), typeof i == "function" && i.amd !== void 0 ? i("store2", [], function() {
904
- return s;
905
- }) : e.exports ? e.exports = s : (t.store && (r.conflict = t.store), t.store = s);
906
- })(Ue, Ue && Ue.define);
907
- })(vr);
908
- var fn = vr.exports;
909
- const It = /* @__PURE__ */ Ye(fn), Yn = (e) => {
910
- const t = It.session.get(e);
911
- return t === void 0 ? null : t;
912
- };
913
- var ur;
914
- (function(e) {
915
- e[e.HIGH_SURROGATE_START = 55296] = "HIGH_SURROGATE_START", e[e.HIGH_SURROGATE_END = 56319] = "HIGH_SURROGATE_END", e[e.LOW_SURROGATE_START = 56320] = "LOW_SURROGATE_START", e[e.REGIONAL_INDICATOR_START = 127462] = "REGIONAL_INDICATOR_START", e[e.REGIONAL_INDICATOR_END = 127487] = "REGIONAL_INDICATOR_END", e[e.FITZPATRICK_MODIFIER_START = 127995] = "FITZPATRICK_MODIFIER_START", e[e.FITZPATRICK_MODIFIER_END = 127999] = "FITZPATRICK_MODIFIER_END", e[e.VARIATION_MODIFIER_START = 65024] = "VARIATION_MODIFIER_START", e[e.VARIATION_MODIFIER_END = 65039] = "VARIATION_MODIFIER_END", e[e.DIACRITICAL_MARKS_START = 8400] = "DIACRITICAL_MARKS_START", e[e.DIACRITICAL_MARKS_END = 8447] = "DIACRITICAL_MARKS_END", e[e.SUBDIVISION_INDICATOR_START = 127988] = "SUBDIVISION_INDICATOR_START", e[e.TAGS_START = 917504] = "TAGS_START", e[e.TAGS_END = 917631] = "TAGS_END", e[e.ZWJ = 8205] = "ZWJ";
916
- })(ur || (ur = {}));
917
- const dn = Object.freeze([776, 2359, 2367, 2984, 3007, 3021, 3633, 3635, 3648, 3657, 4352, 4449, 4520]);
918
- var fr;
919
- function mn(e) {
920
- if (typeof e != "string") throw new TypeError("string cannot be undefined or null");
921
- const t = [];
922
- let i = 0, r = 0;
923
- for (; i < e.length; ) r += pn(i + r, e), yn(e[i + r]) && r++, wn(e[i + r]) && r++, _n(e[i + r]) && r++, An(e[i + r]) ? r++ : (t.push(e.substring(i, i + r)), i += r, r = 0);
924
- return t;
925
- }
926
- function pn(e, t) {
927
- const i = t[e];
928
- if (!hn(i) || e === t.length - 1) return 1;
929
- const r = i + t[e + 1];
930
- let s = t.substring(e + 2, e + 5);
931
- return dr(r) && dr(s) ? 4 : gn(r) && Tn(s) ? t.slice(e).indexOf(String.fromCodePoint(917631)) + 2 : bn(s) ? 4 : 2;
932
- }
933
- function hn(e) {
934
- return e && He(e[0].charCodeAt(0), 55296, 56319);
935
- }
936
- function dr(e) {
937
- return He(Dt(e), 127462, 127487);
938
- }
939
- function gn(e) {
940
- return He(Dt(e), 127988, 127988);
941
- }
942
- function bn(e) {
943
- return He(Dt(e), 127995, 127999);
944
- }
945
- function wn(e) {
946
- return typeof e == "string" && He(e.charCodeAt(0), 65024, 65039);
947
- }
948
- function _n(e) {
949
- return typeof e == "string" && He(e.charCodeAt(0), 8400, 8447);
950
- }
951
- function Tn(e) {
952
- const t = e.codePointAt(0);
953
- return typeof e == "string" && typeof t == "number" && He(t, 917504, 917631);
954
- }
955
- function yn(e) {
956
- return typeof e == "string" && dn.includes(e.charCodeAt(0));
957
- }
958
- function An(e) {
959
- return typeof e == "string" && e.charCodeAt(0) === 8205;
960
- }
961
- function Dt(e) {
962
- return (e.charCodeAt(0) - 55296 << 10) + (e.charCodeAt(1) - 56320) + 65536;
963
- }
964
- function He(e, t, i) {
965
- return e >= t && e <= i;
966
- }
967
- (function(e) {
968
- e[e.unit_1 = 1] = "unit_1", e[e.unit_2 = 2] = "unit_2", e[e.unit_4 = 4] = "unit_4";
969
- })(fr || (fr = {}));
970
- const Vn = (e) => mn(e).length, En = (e) => getComputedStyle(document.documentElement).getPropertyValue(e), qn = (e) => Number.parseInt(En(e)) || 0;
971
- var Ot = { exports: {} };
972
- (function(e, t) {
973
- (function(i, r) {
974
- var s = "1.0.39", o = "", a = "?", c = "function", d = "undefined", O = "object", P = "string", j = "major", u = "model", m = "name", l = "type", f = "vendor", h = "version", oe = "architecture", pe = "console", M = "mobile", C = "tablet", B = "smarttv", z = "wearable", be = "embedded", X = 500, Ae = "Amazon", _ = "Apple", U = "ASUS", ae = "BlackBerry", de = "Browser", S = "Chrome", w = "Edge", g = "Firefox", T = "Google", b = "Huawei", R = "LG", v = "Microsoft", H = "Motorola", W = "Opera", Y = "Samsung", q = "Sharp", ee = "Sony", we = "Xiaomi", he = "Zebra", Ee = "Facebook", _e = "Chromium OS", J = "Mac OS", ge = " Browser", Re = function(D, k) {
975
- var I = {};
976
- for (var G in D)
977
- k[G] && k[G].length % 2 === 0 ? I[G] = k[G].concat(D[G]) : I[G] = D[G];
978
- return I;
979
- }, Te = function(D) {
980
- for (var k = {}, I = 0; I < D.length; I++)
981
- k[D[I].toUpperCase()] = D[I];
982
- return k;
983
- }, Qe = function(D, k) {
984
- return typeof D === P ? xe(k).indexOf(xe(D)) !== -1 : !1;
985
- }, xe = function(D) {
986
- return D.toLowerCase();
987
- }, Ce = function(D) {
988
- return typeof D === P ? D.replace(/[^\d\.]/g, o).split(".")[0] : r;
989
- }, Ve = function(D, k) {
990
- if (typeof D === P)
991
- return D = D.replace(/^\s\s*/, o), typeof k === d ? D : D.substring(0, X);
992
- }, Le = function(D, k) {
993
- for (var I = 0, G, ce, ye, $, x, le; I < k.length && !x; ) {
994
- var Ie = k[I], et = k[I + 1];
995
- for (G = ce = 0; G < Ie.length && !x && Ie[G]; )
996
- if (x = Ie[G++].exec(D), x)
997
- for (ye = 0; ye < et.length; ye++)
998
- le = x[++ce], $ = et[ye], typeof $ === O && $.length > 0 ? $.length === 2 ? typeof $[1] == c ? this[$[0]] = $[1].call(this, le) : this[$[0]] = $[1] : $.length === 3 ? typeof $[1] === c && !($[1].exec && $[1].test) ? this[$[0]] = le ? $[1].call(this, le, $[2]) : r : this[$[0]] = le ? le.replace($[1], $[2]) : r : $.length === 4 && (this[$[0]] = le ? $[3].call(this, le.replace($[1], $[2])) : r) : this[$] = le || r;
999
- I += 2;
1000
- }
1001
- }, Pe = function(D, k) {
1002
- for (var I in k)
1003
- if (typeof k[I] === O && k[I].length > 0) {
1004
- for (var G = 0; G < k[I].length; G++)
1005
- if (Qe(k[I][G], D))
1006
- return I === a ? r : I;
1007
- } else if (Qe(k[I], D))
1008
- return I === a ? r : I;
1009
- return k.hasOwnProperty("*") ? k["*"] : D;
1010
- }, at = {
1011
- "1.0": "/8",
1012
- "1.2": "/1",
1013
- "1.3": "/3",
1014
- "2.0": "/412",
1015
- "2.0.2": "/416",
1016
- "2.0.3": "/417",
1017
- "2.0.4": "/419",
1018
- "?": "/"
1019
- }, F = {
1020
- ME: "4.90",
1021
- "NT 3.11": "NT3.51",
1022
- "NT 4.0": "NT4.0",
1023
- 2e3: "NT 5.0",
1024
- XP: ["NT 5.1", "NT 5.2"],
1025
- Vista: "NT 6.0",
1026
- 7: "NT 6.1",
1027
- 8: "NT 6.2",
1028
- "8.1": "NT 6.3",
1029
- 10: ["NT 6.4", "NT 10.0"],
1030
- RT: "ARM"
1031
- }, A = {
1032
- browser: [
1033
- [
1034
- /\b(?:crmo|crios)\/([\w\.]+)/i
1035
- // Chrome for Android/iOS
1036
- ],
1037
- [h, [m, "Chrome"]],
1038
- [
1039
- /edg(?:e|ios|a)?\/([\w\.]+)/i
1040
- // Microsoft Edge
1041
- ],
1042
- [h, [m, "Edge"]],
1043
- [
1044
- // Presto based
1045
- /(opera mini)\/([-\w\.]+)/i,
1046
- // Opera Mini
1047
- /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
1048
- // Opera Mobi/Tablet
1049
- /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
1050
- // Opera
1051
- ],
1052
- [m, h],
1053
- [
1054
- /opios[\/ ]+([\w\.]+)/i
1055
- // Opera mini on iphone >= 8.0
1056
- ],
1057
- [h, [m, W + " Mini"]],
1058
- [
1059
- /\bop(?:rg)?x\/([\w\.]+)/i
1060
- // Opera GX
1061
- ],
1062
- [h, [m, W + " GX"]],
1063
- [
1064
- /\bopr\/([\w\.]+)/i
1065
- // Opera Webkit
1066
- ],
1067
- [h, [m, W]],
1068
- [
1069
- // Mixed
1070
- /\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
1071
- // Baidu
1072
- ],
1073
- [h, [m, "Baidu"]],
1074
- [
1075
- /(kindle)\/([\w\.]+)/i,
1076
- // Kindle
1077
- /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,
1078
- // Lunascape/Maxthon/Netfront/Jasmine/Blazer/Sleipnir
1079
- // Trident based
1080
- /(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i,
1081
- // Avant/IEMobile/SlimBrowser
1082
- /(?:ms|\()(ie) ([\w\.]+)/i,
1083
- // Internet Explorer
1084
- // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
1085
- /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i,
1086
- // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio
1087
- /(heytap|ovi)browser\/([\d\.]+)/i,
1088
- // HeyTap/Ovi
1089
- /(weibo)__([\d\.]+)/i
1090
- // Weibo
1091
- ],
1092
- [m, h],
1093
- [
1094
- /quark(?:pc)?\/([-\w\.]+)/i
1095
- // Quark
1096
- ],
1097
- [h, [m, "Quark"]],
1098
- [
1099
- /\bddg\/([\w\.]+)/i
1100
- // DuckDuckGo
1101
- ],
1102
- [h, [m, "DuckDuckGo"]],
1103
- [
1104
- /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
1105
- // UCBrowser
1106
- ],
1107
- [h, [m, "UC" + de]],
1108
- [
1109
- /microm.+\bqbcore\/([\w\.]+)/i,
1110
- // WeChat Desktop for Windows Built-in Browser
1111
- /\bqbcore\/([\w\.]+).+microm/i,
1112
- /micromessenger\/([\w\.]+)/i
1113
- // WeChat
1114
- ],
1115
- [h, [m, "WeChat"]],
1116
- [
1117
- /konqueror\/([\w\.]+)/i
1118
- // Konqueror
1119
- ],
1120
- [h, [m, "Konqueror"]],
1121
- [
1122
- /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
1123
- // IE11
1124
- ],
1125
- [h, [m, "IE"]],
1126
- [
1127
- /ya(?:search)?browser\/([\w\.]+)/i
1128
- // Yandex
1129
- ],
1130
- [h, [m, "Yandex"]],
1131
- [
1132
- /slbrowser\/([\w\.]+)/i
1133
- // Smart Lenovo Browser
1134
- ],
1135
- [h, [m, "Smart Lenovo " + de]],
1136
- [
1137
- /(avast|avg)\/([\w\.]+)/i
1138
- // Avast/AVG Secure Browser
1139
- ],
1140
- [[m, /(.+)/, "$1 Secure " + de], h],
1141
- [
1142
- /\bfocus\/([\w\.]+)/i
1143
- // Firefox Focus
1144
- ],
1145
- [h, [m, g + " Focus"]],
1146
- [
1147
- /\bopt\/([\w\.]+)/i
1148
- // Opera Touch
1149
- ],
1150
- [h, [m, W + " Touch"]],
1151
- [
1152
- /coc_coc\w+\/([\w\.]+)/i
1153
- // Coc Coc Browser
1154
- ],
1155
- [h, [m, "Coc Coc"]],
1156
- [
1157
- /dolfin\/([\w\.]+)/i
1158
- // Dolphin
1159
- ],
1160
- [h, [m, "Dolphin"]],
1161
- [
1162
- /coast\/([\w\.]+)/i
1163
- // Opera Coast
1164
- ],
1165
- [h, [m, W + " Coast"]],
1166
- [
1167
- /miuibrowser\/([\w\.]+)/i
1168
- // MIUI Browser
1169
- ],
1170
- [h, [m, "MIUI " + de]],
1171
- [
1172
- /fxios\/([-\w\.]+)/i
1173
- // Firefox for iOS
1174
- ],
1175
- [h, [m, g]],
1176
- [
1177
- /\bqihu|(qi?ho?o?|360)browser/i
1178
- // 360
1179
- ],
1180
- [[m, "360" + ge]],
1181
- [
1182
- /\b(qq)\/([\w\.]+)/i
1183
- // QQ
1184
- ],
1185
- [[m, /(.+)/, "$1Browser"], h],
1186
- [
1187
- /(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
1188
- ],
1189
- [[m, /(.+)/, "$1" + ge], h],
1190
- [
1191
- // Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
1192
- /samsungbrowser\/([\w\.]+)/i
1193
- // Samsung Internet
1194
- ],
1195
- [h, [m, Y + " Internet"]],
1196
- [
1197
- /(comodo_dragon)\/([\w\.]+)/i
1198
- // Comodo Dragon
1199
- ],
1200
- [[m, /_/g, " "], h],
1201
- [
1202
- /metasr[\/ ]?([\d\.]+)/i
1203
- // Sogou Explorer
1204
- ],
1205
- [h, [m, "Sogou Explorer"]],
1206
- [
1207
- /(sogou)mo\w+\/([\d\.]+)/i
1208
- // Sogou Mobile
1209
- ],
1210
- [[m, "Sogou Mobile"], h],
1211
- [
1212
- /(electron)\/([\w\.]+) safari/i,
1213
- // Electron-based App
1214
- /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
1215
- // Tesla
1216
- /m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i
1217
- // QQBrowser/2345 Browser
1218
- ],
1219
- [m, h],
1220
- [
1221
- /(lbbrowser|rekonq)/i,
1222
- // LieBao Browser/Rekonq
1223
- /\[(linkedin)app\]/i
1224
- // LinkedIn App for iOS & Android
1225
- ],
1226
- [m],
1227
- [
1228
- // WebView
1229
- /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
1230
- // Facebook App for iOS & Android
1231
- ],
1232
- [[m, Ee], h],
1233
- [
1234
- /(Klarna)\/([\w\.]+)/i,
1235
- // Klarna Shopping Browser for iOS & Android
1236
- /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
1237
- // Kakao App
1238
- /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
1239
- // Naver InApp
1240
- /safari (line)\/([\w\.]+)/i,
1241
- // Line App for iOS
1242
- /\b(line)\/([\w\.]+)\/iab/i,
1243
- // Line App for Android
1244
- /(alipay)client\/([\w\.]+)/i,
1245
- // Alipay
1246
- /(twitter)(?:and| f.+e\/([\w\.]+))/i,
1247
- // Twitter
1248
- /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i
1249
- // Chromium/Instagram/Snapchat
1250
- ],
1251
- [m, h],
1252
- [
1253
- /\bgsa\/([\w\.]+) .*safari\//i
1254
- // Google Search Appliance on iOS
1255
- ],
1256
- [h, [m, "GSA"]],
1257
- [
1258
- /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
1259
- // TikTok
1260
- ],
1261
- [h, [m, "TikTok"]],
1262
- [
1263
- /headlesschrome(?:\/([\w\.]+)| )/i
1264
- // Chrome Headless
1265
- ],
1266
- [h, [m, S + " Headless"]],
1267
- [
1268
- / wv\).+(chrome)\/([\w\.]+)/i
1269
- // Chrome WebView
1270
- ],
1271
- [[m, S + " WebView"], h],
1272
- [
1273
- /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
1274
- // Android Browser
1275
- ],
1276
- [h, [m, "Android " + de]],
1277
- [
1278
- /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
1279
- // Chrome/OmniWeb/Arora/Tizen/Nokia
1280
- ],
1281
- [m, h],
1282
- [
1283
- /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i
1284
- // Mobile Safari
1285
- ],
1286
- [h, [m, "Mobile Safari"]],
1287
- [
1288
- /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i
1289
- // Safari & Safari Mobile
1290
- ],
1291
- [h, m],
1292
- [
1293
- /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
1294
- // Safari < 3.0
1295
- ],
1296
- [m, [h, Pe, at]],
1297
- [
1298
- /(webkit|khtml)\/([\w\.]+)/i
1299
- ],
1300
- [m, h],
1301
- [
1302
- // Gecko based
1303
- /(navigator|netscape\d?)\/([-\w\.]+)/i
1304
- // Netscape
1305
- ],
1306
- [[m, "Netscape"], h],
1307
- [
1308
- /(wolvic)\/([\w\.]+)/i
1309
- // Wolvic
1310
- ],
1311
- [m, h],
1312
- [
1313
- /mobile vr; rv:([\w\.]+)\).+firefox/i
1314
- // Firefox Reality
1315
- ],
1316
- [h, [m, g + " Reality"]],
1317
- [
1318
- /ekiohf.+(flow)\/([\w\.]+)/i,
1319
- // Flow
1320
- /(swiftfox)/i,
1321
- // Swiftfox
1322
- /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,
1323
- // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror
1324
- /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
1325
- // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
1326
- /(firefox)\/([\w\.]+)/i,
1327
- // Other Firefox-based
1328
- /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
1329
- // Mozilla
1330
- // Other
1331
- /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
1332
- // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Obigo/Mosaic/Go/ICE/UP.Browser
1333
- /(links) \(([\w\.]+)/i
1334
- // Links
1335
- ],
1336
- [m, [h, /_/g, "."]],
1337
- [
1338
- /(cobalt)\/([\w\.]+)/i
1339
- // Cobalt
1340
- ],
1341
- [m, [h, /master.|lts./, ""]]
1342
- ],
1343
- cpu: [
1344
- [
1345
- /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i
1346
- // AMD64 (x64)
1347
- ],
1348
- [[oe, "amd64"]],
1349
- [
1350
- /(ia32(?=;))/i
1351
- // IA32 (quicktime)
1352
- ],
1353
- [[oe, xe]],
1354
- [
1355
- /((?:i[346]|x)86)[;\)]/i
1356
- // IA32 (x86)
1357
- ],
1358
- [[oe, "ia32"]],
1359
- [
1360
- /\b(aarch64|arm(v?8e?l?|_?64))\b/i
1361
- // ARM64
1362
- ],
1363
- [[oe, "arm64"]],
1364
- [
1365
- /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i
1366
- // ARMHF
1367
- ],
1368
- [[oe, "armhf"]],
1369
- [
1370
- // PocketPC mistakenly identified as PowerPC
1371
- /windows (ce|mobile); ppc;/i
1372
- ],
1373
- [[oe, "arm"]],
1374
- [
1375
- /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i
1376
- // PowerPC
1377
- ],
1378
- [[oe, /ower/, o, xe]],
1379
- [
1380
- /(sun4\w)[;\)]/i
1381
- // SPARC
1382
- ],
1383
- [[oe, "sparc"]],
1384
- [
1385
- /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
1386
- // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
1387
- ],
1388
- [[oe, xe]]
1389
- ],
1390
- device: [
1391
- [
1392
- //////////////////////////
1393
- // MOBILES & TABLETS
1394
- /////////////////////////
1395
- // Samsung
1396
- /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
1397
- ],
1398
- [u, [f, Y], [l, C]],
1399
- [
1400
- /\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
1401
- /samsung[- ]((?!sm-[lr])[-\w]+)/i,
1402
- /sec-(sgh\w+)/i
1403
- ],
1404
- [u, [f, Y], [l, M]],
1405
- [
1406
- // Apple
1407
- /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i
1408
- // iPod/iPhone
1409
- ],
1410
- [u, [f, _], [l, M]],
1411
- [
1412
- /\((ipad);[-\w\),; ]+apple/i,
1413
- // iPad
1414
- /applecoremedia\/[\w\.]+ \((ipad)/i,
1415
- /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
1416
- ],
1417
- [u, [f, _], [l, C]],
1418
- [
1419
- /(macintosh);/i
1420
- ],
1421
- [u, [f, _]],
1422
- [
1423
- // Sharp
1424
- /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
1425
- ],
1426
- [u, [f, q], [l, M]],
1427
- [
1428
- // Huawei
1429
- /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
1430
- ],
1431
- [u, [f, b], [l, C]],
1432
- [
1433
- /(?:huawei|honor)([-\w ]+)[;\)]/i,
1434
- /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
1435
- ],
1436
- [u, [f, b], [l, M]],
1437
- [
1438
- // Xiaomi
1439
- /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,
1440
- // Xiaomi POCO
1441
- /\b; (\w+) build\/hm\1/i,
1442
- // Xiaomi Hongmi 'numeric' models
1443
- /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
1444
- // Xiaomi Hongmi
1445
- /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
1446
- // Xiaomi Redmi
1447
- /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,
1448
- // Xiaomi Redmi 'numeric' models
1449
- /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i
1450
- // Xiaomi Mi
1451
- ],
1452
- [[u, /_/g, " "], [f, we], [l, M]],
1453
- [
1454
- /oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,
1455
- // Redmi Pad
1456
- /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i
1457
- // Mi Pad tablets
1458
- ],
1459
- [[u, /_/g, " "], [f, we], [l, C]],
1460
- [
1461
- // OPPO
1462
- /; (\w+) bui.+ oppo/i,
1463
- /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
1464
- ],
1465
- [u, [f, "OPPO"], [l, M]],
1466
- [
1467
- /\b(opd2\d{3}a?) bui/i
1468
- ],
1469
- [u, [f, "OPPO"], [l, C]],
1470
- [
1471
- // Vivo
1472
- /vivo (\w+)(?: bui|\))/i,
1473
- /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
1474
- ],
1475
- [u, [f, "Vivo"], [l, M]],
1476
- [
1477
- // Realme
1478
- /\b(rmx[1-3]\d{3})(?: bui|;|\))/i
1479
- ],
1480
- [u, [f, "Realme"], [l, M]],
1481
- [
1482
- // Motorola
1483
- /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
1484
- /\bmot(?:orola)?[- ](\w*)/i,
1485
- /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
1486
- ],
1487
- [u, [f, H], [l, M]],
1488
- [
1489
- /\b(mz60\d|xoom[2 ]{0,2}) build\//i
1490
- ],
1491
- [u, [f, H], [l, C]],
1492
- [
1493
- // LG
1494
- /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
1495
- ],
1496
- [u, [f, R], [l, C]],
1497
- [
1498
- /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
1499
- /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
1500
- /\blg-?([\d\w]+) bui/i
1501
- ],
1502
- [u, [f, R], [l, M]],
1503
- [
1504
- // Lenovo
1505
- /(ideatab[-\w ]+)/i,
1506
- /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
1507
- ],
1508
- [u, [f, "Lenovo"], [l, C]],
1509
- [
1510
- // Nokia
1511
- /(?:maemo|nokia).*(n900|lumia \d+)/i,
1512
- /nokia[-_ ]?([-\w\.]*)/i
1513
- ],
1514
- [[u, /_/g, " "], [f, "Nokia"], [l, M]],
1515
- [
1516
- // Google
1517
- /(pixel c)\b/i
1518
- // Google Pixel C
1519
- ],
1520
- [u, [f, T], [l, C]],
1521
- [
1522
- /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i
1523
- // Google Pixel
1524
- ],
1525
- [u, [f, T], [l, M]],
1526
- [
1527
- // Sony
1528
- /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
1529
- ],
1530
- [u, [f, ee], [l, M]],
1531
- [
1532
- /sony tablet [ps]/i,
1533
- /\b(?:sony)?sgp\w+(?: bui|\))/i
1534
- ],
1535
- [[u, "Xperia Tablet"], [f, ee], [l, C]],
1536
- [
1537
- // OnePlus
1538
- / (kb2005|in20[12]5|be20[12][59])\b/i,
1539
- /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
1540
- ],
1541
- [u, [f, "OnePlus"], [l, M]],
1542
- [
1543
- // Amazon
1544
- /(alexa)webm/i,
1545
- /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,
1546
- // Kindle Fire without Silk / Echo Show
1547
- /(kf[a-z]+)( bui|\)).+silk\//i
1548
- // Kindle Fire HD
1549
- ],
1550
- [u, [f, Ae], [l, C]],
1551
- [
1552
- /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
1553
- // Fire Phone
1554
- ],
1555
- [[u, /(.+)/g, "Fire Phone $1"], [f, Ae], [l, M]],
1556
- [
1557
- // BlackBerry
1558
- /(playbook);[-\w\),; ]+(rim)/i
1559
- // BlackBerry PlayBook
1560
- ],
1561
- [u, f, [l, C]],
1562
- [
1563
- /\b((?:bb[a-f]|st[hv])100-\d)/i,
1564
- /\(bb10; (\w+)/i
1565
- // BlackBerry 10
1566
- ],
1567
- [u, [f, ae], [l, M]],
1568
- [
1569
- // Asus
1570
- /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
1571
- ],
1572
- [u, [f, U], [l, C]],
1573
- [
1574
- / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
1575
- ],
1576
- [u, [f, U], [l, M]],
1577
- [
1578
- // HTC
1579
- /(nexus 9)/i
1580
- // HTC Nexus 9
1581
- ],
1582
- [u, [f, "HTC"], [l, C]],
1583
- [
1584
- /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
1585
- // HTC
1586
- // ZTE
1587
- /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
1588
- /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
1589
- // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
1590
- ],
1591
- [f, [u, /_/g, " "], [l, M]],
1592
- [
1593
- // TCL
1594
- /droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i
1595
- ],
1596
- [u, [f, "TCL"], [l, C]],
1597
- [
1598
- // itel
1599
- /(itel) ((\w+))/i
1600
- ],
1601
- [[f, xe], u, [l, Pe, { tablet: ["p10001l", "w7001"], "*": "mobile" }]],
1602
- [
1603
- // Acer
1604
- /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
1605
- ],
1606
- [u, [f, "Acer"], [l, C]],
1607
- [
1608
- // Meizu
1609
- /droid.+; (m[1-5] note) bui/i,
1610
- /\bmz-([-\w]{2,})/i
1611
- ],
1612
- [u, [f, "Meizu"], [l, M]],
1613
- [
1614
- // Ulefone
1615
- /; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
1616
- ],
1617
- [u, [f, "Ulefone"], [l, M]],
1618
- [
1619
- // Nothing
1620
- /droid.+; (a(?:015|06[35]|142p?))/i
1621
- ],
1622
- [u, [f, "Nothing"], [l, M]],
1623
- [
1624
- // MIXED
1625
- /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,
1626
- // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
1627
- /(hp) ([\w ]+\w)/i,
1628
- // HP iPAQ
1629
- /(asus)-?(\w+)/i,
1630
- // Asus
1631
- /(microsoft); (lumia[\w ]+)/i,
1632
- // Microsoft Lumia
1633
- /(lenovo)[-_ ]?([-\w]+)/i,
1634
- // Lenovo
1635
- /(jolla)/i,
1636
- // Jolla
1637
- /(oppo) ?([\w ]+) bui/i
1638
- // OPPO
1639
- ],
1640
- [f, u, [l, M]],
1641
- [
1642
- /(kobo)\s(ereader|touch)/i,
1643
- // Kobo
1644
- /(archos) (gamepad2?)/i,
1645
- // Archos
1646
- /(hp).+(touchpad(?!.+tablet)|tablet)/i,
1647
- // HP TouchPad
1648
- /(kindle)\/([\w\.]+)/i,
1649
- // Kindle
1650
- /(nook)[\w ]+build\/(\w+)/i,
1651
- // Nook
1652
- /(dell) (strea[kpr\d ]*[\dko])/i,
1653
- // Dell Streak
1654
- /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
1655
- // Le Pan Tablets
1656
- /(trinity)[- ]*(t\d{3}) bui/i,
1657
- // Trinity Tablets
1658
- /(gigaset)[- ]+(q\w{1,9}) bui/i,
1659
- // Gigaset Tablets
1660
- /(vodafone) ([\w ]+)(?:\)| bui)/i
1661
- // Vodafone
1662
- ],
1663
- [f, u, [l, C]],
1664
- [
1665
- /(surface duo)/i
1666
- // Surface Duo
1667
- ],
1668
- [u, [f, v], [l, C]],
1669
- [
1670
- /droid [\d\.]+; (fp\du?)(?: b|\))/i
1671
- // Fairphone
1672
- ],
1673
- [u, [f, "Fairphone"], [l, M]],
1674
- [
1675
- /(u304aa)/i
1676
- // AT&T
1677
- ],
1678
- [u, [f, "AT&T"], [l, M]],
1679
- [
1680
- /\bsie-(\w*)/i
1681
- // Siemens
1682
- ],
1683
- [u, [f, "Siemens"], [l, M]],
1684
- [
1685
- /\b(rct\w+) b/i
1686
- // RCA Tablets
1687
- ],
1688
- [u, [f, "RCA"], [l, C]],
1689
- [
1690
- /\b(venue[\d ]{2,7}) b/i
1691
- // Dell Venue Tablets
1692
- ],
1693
- [u, [f, "Dell"], [l, C]],
1694
- [
1695
- /\b(q(?:mv|ta)\w+) b/i
1696
- // Verizon Tablet
1697
- ],
1698
- [u, [f, "Verizon"], [l, C]],
1699
- [
1700
- /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i
1701
- // Barnes & Noble Tablet
1702
- ],
1703
- [u, [f, "Barnes & Noble"], [l, C]],
1704
- [
1705
- /\b(tm\d{3}\w+) b/i
1706
- ],
1707
- [u, [f, "NuVision"], [l, C]],
1708
- [
1709
- /\b(k88) b/i
1710
- // ZTE K Series Tablet
1711
- ],
1712
- [u, [f, "ZTE"], [l, C]],
1713
- [
1714
- /\b(nx\d{3}j) b/i
1715
- // ZTE Nubia
1716
- ],
1717
- [u, [f, "ZTE"], [l, M]],
1718
- [
1719
- /\b(gen\d{3}) b.+49h/i
1720
- // Swiss GEN Mobile
1721
- ],
1722
- [u, [f, "Swiss"], [l, M]],
1723
- [
1724
- /\b(zur\d{3}) b/i
1725
- // Swiss ZUR Tablet
1726
- ],
1727
- [u, [f, "Swiss"], [l, C]],
1728
- [
1729
- /\b((zeki)?tb.*\b) b/i
1730
- // Zeki Tablets
1731
- ],
1732
- [u, [f, "Zeki"], [l, C]],
1733
- [
1734
- /\b([yr]\d{2}) b/i,
1735
- /\b(dragon[- ]+touch |dt)(\w{5}) b/i
1736
- // Dragon Touch Tablet
1737
- ],
1738
- [[f, "Dragon Touch"], u, [l, C]],
1739
- [
1740
- /\b(ns-?\w{0,9}) b/i
1741
- // Insignia Tablets
1742
- ],
1743
- [u, [f, "Insignia"], [l, C]],
1744
- [
1745
- /\b((nxa|next)-?\w{0,9}) b/i
1746
- // NextBook Tablets
1747
- ],
1748
- [u, [f, "NextBook"], [l, C]],
1749
- [
1750
- /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i
1751
- // Voice Xtreme Phones
1752
- ],
1753
- [[f, "Voice"], u, [l, M]],
1754
- [
1755
- /\b(lvtel\-)?(v1[12]) b/i
1756
- // LvTel Phones
1757
- ],
1758
- [[f, "LvTel"], u, [l, M]],
1759
- [
1760
- /\b(ph-1) /i
1761
- // Essential PH-1
1762
- ],
1763
- [u, [f, "Essential"], [l, M]],
1764
- [
1765
- /\b(v(100md|700na|7011|917g).*\b) b/i
1766
- // Envizen Tablets
1767
- ],
1768
- [u, [f, "Envizen"], [l, C]],
1769
- [
1770
- /\b(trio[-\w\. ]+) b/i
1771
- // MachSpeed Tablets
1772
- ],
1773
- [u, [f, "MachSpeed"], [l, C]],
1774
- [
1775
- /\btu_(1491) b/i
1776
- // Rotor Tablets
1777
- ],
1778
- [u, [f, "Rotor"], [l, C]],
1779
- [
1780
- /(shield[\w ]+) b/i
1781
- // Nvidia Shield Tablets
1782
- ],
1783
- [u, [f, "Nvidia"], [l, C]],
1784
- [
1785
- /(sprint) (\w+)/i
1786
- // Sprint Phones
1787
- ],
1788
- [f, u, [l, M]],
1789
- [
1790
- /(kin\.[onetw]{3})/i
1791
- // Microsoft Kin
1792
- ],
1793
- [[u, /\./g, " "], [f, v], [l, M]],
1794
- [
1795
- /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
1796
- // Zebra
1797
- ],
1798
- [u, [f, he], [l, C]],
1799
- [
1800
- /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
1801
- ],
1802
- [u, [f, he], [l, M]],
1803
- [
1804
- ///////////////////
1805
- // SMARTTVS
1806
- ///////////////////
1807
- /smart-tv.+(samsung)/i
1808
- // Samsung
1809
- ],
1810
- [f, [l, B]],
1811
- [
1812
- /hbbtv.+maple;(\d+)/i
1813
- ],
1814
- [[u, /^/, "SmartTV"], [f, Y], [l, B]],
1815
- [
1816
- /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
1817
- // LG SmartTV
1818
- ],
1819
- [[f, R], [l, B]],
1820
- [
1821
- /(apple) ?tv/i
1822
- // Apple TV
1823
- ],
1824
- [f, [u, _ + " TV"], [l, B]],
1825
- [
1826
- /crkey/i
1827
- // Google Chromecast
1828
- ],
1829
- [[u, S + "cast"], [f, T], [l, B]],
1830
- [
1831
- /droid.+aft(\w+)( bui|\))/i
1832
- // Fire TV
1833
- ],
1834
- [u, [f, Ae], [l, B]],
1835
- [
1836
- /\(dtv[\);].+(aquos)/i,
1837
- /(aquos-tv[\w ]+)\)/i
1838
- // Sharp
1839
- ],
1840
- [u, [f, q], [l, B]],
1841
- [
1842
- /(bravia[\w ]+)( bui|\))/i
1843
- // Sony
1844
- ],
1845
- [u, [f, ee], [l, B]],
1846
- [
1847
- /(mitv-\w{5}) bui/i
1848
- // Xiaomi
1849
- ],
1850
- [u, [f, we], [l, B]],
1851
- [
1852
- /Hbbtv.*(technisat) (.*);/i
1853
- // TechniSAT
1854
- ],
1855
- [f, u, [l, B]],
1856
- [
1857
- /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
1858
- // Roku
1859
- /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
1860
- // HbbTV devices
1861
- ],
1862
- [[f, Ve], [u, Ve], [l, B]],
1863
- [
1864
- /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i
1865
- // SmartTV from Unidentified Vendors
1866
- ],
1867
- [[l, B]],
1868
- [
1869
- ///////////////////
1870
- // CONSOLES
1871
- ///////////////////
1872
- /(ouya)/i,
1873
- // Ouya
1874
- /(nintendo) ([wids3utch]+)/i
1875
- // Nintendo
1876
- ],
1877
- [f, u, [l, pe]],
1878
- [
1879
- /droid.+; (shield) bui/i
1880
- // Nvidia
1881
- ],
1882
- [u, [f, "Nvidia"], [l, pe]],
1883
- [
1884
- /(playstation [345portablevi]+)/i
1885
- // Playstation
1886
- ],
1887
- [u, [f, ee], [l, pe]],
1888
- [
1889
- /\b(xbox(?: one)?(?!; xbox))[\); ]/i
1890
- // Microsoft Xbox
1891
- ],
1892
- [u, [f, v], [l, pe]],
1893
- [
1894
- ///////////////////
1895
- // WEARABLES
1896
- ///////////////////
1897
- /\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i
1898
- // Samsung Galaxy Watch
1899
- ],
1900
- [u, [f, Y], [l, z]],
1901
- [
1902
- /((pebble))app/i
1903
- // Pebble
1904
- ],
1905
- [f, u, [l, z]],
1906
- [
1907
- /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
1908
- // Apple Watch
1909
- ],
1910
- [u, [f, _], [l, z]],
1911
- [
1912
- /droid.+; (glass) \d/i
1913
- // Google Glass
1914
- ],
1915
- [u, [f, T], [l, z]],
1916
- [
1917
- /droid.+; (wt63?0{2,3})\)/i
1918
- ],
1919
- [u, [f, he], [l, z]],
1920
- [
1921
- /(quest( \d| pro)?)/i
1922
- // Oculus Quest
1923
- ],
1924
- [u, [f, Ee], [l, z]],
1925
- [
1926
- ///////////////////
1927
- // EMBEDDED
1928
- ///////////////////
1929
- /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
1930
- // Tesla
1931
- ],
1932
- [f, [l, be]],
1933
- [
1934
- /(aeobc)\b/i
1935
- // Echo Dot
1936
- ],
1937
- [u, [f, Ae], [l, be]],
1938
- [
1939
- ////////////////////
1940
- // MIXED (GENERIC)
1941
- ///////////////////
1942
- /droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i
1943
- // Android Phones from Unidentified Vendors
1944
- ],
1945
- [u, [l, M]],
1946
- [
1947
- /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i
1948
- // Android Tablets from Unidentified Vendors
1949
- ],
1950
- [u, [l, C]],
1951
- [
1952
- /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
1953
- // Unidentifiable Tablet
1954
- ],
1955
- [[l, C]],
1956
- [
1957
- /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
1958
- // Unidentifiable Mobile
1959
- ],
1960
- [[l, M]],
1961
- [
1962
- /(android[-\w\. ]{0,9});.+buil/i
1963
- // Generic Android Device
1964
- ],
1965
- [u, [f, "Generic"]]
1966
- ],
1967
- engine: [
1968
- [
1969
- /windows.+ edge\/([\w\.]+)/i
1970
- // EdgeHTML
1971
- ],
1972
- [h, [m, w + "HTML"]],
1973
- [
1974
- /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
1975
- // Blink
1976
- ],
1977
- [h, [m, "Blink"]],
1978
- [
1979
- /(presto)\/([\w\.]+)/i,
1980
- // Presto
1981
- /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,
1982
- // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
1983
- /ekioh(flow)\/([\w\.]+)/i,
1984
- // Flow
1985
- /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
1986
- // KHTML/Tasman/Links
1987
- /(icab)[\/ ]([23]\.[\d\.]+)/i,
1988
- // iCab
1989
- /\b(libweb)/i
1990
- ],
1991
- [m, h],
1992
- [
1993
- /rv\:([\w\.]{1,9})\b.+(gecko)/i
1994
- // Gecko
1995
- ],
1996
- [h, m]
1997
- ],
1998
- os: [
1999
- [
2000
- // Windows
2001
- /microsoft (windows) (vista|xp)/i
2002
- // Windows (iTunes)
2003
- ],
2004
- [m, h],
2005
- [
2006
- /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i
2007
- // Windows Phone
2008
- ],
2009
- [m, [h, Pe, F]],
2010
- [
2011
- /windows nt 6\.2; (arm)/i,
2012
- // Windows RT
2013
- /windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,
2014
- /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i
2015
- ],
2016
- [[h, Pe, F], [m, "Windows"]],
2017
- [
2018
- // iOS/macOS
2019
- /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,
2020
- // iOS
2021
- /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,
2022
- /cfnetwork\/.+darwin/i
2023
- ],
2024
- [[h, /_/g, "."], [m, "iOS"]],
2025
- [
2026
- /(mac os x) ?([\w\. ]*)/i,
2027
- /(macintosh|mac_powerpc\b)(?!.+haiku)/i
2028
- // Mac OS
2029
- ],
2030
- [[m, J], [h, /_/g, "."]],
2031
- [
2032
- // Mobile OSes
2033
- /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i
2034
- // Android-x86/HarmonyOS
2035
- ],
2036
- [h, m],
2037
- [
2038
- // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
2039
- /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
2040
- /(blackberry)\w*\/([\w\.]*)/i,
2041
- // Blackberry
2042
- /(tizen|kaios)[\/ ]([\w\.]+)/i,
2043
- // Tizen/KaiOS
2044
- /\((series40);/i
2045
- // Series 40
2046
- ],
2047
- [m, h],
2048
- [
2049
- /\(bb(10);/i
2050
- // BlackBerry 10
2051
- ],
2052
- [h, [m, ae]],
2053
- [
2054
- /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i
2055
- // Symbian
2056
- ],
2057
- [h, [m, "Symbian"]],
2058
- [
2059
- /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
2060
- // Firefox OS
2061
- ],
2062
- [h, [m, g + " OS"]],
2063
- [
2064
- /web0s;.+rt(tv)/i,
2065
- /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i
2066
- // WebOS
2067
- ],
2068
- [h, [m, "webOS"]],
2069
- [
2070
- /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
2071
- // watchOS
2072
- ],
2073
- [h, [m, "watchOS"]],
2074
- [
2075
- // Google Chromecast
2076
- /crkey\/([\d\.]+)/i
2077
- // Google Chromecast
2078
- ],
2079
- [h, [m, S + "cast"]],
2080
- [
2081
- /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
2082
- // Chromium OS
2083
- ],
2084
- [[m, _e], h],
2085
- [
2086
- // Smart TVs
2087
- /panasonic;(viera)/i,
2088
- // Panasonic Viera
2089
- /(netrange)mmh/i,
2090
- // Netrange
2091
- /(nettv)\/(\d+\.[\w\.]+)/i,
2092
- // NetTV
2093
- // Console
2094
- /(nintendo|playstation) ([wids345portablevuch]+)/i,
2095
- // Nintendo/Playstation
2096
- /(xbox); +xbox ([^\);]+)/i,
2097
- // Microsoft Xbox (360, One, X, S, Series X, Series S)
2098
- // Other
2099
- /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
2100
- // Joli/Palm
2101
- /(mint)[\/\(\) ]?(\w*)/i,
2102
- // Mint
2103
- /(mageia|vectorlinux)[; ]/i,
2104
- // Mageia/VectorLinux
2105
- /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
2106
- // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
2107
- /(hurd|linux) ?([\w\.]*)/i,
2108
- // Hurd/Linux
2109
- /(gnu) ?([\w\.]*)/i,
2110
- // GNU
2111
- /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
2112
- // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
2113
- /(haiku) (\w+)/i
2114
- // Haiku
2115
- ],
2116
- [m, h],
2117
- [
2118
- /(sunos) ?([\w\.\d]*)/i
2119
- // Solaris
2120
- ],
2121
- [[m, "Solaris"], h],
2122
- [
2123
- /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
2124
- // Solaris
2125
- /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
2126
- // AIX
2127
- /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
2128
- // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
2129
- /(unix) ?([\w\.]*)/i
2130
- // UNIX
2131
- ],
2132
- [m, h]
2133
- ]
2134
- }, N = function(D, k) {
2135
- if (typeof D === O && (k = D, D = r), !(this instanceof N))
2136
- return new N(D, k).getResult();
2137
- var I = typeof i !== d && i.navigator ? i.navigator : r, G = D || (I && I.userAgent ? I.userAgent : o), ce = I && I.userAgentData ? I.userAgentData : r, ye = k ? Re(A, k) : A, $ = I && I.userAgent == G;
2138
- return this.getBrowser = function() {
2139
- var x = {};
2140
- return x[m] = r, x[h] = r, Le.call(x, G, ye.browser), x[j] = Ce(x[h]), $ && I && I.brave && typeof I.brave.isBrave == c && (x[m] = "Brave"), x;
2141
- }, this.getCPU = function() {
2142
- var x = {};
2143
- return x[oe] = r, Le.call(x, G, ye.cpu), x;
2144
- }, this.getDevice = function() {
2145
- var x = {};
2146
- return x[f] = r, x[u] = r, x[l] = r, Le.call(x, G, ye.device), $ && !x[l] && ce && ce.mobile && (x[l] = M), $ && x[u] == "Macintosh" && I && typeof I.standalone !== d && I.maxTouchPoints && I.maxTouchPoints > 2 && (x[u] = "iPad", x[l] = C), x;
2147
- }, this.getEngine = function() {
2148
- var x = {};
2149
- return x[m] = r, x[h] = r, Le.call(x, G, ye.engine), x;
2150
- }, this.getOS = function() {
2151
- var x = {};
2152
- return x[m] = r, x[h] = r, Le.call(x, G, ye.os), $ && !x[m] && ce && ce.platform && ce.platform != "Unknown" && (x[m] = ce.platform.replace(/chrome os/i, _e).replace(/macos/i, J)), x;
2153
- }, this.getResult = function() {
2154
- return {
2155
- ua: this.getUA(),
2156
- browser: this.getBrowser(),
2157
- engine: this.getEngine(),
2158
- os: this.getOS(),
2159
- device: this.getDevice(),
2160
- cpu: this.getCPU()
2161
- };
2162
- }, this.getUA = function() {
2163
- return G;
2164
- }, this.setUA = function(x) {
2165
- return G = typeof x === P && x.length > X ? Ve(x, X) : x, this;
2166
- }, this.setUA(G), this;
2167
- };
2168
- N.VERSION = s, N.BROWSER = Te([m, h, j]), N.CPU = Te([oe]), N.DEVICE = Te([u, f, l, pe, M, B, C, z, be]), N.ENGINE = N.OS = Te([m, h]), e.exports && (t = e.exports = N), t.UAParser = N;
2169
- var L = typeof i !== d && (i.jQuery || i.Zepto);
2170
- if (L && !L.ua) {
2171
- var Z = new N();
2172
- L.ua = Z.getResult(), L.ua.get = function() {
2173
- return Z.getUA();
2174
- }, L.ua.set = function(D) {
2175
- Z.setUA(D);
2176
- var k = Z.getResult();
2177
- for (var I in k)
2178
- L.ua[I] = k[I];
2179
- };
2180
- }
2181
- })(typeof window == "object" ? window : Ue);
2182
- })(Ot, Ot.exports);
2183
- var Sn = Ot.exports;
2184
- const On = /* @__PURE__ */ Ye(Sn);
2185
- var vt = { exports: {} };
2186
- (function(e, t) {
2187
- Object.defineProperty(t, "__esModule", {
2188
- value: !0
2189
- }), t.default = i;
2190
- function i() {
2191
- return !!(typeof window < "u" && ("ontouchstart" in window || window.DocumentTouch && typeof document < "u" && document instanceof window.DocumentTouch)) || !!(typeof navigator < "u" && (navigator.maxTouchPoints || navigator.msMaxTouchPoints));
2192
- }
2193
- e.exports = t.default;
2194
- })(vt, vt.exports);
2195
- var vn = vt.exports;
2196
- const Rn = /* @__PURE__ */ Ye(vn), xn = () => Rn(), Rr = () => {
2197
- const t = new On().getResult(), i = t.browser.name, r = t.browser.version, s = t.engine.name, o = t.os.name, a = t.device.type;
2198
- return {
2199
- browserName: i ? i.toLowerCase().replace(" ", "-") : "",
2200
- browserVersion: r || "",
2201
- browserEngine: s ? s.toLowerCase().replace(" ", "-") : "",
2202
- osName: o ? o.toLowerCase().replace(" ", "-") : "",
2203
- type: typeof a < "u" ? a.toLowerCase().replace(" ", "-") : "laptop",
2204
- touchSupport: xn()
2205
- };
2206
- };
2207
- var xr = { exports: {} };
2208
- (function(e, t) {
2209
- (function(i, r) {
2210
- e.exports = r();
2211
- })(Ue, function() {
2212
- return function(i, r, s) {
2213
- r.prototype.isBetween = function(o, a, c, d) {
2214
- var O = s(o), P = s(a), j = (d = d || "()")[0] === "(", u = d[1] === ")";
2215
- return (j ? this.isAfter(O, c) : !this.isBefore(O, c)) && (u ? this.isBefore(P, c) : !this.isAfter(P, c)) || (j ? this.isBefore(O, c) : !this.isAfter(O, c)) && (u ? this.isAfter(P, c) : !this.isBefore(P, c));
2216
- };
2217
- };
2218
- });
2219
- })(xr);
2220
- var In = xr.exports;
2221
- const Dn = /* @__PURE__ */ Ye(In);
2222
- Fe.extend(Dn);
2223
- const Xn = (e, t, i = Fe()) => {
2224
- if (!Fe(e).isValid() || !Fe(t).isValid())
2225
- throw new Error("dateA or dateB is not valid date");
2226
- const r = Fe(e), s = Fe(t);
2227
- return i.isBetween(r, s, "millisecond");
2228
- }, Zn = (e) => e.length > 0 && e.every((t) => t !== null), Kn = (e = "portrait") => {
2229
- const t = Rr();
2230
- return t.touchSupport ? t.type === "laptop" && t.osName === "mac-os" && t.browserName === "safari" && t.touchSupport && Zr() === e : !1;
2231
- }, Jn = (e, t) => !!e && Object.prototype.hasOwnProperty.call(e, t), Qn = (e = !0) => {
2232
- const t = Rr();
2233
- return e ? t.browserName === "safari" || t.browserName === "mobile-safari" : t.browserName === "safari";
2234
- }, ei = (e) => {
2235
- const t = e.scrollWidth > e.clientWidth, i = e.scrollHeight > e.clientHeight;
2236
- return t || i;
2237
- };
2238
- var At = { exports: {} };
2239
- /*! @license DOMPurify 3.1.7 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.7/LICENSE */
2240
- var mr;
2241
- function pr() {
2242
- return mr || (mr = 1, function(e, t) {
2243
- (function(i, r) {
2244
- e.exports = r();
2245
- })(Ue, function() {
2246
- const {
2247
- entries: i,
2248
- setPrototypeOf: r,
2249
- isFrozen: s,
2250
- getPrototypeOf: o,
2251
- getOwnPropertyDescriptor: a
2252
- } = Object;
2253
- let {
2254
- freeze: c,
2255
- seal: d,
2256
- create: O
2257
- } = Object, {
2258
- apply: P,
2259
- construct: j
2260
- } = typeof Reflect < "u" && Reflect;
2261
- c || (c = function(A) {
2262
- return A;
2263
- }), d || (d = function(A) {
2264
- return A;
2265
- }), P || (P = function(A, N, L) {
2266
- return A.apply(N, L);
2267
- }), j || (j = function(A, N) {
2268
- return new A(...N);
2269
- });
2270
- const u = X(Array.prototype.forEach), m = X(Array.prototype.pop), l = X(Array.prototype.push), f = X(String.prototype.toLowerCase), h = X(String.prototype.toString), oe = X(String.prototype.match), pe = X(String.prototype.replace), M = X(String.prototype.indexOf), C = X(String.prototype.trim), B = X(Object.prototype.hasOwnProperty), z = X(RegExp.prototype.test), be = Ae(TypeError);
2271
- function X(F) {
2272
- return function(A) {
2273
- for (var N = arguments.length, L = new Array(N > 1 ? N - 1 : 0), Z = 1; Z < N; Z++)
2274
- L[Z - 1] = arguments[Z];
2275
- return P(F, A, L);
2276
- };
2277
- }
2278
- function Ae(F) {
2279
- return function() {
2280
- for (var A = arguments.length, N = new Array(A), L = 0; L < A; L++)
2281
- N[L] = arguments[L];
2282
- return j(F, N);
2283
- };
2284
- }
2285
- function _(F, A) {
2286
- let N = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : f;
2287
- r && r(F, null);
2288
- let L = A.length;
2289
- for (; L--; ) {
2290
- let Z = A[L];
2291
- if (typeof Z == "string") {
2292
- const D = N(Z);
2293
- D !== Z && (s(A) || (A[L] = D), Z = D);
2294
- }
2295
- F[Z] = !0;
2296
- }
2297
- return F;
2298
- }
2299
- function U(F) {
2300
- for (let A = 0; A < F.length; A++)
2301
- B(F, A) || (F[A] = null);
2302
- return F;
2303
- }
2304
- function ae(F) {
2305
- const A = O(null);
2306
- for (const [N, L] of i(F))
2307
- B(F, N) && (Array.isArray(L) ? A[N] = U(L) : L && typeof L == "object" && L.constructor === Object ? A[N] = ae(L) : A[N] = L);
2308
- return A;
2309
- }
2310
- function de(F, A) {
2311
- for (; F !== null; ) {
2312
- const L = a(F, A);
2313
- if (L) {
2314
- if (L.get)
2315
- return X(L.get);
2316
- if (typeof L.value == "function")
2317
- return X(L.value);
2318
- }
2319
- F = o(F);
2320
- }
2321
- function N() {
2322
- return null;
2323
- }
2324
- return N;
2325
- }
2326
- const S = c(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]), w = c(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]), g = c(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]), T = c(["animate", "color-profile", "cursor", "discard", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]), b = c(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover", "mprescripts"]), R = c(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]), v = c(["#text"]), H = c(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "popover", "popovertarget", "popovertargetaction", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "wrap", "xmlns", "slot"]), W = c(["accent-height", "accumulate", "additive", "alignment-baseline", "amplitude", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "exponent", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "intercept", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "slope", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "tablevalues", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]), Y = c(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]), q = c(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]), ee = d(/\{\{[\w\W]*|[\w\W]*\}\}/gm), we = d(/<%[\w\W]*|[\w\W]*%>/gm), he = d(/\${[\w\W]*}/gm), Ee = d(/^data-[\-\w.\u00B7-\uFFFF]/), _e = d(/^aria-[\-\w]+$/), J = d(
2327
- /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i
2328
- // eslint-disable-line no-useless-escape
2329
- ), ge = d(/^(?:\w+script|data):/i), Re = d(
2330
- /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g
2331
- // eslint-disable-line no-control-regex
2332
- ), Te = d(/^html$/i), Qe = d(/^[a-z][.\w]*(-[.\w]+)+$/i);
2333
- var xe = /* @__PURE__ */ Object.freeze({
2334
- __proto__: null,
2335
- MUSTACHE_EXPR: ee,
2336
- ERB_EXPR: we,
2337
- TMPLIT_EXPR: he,
2338
- DATA_ATTR: Ee,
2339
- ARIA_ATTR: _e,
2340
- IS_ALLOWED_URI: J,
2341
- IS_SCRIPT_OR_DATA: ge,
2342
- ATTR_WHITESPACE: Re,
2343
- DOCTYPE_NAME: Te,
2344
- CUSTOM_ELEMENT: Qe
2345
- });
2346
- const Ce = {
2347
- element: 1,
2348
- attribute: 2,
2349
- text: 3,
2350
- cdataSection: 4,
2351
- entityReference: 5,
2352
- // Deprecated
2353
- entityNode: 6,
2354
- // Deprecated
2355
- progressingInstruction: 7,
2356
- comment: 8,
2357
- document: 9,
2358
- documentType: 10,
2359
- documentFragment: 11,
2360
- notation: 12
2361
- // Deprecated
2362
- }, Ve = function() {
2363
- return typeof window > "u" ? null : window;
2364
- }, Le = function(A, N) {
2365
- if (typeof A != "object" || typeof A.createPolicy != "function")
2366
- return null;
2367
- let L = null;
2368
- const Z = "data-tt-policy-suffix";
2369
- N && N.hasAttribute(Z) && (L = N.getAttribute(Z));
2370
- const D = "dompurify" + (L ? "#" + L : "");
2371
- try {
2372
- return A.createPolicy(D, {
2373
- createHTML(k) {
2374
- return k;
2375
- },
2376
- createScriptURL(k) {
2377
- return k;
2378
- }
2379
- });
2380
- } catch {
2381
- return console.warn("TrustedTypes policy " + D + " could not be created."), null;
2382
- }
2383
- };
2384
- function Pe() {
2385
- let F = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Ve();
2386
- const A = (E) => Pe(E);
2387
- if (A.version = "3.1.7", A.removed = [], !F || !F.document || F.document.nodeType !== Ce.document)
2388
- return A.isSupported = !1, A;
2389
- let {
2390
- document: N
2391
- } = F;
2392
- const L = N, Z = L.currentScript, {
2393
- DocumentFragment: D,
2394
- HTMLTemplateElement: k,
2395
- Node: I,
2396
- Element: G,
2397
- NodeFilter: ce,
2398
- NamedNodeMap: ye = F.NamedNodeMap || F.MozNamedAttrMap,
2399
- HTMLFormElement: $,
2400
- DOMParser: x,
2401
- trustedTypes: le
2402
- } = F, Ie = G.prototype, et = de(Ie, "cloneNode"), Ir = de(Ie, "remove"), Dr = de(Ie, "nextSibling"), Nr = de(Ie, "childNodes"), tt = de(Ie, "parentNode");
2403
- if (typeof k == "function") {
2404
- const E = N.createElement("template");
2405
- E.content && E.content.ownerDocument && (N = E.content.ownerDocument);
2406
- }
2407
- let ue, qe = "";
2408
- const {
2409
- implementation: ct,
2410
- createNodeIterator: Mr,
2411
- createDocumentFragment: Cr,
2412
- getElementsByTagName: Lr
2413
- } = N, {
2414
- importNode: Pr
2415
- } = L;
2416
- let Se = {};
2417
- A.isSupported = typeof i == "function" && typeof tt == "function" && ct && ct.createHTMLDocument !== void 0;
2418
- const {
2419
- MUSTACHE_EXPR: lt,
2420
- ERB_EXPR: ut,
2421
- TMPLIT_EXPR: ft,
2422
- DATA_ATTR: kr,
2423
- ARIA_ATTR: Fr,
2424
- IS_SCRIPT_OR_DATA: Ur,
2425
- ATTR_WHITESPACE: Nt,
2426
- CUSTOM_ELEMENT: Hr
2427
- } = xe;
2428
- let {
2429
- IS_ALLOWED_URI: Mt
2430
- } = xe, te = null;
2431
- const Ct = _({}, [...S, ...w, ...g, ...b, ...v]);
2432
- let re = null;
2433
- const Lt = _({}, [...H, ...W, ...Y, ...q]);
2434
- let K = Object.seal(O(null, {
2435
- tagNameCheck: {
2436
- writable: !0,
2437
- configurable: !1,
2438
- enumerable: !0,
2439
- value: null
2440
- },
2441
- attributeNameCheck: {
2442
- writable: !0,
2443
- configurable: !1,
2444
- enumerable: !0,
2445
- value: null
2446
- },
2447
- allowCustomizedBuiltInElements: {
2448
- writable: !0,
2449
- configurable: !1,
2450
- enumerable: !0,
2451
- value: !1
2452
- }
2453
- })), Xe = null, dt = null, Pt = !0, mt = !0, kt = !1, Ft = !0, $e = !1, pt = !0, ke = !1, ht = !1, gt = !1, Be = !1, rt = !1, nt = !1, Ut = !0, Ht = !1;
2454
- const $r = "user-content-";
2455
- let bt = !0, Ze = !1, ze = {}, We = null;
2456
- const $t = _({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]);
2457
- let Bt = null;
2458
- const zt = _({}, ["audio", "video", "img", "source", "image", "track"]);
2459
- let wt = null;
2460
- const Wt = _({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]), it = "http://www.w3.org/1998/Math/MathML", ot = "http://www.w3.org/2000/svg", De = "http://www.w3.org/1999/xhtml";
2461
- let Ge = De, _t = !1, Tt = null;
2462
- const Br = _({}, [it, ot, De], h);
2463
- let Ke = null;
2464
- const zr = ["application/xhtml+xml", "text/html"], Wr = "text/html";
2465
- let ne = null, je = null;
2466
- const Gr = N.createElement("form"), Gt = function(n) {
2467
- return n instanceof RegExp || n instanceof Function;
2468
- }, yt = function() {
2469
- let n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2470
- if (!(je && je === n)) {
2471
- if ((!n || typeof n != "object") && (n = {}), n = ae(n), Ke = // eslint-disable-next-line unicorn/prefer-includes
2472
- zr.indexOf(n.PARSER_MEDIA_TYPE) === -1 ? Wr : n.PARSER_MEDIA_TYPE, ne = Ke === "application/xhtml+xml" ? h : f, te = B(n, "ALLOWED_TAGS") ? _({}, n.ALLOWED_TAGS, ne) : Ct, re = B(n, "ALLOWED_ATTR") ? _({}, n.ALLOWED_ATTR, ne) : Lt, Tt = B(n, "ALLOWED_NAMESPACES") ? _({}, n.ALLOWED_NAMESPACES, h) : Br, wt = B(n, "ADD_URI_SAFE_ATTR") ? _(
2473
- ae(Wt),
2474
- // eslint-disable-line indent
2475
- n.ADD_URI_SAFE_ATTR,
2476
- // eslint-disable-line indent
2477
- ne
2478
- // eslint-disable-line indent
2479
- ) : Wt, Bt = B(n, "ADD_DATA_URI_TAGS") ? _(
2480
- ae(zt),
2481
- // eslint-disable-line indent
2482
- n.ADD_DATA_URI_TAGS,
2483
- // eslint-disable-line indent
2484
- ne
2485
- // eslint-disable-line indent
2486
- ) : zt, We = B(n, "FORBID_CONTENTS") ? _({}, n.FORBID_CONTENTS, ne) : $t, Xe = B(n, "FORBID_TAGS") ? _({}, n.FORBID_TAGS, ne) : {}, dt = B(n, "FORBID_ATTR") ? _({}, n.FORBID_ATTR, ne) : {}, ze = B(n, "USE_PROFILES") ? n.USE_PROFILES : !1, Pt = n.ALLOW_ARIA_ATTR !== !1, mt = n.ALLOW_DATA_ATTR !== !1, kt = n.ALLOW_UNKNOWN_PROTOCOLS || !1, Ft = n.ALLOW_SELF_CLOSE_IN_ATTR !== !1, $e = n.SAFE_FOR_TEMPLATES || !1, pt = n.SAFE_FOR_XML !== !1, ke = n.WHOLE_DOCUMENT || !1, Be = n.RETURN_DOM || !1, rt = n.RETURN_DOM_FRAGMENT || !1, nt = n.RETURN_TRUSTED_TYPE || !1, gt = n.FORCE_BODY || !1, Ut = n.SANITIZE_DOM !== !1, Ht = n.SANITIZE_NAMED_PROPS || !1, bt = n.KEEP_CONTENT !== !1, Ze = n.IN_PLACE || !1, Mt = n.ALLOWED_URI_REGEXP || J, Ge = n.NAMESPACE || De, K = n.CUSTOM_ELEMENT_HANDLING || {}, n.CUSTOM_ELEMENT_HANDLING && Gt(n.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (K.tagNameCheck = n.CUSTOM_ELEMENT_HANDLING.tagNameCheck), n.CUSTOM_ELEMENT_HANDLING && Gt(n.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (K.attributeNameCheck = n.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), n.CUSTOM_ELEMENT_HANDLING && typeof n.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements == "boolean" && (K.allowCustomizedBuiltInElements = n.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), $e && (mt = !1), rt && (Be = !0), ze && (te = _({}, v), re = [], ze.html === !0 && (_(te, S), _(re, H)), ze.svg === !0 && (_(te, w), _(re, W), _(re, q)), ze.svgFilters === !0 && (_(te, g), _(re, W), _(re, q)), ze.mathMl === !0 && (_(te, b), _(re, Y), _(re, q))), n.ADD_TAGS && (te === Ct && (te = ae(te)), _(te, n.ADD_TAGS, ne)), n.ADD_ATTR && (re === Lt && (re = ae(re)), _(re, n.ADD_ATTR, ne)), n.ADD_URI_SAFE_ATTR && _(wt, n.ADD_URI_SAFE_ATTR, ne), n.FORBID_CONTENTS && (We === $t && (We = ae(We)), _(We, n.FORBID_CONTENTS, ne)), bt && (te["#text"] = !0), ke && _(te, ["html", "head", "body"]), te.table && (_(te, ["tbody"]), delete Xe.tbody), n.TRUSTED_TYPES_POLICY) {
2487
- if (typeof n.TRUSTED_TYPES_POLICY.createHTML != "function")
2488
- throw be('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');
2489
- if (typeof n.TRUSTED_TYPES_POLICY.createScriptURL != "function")
2490
- throw be('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
2491
- ue = n.TRUSTED_TYPES_POLICY, qe = ue.createHTML("");
2492
- } else
2493
- ue === void 0 && (ue = Le(le, Z)), ue !== null && typeof qe == "string" && (qe = ue.createHTML(""));
2494
- c && c(n), je = n;
2495
- }
2496
- }, jt = _({}, ["mi", "mo", "mn", "ms", "mtext"]), Yt = _({}, ["annotation-xml"]), jr = _({}, ["title", "style", "font", "a", "script"]), Vt = _({}, [...w, ...g, ...T]), qt = _({}, [...b, ...R]), Yr = function(n) {
2497
- let p = tt(n);
2498
- (!p || !p.tagName) && (p = {
2499
- namespaceURI: Ge,
2500
- tagName: "template"
2501
- });
2502
- const y = f(n.tagName), V = f(p.tagName);
2503
- return Tt[n.namespaceURI] ? n.namespaceURI === ot ? p.namespaceURI === De ? y === "svg" : p.namespaceURI === it ? y === "svg" && (V === "annotation-xml" || jt[V]) : !!Vt[y] : n.namespaceURI === it ? p.namespaceURI === De ? y === "math" : p.namespaceURI === ot ? y === "math" && Yt[V] : !!qt[y] : n.namespaceURI === De ? p.namespaceURI === ot && !Yt[V] || p.namespaceURI === it && !jt[V] ? !1 : !qt[y] && (jr[y] || !Vt[y]) : !!(Ke === "application/xhtml+xml" && Tt[n.namespaceURI]) : !1;
2504
- }, Oe = function(n) {
2505
- l(A.removed, {
2506
- element: n
2507
- });
2508
- try {
2509
- tt(n).removeChild(n);
2510
- } catch {
2511
- Ir(n);
2512
- }
2513
- }, st = function(n, p) {
2514
- try {
2515
- l(A.removed, {
2516
- attribute: p.getAttributeNode(n),
2517
- from: p
2518
- });
2519
- } catch {
2520
- l(A.removed, {
2521
- attribute: null,
2522
- from: p
2523
- });
2524
- }
2525
- if (p.removeAttribute(n), n === "is" && !re[n])
2526
- if (Be || rt)
2527
- try {
2528
- Oe(p);
2529
- } catch {
2530
- }
2531
- else
2532
- try {
2533
- p.setAttribute(n, "");
2534
- } catch {
2535
- }
2536
- }, Xt = function(n) {
2537
- let p = null, y = null;
2538
- if (gt)
2539
- n = "<remove></remove>" + n;
2540
- else {
2541
- const ie = oe(n, /^[\r\n\t ]+/);
2542
- y = ie && ie[0];
2543
- }
2544
- Ke === "application/xhtml+xml" && Ge === De && (n = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + n + "</body></html>");
2545
- const V = ue ? ue.createHTML(n) : n;
2546
- if (Ge === De)
2547
- try {
2548
- p = new x().parseFromString(V, Ke);
2549
- } catch {
2550
- }
2551
- if (!p || !p.documentElement) {
2552
- p = ct.createDocument(Ge, "template", null);
2553
- try {
2554
- p.documentElement.innerHTML = _t ? qe : V;
2555
- } catch {
2556
- }
2557
- }
2558
- const se = p.body || p.documentElement;
2559
- return n && y && se.insertBefore(N.createTextNode(y), se.childNodes[0] || null), Ge === De ? Lr.call(p, ke ? "html" : "body")[0] : ke ? p.documentElement : se;
2560
- }, Zt = function(n) {
2561
- return Mr.call(
2562
- n.ownerDocument || n,
2563
- n,
2564
- // eslint-disable-next-line no-bitwise
2565
- ce.SHOW_ELEMENT | ce.SHOW_COMMENT | ce.SHOW_TEXT | ce.SHOW_PROCESSING_INSTRUCTION | ce.SHOW_CDATA_SECTION,
2566
- null
2567
- );
2568
- }, Kt = function(n) {
2569
- return n instanceof $ && (typeof n.nodeName != "string" || typeof n.textContent != "string" || typeof n.removeChild != "function" || !(n.attributes instanceof ye) || typeof n.removeAttribute != "function" || typeof n.setAttribute != "function" || typeof n.namespaceURI != "string" || typeof n.insertBefore != "function" || typeof n.hasChildNodes != "function");
2570
- }, Jt = function(n) {
2571
- return typeof I == "function" && n instanceof I;
2572
- }, Ne = function(n, p, y) {
2573
- Se[n] && u(Se[n], (V) => {
2574
- V.call(A, p, y, je);
2575
- });
2576
- }, Qt = function(n) {
2577
- let p = null;
2578
- if (Ne("beforeSanitizeElements", n, null), Kt(n))
2579
- return Oe(n), !0;
2580
- const y = ne(n.nodeName);
2581
- if (Ne("uponSanitizeElement", n, {
2582
- tagName: y,
2583
- allowedTags: te
2584
- }), n.hasChildNodes() && !Jt(n.firstElementChild) && z(/<[/\w]/g, n.innerHTML) && z(/<[/\w]/g, n.textContent) || n.nodeType === Ce.progressingInstruction || pt && n.nodeType === Ce.comment && z(/<[/\w]/g, n.data))
2585
- return Oe(n), !0;
2586
- if (!te[y] || Xe[y]) {
2587
- if (!Xe[y] && tr(y) && (K.tagNameCheck instanceof RegExp && z(K.tagNameCheck, y) || K.tagNameCheck instanceof Function && K.tagNameCheck(y)))
2588
- return !1;
2589
- if (bt && !We[y]) {
2590
- const V = tt(n) || n.parentNode, se = Nr(n) || n.childNodes;
2591
- if (se && V) {
2592
- const ie = se.length;
2593
- for (let me = ie - 1; me >= 0; --me) {
2594
- const ve = et(se[me], !0);
2595
- ve.__removalCount = (n.__removalCount || 0) + 1, V.insertBefore(ve, Dr(n));
2596
- }
2597
- }
2598
- }
2599
- return Oe(n), !0;
2600
- }
2601
- return n instanceof G && !Yr(n) || (y === "noscript" || y === "noembed" || y === "noframes") && z(/<\/no(script|embed|frames)/i, n.innerHTML) ? (Oe(n), !0) : ($e && n.nodeType === Ce.text && (p = n.textContent, u([lt, ut, ft], (V) => {
2602
- p = pe(p, V, " ");
2603
- }), n.textContent !== p && (l(A.removed, {
2604
- element: n.cloneNode()
2605
- }), n.textContent = p)), Ne("afterSanitizeElements", n, null), !1);
2606
- }, er = function(n, p, y) {
2607
- if (Ut && (p === "id" || p === "name") && (y in N || y in Gr))
2608
- return !1;
2609
- if (!(mt && !dt[p] && z(kr, p))) {
2610
- if (!(Pt && z(Fr, p))) {
2611
- if (!re[p] || dt[p]) {
2612
- if (
2613
- // First condition does a very basic check if a) it's basically a valid custom element tagname AND
2614
- // b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
2615
- // and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck
2616
- !(tr(n) && (K.tagNameCheck instanceof RegExp && z(K.tagNameCheck, n) || K.tagNameCheck instanceof Function && K.tagNameCheck(n)) && (K.attributeNameCheck instanceof RegExp && z(K.attributeNameCheck, p) || K.attributeNameCheck instanceof Function && K.attributeNameCheck(p)) || // Alternative, second condition checks if it's an `is`-attribute, AND
2617
- // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
2618
- p === "is" && K.allowCustomizedBuiltInElements && (K.tagNameCheck instanceof RegExp && z(K.tagNameCheck, y) || K.tagNameCheck instanceof Function && K.tagNameCheck(y)))
2619
- ) return !1;
2620
- } else if (!wt[p]) {
2621
- if (!z(Mt, pe(y, Nt, ""))) {
2622
- if (!((p === "src" || p === "xlink:href" || p === "href") && n !== "script" && M(y, "data:") === 0 && Bt[n])) {
2623
- if (!(kt && !z(Ur, pe(y, Nt, "")))) {
2624
- if (y)
2625
- return !1;
2626
- }
2627
- }
2628
- }
2629
- }
2630
- }
2631
- }
2632
- return !0;
2633
- }, tr = function(n) {
2634
- return n !== "annotation-xml" && oe(n, Hr);
2635
- }, rr = function(n) {
2636
- Ne("beforeSanitizeAttributes", n, null);
2637
- const {
2638
- attributes: p
2639
- } = n;
2640
- if (!p)
2641
- return;
2642
- const y = {
2643
- attrName: "",
2644
- attrValue: "",
2645
- keepAttr: !0,
2646
- allowedAttributes: re
2647
- };
2648
- let V = p.length;
2649
- for (; V--; ) {
2650
- const se = p[V], {
2651
- name: ie,
2652
- namespaceURI: me,
2653
- value: ve
2654
- } = se, Je = ne(ie);
2655
- let fe = ie === "value" ? ve : C(ve);
2656
- if (y.attrName = Je, y.attrValue = fe, y.keepAttr = !0, y.forceKeepAttr = void 0, Ne("uponSanitizeAttribute", n, y), fe = y.attrValue, y.forceKeepAttr || (st(ie, n), !y.keepAttr))
2657
- continue;
2658
- if (!Ft && z(/\/>/i, fe)) {
2659
- st(ie, n);
2660
- continue;
2661
- }
2662
- $e && u([lt, ut, ft], (ir) => {
2663
- fe = pe(fe, ir, " ");
2664
- });
2665
- const nr = ne(n.nodeName);
2666
- if (er(nr, Je, fe)) {
2667
- if (Ht && (Je === "id" || Je === "name") && (st(ie, n), fe = $r + fe), pt && z(/((--!?|])>)|<\/(style|title)/i, fe)) {
2668
- st(ie, n);
2669
- continue;
2670
- }
2671
- if (ue && typeof le == "object" && typeof le.getAttributeType == "function" && !me)
2672
- switch (le.getAttributeType(nr, Je)) {
2673
- case "TrustedHTML": {
2674
- fe = ue.createHTML(fe);
2675
- break;
2676
- }
2677
- case "TrustedScriptURL": {
2678
- fe = ue.createScriptURL(fe);
2679
- break;
2680
- }
2681
- }
2682
- try {
2683
- me ? n.setAttributeNS(me, ie, fe) : n.setAttribute(ie, fe), Kt(n) ? Oe(n) : m(A.removed);
2684
- } catch {
2685
- }
2686
- }
2687
- }
2688
- Ne("afterSanitizeAttributes", n, null);
2689
- }, Vr = function E(n) {
2690
- let p = null;
2691
- const y = Zt(n);
2692
- for (Ne("beforeSanitizeShadowDOM", n, null); p = y.nextNode(); )
2693
- Ne("uponSanitizeShadowNode", p, null), !Qt(p) && (p.content instanceof D && E(p.content), rr(p));
2694
- Ne("afterSanitizeShadowDOM", n, null);
2695
- };
2696
- return A.sanitize = function(E) {
2697
- let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, p = null, y = null, V = null, se = null;
2698
- if (_t = !E, _t && (E = "<!-->"), typeof E != "string" && !Jt(E))
2699
- if (typeof E.toString == "function") {
2700
- if (E = E.toString(), typeof E != "string")
2701
- throw be("dirty is not a string, aborting");
2702
- } else
2703
- throw be("toString is not a function");
2704
- if (!A.isSupported)
2705
- return E;
2706
- if (ht || yt(n), A.removed = [], typeof E == "string" && (Ze = !1), Ze) {
2707
- if (E.nodeName) {
2708
- const ve = ne(E.nodeName);
2709
- if (!te[ve] || Xe[ve])
2710
- throw be("root node is forbidden and cannot be sanitized in-place");
2711
- }
2712
- } else if (E instanceof I)
2713
- p = Xt("<!---->"), y = p.ownerDocument.importNode(E, !0), y.nodeType === Ce.element && y.nodeName === "BODY" || y.nodeName === "HTML" ? p = y : p.appendChild(y);
2714
- else {
2715
- if (!Be && !$e && !ke && // eslint-disable-next-line unicorn/prefer-includes
2716
- E.indexOf("<") === -1)
2717
- return ue && nt ? ue.createHTML(E) : E;
2718
- if (p = Xt(E), !p)
2719
- return Be ? null : nt ? qe : "";
2720
- }
2721
- p && gt && Oe(p.firstChild);
2722
- const ie = Zt(Ze ? E : p);
2723
- for (; V = ie.nextNode(); )
2724
- Qt(V) || (V.content instanceof D && Vr(V.content), rr(V));
2725
- if (Ze)
2726
- return E;
2727
- if (Be) {
2728
- if (rt)
2729
- for (se = Cr.call(p.ownerDocument); p.firstChild; )
2730
- se.appendChild(p.firstChild);
2731
- else
2732
- se = p;
2733
- return (re.shadowroot || re.shadowrootmode) && (se = Pr.call(L, se, !0)), se;
2734
- }
2735
- let me = ke ? p.outerHTML : p.innerHTML;
2736
- return ke && te["!doctype"] && p.ownerDocument && p.ownerDocument.doctype && p.ownerDocument.doctype.name && z(Te, p.ownerDocument.doctype.name) && (me = "<!DOCTYPE " + p.ownerDocument.doctype.name + `>
2737
- ` + me), $e && u([lt, ut, ft], (ve) => {
2738
- me = pe(me, ve, " ");
2739
- }), ue && nt ? ue.createHTML(me) : me;
2740
- }, A.setConfig = function() {
2741
- let E = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2742
- yt(E), ht = !0;
2743
- }, A.clearConfig = function() {
2744
- je = null, ht = !1;
2745
- }, A.isValidAttribute = function(E, n, p) {
2746
- je || yt({});
2747
- const y = ne(E), V = ne(n);
2748
- return er(y, V, p);
2749
- }, A.addHook = function(E, n) {
2750
- typeof n == "function" && (Se[E] = Se[E] || [], l(Se[E], n));
2751
- }, A.removeHook = function(E) {
2752
- if (Se[E])
2753
- return m(Se[E]);
2754
- }, A.removeHooks = function(E) {
2755
- Se[E] && (Se[E] = []);
2756
- }, A.removeAllHooks = function() {
2757
- Se = {};
2758
- }, A;
2759
- }
2760
- var at = Pe();
2761
- return at;
2762
- });
2763
- }(At)), At.exports;
2764
- }
2765
- var Nn = window.DOMPurify || (window.DOMPurify = pr().default || pr());
2766
- const Mn = /* @__PURE__ */ Ye(Nn), ti = (e) => Mn.sanitize(e, {
2767
- ALLOWED_TAGS: [],
2768
- KEEP_CONTENT: !0,
2769
- USE_PROFILES: { html: !1 }
2770
- }).replace(/<\/?[^>]+(>|$)/g, ""), ri = (e, t) => {
2771
- e.removeAttribute(t);
2772
- }, ni = (e) => {
2773
- It.session.remove(e);
2774
- }, ii = (e) => {
2775
- document.documentElement.style.removeProperty(e);
2776
- }, oi = (e = "--vh") => {
2777
- const t = window.innerHeight * 0.01;
2778
- document.documentElement.style.setProperty(e, `${t}px`);
2779
- }, si = (e = "--vw") => {
2780
- const t = document.documentElement.clientWidth;
2781
- document.documentElement.style.setProperty(e, `${t}px`);
2782
- }, ai = (e, t, i) => {
2783
- e.setAttribute(t, i);
2784
- }, ci = (e, t, i = "smooth") => {
2785
- const r = e.getBoundingClientRect().width / 2, s = t.getBoundingClientRect().width / 2, a = t.offsetLeft + s - r;
2786
- e.scrollTo({ left: a, behavior: i });
2787
- }, li = (e, t) => {
2788
- It.session.set(e, t);
2789
- }, ui = (e, t) => {
2790
- document.documentElement.style.setProperty(e, t);
2791
- }, Cn = (e) => {
2792
- if (e) {
2793
- if (e.nodeType === Node.TEXT_NODE) {
2794
- const t = (e.textContent || "").trim(), i = document.createDocumentFragment();
2795
- for (const r of t) {
2796
- const s = document.createElement("span");
2797
- s.textContent = r, i.appendChild(s);
2798
- }
2799
- e.replaceWith(i);
2800
- } else if (e.nodeType === Node.ELEMENT_NODE)
2801
- for (const t of Array.from(e.childNodes))
2802
- Cn(t);
2803
- }
2804
- }, fi = (e) => new Promise((t) => setTimeout(t, e * 1e3, "foo")), di = async (e = !1) => {
2805
- if (!document.images || document.images.length === 0) return Promise.resolve(!0);
2806
- const t = Array.from(document.images).filter(
2807
- (s) => s.getAttribute("loading") !== "lazy"
2808
- ), i = Array.from(
2809
- document.getElementsByTagName("video")
2810
- );
2811
- let r = [
2812
- ...t,
2813
- ...i
2814
- ];
2815
- if (e) {
2816
- const s = window.innerHeight;
2817
- r = r.filter((o) => {
2818
- const a = o.getBoundingClientRect();
2819
- return a.top < s && a.bottom > 0;
2820
- });
2821
- }
2822
- return r.length === 0 ? Promise.resolve(!0) : (await Promise.all(
2823
- r.map((s) => s instanceof HTMLImageElement && s.complete || s instanceof HTMLVideoElement && s.readyState >= 3 ? Promise.resolve() : new Promise((o) => {
2824
- const a = () => o();
2825
- s instanceof HTMLImageElement ? (s.addEventListener("load", a, { once: !0 }), s.addEventListener("error", a, { once: !0 })) : s instanceof HTMLVideoElement && (s.addEventListener("loadeddata", a, { once: !0 }), s.addEventListener("error", a, { once: !0 }));
2826
- }))
2827
- ), !0);
2828
- };
1
+ import { bgScrollStop as r } from "./libs/control/bgScrollStop.js";
2
+ import { pd as m } from "./libs/control/pd.js";
3
+ import { scrollToHash as x } from "./libs/control/scrollToHash.js";
4
+ import { videoPlayControl as s } from "./libs/control/videoPlayControl.js";
5
+ import { changeDateStringToSpecificFormat as i } from "./libs/convert/changeDateStringToSpecificFormat.js";
6
+ import { jsonStringToJsonObject as g } from "./libs/convert/jsonStringToJsonObject.js";
7
+ import { getAspectRatio as S } from "./libs/get/getAspectRatio.js";
8
+ import { getClassNames as u } from "./libs/get/getClassNames.js";
9
+ import { getDocumentHeight as P } from "./libs/get/getDocumentHeight.js";
10
+ import { getEventPaths as v } from "./libs/get/getEventPaths.js";
11
+ import { getGcd as b } from "./libs/get/getGcd.js";
12
+ import { getOrientation as A } from "./libs/get/getOrientation.js";
13
+ import { getParentList as D } from "./libs/get/getParentList.js";
14
+ import { getQueryParams as V } from "./libs/get/getQueryParams.js";
15
+ import { getRem as H } from "./libs/get/getRem.js";
16
+ import { getScrollbarWidth as N } from "./libs/get/getScrollbarWidth.js";
17
+ import { getSessionStorage as B } from "./libs/get/getSessionStorage.js";
18
+ import { getStringLength as O } from "./libs/get/getStringLength.js";
19
+ import { getStylePropertyValue as W } from "./libs/get/getStylePropertyValue.js";
20
+ import { getStylePropertyValueToNumber as I } from "./libs/get/getStylePropertyValueToNumber.js";
21
+ import { getUaData as K } from "./libs/get/getUaData.js";
22
+ import { isBetweenDateTime as Q } from "./libs/is/isBetweenDateTime.js";
23
+ import { isExistAllElements as k } from "./libs/is/isExistAllElements.js";
24
+ import { isIpad as z } from "./libs/is/isIpad.js";
25
+ import { isKeyExists as Y } from "./libs/is/isKeyExists.js";
26
+ import { isSafari as _ } from "./libs/is/isSafari.js";
27
+ import { isScrollable as oo } from "./libs/is/isScrollable.js";
28
+ import { isTouchSupport as ro } from "./libs/is/isTouchSupport.js";
29
+ import { removeAllHtmlTags as mo } from "./libs/remove/removeAllHtmlTags.js";
30
+ import { removeAttribute as xo } from "./libs/remove/removeAttribute.js";
31
+ import { removeSessionStorage as so } from "./libs/remove/removeSessionStorage.js";
32
+ import { removeStylePropertyValue as io } from "./libs/remove/removeStylePropertyValue.js";
33
+ import { set100vh as go } from "./libs/set/set100vh.js";
34
+ import { set100vw as So } from "./libs/set/set100vw.js";
35
+ import { setAttribute as uo } from "./libs/set/setAttribute.js";
36
+ import { setScrollPositionToCenter as Po } from "./libs/set/setScrollPositionToCenter.js";
37
+ import { setSessionStorage as vo } from "./libs/set/setSessionStorage.js";
38
+ import { setStylePropertyValue as bo } from "./libs/set/setStylePropertyValue.js";
39
+ import { toBoolean as wo } from "./libs/to/toBoolean.js";
40
+ import { toPositiveNumber as Eo } from "./libs/to/toPositiveNumber.js";
41
+ import { wrapTextWithSpans as Co } from "./libs/transform/wrapTextWithSpans.js";
42
+ import { sleep as Lo } from "./libs/wait/sleep.js";
43
+ import { waitForAllMediaLoaded as jo } from "./libs/wait/waitForAllMediaLoaded.js";
2829
44
  export {
2830
- Ln as bgScrollStop,
2831
- Un as changeDateStringToSpecificFormat,
2832
- $n as getAspectRatio,
2833
- Bn as getClassNames,
2834
- zn as getDocumentHeight,
2835
- Wn as getEventPaths,
2836
- gr as getGcd,
2837
- Zr as getOrientation,
2838
- Kr as getParentList,
2839
- Gn as getQueryParams,
2840
- jn as getRem,
2841
- qr as getScrollbarWidth,
2842
- Yn as getSessionStorage,
2843
- Vn as getStringLength,
2844
- En as getStylePropertyValue,
2845
- qn as getStylePropertyValueToNumber,
2846
- Rr as getUaData,
2847
- Xn as isBetweenDateTime,
2848
- Zn as isExistAllElements,
2849
- Kn as isIpad,
2850
- Jn as isKeyExists,
2851
- Qn as isSafari,
2852
- ei as isScrollable,
2853
- xn as isTouchSupport,
2854
- Hn as jsonStringToJsonObject,
2855
- Pn as pd,
2856
- ti as removeAllHtmlTags,
2857
- ri as removeAttribute,
2858
- ni as removeSessionStorage,
2859
- ii as removeStylePropertyValue,
2860
- kn as scrollToHash,
2861
- oi as set100vh,
2862
- si as set100vw,
2863
- ai as setAttribute,
2864
- ci as setScrollPositionToCenter,
2865
- li as setSessionStorage,
2866
- ui as setStylePropertyValue,
2867
- fi as sleep,
2868
- Fn as videoPlayControl,
2869
- di as waitForAllMediaLoaded,
2870
- Cn as wrapTextWithSpans
45
+ r as bgScrollStop,
46
+ i as changeDateStringToSpecificFormat,
47
+ S as getAspectRatio,
48
+ u as getClassNames,
49
+ P as getDocumentHeight,
50
+ v as getEventPaths,
51
+ b as getGcd,
52
+ A as getOrientation,
53
+ D as getParentList,
54
+ V as getQueryParams,
55
+ H as getRem,
56
+ N as getScrollbarWidth,
57
+ B as getSessionStorage,
58
+ O as getStringLength,
59
+ W as getStylePropertyValue,
60
+ I as getStylePropertyValueToNumber,
61
+ K as getUaData,
62
+ Q as isBetweenDateTime,
63
+ k as isExistAllElements,
64
+ z as isIpad,
65
+ Y as isKeyExists,
66
+ _ as isSafari,
67
+ oo as isScrollable,
68
+ ro as isTouchSupport,
69
+ g as jsonStringToJsonObject,
70
+ m as pd,
71
+ mo as removeAllHtmlTags,
72
+ xo as removeAttribute,
73
+ so as removeSessionStorage,
74
+ io as removeStylePropertyValue,
75
+ x as scrollToHash,
76
+ go as set100vh,
77
+ So as set100vw,
78
+ uo as setAttribute,
79
+ Po as setScrollPositionToCenter,
80
+ vo as setSessionStorage,
81
+ bo as setStylePropertyValue,
82
+ Lo as sleep,
83
+ wo as toBoolean,
84
+ Eo as toPositiveNumber,
85
+ s as videoPlayControl,
86
+ jo as waitForAllMediaLoaded,
87
+ Co as wrapTextWithSpans
2871
88
  };