iboot-http-client 1.2.8 → 1.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,16 +1,16 @@
1
- import zt from "pino";
2
- import Vt from "pino-pretty";
3
- import Kt from "js-md5";
1
+ import Kt from "pino";
2
+ import Yt from "pino-pretty";
3
+ import $t from "js-md5";
4
4
  import ne from "crypto-js";
5
- const Ir = {
5
+ const xr = {
6
6
  GENERAL: 0,
7
7
  PHONE: 1,
8
8
  EMAIL: 2
9
- }, Dt = {
9
+ }, jt = {
10
10
  TYPE_MGT: 0,
11
11
  TYPE_C: 1,
12
12
  TYPE_B: 2
13
- }, Or = {
13
+ }, Nr = {
14
14
  FROM_WEB: 1,
15
15
  FROM_PC: 2,
16
16
  FROM_WX_MINI_PRO: 3,
@@ -18,34 +18,34 @@ const Ir = {
18
18
  FROM_WX_E: 5,
19
19
  FROM_APP: 6,
20
20
  FROM_DEVICE: 7
21
- }, xr = {
21
+ }, Cr = {
22
22
  unknown: 0,
23
23
  male: 1,
24
24
  female: 2
25
- }, Yt = Vt({
25
+ }, Jt = Yt({
26
26
  colorize: !0,
27
27
  destination: process.stdout,
28
28
  translateTime: "SYS:yyyy-mm-dd HH:MM:ss",
29
29
  ignore: "pid,hostname",
30
30
  messageFormat: "{msg}",
31
31
  singleLine: !0
32
- }), k = zt({
32
+ }), k = Kt({
33
33
  name: process.env.APP_NAME ?? "iBoot",
34
34
  level: process.env.APP_ENV === "production" ? "info" : "debug",
35
35
  nestedKey: "payload"
36
- }, Yt), st = (i) => Array.isArray(i) || typeof i == "object" && Object.prototype.toString.call(i) === "[object Array]", at = (i) => {
36
+ }, Jt), at = (i) => Array.isArray(i) || typeof i == "object" && Object.prototype.toString.call(i) === "[object Array]", ut = (i) => {
37
37
  const e = i || 32, t = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678", o = t.length;
38
38
  let n = "";
39
39
  for (let a = 0; a < e; a++)
40
40
  n += t.charAt(Math.floor(Math.random() * o));
41
41
  return n;
42
- }, Ze = (i, e) => {
42
+ }, et = (i, e) => {
43
43
  const t = {};
44
44
  return i.split("&").forEach((n) => {
45
45
  const a = n.split("=");
46
46
  a[1] && (!e || e.indexOf(a[0]) == -1) && (t[a[0]] = a[1]);
47
47
  }), t;
48
- }, we = (i) => !i || i == "" || i.length == 0 ? "" : encodeURIComponent(i).replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\'/g, "%27").replace(/\!/g, "%21").replace(/\~/g, "%7E"), Nr = (i, e) => {
48
+ }, we = (i) => !i || i == "" || i.length == 0 ? "" : encodeURIComponent(i).replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\'/g, "%27").replace(/\!/g, "%21").replace(/\~/g, "%7E"), Lr = (i, e) => {
49
49
  const t = {
50
50
  "M+": i.getMonth() + 1,
51
51
  //月份
@@ -70,16 +70,16 @@ const Ir = {
70
70
  for (const o in t) {
71
71
  const n = "(" + o + ")", a = new RegExp(n);
72
72
  if (a.test(e)) {
73
- const c = a.exec(e);
73
+ const u = a.exec(e);
74
74
  let r = 0;
75
- c && c.length > 0 && (r = c[0].length), e = e.replace(a, r == 1 ? t[o].toString() : ("00" + t[o]).substring(t[o].toString().length));
75
+ u && u.length > 0 && (r = u[0].length), e = e.replace(a, r == 1 ? t[o].toString() : ("00" + t[o]).substring(t[o].toString().length));
76
76
  }
77
77
  }
78
78
  return e;
79
79
  };
80
- var Ee = { exports: {} }, ye = {}, Se = {}, Ae = {}, ut;
81
- function $t() {
82
- return ut || (ut = 1, (function(i) {
80
+ var Ee = { exports: {} }, Se = {}, Ae = {}, Te = {}, ct;
81
+ function Qt() {
82
+ return ct || (ct = 1, (function(i) {
83
83
  Object.defineProperty(i, "__esModule", {
84
84
  value: !0
85
85
  }), Object.defineProperty(i, "detectDomainLocale", {
@@ -92,18 +92,18 @@ function $t() {
92
92
  if (t) {
93
93
  n && (n = n.toLowerCase());
94
94
  for (const r of t) {
95
- var a, c;
95
+ var a, u;
96
96
  const d = (a = r.domain) == null ? void 0 : a.split(":", 1)[0].toLowerCase();
97
- if (o === d || n === r.defaultLocale.toLowerCase() || (c = r.locales) != null && c.some((g) => g.toLowerCase() === n))
97
+ if (o === d || n === r.defaultLocale.toLowerCase() || (u = r.locales) != null && u.some((g) => g.toLowerCase() === n))
98
98
  return r;
99
99
  }
100
100
  }
101
101
  }
102
- })(Ae)), Ae;
102
+ })(Te)), Te;
103
103
  }
104
- var Te = {}, Ie = {}, ct;
105
- function Jt() {
106
- return ct || (ct = 1, (function(i) {
104
+ var Ie = {}, Oe = {}, lt;
105
+ function Zt() {
106
+ return lt || (lt = 1, (function(i) {
107
107
  Object.defineProperty(i, "__esModule", {
108
108
  value: !0
109
109
  }), Object.defineProperty(i, "removeTrailingSlash", {
@@ -115,11 +115,11 @@ function Jt() {
115
115
  function e(t) {
116
116
  return t.replace(/\/$/, "") || "/";
117
117
  }
118
- })(Ie)), Ie;
118
+ })(Oe)), Oe;
119
119
  }
120
- var Oe = {}, xe = {}, lt;
121
- function et() {
122
- return lt || (lt = 1, (function(i) {
120
+ var xe = {}, Ne = {}, dt;
121
+ function tt() {
122
+ return dt || (dt = 1, (function(i) {
123
123
  Object.defineProperty(i, "__esModule", {
124
124
  value: !0
125
125
  }), Object.defineProperty(i, "parsePath", {
@@ -140,11 +140,11 @@ function et() {
140
140
  hash: ""
141
141
  };
142
142
  }
143
- })(xe)), xe;
143
+ })(Ne)), Ne;
144
144
  }
145
- var dt;
146
- function Mt() {
147
- return dt || (dt = 1, (function(i) {
145
+ var ht;
146
+ function qt() {
147
+ return ht || (ht = 1, (function(i) {
148
148
  Object.defineProperty(i, "__esModule", {
149
149
  value: !0
150
150
  }), Object.defineProperty(i, "addPathPrefix", {
@@ -153,18 +153,18 @@ function Mt() {
153
153
  return t;
154
154
  }
155
155
  });
156
- const e = et();
156
+ const e = tt();
157
157
  function t(o, n) {
158
158
  if (!o.startsWith("/") || !n)
159
159
  return o;
160
- const { pathname: a, query: c, hash: r } = (0, e.parsePath)(o);
161
- return "" + n + a + c + r;
160
+ const { pathname: a, query: u, hash: r } = (0, e.parsePath)(o);
161
+ return "" + n + a + u + r;
162
162
  }
163
- })(Oe)), Oe;
163
+ })(xe)), xe;
164
164
  }
165
- var Ne = {}, ht;
166
- function Qt() {
167
- return ht || (ht = 1, (function(i) {
165
+ var Ce = {}, ft;
166
+ function er() {
167
+ return ft || (ft = 1, (function(i) {
168
168
  Object.defineProperty(i, "__esModule", {
169
169
  value: !0
170
170
  }), Object.defineProperty(i, "addPathSuffix", {
@@ -173,18 +173,18 @@ function Qt() {
173
173
  return t;
174
174
  }
175
175
  });
176
- const e = et();
176
+ const e = tt();
177
177
  function t(o, n) {
178
178
  if (!o.startsWith("/") || !n)
179
179
  return o;
180
- const { pathname: a, query: c, hash: r } = (0, e.parsePath)(o);
181
- return "" + a + n + c + r;
180
+ const { pathname: a, query: u, hash: r } = (0, e.parsePath)(o);
181
+ return "" + a + n + u + r;
182
182
  }
183
- })(Ne)), Ne;
183
+ })(Ce)), Ce;
184
184
  }
185
- var Ce = {}, Le = {}, ft;
186
- function tt() {
187
- return ft || (ft = 1, (function(i) {
185
+ var Le = {}, ke = {}, pt;
186
+ function rt() {
187
+ return pt || (pt = 1, (function(i) {
188
188
  Object.defineProperty(i, "__esModule", {
189
189
  value: !0
190
190
  }), Object.defineProperty(i, "pathHasPrefix", {
@@ -193,18 +193,18 @@ function tt() {
193
193
  return t;
194
194
  }
195
195
  });
196
- const e = et();
196
+ const e = tt();
197
197
  function t(o, n) {
198
198
  if (typeof o != "string")
199
199
  return !1;
200
200
  const { pathname: a } = (0, e.parsePath)(o);
201
201
  return a === n || a.startsWith(n + "/");
202
202
  }
203
- })(Le)), Le;
203
+ })(ke)), ke;
204
204
  }
205
- var pt;
206
- function Zt() {
207
- return pt || (pt = 1, (function(i) {
205
+ var mt;
206
+ function tr() {
207
+ return mt || (mt = 1, (function(i) {
208
208
  Object.defineProperty(i, "__esModule", {
209
209
  value: !0
210
210
  }), Object.defineProperty(i, "addLocale", {
@@ -213,17 +213,17 @@ function Zt() {
213
213
  return o;
214
214
  }
215
215
  });
216
- const e = Mt(), t = tt();
217
- function o(n, a, c, r) {
218
- if (!a || a === c) return n;
216
+ const e = qt(), t = rt();
217
+ function o(n, a, u, r) {
218
+ if (!a || a === u) return n;
219
219
  const d = n.toLowerCase();
220
220
  return !r && ((0, t.pathHasPrefix)(d, "/api") || (0, t.pathHasPrefix)(d, "/" + a.toLowerCase())) ? n : (0, e.addPathPrefix)(n, "/" + a);
221
221
  }
222
- })(Ce)), Ce;
222
+ })(Le)), Le;
223
223
  }
224
- var mt;
225
- function er() {
226
- return mt || (mt = 1, (function(i) {
224
+ var _t;
225
+ function rr() {
226
+ return _t || (_t = 1, (function(i) {
227
227
  Object.defineProperty(i, "__esModule", {
228
228
  value: !0
229
229
  }), Object.defineProperty(i, "formatNextPathnameInfo", {
@@ -232,16 +232,16 @@ function er() {
232
232
  return a;
233
233
  }
234
234
  });
235
- const e = Jt(), t = Mt(), o = Qt(), n = Zt();
236
- function a(c) {
237
- let r = (0, n.addLocale)(c.pathname, c.locale, c.buildId ? void 0 : c.defaultLocale, c.ignorePrefix);
238
- return (c.buildId || !c.trailingSlash) && (r = (0, e.removeTrailingSlash)(r)), c.buildId && (r = (0, o.addPathSuffix)((0, t.addPathPrefix)(r, "/_next/data/" + c.buildId), c.pathname === "/" ? "index.json" : ".json")), r = (0, t.addPathPrefix)(r, c.basePath), !c.buildId && c.trailingSlash ? r.endsWith("/") ? r : (0, o.addPathSuffix)(r, "/") : (0, e.removeTrailingSlash)(r);
235
+ const e = Zt(), t = qt(), o = er(), n = tr();
236
+ function a(u) {
237
+ let r = (0, n.addLocale)(u.pathname, u.locale, u.buildId ? void 0 : u.defaultLocale, u.ignorePrefix);
238
+ return (u.buildId || !u.trailingSlash) && (r = (0, e.removeTrailingSlash)(r)), u.buildId && (r = (0, o.addPathSuffix)((0, t.addPathPrefix)(r, "/_next/data/" + u.buildId), u.pathname === "/" ? "index.json" : ".json")), r = (0, t.addPathPrefix)(r, u.basePath), !u.buildId && u.trailingSlash ? r.endsWith("/") ? r : (0, o.addPathSuffix)(r, "/") : (0, e.removeTrailingSlash)(r);
239
239
  }
240
- })(Te)), Te;
240
+ })(Ie)), Ie;
241
241
  }
242
- var ke = {}, _t;
243
- function tr() {
244
- return _t || (_t = 1, (function(i) {
242
+ var Ue = {}, gt;
243
+ function nr() {
244
+ return gt || (gt = 1, (function(i) {
245
245
  Object.defineProperty(i, "__esModule", {
246
246
  value: !0
247
247
  }), Object.defineProperty(i, "getHostname", {
@@ -259,11 +259,11 @@ function tr() {
259
259
  else return;
260
260
  return n.toLowerCase();
261
261
  }
262
- })(ke)), ke;
262
+ })(Ue)), Ue;
263
263
  }
264
- var Ue = {}, De = {}, gt;
265
- function rr() {
266
- return gt || (gt = 1, (function(i) {
264
+ var De = {}, Me = {}, bt;
265
+ function ir() {
266
+ return bt || (bt = 1, (function(i) {
267
267
  Object.defineProperty(i, "__esModule", {
268
268
  value: !0
269
269
  }), Object.defineProperty(i, "normalizeLocalePath", {
@@ -275,16 +275,16 @@ function rr() {
275
275
  function e(t, o) {
276
276
  let n;
277
277
  const a = t.split("/");
278
- return (o || []).some((c) => a[1] && a[1].toLowerCase() === c.toLowerCase() ? (n = c, a.splice(1, 1), t = a.join("/") || "/", !0) : !1), {
278
+ return (o || []).some((u) => a[1] && a[1].toLowerCase() === u.toLowerCase() ? (n = u, a.splice(1, 1), t = a.join("/") || "/", !0) : !1), {
279
279
  pathname: t,
280
280
  detectedLocale: n
281
281
  };
282
282
  }
283
- })(De)), De;
283
+ })(Me)), Me;
284
284
  }
285
- var Me = {}, bt;
286
- function nr() {
287
- return bt || (bt = 1, (function(i) {
285
+ var je = {}, wt;
286
+ function or() {
287
+ return wt || (wt = 1, (function(i) {
288
288
  Object.defineProperty(i, "__esModule", {
289
289
  value: !0
290
290
  }), Object.defineProperty(i, "removePathPrefix", {
@@ -293,18 +293,18 @@ function nr() {
293
293
  return t;
294
294
  }
295
295
  });
296
- const e = tt();
296
+ const e = rt();
297
297
  function t(o, n) {
298
298
  if (!(0, e.pathHasPrefix)(o, n))
299
299
  return o;
300
300
  const a = o.slice(n.length);
301
301
  return a.startsWith("/") ? a : "/" + a;
302
302
  }
303
- })(Me)), Me;
303
+ })(je)), je;
304
304
  }
305
- var wt;
306
- function ir() {
307
- return wt || (wt = 1, (function(i) {
305
+ var Et;
306
+ function sr() {
307
+ return Et || (Et = 1, (function(i) {
308
308
  Object.defineProperty(i, "__esModule", {
309
309
  value: !0
310
310
  }), Object.defineProperty(i, "getNextPathnameInfo", {
@@ -313,32 +313,32 @@ function ir() {
313
313
  return n;
314
314
  }
315
315
  });
316
- const e = rr(), t = nr(), o = tt();
317
- function n(a, c) {
316
+ const e = ir(), t = or(), o = rt();
317
+ function n(a, u) {
318
318
  var r;
319
- const { basePath: d, i18n: g, trailingSlash: u } = (r = c.nextConfig) != null ? r : {}, _ = {
319
+ const { basePath: d, i18n: g, trailingSlash: c } = (r = u.nextConfig) != null ? r : {}, _ = {
320
320
  pathname: a,
321
- trailingSlash: a !== "/" ? a.endsWith("/") : u
321
+ trailingSlash: a !== "/" ? a.endsWith("/") : c
322
322
  };
323
323
  d && (0, o.pathHasPrefix)(_.pathname, d) && (_.pathname = (0, t.removePathPrefix)(_.pathname, d), _.basePath = d);
324
324
  let p = _.pathname;
325
325
  if (_.pathname.startsWith("/_next/data/") && _.pathname.endsWith(".json")) {
326
326
  const S = _.pathname.replace(/^\/_next\/data\//, "").replace(/\.json$/, "").split("/"), x = S[0];
327
- _.buildId = x, p = S[1] !== "index" ? "/" + S.slice(1).join("/") : "/", c.parseData === !0 && (_.pathname = p);
327
+ _.buildId = x, p = S[1] !== "index" ? "/" + S.slice(1).join("/") : "/", u.parseData === !0 && (_.pathname = p);
328
328
  }
329
329
  if (g) {
330
- let S = c.i18nProvider ? c.i18nProvider.analyze(_.pathname) : (0, e.normalizeLocalePath)(_.pathname, g.locales);
330
+ let S = u.i18nProvider ? u.i18nProvider.analyze(_.pathname) : (0, e.normalizeLocalePath)(_.pathname, g.locales);
331
331
  _.locale = S.detectedLocale;
332
332
  var R;
333
- _.pathname = (R = S.pathname) != null ? R : _.pathname, !S.detectedLocale && _.buildId && (S = c.i18nProvider ? c.i18nProvider.analyze(p) : (0, e.normalizeLocalePath)(p, g.locales), S.detectedLocale && (_.locale = S.detectedLocale));
333
+ _.pathname = (R = S.pathname) != null ? R : _.pathname, !S.detectedLocale && _.buildId && (S = u.i18nProvider ? u.i18nProvider.analyze(p) : (0, e.normalizeLocalePath)(p, g.locales), S.detectedLocale && (_.locale = S.detectedLocale));
334
334
  }
335
335
  return _;
336
336
  }
337
- })(Ue)), Ue;
337
+ })(De)), De;
338
338
  }
339
- var Et;
340
- function jt() {
341
- return Et || (Et = 1, (function(i) {
339
+ var vt;
340
+ function Ht() {
341
+ return vt || (vt = 1, (function(i) {
342
342
  Object.defineProperty(i, "__esModule", {
343
343
  value: !0
344
344
  }), Object.defineProperty(i, "NextURL", {
@@ -347,28 +347,28 @@ function jt() {
347
347
  return d;
348
348
  }
349
349
  });
350
- const e = $t(), t = er(), o = tr(), n = ir(), a = /(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;
351
- function c(g, u) {
352
- return new URL(String(g).replace(a, "localhost"), u && String(u).replace(a, "localhost"));
350
+ const e = Qt(), t = rr(), o = nr(), n = sr(), a = /(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;
351
+ function u(g, c) {
352
+ return new URL(String(g).replace(a, "localhost"), c && String(c).replace(a, "localhost"));
353
353
  }
354
354
  const r = /* @__PURE__ */ Symbol("NextURLInternal");
355
355
  class d {
356
- constructor(u, _, p) {
356
+ constructor(c, _, p) {
357
357
  let R, S;
358
358
  typeof _ == "object" && "pathname" in _ || typeof _ == "string" ? (R = _, S = p || {}) : S = p || _ || {}, this[r] = {
359
- url: c(u, R ?? S.base),
359
+ url: u(c, R ?? S.base),
360
360
  options: S,
361
361
  basePath: ""
362
362
  }, this.analyze();
363
363
  }
364
364
  analyze() {
365
- var u, _, p, R, S;
365
+ var c, _, p, R, S;
366
366
  const x = (0, n.getNextPathnameInfo)(this[r].url.pathname, {
367
367
  nextConfig: this[r].options.nextConfig,
368
368
  parseData: !process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE,
369
369
  i18nProvider: this[r].options.i18nProvider
370
370
  }), l = (0, o.getHostname)(this[r].url, this[r].options.headers);
371
- this[r].domainLocale = this[r].options.i18nProvider ? this[r].options.i18nProvider.detectDomainLocale(l) : (0, e.detectDomainLocale)((_ = this[r].options.nextConfig) == null || (u = _.i18n) == null ? void 0 : u.domains, l);
371
+ this[r].domainLocale = this[r].options.i18nProvider ? this[r].options.i18nProvider.detectDomainLocale(l) : (0, e.detectDomainLocale)((_ = this[r].options.nextConfig) == null || (c = _.i18n) == null ? void 0 : c.domains, l);
372
372
  const b = ((p = this[r].domainLocale) == null ? void 0 : p.defaultLocale) || ((S = this[r].options.nextConfig) == null || (R = S.i18n) == null ? void 0 : R.defaultLocale);
373
373
  this[r].url.pathname = x.pathname, this[r].defaultLocale = b, this[r].basePath = x.basePath ?? "", this[r].buildId = x.buildId, this[r].locale = x.locale ?? b, this[r].trailingSlash = x.trailingSlash;
374
374
  }
@@ -388,17 +388,17 @@ function jt() {
388
388
  get buildId() {
389
389
  return this[r].buildId;
390
390
  }
391
- set buildId(u) {
392
- this[r].buildId = u;
391
+ set buildId(c) {
392
+ this[r].buildId = c;
393
393
  }
394
394
  get locale() {
395
395
  return this[r].locale ?? "";
396
396
  }
397
- set locale(u) {
397
+ set locale(c) {
398
398
  var _, p;
399
- if (!this[r].locale || !(!((p = this[r].options.nextConfig) == null || (_ = p.i18n) == null) && _.locales.includes(u)))
400
- throw new TypeError(`The NextURL configuration includes no locale "${u}"`);
401
- this[r].locale = u;
399
+ if (!this[r].locale || !(!((p = this[r].options.nextConfig) == null || (_ = p.i18n) == null) && _.locales.includes(c)))
400
+ throw new TypeError(`The NextURL configuration includes no locale "${c}"`);
401
+ this[r].locale = c;
402
402
  }
403
403
  get defaultLocale() {
404
404
  return this[r].defaultLocale;
@@ -412,33 +412,33 @@ function jt() {
412
412
  get host() {
413
413
  return this[r].url.host;
414
414
  }
415
- set host(u) {
416
- this[r].url.host = u;
415
+ set host(c) {
416
+ this[r].url.host = c;
417
417
  }
418
418
  get hostname() {
419
419
  return this[r].url.hostname;
420
420
  }
421
- set hostname(u) {
422
- this[r].url.hostname = u;
421
+ set hostname(c) {
422
+ this[r].url.hostname = c;
423
423
  }
424
424
  get port() {
425
425
  return this[r].url.port;
426
426
  }
427
- set port(u) {
428
- this[r].url.port = u;
427
+ set port(c) {
428
+ this[r].url.port = c;
429
429
  }
430
430
  get protocol() {
431
431
  return this[r].url.protocol;
432
432
  }
433
- set protocol(u) {
434
- this[r].url.protocol = u;
433
+ set protocol(c) {
434
+ this[r].url.protocol = c;
435
435
  }
436
436
  get href() {
437
- const u = this.formatPathname(), _ = this.formatSearch();
438
- return `${this.protocol}//${this.host}${u}${_}${this.hash}`;
437
+ const c = this.formatPathname(), _ = this.formatSearch();
438
+ return `${this.protocol}//${this.host}${c}${_}${this.hash}`;
439
439
  }
440
- set href(u) {
441
- this[r].url = c(u), this.analyze();
440
+ set href(c) {
441
+ this[r].url = u(c), this.analyze();
442
442
  }
443
443
  get origin() {
444
444
  return this[r].url.origin;
@@ -446,38 +446,38 @@ function jt() {
446
446
  get pathname() {
447
447
  return this[r].url.pathname;
448
448
  }
449
- set pathname(u) {
450
- this[r].url.pathname = u;
449
+ set pathname(c) {
450
+ this[r].url.pathname = c;
451
451
  }
452
452
  get hash() {
453
453
  return this[r].url.hash;
454
454
  }
455
- set hash(u) {
456
- this[r].url.hash = u;
455
+ set hash(c) {
456
+ this[r].url.hash = c;
457
457
  }
458
458
  get search() {
459
459
  return this[r].url.search;
460
460
  }
461
- set search(u) {
462
- this[r].url.search = u;
461
+ set search(c) {
462
+ this[r].url.search = c;
463
463
  }
464
464
  get password() {
465
465
  return this[r].url.password;
466
466
  }
467
- set password(u) {
468
- this[r].url.password = u;
467
+ set password(c) {
468
+ this[r].url.password = c;
469
469
  }
470
470
  get username() {
471
471
  return this[r].url.username;
472
472
  }
473
- set username(u) {
474
- this[r].url.username = u;
473
+ set username(c) {
474
+ this[r].url.username = c;
475
475
  }
476
476
  get basePath() {
477
477
  return this[r].basePath;
478
478
  }
479
- set basePath(u) {
480
- this[r].basePath = u.startsWith("/") ? u : `/${u}`;
479
+ set basePath(c) {
480
+ this[r].basePath = c.startsWith("/") ? c : `/${c}`;
481
481
  }
482
482
  toString() {
483
483
  return this.href;
@@ -505,11 +505,11 @@ function jt() {
505
505
  return new d(String(this), this[r].options);
506
506
  }
507
507
  }
508
- })(Se)), Se;
508
+ })(Ae)), Ae;
509
509
  }
510
- var je = {}, qe = {}, vt;
511
- function or() {
512
- return vt || (vt = 1, (function(i) {
510
+ var qe = {}, He = {}, Rt;
511
+ function ar() {
512
+ return Rt || (Rt = 1, (function(i) {
513
513
  Object.defineProperty(i, "__esModule", {
514
514
  value: !0
515
515
  });
@@ -587,7 +587,7 @@ function or() {
587
587
  return o;
588
588
  },
589
589
  NEXT_META_SUFFIX: function() {
590
- return u;
590
+ return c;
591
591
  },
592
592
  NEXT_QUERY_PARAM_PREFIX: function() {
593
593
  return t;
@@ -626,7 +626,7 @@ function or() {
626
626
  return D;
627
627
  },
628
628
  RSC_PREFETCH_SUFFIX: function() {
629
- return c;
629
+ return u;
630
630
  },
631
631
  RSC_SUFFIX: function() {
632
632
  return r;
@@ -662,7 +662,7 @@ function or() {
662
662
  return me;
663
663
  }
664
664
  });
665
- const t = "nxtP", o = "nxtI", n = "x-prerender-revalidate", a = "x-prerender-revalidate-if-generated", c = ".prefetch.rsc", r = ".rsc", d = ".action", g = ".json", u = ".meta", _ = ".body", p = "x-next-cache-tags", R = "x-next-cache-soft-tags", S = "x-next-revalidated-tags", x = "x-next-revalidate-tag-token", l = 128, b = 256, h = 1024, m = "_N_T_", E = 31536e3, s = "middleware", v = `(?:src/)?${s}`, f = "instrumentation", w = "private-next-pages", P = "private-dot-next", N = "private-next-root-dir", M = "private-next-app-dir", D = "private-next-rsc-mod-ref-proxy", H = "private-next-rsc-action-validate", j = "private-next-rsc-server-reference", J = "private-next-rsc-action-encryption", Q = "private-next-rsc-action-client-wrapper", F = "You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict", W = "You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps", ie = "You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.", z = "You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps", Z = "can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props", de = "pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export", oe = "Your `getStaticProps` function did not return an object. Did you forget to add a `return`?", se = "Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?", he = "The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.", ee = "can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member", ae = 'You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env', fe = "Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export", te = [
665
+ const t = "nxtP", o = "nxtI", n = "x-prerender-revalidate", a = "x-prerender-revalidate-if-generated", u = ".prefetch.rsc", r = ".rsc", d = ".action", g = ".json", c = ".meta", _ = ".body", p = "x-next-cache-tags", R = "x-next-cache-soft-tags", S = "x-next-revalidated-tags", x = "x-next-revalidate-tag-token", l = 128, b = 256, h = 1024, m = "_N_T_", E = 31536e3, s = "middleware", v = `(?:src/)?${s}`, f = "instrumentation", w = "private-next-pages", P = "private-dot-next", N = "private-next-root-dir", M = "private-next-app-dir", D = "private-next-rsc-mod-ref-proxy", H = "private-next-rsc-action-validate", j = "private-next-rsc-server-reference", J = "private-next-rsc-action-encryption", Q = "private-next-rsc-action-client-wrapper", F = "You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict", W = "You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps", ie = "You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.", z = "You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps", Z = "can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props", de = "pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export", oe = "Your `getStaticProps` function did not return an object. Did you forget to add a `return`?", se = "Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?", he = "The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.", ee = "can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member", ae = 'You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env', fe = "Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export", te = [
666
666
  "app",
667
667
  "pages",
668
668
  "components",
@@ -753,18 +753,18 @@ function or() {
753
753
  metadataRoute: "__next_metadata_route__",
754
754
  metadataImageMeta: "__next_metadata_image_meta__"
755
755
  };
756
- })(qe)), qe;
756
+ })(He)), He;
757
757
  }
758
- var Rt;
759
- function qt() {
760
- return Rt || (Rt = 1, (function(i) {
758
+ var Pt;
759
+ function Ft() {
760
+ return Pt || (Pt = 1, (function(i) {
761
761
  Object.defineProperty(i, "__esModule", {
762
762
  value: !0
763
763
  });
764
764
  function e(d, g) {
765
- for (var u in g) Object.defineProperty(d, u, {
765
+ for (var c in g) Object.defineProperty(d, c, {
766
766
  enumerable: !0,
767
- get: g[u]
767
+ get: g[c]
768
768
  });
769
769
  }
770
770
  e(i, {
@@ -781,51 +781,51 @@ function qt() {
781
781
  return a;
782
782
  },
783
783
  validateURL: function() {
784
- return c;
784
+ return u;
785
785
  }
786
786
  });
787
- const t = or();
787
+ const t = ar();
788
788
  function o(d) {
789
789
  const g = new Headers();
790
- for (let [u, _] of Object.entries(d)) {
790
+ for (let [c, _] of Object.entries(d)) {
791
791
  const p = Array.isArray(_) ? _ : [
792
792
  _
793
793
  ];
794
794
  for (let R of p)
795
- typeof R > "u" || (typeof R == "number" && (R = R.toString()), g.append(u, R));
795
+ typeof R > "u" || (typeof R == "number" && (R = R.toString()), g.append(c, R));
796
796
  }
797
797
  return g;
798
798
  }
799
799
  function n(d) {
800
- var g = [], u = 0, _, p, R, S, x;
800
+ var g = [], c = 0, _, p, R, S, x;
801
801
  function l() {
802
- for (; u < d.length && /\s/.test(d.charAt(u)); )
803
- u += 1;
804
- return u < d.length;
802
+ for (; c < d.length && /\s/.test(d.charAt(c)); )
803
+ c += 1;
804
+ return c < d.length;
805
805
  }
806
806
  function b() {
807
- return p = d.charAt(u), p !== "=" && p !== ";" && p !== ",";
808
- }
809
- for (; u < d.length; ) {
810
- for (_ = u, x = !1; l(); )
811
- if (p = d.charAt(u), p === ",") {
812
- for (R = u, u += 1, l(), S = u; u < d.length && b(); )
813
- u += 1;
814
- u < d.length && d.charAt(u) === "=" ? (x = !0, u = S, g.push(d.substring(_, R)), _ = u) : u = R + 1;
807
+ return p = d.charAt(c), p !== "=" && p !== ";" && p !== ",";
808
+ }
809
+ for (; c < d.length; ) {
810
+ for (_ = c, x = !1; l(); )
811
+ if (p = d.charAt(c), p === ",") {
812
+ for (R = c, c += 1, l(), S = c; c < d.length && b(); )
813
+ c += 1;
814
+ c < d.length && d.charAt(c) === "=" ? (x = !0, c = S, g.push(d.substring(_, R)), _ = c) : c = R + 1;
815
815
  } else
816
- u += 1;
817
- (!x || u >= d.length) && g.push(d.substring(_, d.length));
816
+ c += 1;
817
+ (!x || c >= d.length) && g.push(d.substring(_, d.length));
818
818
  }
819
819
  return g;
820
820
  }
821
821
  function a(d) {
822
- const g = {}, u = [];
822
+ const g = {}, c = [];
823
823
  if (d)
824
824
  for (const [_, p] of d.entries())
825
- _.toLowerCase() === "set-cookie" ? (u.push(...n(p)), g[_] = u.length === 1 ? u[0] : u) : g[_] = p;
825
+ _.toLowerCase() === "set-cookie" ? (c.push(...n(p)), g[_] = c.length === 1 ? c[0] : c) : g[_] = p;
826
826
  return g;
827
827
  }
828
- function c(d) {
828
+ function u(d) {
829
829
  try {
830
830
  return String(new URL(String(d)));
831
831
  } catch (g) {
@@ -835,28 +835,28 @@ function qt() {
835
835
  }
836
836
  }
837
837
  function r(d, g) {
838
- const u = [
838
+ const c = [
839
839
  t.NEXT_QUERY_PARAM_PREFIX,
840
840
  t.NEXT_INTERCEPTION_MARKER_PREFIX
841
841
  ];
842
- for (const _ of u)
842
+ for (const _ of c)
843
843
  if (d !== _ && d.startsWith(_)) {
844
844
  const p = d.substring(_.length);
845
845
  g(p);
846
846
  }
847
847
  }
848
- })(je)), je;
848
+ })(qe)), qe;
849
849
  }
850
- var He = {}, Pt;
851
- function sr() {
852
- return Pt || (Pt = 1, (function(i) {
850
+ var Fe = {}, yt;
851
+ function ur() {
852
+ return yt || (yt = 1, (function(i) {
853
853
  Object.defineProperty(i, "__esModule", {
854
854
  value: !0
855
855
  });
856
- function e(a, c) {
857
- for (var r in c) Object.defineProperty(a, r, {
856
+ function e(a, u) {
857
+ for (var r in u) Object.defineProperty(a, r, {
858
858
  enumerable: !0,
859
- get: c[r]
859
+ get: u[r]
860
860
  });
861
861
  }
862
862
  e(i, {
@@ -871,8 +871,8 @@ function sr() {
871
871
  }
872
872
  });
873
873
  class t extends Error {
874
- constructor({ page: c }) {
875
- super(`The middleware "${c}" accepts an async API directly with the form:
874
+ constructor({ page: u }) {
875
+ super(`The middleware "${u}" accepts an async API directly with the form:
876
876
 
877
877
  export function middleware(request, event) {
878
878
  return NextResponse.redirect('/new-location')
@@ -892,12 +892,12 @@ function sr() {
892
892
  super("The request.ua has been removed in favour of `userAgent` function.\n Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent\n ");
893
893
  }
894
894
  }
895
- })(He)), He;
895
+ })(Fe)), Fe;
896
896
  }
897
- var Fe = {}, Ge, yt;
898
- function ar() {
899
- if (yt) return Ge;
900
- yt = 1;
897
+ var Ge = {}, Be, St;
898
+ function cr() {
899
+ if (St) return Be;
900
+ St = 1;
901
901
  var i = Object.defineProperty, e = Object.getOwnPropertyDescriptor, t = Object.getOwnPropertyNames, o = Object.prototype.hasOwnProperty, n = (s, v) => {
902
902
  for (var f in v)
903
903
  i(s, f, { get: v[f], enumerable: !0 });
@@ -906,14 +906,14 @@ function ar() {
906
906
  for (let P of t(v))
907
907
  !o.call(s, P) && P !== f && i(s, P, { get: () => v[P], enumerable: !(w = e(v, P)) || w.enumerable });
908
908
  return s;
909
- }, c = (s) => a(i({}, "__esModule", { value: !0 }), s), r = {};
909
+ }, u = (s) => a(i({}, "__esModule", { value: !0 }), s), r = {};
910
910
  n(r, {
911
911
  RequestCookies: () => b,
912
912
  ResponseCookies: () => h,
913
913
  parseCookie: () => g,
914
- parseSetCookie: () => u,
914
+ parseSetCookie: () => c,
915
915
  stringifyCookie: () => d
916
- }), Ge = c(r);
916
+ }), Be = u(r);
917
917
  function d(s) {
918
918
  var v;
919
919
  const f = [
@@ -947,7 +947,7 @@ function ar() {
947
947
  }
948
948
  return v;
949
949
  }
950
- function u(s) {
950
+ function c(s) {
951
951
  if (!s)
952
952
  return;
953
953
  const [[v, f], ...w] = g(s), {
@@ -1088,7 +1088,7 @@ function ar() {
1088
1088
  this._headers = s;
1089
1089
  const P = (w = (f = (v = s.getSetCookie) == null ? void 0 : v.call(s)) != null ? f : s.get("set-cookie")) != null ? w : [], N = Array.isArray(P) ? P : l(P);
1090
1090
  for (const M of N) {
1091
- const D = u(M);
1091
+ const D = c(M);
1092
1092
  D && this._parsed.set(D.name, D);
1093
1093
  }
1094
1094
  }
@@ -1144,11 +1144,11 @@ function ar() {
1144
1144
  function E(s = { name: "", value: "" }) {
1145
1145
  return typeof s.expires == "number" && (s.expires = new Date(s.expires)), s.maxAge && (s.expires = new Date(Date.now() + s.maxAge * 1e3)), (s.path === null || s.path === void 0) && (s.path = "/"), s;
1146
1146
  }
1147
- return Ge;
1147
+ return Be;
1148
1148
  }
1149
- var St;
1150
- function $e() {
1151
- return St || (St = 1, (function(i) {
1149
+ var At;
1150
+ function Je() {
1151
+ return At || (At = 1, (function(i) {
1152
1152
  Object.defineProperty(i, "__esModule", {
1153
1153
  value: !0
1154
1154
  });
@@ -1169,42 +1169,42 @@ function $e() {
1169
1169
  return t.stringifyCookie;
1170
1170
  }
1171
1171
  });
1172
- const t = ar();
1173
- })(Fe)), Fe;
1172
+ const t = cr();
1173
+ })(Ge)), Ge;
1174
1174
  }
1175
- var At;
1176
- function ur() {
1177
- return At || (At = 1, (function(i) {
1175
+ var Tt;
1176
+ function lr() {
1177
+ return Tt || (Tt = 1, (function(i) {
1178
1178
  Object.defineProperty(i, "__esModule", {
1179
1179
  value: !0
1180
1180
  });
1181
1181
  function e(d, g) {
1182
- for (var u in g) Object.defineProperty(d, u, {
1182
+ for (var c in g) Object.defineProperty(d, c, {
1183
1183
  enumerable: !0,
1184
- get: g[u]
1184
+ get: g[c]
1185
1185
  });
1186
1186
  }
1187
1187
  e(i, {
1188
1188
  INTERNALS: function() {
1189
- return c;
1189
+ return u;
1190
1190
  },
1191
1191
  NextRequest: function() {
1192
1192
  return r;
1193
1193
  }
1194
1194
  });
1195
- const t = jt(), o = qt(), n = sr(), a = $e(), c = /* @__PURE__ */ Symbol("internal request");
1195
+ const t = Ht(), o = Ft(), n = ur(), a = Je(), u = /* @__PURE__ */ Symbol("internal request");
1196
1196
  class r extends Request {
1197
- constructor(g, u = {}) {
1197
+ constructor(g, c = {}) {
1198
1198
  const _ = typeof g != "string" && "url" in g ? g.url : String(g);
1199
- (0, o.validateURL)(_), g instanceof Request ? super(g, u) : super(_, u);
1199
+ (0, o.validateURL)(_), g instanceof Request ? super(g, c) : super(_, c);
1200
1200
  const p = new t.NextURL(_, {
1201
1201
  headers: (0, o.toNodeOutgoingHttpHeaders)(this.headers),
1202
- nextConfig: u.nextConfig
1202
+ nextConfig: c.nextConfig
1203
1203
  });
1204
- this[c] = {
1204
+ this[u] = {
1205
1205
  cookies: new a.RequestCookies(this.headers),
1206
- geo: u.geo || {},
1207
- ip: u.ip,
1206
+ geo: c.geo || {},
1207
+ ip: c.ip,
1208
1208
  nextUrl: p,
1209
1209
  url: process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE ? _ : p.toString()
1210
1210
  };
@@ -1233,16 +1233,16 @@ function ur() {
1233
1233
  };
1234
1234
  }
1235
1235
  get cookies() {
1236
- return this[c].cookies;
1236
+ return this[u].cookies;
1237
1237
  }
1238
1238
  get geo() {
1239
- return this[c].geo;
1239
+ return this[u].geo;
1240
1240
  }
1241
1241
  get ip() {
1242
- return this[c].ip;
1242
+ return this[u].ip;
1243
1243
  }
1244
1244
  get nextUrl() {
1245
- return this[c].nextUrl;
1245
+ return this[u].nextUrl;
1246
1246
  }
1247
1247
  /**
1248
1248
  * @deprecated
@@ -1261,14 +1261,14 @@ function ur() {
1261
1261
  throw new n.RemovedUAError();
1262
1262
  }
1263
1263
  get url() {
1264
- return this[c].url;
1264
+ return this[u].url;
1265
1265
  }
1266
1266
  }
1267
- })(ye)), ye;
1267
+ })(Se)), Se;
1268
1268
  }
1269
- var Be = {}, Xe = {}, Tt;
1270
- function cr() {
1271
- return Tt || (Tt = 1, (function(i) {
1269
+ var Xe = {}, We = {}, It;
1270
+ function dr() {
1271
+ return It || (It = 1, (function(i) {
1272
1272
  Object.defineProperty(i, "__esModule", {
1273
1273
  value: !0
1274
1274
  }), Object.defineProperty(i, "ReflectAdapter", {
@@ -1279,11 +1279,11 @@ function cr() {
1279
1279
  });
1280
1280
  class e {
1281
1281
  static get(o, n, a) {
1282
- const c = Reflect.get(o, n, a);
1283
- return typeof c == "function" ? c.bind(o) : c;
1282
+ const u = Reflect.get(o, n, a);
1283
+ return typeof u == "function" ? u.bind(o) : u;
1284
1284
  }
1285
- static set(o, n, a, c) {
1286
- return Reflect.set(o, n, a, c);
1285
+ static set(o, n, a, u) {
1286
+ return Reflect.set(o, n, a, u);
1287
1287
  }
1288
1288
  static has(o, n) {
1289
1289
  return Reflect.has(o, n);
@@ -1292,11 +1292,11 @@ function cr() {
1292
1292
  return Reflect.deleteProperty(o, n);
1293
1293
  }
1294
1294
  }
1295
- })(Xe)), Xe;
1295
+ })(We)), We;
1296
1296
  }
1297
- var It;
1298
- function lr() {
1299
- return It || (It = 1, (function(i) {
1297
+ var Ot;
1298
+ function hr() {
1299
+ return Ot || (Ot = 1, (function(i) {
1300
1300
  Object.defineProperty(i, "__esModule", {
1301
1301
  value: !0
1302
1302
  }), Object.defineProperty(i, "NextResponse", {
@@ -1305,20 +1305,20 @@ function lr() {
1305
1305
  return g;
1306
1306
  }
1307
1307
  });
1308
- const e = $e(), t = jt(), o = qt(), n = cr(), a = $e(), c = /* @__PURE__ */ Symbol("internal response"), r = /* @__PURE__ */ new Set([
1308
+ const e = Je(), t = Ht(), o = Ft(), n = dr(), a = Je(), u = /* @__PURE__ */ Symbol("internal response"), r = /* @__PURE__ */ new Set([
1309
1309
  301,
1310
1310
  302,
1311
1311
  303,
1312
1312
  307,
1313
1313
  308
1314
1314
  ]);
1315
- function d(u, _) {
1315
+ function d(c, _) {
1316
1316
  var p;
1317
- if (!(u == null || (p = u.request) == null) && p.headers) {
1318
- if (!(u.request.headers instanceof Headers))
1317
+ if (!(c == null || (p = c.request) == null) && p.headers) {
1318
+ if (!(c.request.headers instanceof Headers))
1319
1319
  throw new Error("request.headers must be an instance of Headers");
1320
1320
  const R = [];
1321
- for (const [S, x] of u.request.headers)
1321
+ for (const [S, x] of c.request.headers)
1322
1322
  _.set("x-middleware-request-" + S, x), R.push(S);
1323
1323
  _.set("x-middleware-override-headers", R.join(","));
1324
1324
  }
@@ -1340,7 +1340,7 @@ function lr() {
1340
1340
  }
1341
1341
  }
1342
1342
  });
1343
- this[c] = {
1343
+ this[u] = {
1344
1344
  cookies: x,
1345
1345
  url: p.url ? new t.NextURL(p.url, {
1346
1346
  headers: (0, o.toNodeOutgoingHttpHeaders)(R),
@@ -1364,7 +1364,7 @@ function lr() {
1364
1364
  };
1365
1365
  }
1366
1366
  get cookies() {
1367
- return this[c].cookies;
1367
+ return this[u].cookies;
1368
1368
  }
1369
1369
  static json(_, p) {
1370
1370
  const R = Response.json(_, p);
@@ -1396,11 +1396,11 @@ function lr() {
1396
1396
  });
1397
1397
  }
1398
1398
  }
1399
- })(Be)), Be;
1399
+ })(Xe)), Xe;
1400
1400
  }
1401
- var We = {}, Ot;
1402
- function dr() {
1403
- return Ot || (Ot = 1, (function(i) {
1401
+ var ze = {}, xt;
1402
+ function fr() {
1403
+ return xt || (xt = 1, (function(i) {
1404
1404
  Object.defineProperty(i, "__esModule", {
1405
1405
  value: !0
1406
1406
  }), Object.defineProperty(i, "ImageResponse", {
@@ -1412,14 +1412,14 @@ function dr() {
1412
1412
  function e() {
1413
1413
  throw new Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead');
1414
1414
  }
1415
- })(We)), We;
1415
+ })(ze)), ze;
1416
1416
  }
1417
- var ze = {}, Ve = { exports: {} }, xt;
1418
- function hr() {
1419
- return xt || (xt = 1, (() => {
1417
+ var Ve = {}, Ke = { exports: {} }, Nt;
1418
+ function pr() {
1419
+ return Nt || (Nt = 1, (() => {
1420
1420
  var i = { 226: function(n, a) {
1421
- (function(c, r) {
1422
- var d = "1.0.35", g = "", u = "?", _ = "function", p = "undefined", R = "object", S = "string", x = "major", l = "model", b = "name", h = "type", m = "vendor", E = "version", s = "architecture", v = "console", f = "mobile", w = "tablet", P = "smarttv", N = "wearable", M = "embedded", D = 350, H = "Amazon", j = "Apple", J = "ASUS", Q = "BlackBerry", F = "Browser", W = "Chrome", ie = "Edge", z = "Firefox", Z = "Google", de = "Huawei", oe = "LG", se = "Microsoft", he = "Motorola", ee = "Opera", ae = "Samsung", fe = "Sharp", te = "Sony", ue = "Xiaomi", L = "Zebra", pe = "Facebook", me = "Chromium OS", _e = "Mac OS", ge = function(T, O) {
1421
+ (function(u, r) {
1422
+ var d = "1.0.35", g = "", c = "?", _ = "function", p = "undefined", R = "object", S = "string", x = "major", l = "model", b = "name", h = "type", m = "vendor", E = "version", s = "architecture", v = "console", f = "mobile", w = "tablet", P = "smarttv", N = "wearable", M = "embedded", D = 350, H = "Amazon", j = "Apple", J = "ASUS", Q = "BlackBerry", F = "Browser", W = "Chrome", ie = "Edge", z = "Firefox", Z = "Google", de = "Huawei", oe = "LG", se = "Microsoft", he = "Motorola", ee = "Opera", ae = "Samsung", fe = "Sharp", te = "Sony", ue = "Xiaomi", L = "Zebra", pe = "Facebook", me = "Chromium OS", _e = "Mac OS", ge = function(T, O) {
1423
1423
  var A = {};
1424
1424
  for (var C in T)
1425
1425
  O[C] && O[C].length % 2 === 0 ? A[C] = O[C].concat(T[C]) : A[C] = T[C];
@@ -1428,40 +1428,40 @@ function hr() {
1428
1428
  for (var O = {}, A = 0; A < T.length; A++)
1429
1429
  O[T[A].toUpperCase()] = T[A];
1430
1430
  return O;
1431
- }, rt = function(T, O) {
1431
+ }, nt = function(T, O) {
1432
1432
  return typeof T === S ? ce(O).indexOf(ce(T)) !== -1 : !1;
1433
1433
  }, ce = function(T) {
1434
1434
  return T.toLowerCase();
1435
- }, Xt = function(T) {
1435
+ }, zt = function(T) {
1436
1436
  return typeof T === S ? T.replace(/[^\d\.]/g, g).split(".")[0] : r;
1437
- }, ve = function(T, O) {
1437
+ }, Re = function(T, O) {
1438
1438
  if (typeof T === S)
1439
1439
  return T = T.replace(/^\s\s*/, g), typeof O === p ? T : T.substring(0, D);
1440
1440
  }, le = function(T, O) {
1441
1441
  for (var A = 0, C, V, G, I, y, B; A < O.length && !y; ) {
1442
- var Pe = O[A], ot = O[A + 1];
1443
- for (C = V = 0; C < Pe.length && !y && Pe[C]; )
1444
- if (y = Pe[C++].exec(T), y)
1445
- for (G = 0; G < ot.length; G++)
1446
- B = y[++V], I = ot[G], typeof I === R && I.length > 0 ? I.length === 2 ? typeof I[1] == _ ? this[I[0]] = I[1].call(this, B) : this[I[0]] = I[1] : I.length === 3 ? typeof I[1] === _ && !(I[1].exec && I[1].test) ? this[I[0]] = B ? I[1].call(this, B, I[2]) : r : this[I[0]] = B ? B.replace(I[1], I[2]) : r : I.length === 4 && (this[I[0]] = B ? I[3].call(this, B.replace(I[1], I[2])) : r) : this[I] = B || r;
1442
+ var ye = O[A], st = O[A + 1];
1443
+ for (C = V = 0; C < ye.length && !y && ye[C]; )
1444
+ if (y = ye[C++].exec(T), y)
1445
+ for (G = 0; G < st.length; G++)
1446
+ B = y[++V], I = st[G], typeof I === R && I.length > 0 ? I.length === 2 ? typeof I[1] == _ ? this[I[0]] = I[1].call(this, B) : this[I[0]] = I[1] : I.length === 3 ? typeof I[1] === _ && !(I[1].exec && I[1].test) ? this[I[0]] = B ? I[1].call(this, B, I[2]) : r : this[I[0]] = B ? B.replace(I[1], I[2]) : r : I.length === 4 && (this[I[0]] = B ? I[3].call(this, B.replace(I[1], I[2])) : r) : this[I] = B || r;
1447
1447
  A += 2;
1448
1448
  }
1449
- }, Re = function(T, O) {
1449
+ }, Pe = function(T, O) {
1450
1450
  for (var A in O)
1451
1451
  if (typeof O[A] === R && O[A].length > 0) {
1452
1452
  for (var C = 0; C < O[A].length; C++)
1453
- if (rt(O[A][C], T))
1454
- return A === u ? r : A;
1455
- } else if (rt(O[A], T))
1456
- return A === u ? r : A;
1453
+ if (nt(O[A][C], T))
1454
+ return A === c ? r : A;
1455
+ } else if (nt(O[A], T))
1456
+ return A === c ? r : A;
1457
1457
  return T;
1458
- }, Wt = { "1.0": "/8", 1.2: "/1", 1.3: "/3", "2.0": "/412", "2.0.2": "/416", "2.0.3": "/417", "2.0.4": "/419", "?": "/" }, nt = { ME: "4.90", "NT 3.11": "NT3.51", "NT 4.0": "NT4.0", 2e3: "NT 5.0", XP: ["NT 5.1", "NT 5.2"], Vista: "NT 6.0", 7: "NT 6.1", 8: "NT 6.2", 8.1: "NT 6.3", 10: ["NT 6.4", "NT 10.0"], RT: "ARM" }, it = { browser: [[/\b(?:crmo|crios)\/([\w\.]+)/i], [E, [b, "Chrome"]], [/edg(?:e|ios|a)?\/([\w\.]+)/i], [E, [b, "Edge"]], [/(opera mini)\/([-\w\.]+)/i, /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i], [b, E], [/opios[\/ ]+([\w\.]+)/i], [E, [b, ee + " Mini"]], [/\bopr\/([\w\.]+)/i], [E, [b, ee]], [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i, /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i, /(ba?idubrowser)[\/ ]?([\w\.]+)/i, /(?:ms|\()(ie) ([\w\.]+)/i, /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i, /(heytap|ovi)browser\/([\d\.]+)/i, /(weibo)__([\d\.]+)/i], [b, E], [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i], [E, [b, "UC" + F]], [/microm.+\bqbcore\/([\w\.]+)/i, /\bqbcore\/([\w\.]+).+microm/i], [E, [b, "WeChat(Win) Desktop"]], [/micromessenger\/([\w\.]+)/i], [E, [b, "WeChat"]], [/konqueror\/([\w\.]+)/i], [E, [b, "Konqueror"]], [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i], [E, [b, "IE"]], [/ya(?:search)?browser\/([\w\.]+)/i], [E, [b, "Yandex"]], [/(avast|avg)\/([\w\.]+)/i], [[b, /(.+)/, "$1 Secure " + F], E], [/\bfocus\/([\w\.]+)/i], [E, [b, z + " Focus"]], [/\bopt\/([\w\.]+)/i], [E, [b, ee + " Touch"]], [/coc_coc\w+\/([\w\.]+)/i], [E, [b, "Coc Coc"]], [/dolfin\/([\w\.]+)/i], [E, [b, "Dolphin"]], [/coast\/([\w\.]+)/i], [E, [b, ee + " Coast"]], [/miuibrowser\/([\w\.]+)/i], [E, [b, "MIUI " + F]], [/fxios\/([-\w\.]+)/i], [E, [b, z]], [/\bqihu|(qi?ho?o?|360)browser/i], [[b, "360 " + F]], [/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i], [[b, /(.+)/, "$1 " + F], E], [/(comodo_dragon)\/([\w\.]+)/i], [[b, /_/g, " "], E], [/(electron)\/([\w\.]+) safari/i, /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i], [b, E], [/(metasr)[\/ ]?([\w\.]+)/i, /(lbbrowser)/i, /\[(linkedin)app\]/i], [b], [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i], [[b, pe], E], [/(kakao(?:talk|story))[\/ ]([\w\.]+)/i, /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, /safari (line)\/([\w\.]+)/i, /\b(line)\/([\w\.]+)\/iab/i, /(chromium|instagram)[\/ ]([-\w\.]+)/i], [b, E], [/\bgsa\/([\w\.]+) .*safari\//i], [E, [b, "GSA"]], [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i], [E, [b, "TikTok"]], [/headlesschrome(?:\/([\w\.]+)| )/i], [E, [b, W + " Headless"]], [/ wv\).+(chrome)\/([\w\.]+)/i], [[b, W + " WebView"], E], [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i], [E, [b, "Android " + F]], [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i], [b, E], [/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i], [E, [b, "Mobile Safari"]], [/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i], [E, b], [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i], [b, [E, Re, Wt]], [/(webkit|khtml)\/([\w\.]+)/i], [b, E], [/(navigator|netscape\d?)\/([-\w\.]+)/i], [[b, "Netscape"], E], [/mobile vr; rv:([\w\.]+)\).+firefox/i], [E, [b, z + " Reality"]], [/ekiohf.+(flow)\/([\w\.]+)/i, /(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i, /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i, /(firefox)\/([\w\.]+)/i, /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i, /(links) \(([\w\.]+)/i, /panasonic;(viera)/i], [b, E], [/(cobalt)\/([\w\.]+)/i], [b, [E, /master.|lts./, ""]]], cpu: [[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i], [[s, "amd64"]], [/(ia32(?=;))/i], [[s, ce]], [/((?:i[346]|x)86)[;\)]/i], [[s, "ia32"]], [/\b(aarch64|arm(v?8e?l?|_?64))\b/i], [[s, "arm64"]], [/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i], [[s, "armhf"]], [/windows (ce|mobile); ppc;/i], [[s, "arm"]], [/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i], [[s, /ower/, g, ce]], [/(sun4\w)[;\)]/i], [[s, "sparc"]], [/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i], [[s, ce]]], device: [[/\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], [l, [m, ae], [h, w]], [/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i, /samsung[- ]([-\w]+)/i, /sec-(sgh\w+)/i], [l, [m, ae], [h, f]], [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i], [l, [m, j], [h, f]], [/\((ipad);[-\w\),; ]+apple/i, /applecoremedia\/[\w\.]+ \((ipad)/i, /\b(ipad)\d\d?,\d\d?[;\]].+ios/i], [l, [m, j], [h, w]], [/(macintosh);/i], [l, [m, j]], [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i], [l, [m, fe], [h, f]], [/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i], [l, [m, de], [h, w]], [/(?:huawei|honor)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i], [l, [m, de], [h, f]], [/\b(poco[\w ]+)(?: bui|\))/i, /\b; (\w+) build\/hm\1/i, /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i], [[l, /_/g, " "], [m, ue], [h, f]], [/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i], [[l, /_/g, " "], [m, ue], [h, w]], [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i], [l, [m, "OPPO"], [h, f]], [/vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i], [l, [m, "Vivo"], [h, f]], [/\b(rmx[12]\d{3})(?: bui|;|\))/i], [l, [m, "Realme"], [h, f]], [/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i, /\bmot(?:orola)?[- ](\w*)/i, /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i], [l, [m, he], [h, f]], [/\b(mz60\d|xoom[2 ]{0,2}) build\//i], [l, [m, he], [h, w]], [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i], [l, [m, oe], [h, w]], [/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i, /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i, /\blg-?([\d\w]+) bui/i], [l, [m, oe], [h, f]], [/(ideatab[-\w ]+)/i, /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i], [l, [m, "Lenovo"], [h, w]], [/(?:maemo|nokia).*(n900|lumia \d+)/i, /nokia[-_ ]?([-\w\.]*)/i], [[l, /_/g, " "], [m, "Nokia"], [h, f]], [/(pixel c)\b/i], [l, [m, Z], [h, w]], [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i], [l, [m, Z], [h, f]], [/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], [l, [m, te], [h, f]], [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i], [[l, "Xperia Tablet"], [m, te], [h, w]], [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i], [l, [m, "OnePlus"], [h, f]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i, /(kf[a-z]+)( bui|\)).+silk\//i], [l, [m, H], [h, w]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i], [[l, /(.+)/g, "Fire Phone $1"], [m, H], [h, f]], [/(playbook);[-\w\),; ]+(rim)/i], [l, m, [h, w]], [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i], [l, [m, Q], [h, f]], [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i], [l, [m, J], [h, w]], [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i], [l, [m, J], [h, f]], [/(nexus 9)/i], [l, [m, "HTC"], [h, w]], [/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i], [m, [l, /_/g, " "], [h, f]], [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i], [l, [m, "Acer"], [h, w]], [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i], [l, [m, "Meizu"], [h, f]], [/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i, /(hp) ([\w ]+\w)/i, /(asus)-?(\w+)/i, /(microsoft); (lumia[\w ]+)/i, /(lenovo)[-_ ]?([-\w]+)/i, /(jolla)/i, /(oppo) ?([\w ]+) bui/i], [m, l, [h, f]], [/(kobo)\s(ereader|touch)/i, /(archos) (gamepad2?)/i, /(hp).+(touchpad(?!.+tablet)|tablet)/i, /(kindle)\/([\w\.]+)/i, /(nook)[\w ]+build\/(\w+)/i, /(dell) (strea[kpr\d ]*[\dko])/i, /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, /(trinity)[- ]*(t\d{3}) bui/i, /(gigaset)[- ]+(q\w{1,9}) bui/i, /(vodafone) ([\w ]+)(?:\)| bui)/i], [m, l, [h, w]], [/(surface duo)/i], [l, [m, se], [h, w]], [/droid [\d\.]+; (fp\du?)(?: b|\))/i], [l, [m, "Fairphone"], [h, f]], [/(u304aa)/i], [l, [m, "AT&T"], [h, f]], [/\bsie-(\w*)/i], [l, [m, "Siemens"], [h, f]], [/\b(rct\w+) b/i], [l, [m, "RCA"], [h, w]], [/\b(venue[\d ]{2,7}) b/i], [l, [m, "Dell"], [h, w]], [/\b(q(?:mv|ta)\w+) b/i], [l, [m, "Verizon"], [h, w]], [/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i], [l, [m, "Barnes & Noble"], [h, w]], [/\b(tm\d{3}\w+) b/i], [l, [m, "NuVision"], [h, w]], [/\b(k88) b/i], [l, [m, "ZTE"], [h, w]], [/\b(nx\d{3}j) b/i], [l, [m, "ZTE"], [h, f]], [/\b(gen\d{3}) b.+49h/i], [l, [m, "Swiss"], [h, f]], [/\b(zur\d{3}) b/i], [l, [m, "Swiss"], [h, w]], [/\b((zeki)?tb.*\b) b/i], [l, [m, "Zeki"], [h, w]], [/\b([yr]\d{2}) b/i, /\b(dragon[- ]+touch |dt)(\w{5}) b/i], [[m, "Dragon Touch"], l, [h, w]], [/\b(ns-?\w{0,9}) b/i], [l, [m, "Insignia"], [h, w]], [/\b((nxa|next)-?\w{0,9}) b/i], [l, [m, "NextBook"], [h, w]], [/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[m, "Voice"], l, [h, f]], [/\b(lvtel\-)?(v1[12]) b/i], [[m, "LvTel"], l, [h, f]], [/\b(ph-1) /i], [l, [m, "Essential"], [h, f]], [/\b(v(100md|700na|7011|917g).*\b) b/i], [l, [m, "Envizen"], [h, w]], [/\b(trio[-\w\. ]+) b/i], [l, [m, "MachSpeed"], [h, w]], [/\btu_(1491) b/i], [l, [m, "Rotor"], [h, w]], [/(shield[\w ]+) b/i], [l, [m, "Nvidia"], [h, w]], [/(sprint) (\w+)/i], [m, l, [h, f]], [/(kin\.[onetw]{3})/i], [[l, /\./g, " "], [m, se], [h, f]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i], [l, [m, L], [h, w]], [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i], [l, [m, L], [h, f]], [/smart-tv.+(samsung)/i], [m, [h, P]], [/hbbtv.+maple;(\d+)/i], [[l, /^/, "SmartTV"], [m, ae], [h, P]], [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i], [[m, oe], [h, P]], [/(apple) ?tv/i], [m, [l, j + " TV"], [h, P]], [/crkey/i], [[l, W + "cast"], [m, Z], [h, P]], [/droid.+aft(\w)( bui|\))/i], [l, [m, H], [h, P]], [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i], [l, [m, fe], [h, P]], [/(bravia[\w ]+)( bui|\))/i], [l, [m, te], [h, P]], [/(mitv-\w{5}) bui/i], [l, [m, ue], [h, P]], [/Hbbtv.*(technisat) (.*);/i], [m, l, [h, P]], [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i], [[m, ve], [l, ve], [h, P]], [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i], [[h, P]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [m, l, [h, v]], [/droid.+; (shield) bui/i], [l, [m, "Nvidia"], [h, v]], [/(playstation [345portablevi]+)/i], [l, [m, te], [h, v]], [/\b(xbox(?: one)?(?!; xbox))[\); ]/i], [l, [m, se], [h, v]], [/((pebble))app/i], [m, l, [h, N]], [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i], [l, [m, j], [h, N]], [/droid.+; (glass) \d/i], [l, [m, Z], [h, N]], [/droid.+; (wt63?0{2,3})\)/i], [l, [m, L], [h, N]], [/(quest( 2| pro)?)/i], [l, [m, pe], [h, N]], [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i], [m, [h, M]], [/(aeobc)\b/i], [l, [m, H], [h, M]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i], [l, [h, f]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i], [l, [h, w]], [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i], [[h, w]], [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i], [[h, f]], [/(android[-\w\. ]{0,9});.+buil/i], [l, [m, "Generic"]]], engine: [[/windows.+ edge\/([\w\.]+)/i], [E, [b, ie + "HTML"]], [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i], [E, [b, "Blink"]], [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, /ekioh(flow)\/([\w\.]+)/i, /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, /(icab)[\/ ]([23]\.[\d\.]+)/i, /\b(libweb)/i], [b, E], [/rv\:([\w\.]{1,9})\b.+(gecko)/i], [E, b]], os: [[/microsoft (windows) (vista|xp)/i], [b, E], [/(windows) nt 6\.2; (arm)/i, /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i, /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i], [b, [E, Re, nt]], [/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i], [[b, "Windows"], [E, Re, nt]], [/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, /ios;fbsv\/([\d\.]+)/i, /cfnetwork\/.+darwin/i], [[E, /_/g, "."], [b, "iOS"]], [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i], [[b, _e], [E, /_/g, "."]], [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i], [E, b], [/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i, /(blackberry)\w*\/([\w\.]*)/i, /(tizen|kaios)[\/ ]([\w\.]+)/i, /\((series40);/i], [b, E], [/\(bb(10);/i], [E, [b, Q]], [/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i], [E, [b, "Symbian"]], [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i], [E, [b, z + " OS"]], [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i], [E, [b, "webOS"]], [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i], [E, [b, "watchOS"]], [/crkey\/([\d\.]+)/i], [E, [b, W + "cast"]], [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i], [[b, me], E], [/panasonic;(viera)/i, /(netrange)mmh/i, /(nettv)\/(\d+\.[\w\.]+)/i, /(nintendo|playstation) ([wids345portablevuch]+)/i, /(xbox); +xbox ([^\);]+)/i, /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, /(mint)[\/\(\) ]?(\w*)/i, /(mageia|vectorlinux)[; ]/i, /([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, /(hurd|linux) ?([\w\.]*)/i, /(gnu) ?([\w\.]*)/i, /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, /(haiku) (\w+)/i], [b, E], [/(sunos) ?([\w\.\d]*)/i], [[b, "Solaris"], E], [/((?:open)?solaris)[-\/ ]?([\w\.]*)/i, /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, /(unix) ?([\w\.]*)/i], [b, E]] }, q = function(T, O) {
1458
+ }, Vt = { "1.0": "/8", 1.2: "/1", 1.3: "/3", "2.0": "/412", "2.0.2": "/416", "2.0.3": "/417", "2.0.4": "/419", "?": "/" }, it = { ME: "4.90", "NT 3.11": "NT3.51", "NT 4.0": "NT4.0", 2e3: "NT 5.0", XP: ["NT 5.1", "NT 5.2"], Vista: "NT 6.0", 7: "NT 6.1", 8: "NT 6.2", 8.1: "NT 6.3", 10: ["NT 6.4", "NT 10.0"], RT: "ARM" }, ot = { browser: [[/\b(?:crmo|crios)\/([\w\.]+)/i], [E, [b, "Chrome"]], [/edg(?:e|ios|a)?\/([\w\.]+)/i], [E, [b, "Edge"]], [/(opera mini)\/([-\w\.]+)/i, /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i], [b, E], [/opios[\/ ]+([\w\.]+)/i], [E, [b, ee + " Mini"]], [/\bopr\/([\w\.]+)/i], [E, [b, ee]], [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i, /(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i, /(ba?idubrowser)[\/ ]?([\w\.]+)/i, /(?:ms|\()(ie) ([\w\.]+)/i, /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i, /(heytap|ovi)browser\/([\d\.]+)/i, /(weibo)__([\d\.]+)/i], [b, E], [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i], [E, [b, "UC" + F]], [/microm.+\bqbcore\/([\w\.]+)/i, /\bqbcore\/([\w\.]+).+microm/i], [E, [b, "WeChat(Win) Desktop"]], [/micromessenger\/([\w\.]+)/i], [E, [b, "WeChat"]], [/konqueror\/([\w\.]+)/i], [E, [b, "Konqueror"]], [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i], [E, [b, "IE"]], [/ya(?:search)?browser\/([\w\.]+)/i], [E, [b, "Yandex"]], [/(avast|avg)\/([\w\.]+)/i], [[b, /(.+)/, "$1 Secure " + F], E], [/\bfocus\/([\w\.]+)/i], [E, [b, z + " Focus"]], [/\bopt\/([\w\.]+)/i], [E, [b, ee + " Touch"]], [/coc_coc\w+\/([\w\.]+)/i], [E, [b, "Coc Coc"]], [/dolfin\/([\w\.]+)/i], [E, [b, "Dolphin"]], [/coast\/([\w\.]+)/i], [E, [b, ee + " Coast"]], [/miuibrowser\/([\w\.]+)/i], [E, [b, "MIUI " + F]], [/fxios\/([-\w\.]+)/i], [E, [b, z]], [/\bqihu|(qi?ho?o?|360)browser/i], [[b, "360 " + F]], [/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i], [[b, /(.+)/, "$1 " + F], E], [/(comodo_dragon)\/([\w\.]+)/i], [[b, /_/g, " "], E], [/(electron)\/([\w\.]+) safari/i, /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, /m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i], [b, E], [/(metasr)[\/ ]?([\w\.]+)/i, /(lbbrowser)/i, /\[(linkedin)app\]/i], [b], [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i], [[b, pe], E], [/(kakao(?:talk|story))[\/ ]([\w\.]+)/i, /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, /safari (line)\/([\w\.]+)/i, /\b(line)\/([\w\.]+)\/iab/i, /(chromium|instagram)[\/ ]([-\w\.]+)/i], [b, E], [/\bgsa\/([\w\.]+) .*safari\//i], [E, [b, "GSA"]], [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i], [E, [b, "TikTok"]], [/headlesschrome(?:\/([\w\.]+)| )/i], [E, [b, W + " Headless"]], [/ wv\).+(chrome)\/([\w\.]+)/i], [[b, W + " WebView"], E], [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i], [E, [b, "Android " + F]], [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i], [b, E], [/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i], [E, [b, "Mobile Safari"]], [/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i], [E, b], [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i], [b, [E, Pe, Vt]], [/(webkit|khtml)\/([\w\.]+)/i], [b, E], [/(navigator|netscape\d?)\/([-\w\.]+)/i], [[b, "Netscape"], E], [/mobile vr; rv:([\w\.]+)\).+firefox/i], [E, [b, z + " Reality"]], [/ekiohf.+(flow)\/([\w\.]+)/i, /(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i, /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i, /(firefox)\/([\w\.]+)/i, /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i, /(links) \(([\w\.]+)/i, /panasonic;(viera)/i], [b, E], [/(cobalt)\/([\w\.]+)/i], [b, [E, /master.|lts./, ""]]], cpu: [[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i], [[s, "amd64"]], [/(ia32(?=;))/i], [[s, ce]], [/((?:i[346]|x)86)[;\)]/i], [[s, "ia32"]], [/\b(aarch64|arm(v?8e?l?|_?64))\b/i], [[s, "arm64"]], [/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i], [[s, "armhf"]], [/windows (ce|mobile); ppc;/i], [[s, "arm"]], [/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i], [[s, /ower/, g, ce]], [/(sun4\w)[;\)]/i], [[s, "sparc"]], [/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i], [[s, ce]]], device: [[/\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], [l, [m, ae], [h, w]], [/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i, /samsung[- ]([-\w]+)/i, /sec-(sgh\w+)/i], [l, [m, ae], [h, f]], [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i], [l, [m, j], [h, f]], [/\((ipad);[-\w\),; ]+apple/i, /applecoremedia\/[\w\.]+ \((ipad)/i, /\b(ipad)\d\d?,\d\d?[;\]].+ios/i], [l, [m, j], [h, w]], [/(macintosh);/i], [l, [m, j]], [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i], [l, [m, fe], [h, f]], [/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i], [l, [m, de], [h, w]], [/(?:huawei|honor)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i], [l, [m, de], [h, f]], [/\b(poco[\w ]+)(?: bui|\))/i, /\b; (\w+) build\/hm\1/i, /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i], [[l, /_/g, " "], [m, ue], [h, f]], [/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i], [[l, /_/g, " "], [m, ue], [h, w]], [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i], [l, [m, "OPPO"], [h, f]], [/vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i], [l, [m, "Vivo"], [h, f]], [/\b(rmx[12]\d{3})(?: bui|;|\))/i], [l, [m, "Realme"], [h, f]], [/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i, /\bmot(?:orola)?[- ](\w*)/i, /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i], [l, [m, he], [h, f]], [/\b(mz60\d|xoom[2 ]{0,2}) build\//i], [l, [m, he], [h, w]], [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i], [l, [m, oe], [h, w]], [/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i, /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i, /\blg-?([\d\w]+) bui/i], [l, [m, oe], [h, f]], [/(ideatab[-\w ]+)/i, /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i], [l, [m, "Lenovo"], [h, w]], [/(?:maemo|nokia).*(n900|lumia \d+)/i, /nokia[-_ ]?([-\w\.]*)/i], [[l, /_/g, " "], [m, "Nokia"], [h, f]], [/(pixel c)\b/i], [l, [m, Z], [h, w]], [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i], [l, [m, Z], [h, f]], [/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], [l, [m, te], [h, f]], [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i], [[l, "Xperia Tablet"], [m, te], [h, w]], [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i], [l, [m, "OnePlus"], [h, f]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i, /(kf[a-z]+)( bui|\)).+silk\//i], [l, [m, H], [h, w]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i], [[l, /(.+)/g, "Fire Phone $1"], [m, H], [h, f]], [/(playbook);[-\w\),; ]+(rim)/i], [l, m, [h, w]], [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i], [l, [m, Q], [h, f]], [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i], [l, [m, J], [h, w]], [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i], [l, [m, J], [h, f]], [/(nexus 9)/i], [l, [m, "HTC"], [h, w]], [/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i], [m, [l, /_/g, " "], [h, f]], [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i], [l, [m, "Acer"], [h, w]], [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i], [l, [m, "Meizu"], [h, f]], [/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i, /(hp) ([\w ]+\w)/i, /(asus)-?(\w+)/i, /(microsoft); (lumia[\w ]+)/i, /(lenovo)[-_ ]?([-\w]+)/i, /(jolla)/i, /(oppo) ?([\w ]+) bui/i], [m, l, [h, f]], [/(kobo)\s(ereader|touch)/i, /(archos) (gamepad2?)/i, /(hp).+(touchpad(?!.+tablet)|tablet)/i, /(kindle)\/([\w\.]+)/i, /(nook)[\w ]+build\/(\w+)/i, /(dell) (strea[kpr\d ]*[\dko])/i, /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, /(trinity)[- ]*(t\d{3}) bui/i, /(gigaset)[- ]+(q\w{1,9}) bui/i, /(vodafone) ([\w ]+)(?:\)| bui)/i], [m, l, [h, w]], [/(surface duo)/i], [l, [m, se], [h, w]], [/droid [\d\.]+; (fp\du?)(?: b|\))/i], [l, [m, "Fairphone"], [h, f]], [/(u304aa)/i], [l, [m, "AT&T"], [h, f]], [/\bsie-(\w*)/i], [l, [m, "Siemens"], [h, f]], [/\b(rct\w+) b/i], [l, [m, "RCA"], [h, w]], [/\b(venue[\d ]{2,7}) b/i], [l, [m, "Dell"], [h, w]], [/\b(q(?:mv|ta)\w+) b/i], [l, [m, "Verizon"], [h, w]], [/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i], [l, [m, "Barnes & Noble"], [h, w]], [/\b(tm\d{3}\w+) b/i], [l, [m, "NuVision"], [h, w]], [/\b(k88) b/i], [l, [m, "ZTE"], [h, w]], [/\b(nx\d{3}j) b/i], [l, [m, "ZTE"], [h, f]], [/\b(gen\d{3}) b.+49h/i], [l, [m, "Swiss"], [h, f]], [/\b(zur\d{3}) b/i], [l, [m, "Swiss"], [h, w]], [/\b((zeki)?tb.*\b) b/i], [l, [m, "Zeki"], [h, w]], [/\b([yr]\d{2}) b/i, /\b(dragon[- ]+touch |dt)(\w{5}) b/i], [[m, "Dragon Touch"], l, [h, w]], [/\b(ns-?\w{0,9}) b/i], [l, [m, "Insignia"], [h, w]], [/\b((nxa|next)-?\w{0,9}) b/i], [l, [m, "NextBook"], [h, w]], [/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[m, "Voice"], l, [h, f]], [/\b(lvtel\-)?(v1[12]) b/i], [[m, "LvTel"], l, [h, f]], [/\b(ph-1) /i], [l, [m, "Essential"], [h, f]], [/\b(v(100md|700na|7011|917g).*\b) b/i], [l, [m, "Envizen"], [h, w]], [/\b(trio[-\w\. ]+) b/i], [l, [m, "MachSpeed"], [h, w]], [/\btu_(1491) b/i], [l, [m, "Rotor"], [h, w]], [/(shield[\w ]+) b/i], [l, [m, "Nvidia"], [h, w]], [/(sprint) (\w+)/i], [m, l, [h, f]], [/(kin\.[onetw]{3})/i], [[l, /\./g, " "], [m, se], [h, f]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i], [l, [m, L], [h, w]], [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i], [l, [m, L], [h, f]], [/smart-tv.+(samsung)/i], [m, [h, P]], [/hbbtv.+maple;(\d+)/i], [[l, /^/, "SmartTV"], [m, ae], [h, P]], [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i], [[m, oe], [h, P]], [/(apple) ?tv/i], [m, [l, j + " TV"], [h, P]], [/crkey/i], [[l, W + "cast"], [m, Z], [h, P]], [/droid.+aft(\w)( bui|\))/i], [l, [m, H], [h, P]], [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i], [l, [m, fe], [h, P]], [/(bravia[\w ]+)( bui|\))/i], [l, [m, te], [h, P]], [/(mitv-\w{5}) bui/i], [l, [m, ue], [h, P]], [/Hbbtv.*(technisat) (.*);/i], [m, l, [h, P]], [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i], [[m, Re], [l, Re], [h, P]], [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i], [[h, P]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [m, l, [h, v]], [/droid.+; (shield) bui/i], [l, [m, "Nvidia"], [h, v]], [/(playstation [345portablevi]+)/i], [l, [m, te], [h, v]], [/\b(xbox(?: one)?(?!; xbox))[\); ]/i], [l, [m, se], [h, v]], [/((pebble))app/i], [m, l, [h, N]], [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i], [l, [m, j], [h, N]], [/droid.+; (glass) \d/i], [l, [m, Z], [h, N]], [/droid.+; (wt63?0{2,3})\)/i], [l, [m, L], [h, N]], [/(quest( 2| pro)?)/i], [l, [m, pe], [h, N]], [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i], [m, [h, M]], [/(aeobc)\b/i], [l, [m, H], [h, M]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i], [l, [h, f]], [/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i], [l, [h, w]], [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i], [[h, w]], [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i], [[h, f]], [/(android[-\w\. ]{0,9});.+buil/i], [l, [m, "Generic"]]], engine: [[/windows.+ edge\/([\w\.]+)/i], [E, [b, ie + "HTML"]], [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i], [E, [b, "Blink"]], [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, /ekioh(flow)\/([\w\.]+)/i, /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, /(icab)[\/ ]([23]\.[\d\.]+)/i, /\b(libweb)/i], [b, E], [/rv\:([\w\.]{1,9})\b.+(gecko)/i], [E, b]], os: [[/microsoft (windows) (vista|xp)/i], [b, E], [/(windows) nt 6\.2; (arm)/i, /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i, /(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i], [b, [E, Pe, it]], [/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i], [[b, "Windows"], [E, Pe, it]], [/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, /ios;fbsv\/([\d\.]+)/i, /cfnetwork\/.+darwin/i], [[E, /_/g, "."], [b, "iOS"]], [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i], [[b, _e], [E, /_/g, "."]], [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i], [E, b], [/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i, /(blackberry)\w*\/([\w\.]*)/i, /(tizen|kaios)[\/ ]([\w\.]+)/i, /\((series40);/i], [b, E], [/\(bb(10);/i], [E, [b, Q]], [/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i], [E, [b, "Symbian"]], [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i], [E, [b, z + " OS"]], [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i], [E, [b, "webOS"]], [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i], [E, [b, "watchOS"]], [/crkey\/([\d\.]+)/i], [E, [b, W + "cast"]], [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i], [[b, me], E], [/panasonic;(viera)/i, /(netrange)mmh/i, /(nettv)\/(\d+\.[\w\.]+)/i, /(nintendo|playstation) ([wids345portablevuch]+)/i, /(xbox); +xbox ([^\);]+)/i, /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, /(mint)[\/\(\) ]?(\w*)/i, /(mageia|vectorlinux)[; ]/i, /([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, /(hurd|linux) ?([\w\.]*)/i, /(gnu) ?([\w\.]*)/i, /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, /(haiku) (\w+)/i], [b, E], [/(sunos) ?([\w\.\d]*)/i], [[b, "Solaris"], E], [/((?:open)?solaris)[-\/ ]?([\w\.]*)/i, /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, /(unix) ?([\w\.]*)/i], [b, E]] }, q = function(T, O) {
1459
1459
  if (typeof T === R && (O = T, T = r), !(this instanceof q))
1460
1460
  return new q(T, O).getResult();
1461
- var A = typeof c !== p && c.navigator ? c.navigator : r, C = T || (A && A.userAgent ? A.userAgent : g), V = A && A.userAgentData ? A.userAgentData : r, G = O ? ge(it, O) : it, I = A && A.userAgent == C;
1461
+ var A = typeof u !== p && u.navigator ? u.navigator : r, C = T || (A && A.userAgent ? A.userAgent : g), V = A && A.userAgentData ? A.userAgentData : r, G = O ? ge(ot, O) : ot, I = A && A.userAgent == C;
1462
1462
  return this.getBrowser = function() {
1463
1463
  var y = {};
1464
- return y[b] = r, y[E] = r, le.call(y, C, G.browser), y[x] = Xt(y[E]), I && A && A.brave && typeof A.brave.isBrave == _ && (y[b] = "Brave"), y;
1464
+ return y[b] = r, y[E] = r, le.call(y, C, G.browser), y[x] = zt(y[E]), I && A && A.brave && typeof A.brave.isBrave == _ && (y[b] = "Brave"), y;
1465
1465
  }, this.getCPU = function() {
1466
1466
  var y = {};
1467
1467
  return y[s] = r, le.call(y, C, G.cpu), y;
@@ -1479,11 +1479,11 @@ function hr() {
1479
1479
  }, this.getUA = function() {
1480
1480
  return C;
1481
1481
  }, this.setUA = function(y) {
1482
- return C = typeof y === S && y.length > D ? ve(y, D) : y, this;
1482
+ return C = typeof y === S && y.length > D ? Re(y, D) : y, this;
1483
1483
  }, this.setUA(C), this;
1484
1484
  };
1485
- q.VERSION = d, q.BROWSER = $([b, E, x]), q.CPU = $([s]), q.DEVICE = $([l, m, h, v, f, P, w, N, M]), q.ENGINE = q.OS = $([b, E]), typeof a !== p ? (n.exports && (a = n.exports = q), a.UAParser = q) : typeof c !== p && (c.UAParser = q);
1486
- var re = typeof c !== p && (c.jQuery || c.Zepto);
1485
+ q.VERSION = d, q.BROWSER = $([b, E, x]), q.CPU = $([s]), q.DEVICE = $([l, m, h, v, f, P, w, N, M]), q.ENGINE = q.OS = $([b, E]), typeof a !== p ? (n.exports && (a = n.exports = q), a.UAParser = q) : typeof u !== p && (u.UAParser = q);
1486
+ var re = typeof u !== p && (u.jQuery || u.Zepto);
1487
1487
  if (re && !re.ua) {
1488
1488
  var be = new q();
1489
1489
  re.ua = be.getResult(), re.ua.get = function() {
@@ -1501,22 +1501,22 @@ function hr() {
1501
1501
  var a = e[n];
1502
1502
  if (a !== void 0)
1503
1503
  return a.exports;
1504
- var c = e[n] = { exports: {} }, r = !0;
1504
+ var u = e[n] = { exports: {} }, r = !0;
1505
1505
  try {
1506
- i[n].call(c.exports, c, c.exports, t), r = !1;
1506
+ i[n].call(u.exports, u, u.exports, t), r = !1;
1507
1507
  } finally {
1508
1508
  r && delete e[n];
1509
1509
  }
1510
- return c.exports;
1510
+ return u.exports;
1511
1511
  }
1512
1512
  typeof t < "u" && (t.ab = __dirname + "/");
1513
1513
  var o = t(226);
1514
- Ve.exports = o;
1515
- })()), Ve.exports;
1514
+ Ke.exports = o;
1515
+ })()), Ke.exports;
1516
1516
  }
1517
- var Nt;
1518
- function Ct() {
1519
- return Nt || (Nt = 1, (function(i) {
1517
+ var Ct;
1518
+ function Lt() {
1519
+ return Ct || (Ct = 1, (function(i) {
1520
1520
  Object.defineProperty(i, "__esModule", {
1521
1521
  value: !0
1522
1522
  });
@@ -1531,13 +1531,13 @@ function Ct() {
1531
1531
  return n;
1532
1532
  },
1533
1533
  userAgent: function() {
1534
- return c;
1534
+ return u;
1535
1535
  },
1536
1536
  userAgentFromString: function() {
1537
1537
  return a;
1538
1538
  }
1539
1539
  });
1540
- const t = /* @__PURE__ */ o(hr());
1540
+ const t = /* @__PURE__ */ o(pr());
1541
1541
  function o(r) {
1542
1542
  return r && r.__esModule ? r : {
1543
1543
  default: r
@@ -1552,14 +1552,14 @@ function Ct() {
1552
1552
  isBot: r === void 0 ? !1 : n(r)
1553
1553
  };
1554
1554
  }
1555
- function c({ headers: r }) {
1555
+ function u({ headers: r }) {
1556
1556
  return a(r.get("user-agent") || void 0);
1557
1557
  }
1558
- })(ze)), ze;
1558
+ })(Ve)), Ve;
1559
1559
  }
1560
- var Ke = {}, Lt;
1561
- function fr() {
1562
- return Lt || (Lt = 1, (function(i) {
1560
+ var Ye = {}, kt;
1561
+ function mr() {
1562
+ return kt || (kt = 1, (function(i) {
1563
1563
  Object.defineProperty(i, "__esModule", {
1564
1564
  value: !0
1565
1565
  }), Object.defineProperty(i, "URLPattern", {
@@ -1572,24 +1572,24 @@ function fr() {
1572
1572
  // @ts-expect-error: URLPattern is not available in Node.js
1573
1573
  typeof URLPattern > "u" ? void 0 : URLPattern
1574
1574
  );
1575
- })(Ke)), Ke;
1575
+ })(Ye)), Ye;
1576
1576
  }
1577
- var kt;
1578
- function pr() {
1579
- return kt || (kt = 1, (function(i, e) {
1577
+ var Ut;
1578
+ function _r() {
1579
+ return Ut || (Ut = 1, (function(i, e) {
1580
1580
  const t = {
1581
- NextRequest: ur().NextRequest,
1582
- NextResponse: lr().NextResponse,
1583
- ImageResponse: dr().ImageResponse,
1584
- userAgentFromString: Ct().userAgentFromString,
1585
- userAgent: Ct().userAgent,
1586
- URLPattern: fr().URLPattern
1581
+ NextRequest: lr().NextRequest,
1582
+ NextResponse: hr().NextResponse,
1583
+ ImageResponse: fr().ImageResponse,
1584
+ userAgentFromString: Lt().userAgentFromString,
1585
+ userAgent: Lt().userAgent,
1586
+ URLPattern: mr().URLPattern
1587
1587
  };
1588
1588
  i.exports = t, e.NextRequest = t.NextRequest, e.NextResponse = t.NextResponse, e.ImageResponse = t.ImageResponse, e.userAgentFromString = t.userAgentFromString, e.userAgent = t.userAgent, e.URLPattern = t.URLPattern;
1589
1589
  })(Ee, Ee.exports)), Ee.exports;
1590
1590
  }
1591
- var mr = pr();
1592
- class Cr {
1591
+ var gr = _r();
1592
+ class kr {
1593
1593
  async parseRequest(e) {
1594
1594
  const t = new URL(e.url);
1595
1595
  let o, n;
@@ -1605,18 +1605,18 @@ class Cr {
1605
1605
  n = await e.formData();
1606
1606
  else if (r.includes(X.applicationXwwwFormUrlencoded)) {
1607
1607
  const d = await e.text();
1608
- o = Ze(d);
1608
+ o = et(d);
1609
1609
  }
1610
1610
  }
1611
- const a = e.headers, c = {};
1611
+ const a = e.headers, u = {};
1612
1612
  return e.cookies.getAll().forEach((r) => {
1613
- c[r.name] = r.value;
1613
+ u[r.name] = r.value;
1614
1614
  }), {
1615
1615
  url: t,
1616
1616
  headers: a,
1617
1617
  body: o,
1618
1618
  formData: n,
1619
- cookies: c,
1619
+ cookies: u,
1620
1620
  raw: e,
1621
1621
  clone() {
1622
1622
  return e.clone();
@@ -1624,20 +1624,31 @@ class Cr {
1624
1624
  };
1625
1625
  }
1626
1626
  createResponse(e) {
1627
- const t = mr.NextResponse.json(e.body, {
1627
+ const t = gr.NextResponse.json(e.body, {
1628
1628
  status: e.status,
1629
1629
  headers: e.headers
1630
1630
  });
1631
- return Object.entries(e.cookies).forEach(([o, n]) => {
1631
+ if (Object.entries(e.cookies).forEach(([o, n]) => {
1632
1632
  typeof n == "object" && n.value ? t.cookies.set(o, n.value, n.options) : typeof n == "string" && t.cookies.set(o, n);
1633
- }), t;
1633
+ }), e.cleanCookies) {
1634
+ const o = {
1635
+ set(n, a, u) {
1636
+ t.cookies.set(n, a, u);
1637
+ },
1638
+ delete(n, a) {
1639
+ t.cookies.delete({ ...a, name: n });
1640
+ }
1641
+ };
1642
+ e.cleanCookies(o);
1643
+ }
1644
+ return t;
1634
1645
  }
1635
1646
  setCookie(e, t, o, n) {
1636
1647
  e.cookies[t] = { value: o, options: n };
1637
1648
  }
1638
1649
  }
1639
- var Je = /* @__PURE__ */ ((i) => (i[i.login = 0] = "login", i[i.logout = 1] = "logout", i))(Je || {});
1640
- const Ye = {
1650
+ var Qe = /* @__PURE__ */ ((i) => (i[i.login = 0] = "login", i[i.logout = 1] = "logout", i))(Qe || {});
1651
+ const $e = {
1641
1652
  login: "login",
1642
1653
  logout: "logout",
1643
1654
  unknown: ""
@@ -1646,7 +1657,7 @@ const Ye = {
1646
1657
  multipartFormData: "multipart/form-data",
1647
1658
  applicationXwwwFormUrlencoded: "application/x-www-form-urlencoded"
1648
1659
  };
1649
- class Lr {
1660
+ class Ur {
1650
1661
  config;
1651
1662
  http;
1652
1663
  cookies;
@@ -1658,8 +1669,8 @@ class Lr {
1658
1669
  cookies: n
1659
1670
  }) {
1660
1671
  this.config = e;
1661
- const a = wr(o);
1662
- this.http = new Pr({ ...a, userType: Dt.TYPE_C }), this.cookies = n, this.adapter = t;
1672
+ const a = vr(o);
1673
+ this.http = new Sr({ ...a, userType: jt.TYPE_C }), this.cookies = n, this.adapter = t;
1663
1674
  }
1664
1675
  async handleRequest(e) {
1665
1676
  try {
@@ -1683,28 +1694,28 @@ class Lr {
1683
1694
  }
1684
1695
  }
1685
1696
  async processRequest(e) {
1686
- const t = e.url.searchParams, o = t.get("m") ?? "unknown", a = { ...Ye, ...this.config.APIMAP }[o];
1697
+ const t = e.url.searchParams, o = t.get("m") ?? "unknown", a = { ...$e, ...this.config.APIMAP }[o];
1687
1698
  if (!a || a.length === 0)
1688
1699
  return this.createErrorResponse(404, "API not found");
1689
- let c;
1690
- if ((a.startsWith("admin/") || a.startsWith("api/")) && (c = Er(this.cookies), !c || c.username.length === 0 || c.token.length === 0))
1700
+ let u;
1701
+ if ((a.startsWith("admin/") || a.startsWith("api/")) && (u = Rr(this.cookies), !u || u.username.length === 0 || u.token.length === 0))
1691
1702
  return this.createErrorResponse(409, "Authentication required");
1692
1703
  let r;
1693
- const d = e.clone(), g = d.method, u = e.headers.get(K) || "";
1704
+ const d = e.clone(), g = d.method, c = e.headers.get(K) || "";
1694
1705
  try {
1695
1706
  if (g === "GET") {
1696
- const p = Ze(t.toString(), ["m"]);
1707
+ const p = et(t.toString(), ["m"]);
1697
1708
  r = await this.http.get({
1698
1709
  url: a,
1699
1710
  data: p,
1700
- token: c
1711
+ token: u
1701
1712
  });
1702
1713
  } else if (g === "POST") {
1703
1714
  let p;
1704
- if (u.includes(X.applicationJson) || u.includes(X.applicationXwwwFormUrlencoded))
1715
+ if (c.includes(X.applicationJson) || c.includes(X.applicationXwwwFormUrlencoded))
1705
1716
  p = e.body;
1706
- else if (u.includes(X.multipartFormData)) {
1707
- const R = u.match(/boundary=([^\s;]+)/);
1717
+ else if (c.includes(X.multipartFormData)) {
1718
+ const R = c.match(/boundary=([^\s;]+)/);
1708
1719
  if (!R)
1709
1720
  return this.createErrorResponse(411, "Missing boundary in form data");
1710
1721
  const S = await d.arrayBuffer();
@@ -1721,7 +1732,7 @@ class Lr {
1721
1732
  r = await this.http.post({
1722
1733
  url: a,
1723
1734
  data: p,
1724
- token: c
1735
+ token: u
1725
1736
  });
1726
1737
  } else
1727
1738
  return this.createErrorResponse(405, "Method not allowed, only supported GET or POST");
@@ -1730,24 +1741,24 @@ class Lr {
1730
1741
  }
1731
1742
  const _ = {
1732
1743
  status: r.success ? 200 : r.code,
1733
- headers: { CONTENT_TYPE_KEY: u },
1744
+ headers: { CONTENT_TYPE_KEY: c },
1734
1745
  cookies: {},
1735
1746
  body: r
1736
1747
  };
1737
1748
  if (r.success)
1738
1749
  switch (a) {
1739
- case Ye[Je[
1750
+ case $e[Qe[
1740
1751
  0
1741
1752
  /* login */
1742
1753
  ]]:
1743
1754
  const p = r.data;
1744
- vr(p, this.cookies);
1755
+ Pr(p, _);
1745
1756
  break;
1746
- case Ye[Je[
1757
+ case $e[Qe[
1747
1758
  1
1748
1759
  /* logout */
1749
1760
  ]]:
1750
- Rr(this.cookies);
1761
+ _.cleanCookies = (R) => yr(R);
1751
1762
  break;
1752
1763
  }
1753
1764
  return _;
@@ -1765,7 +1776,7 @@ class Lr {
1765
1776
  };
1766
1777
  }
1767
1778
  }
1768
- const _r = "zh-CN", Ht = "_device_id_key", Ft = "_current_website_key", Ut = "Get request error!", Qe = "Post request error!", U = {
1779
+ const br = "zh-CN", Gt = "_device_id_key", Bt = "_current_website_key", Dt = "Get request error!", Ze = "Post request error!", U = {
1769
1780
  IBOOT_DEVICE_ID: "dvid",
1770
1781
  IBOOT_LANG: "lang",
1771
1782
  IBOOT_WEBSITE_ID: "wid",
@@ -1777,22 +1788,22 @@ const _r = "zh-CN", Ht = "_device_id_key", Ft = "_current_website_key", Ut = "Ge
1777
1788
  LANG: "Lang",
1778
1789
  WEBSITE_ID: "Website-Id",
1779
1790
  WEBSITE_NO: "Website-No"
1780
- }, Gt = (i) => {
1791
+ }, Xt = (i) => {
1781
1792
  if (!i.get)
1782
1793
  throw new Error("The get method of IStorage has not been implemented.");
1783
- const e = i.get(Ht) ?? "", t = i.get(Ft), o = t != null ? JSON.parse(t) : null, n = {};
1794
+ const e = i.get(Gt) ?? "", t = i.get(Bt), o = t != null ? JSON.parse(t) : null, n = {};
1784
1795
  return e.length > 0 && (n["Device-Id"] = e), o && (n.Lang = o.language, o.websiteId && (n["Website-Id"] = o.websiteId), o.websiteNo && (n["Website-No"] = o.websiteNo)), n;
1785
- }, kr = ({ deviceId: i, website: e }, t) => {
1796
+ }, Dr = ({ deviceId: i, website: e }, t) => {
1786
1797
  if (!t.set)
1787
1798
  throw new Error("The set method of IStorage has not been implemented.");
1788
- t.set(Ht, i), e && t.set(Ft, JSON.stringify(e));
1789
- }, gr = (i) => `${process.env.BASE_URL || "/api/services"}?m=${i}`, br = async (i, e) => {
1790
- let t = gr(i);
1799
+ t.set(Gt, i), e && t.set(Bt, JSON.stringify(e));
1800
+ }, wr = (i) => `${process.env.BASE_URL || "/api/services"}?m=${i}`, Er = async (i, e) => {
1801
+ let t = wr(i);
1791
1802
  if (e?.data) {
1792
1803
  const r = new URLSearchParams(e.data);
1793
1804
  t += `&${r}`;
1794
1805
  }
1795
- const o = e && e.storage && e.storage.get ? Gt(e.storage) : {}, n = e?.headers;
1806
+ const o = e && e.storage && e.storage.get ? Xt(e.storage) : {}, n = e?.headers;
1796
1807
  if (n)
1797
1808
  for (const r in n) {
1798
1809
  const d = n[r];
@@ -1811,33 +1822,33 @@ const _r = "zh-CN", Ht = "_device_id_key", Ft = "_current_website_key", Ut = "Ge
1811
1822
  const r = Object.fromEntries(a.headers.entries()), d = { ...await a.json(), headers: r };
1812
1823
  return k.debug(d, "GET_RESULT"), d;
1813
1824
  }
1814
- const c = {
1825
+ const u = {
1815
1826
  code: a.status,
1816
1827
  success: !1,
1817
1828
  msg: a.statusText
1818
1829
  };
1819
- return k.error(c), c;
1820
- }, Bt = async (i, e) => {
1830
+ return k.error(u), u;
1831
+ }, Wt = async (i, e) => {
1821
1832
  const t = e?.data ?? {}, o = e?.headers;
1822
1833
  let n;
1823
- const a = e && e.storage && e.storage.get ? Gt(e.storage) : {}, c = new Headers(a);
1824
- if (t instanceof FormData ? n = t : (n = JSON.stringify(t), c.set(K, X.applicationJson)), o)
1834
+ const a = e && e.storage && e.storage.get ? Xt(e.storage) : {}, u = new Headers(a);
1835
+ if (t instanceof FormData ? n = t : (n = JSON.stringify(t), u.set(K, X.applicationJson)), o)
1825
1836
  for (let g in o) {
1826
- const u = o[g];
1827
- u && c.set(g, u);
1837
+ const c = o[g];
1838
+ c && u.set(g, c);
1828
1839
  }
1829
1840
  k.info({
1830
1841
  url: i,
1831
- headers: c
1842
+ headers: u
1832
1843
  }, "POST");
1833
1844
  const r = await fetch(i, {
1834
1845
  method: "POST",
1835
- headers: c,
1846
+ headers: u,
1836
1847
  body: n
1837
1848
  });
1838
1849
  if (r.ok) {
1839
- const g = Object.fromEntries(r.headers.entries()), u = { ...await r.json(), headers: g };
1840
- return k.debug(u, "POST_RESULT"), u;
1850
+ const g = Object.fromEntries(r.headers.entries()), c = { ...await r.json(), headers: g };
1851
+ return k.debug(c, "POST_RESULT"), c;
1841
1852
  }
1842
1853
  const d = {
1843
1854
  code: r.status,
@@ -1845,56 +1856,56 @@ const _r = "zh-CN", Ht = "_device_id_key", Ft = "_current_website_key", Ut = "Ge
1845
1856
  msg: r.statusText
1846
1857
  };
1847
1858
  return k.error(d), d;
1848
- }, Ur = async (i, e) => {
1849
- const t = await br(i, e);
1859
+ }, Mr = async (i, e) => {
1860
+ const t = await Er(i, e);
1850
1861
  if (t.success)
1851
1862
  return t.data;
1852
1863
  if (e?.showError) {
1853
- e.showError(t.msg ?? Ut);
1864
+ e.showError(t.msg ?? Dt);
1854
1865
  return;
1855
1866
  }
1856
- throw Error(t.msg ?? Ut);
1857
- }, Dr = async (i, e) => {
1858
- const t = await Bt(i, e);
1867
+ throw Error(t.msg ?? Dt);
1868
+ }, jr = async (i, e) => {
1869
+ const t = await Wt(i, e);
1859
1870
  if (t.success)
1860
1871
  return t.data;
1861
1872
  if (e?.showError) {
1862
- e.showError(t.msg ?? Qe);
1873
+ e.showError(t.msg ?? Ze);
1863
1874
  return;
1864
1875
  }
1865
- throw Error(t.msg ?? Qe);
1866
- }, Mr = async (i, e) => {
1867
- const t = await Bt(i, e);
1868
- return t.success ? (e?.showSuccess && e.showSuccess(t.msg ?? "SUCCESS"), !0) : (e?.showError && e.showError(t.msg ?? Qe), !1);
1869
- }, wr = (i) => {
1876
+ throw Error(t.msg ?? Ze);
1877
+ }, qr = async (i, e) => {
1878
+ const t = await Wt(i, e);
1879
+ return t.success ? (e?.showSuccess && e.showSuccess(t.msg ?? "SUCCESS"), !0) : (e?.showError && e.showError(t.msg ?? Ze), !1);
1880
+ }, vr = (i) => {
1870
1881
  if (i.get) {
1871
1882
  const e = i.get(Y.DEVICE_ID), t = i.get(Y.LANG), o = i.get(Y.WEBSITE_ID), n = i.get(Y.WEBSITE_NO), a = {};
1872
1883
  return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), o && o.length > 0 && (a.websiteId = o), n && n.length > 0 && (a.websiteNo = n), a;
1873
1884
  }
1874
1885
  throw new Error("The get method of IStorage has not been implemented.");
1875
- }, jr = (i, e) => {
1886
+ }, Hr = (i, e) => {
1876
1887
  if (i.set)
1877
1888
  e.deviceId && i.set(Y.DEVICE_ID, e.deviceId), e.lang && i.set(Y.LANG, e.lang), e.websiteId && i.set(Y.WEBSITE_ID, e.websiteId), e.websiteNo && i.set(Y.WEBSITE_NO, e.websiteNo);
1878
1889
  else
1879
1890
  throw new Error("The set method of IStorage has not been implemented.");
1880
- }, qr = (i) => {
1891
+ }, Fr = (i) => {
1881
1892
  if (i.get) {
1882
1893
  const e = i.get(U.IBOOT_DEVICE_ID), t = i.get(U.IBOOT_LANG), o = i.get(U.IBOOT_WEBSITE_ID), n = i.get(U.IBOOT_WEBSITE_NO), a = {};
1883
1894
  return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), o && o.length > 0 && (a.websiteId = o), n && n.length > 0 && (a.websiteNo = n), a;
1884
1895
  }
1885
1896
  throw new Error("The get method of ICookies has not been implemented.");
1886
- }, Hr = (i, e) => {
1897
+ }, Gr = (i, e) => {
1887
1898
  if (i.set)
1888
1899
  e.deviceId && i.set(U.IBOOT_DEVICE_ID, e.deviceId), e.lang && i.set(U.IBOOT_LANG, e.lang), e.websiteId && i.set(U.IBOOT_WEBSITE_ID, e.websiteId), e.websiteNo && i.set(U.IBOOT_WEBSITE_NO, e.websiteNo);
1889
1900
  else
1890
1901
  throw new Error("The set method of ICookies has not been implemented.");
1891
- }, Fr = (i) => {
1902
+ }, Br = (i) => {
1892
1903
  if (i.get) {
1893
1904
  const e = i.get(U.IBOOT_USER);
1894
1905
  if (e && e.length > 0)
1895
1906
  return JSON.parse(e);
1896
1907
  }
1897
- }, Er = (i) => {
1908
+ }, Rr = (i) => {
1898
1909
  if (i.get) {
1899
1910
  const e = i.get(U.IBOOT_USER);
1900
1911
  if (e && e.length > 0) {
@@ -1907,47 +1918,46 @@ const _r = "zh-CN", Ht = "_device_id_key", Ft = "_current_website_key", Ut = "Ge
1907
1918
  };
1908
1919
  }
1909
1920
  }
1910
- }, vr = (i, e) => {
1911
- const { id: t, name: o, username: n, nickname: a, headImg: c, token: r, lastLoginTime: d, deviceId: g, userType: u, mustChangePwd: _ } = i, p = {
1921
+ }, Mt = () => ({
1922
+ path: "/",
1923
+ secure: process.env.APP_ENV === "production",
1924
+ httpOnly: !0,
1925
+ sameSite: "strict"
1926
+ }), ve = {
1927
+ maxAge: -1,
1928
+ //设置为 -1表示立即过期
1929
+ httpOnly: !0,
1930
+ path: "/"
1931
+ }, Pr = (i, e) => {
1932
+ const { id: t, name: o, username: n, nickname: a, headImg: u, token: r, lastLoginTime: d, deviceId: g, userType: c, mustChangePwd: _ } = i, p = {
1912
1933
  id: t,
1913
1934
  name: o,
1914
1935
  username: n,
1915
1936
  nickname: a || o,
1916
- headImg: c,
1937
+ headImg: u,
1917
1938
  lastLoginTime: d,
1918
1939
  deviceId: g,
1919
- userType: u,
1940
+ userType: c,
1920
1941
  accountType: 0,
1921
1942
  needToReview: !1,
1922
1943
  socketOnline: !1,
1923
1944
  mustChangePwd: _
1924
1945
  };
1925
- if (!e.set)
1926
- throw new Error("cookies set function is undefined");
1927
- e.set(U.IBOOT_TOKEN, r, {
1928
- path: "/",
1929
- secure: process.env.APP_ENV === "production",
1930
- httpOnly: !0,
1931
- sameSite: "strict"
1932
- }), e.set(U.IBOOT_USER, JSON.stringify(p));
1933
- }, Rr = (i) => {
1946
+ e.cookies[U.IBOOT_TOKEN] = {
1947
+ value: r,
1948
+ options: Mt()
1949
+ }, e.cookies[U.IBOOT_USER] = {
1950
+ value: JSON.stringify(p),
1951
+ options: Mt()
1952
+ };
1953
+ }, yr = (i) => {
1934
1954
  if (!i.set)
1935
1955
  throw new Error("cookies set function is undefined");
1936
- if (i.set(U.IBOOT_TOKEN, "", {
1937
- maxAge: -1,
1938
- //设置为 -1表示立即过期
1939
- httpOnly: !0,
1940
- path: "/"
1941
- }), i.set(U.IBOOT_USER, "", {
1942
- maxAge: -1,
1943
- //设置为 -1表示立即过期
1944
- httpOnly: !0,
1945
- path: "/"
1946
- }), !i.delete)
1956
+ if (i.set(U.IBOOT_TOKEN, "", ve), i.set(U.IBOOT_USER, "", ve), !i.delete)
1947
1957
  throw new Error("cookies delete function is undefined");
1948
- i.delete(U.IBOOT_TOKEN), i.delete(U.IBOOT_USER);
1958
+ i.delete(U.IBOOT_TOKEN, ve), i.delete(U.IBOOT_USER, ve);
1949
1959
  };
1950
- class Pr {
1960
+ class Sr {
1951
1961
  baseUrl;
1952
1962
  helloMethod;
1953
1963
  apiKey;
@@ -1959,7 +1969,7 @@ class Pr {
1959
1969
  websiteId;
1960
1970
  websiteNo;
1961
1971
  constructor(e) {
1962
- process.env.APP_ENV === "production" || k.warn("This is currently a development environment!"), this.baseUrl = process.env.APP_BASEURL, this.apiKey = process.env.APP_APIKEY, this.userFrom = process.env.APP_USERFROM ?? "1", this.helloMethod = e.helloURL ?? "", this.userType = e.userType ?? Dt.TYPE_MGT, this.deviceId = e.deviceId ?? at(10), this.lang = e.lang ?? _r, this.websiteId = e.websiteId, this.websiteNo = e.websiteNo;
1972
+ process.env.APP_ENV === "production" || k.warn("This is currently a development environment!"), this.baseUrl = process.env.APP_BASEURL, this.apiKey = process.env.APP_APIKEY, this.userFrom = process.env.APP_USERFROM ?? "1", this.helloMethod = e.helloURL ?? "", this.userType = e.userType ?? jt.TYPE_MGT, this.deviceId = e.deviceId ?? ut(10), this.lang = e.lang ?? br, this.websiteId = e.websiteId, this.websiteNo = e.websiteNo;
1963
1973
  }
1964
1974
  encrypt(e) {
1965
1975
  const t = ne.enc.Utf8.parse(this.apiKey);
@@ -1979,21 +1989,21 @@ class Pr {
1979
1989
  if (n && typeof n == "string")
1980
1990
  n = n.trim();
1981
1991
  else if (n && typeof n == "object") {
1982
- if (st(n)) {
1992
+ if (at(n)) {
1983
1993
  if (n.length === 0)
1984
1994
  continue;
1985
1995
  for (let a = 0; a < n.length; a++) {
1986
- const c = n[a];
1987
- for (const r in c) {
1988
- const d = c[r] ?? void 0;
1996
+ const u = n[a];
1997
+ for (const r in u) {
1998
+ const d = u[r] ?? void 0;
1989
1999
  if (d) {
1990
2000
  if (typeof d == "object")
1991
- st(d) && d.forEach((g, u) => {
2001
+ at(d) && d.forEach((g, c) => {
1992
2002
  if (g)
1993
2003
  for (const _ in g) {
1994
2004
  const p = g[_];
1995
2005
  if (p && p.toString().length > 0) {
1996
- const R = `[${a.toString()}].${r + `[${u.toString()}].${_}`}=${we(p)}`;
2006
+ const R = `[${a.toString()}].${r + `[${c.toString()}].${_}`}=${we(p)}`;
1997
2007
  t.push(o + R);
1998
2008
  }
1999
2009
  }
@@ -2007,9 +2017,9 @@ class Pr {
2007
2017
  }
2008
2018
  } else
2009
2019
  for (const a in n) {
2010
- const c = n[a];
2011
- if (c != null && c != "" && c.length != 0) {
2012
- const r = `.${a}=${we(c)}`;
2020
+ const u = n[a];
2021
+ if (u != null && u != "" && u.length != 0) {
2022
+ const r = `.${a}=${we(u)}`;
2013
2023
  t.push(o + r);
2014
2024
  }
2015
2025
  }
@@ -2029,16 +2039,16 @@ class Pr {
2029
2039
  let g = e[d];
2030
2040
  typeof g == "object" && (g = JSON.stringify(g)), n.push(d + "=" + g);
2031
2041
  });
2032
- const a = n.join("&"), c = Kt.md5((a + t).toLocaleUpperCase()), r = {
2042
+ const a = n.join("&"), u = $t.md5((a + t).toLocaleUpperCase()), r = {
2033
2043
  params: a,
2034
- md5: c
2044
+ md5: u
2035
2045
  };
2036
- return k.debug(r, "API_SIGN"), c;
2046
+ return k.debug(r, "API_SIGN"), u;
2037
2047
  }
2038
2048
  //eslint-disable-next-line @typescript-eslint/no-explicit-any
2039
2049
  assemblyParameter(e, t) {
2040
2050
  const o = e ?? {};
2041
- return o.timestamp = Date.now() + "", o.echostr = at(10), o.version = this.version, o.deviceId = this.deviceId, o.webid = this.websiteId, o.apiKey = this.apiKey, t && t.length > 0 && (o.username = t), o;
2051
+ return o.timestamp = Date.now() + "", o.echostr = ut(10), o.version = this.version, o.deviceId = this.deviceId, o.webid = this.websiteId, o.apiKey = this.apiKey, t && t.length > 0 && (o.username = t), o;
2042
2052
  }
2043
2053
  async assemblyHeader({ urlParams: e, token: t }) {
2044
2054
  const o = {
@@ -2049,7 +2059,7 @@ class Pr {
2049
2059
  "Api-Key": this.apiKey
2050
2060
  };
2051
2061
  o[K] = X.applicationXwwwFormUrlencoded, this.lang && this.lang.length > 0 && (o.Lang = this.lang), this.websiteId && this.websiteId.length > 0 && (o["Web-Id"] = this.websiteId), this.websiteNo && this.websiteNo.length > 0 && (o["Web-No"] = this.websiteNo), t && (t.token && t.token.length > 0 && t.username && t.username.length > 0 && (o.Authorization = t.token, o.Username = t.username), t.xcsrf && (o[t.xcsrf.csrfHeader] = t.xcsrf.csrfToken));
2052
- const n = Ze(e), a = await this.sign(n);
2062
+ const n = et(e), a = await this.sign(n);
2053
2063
  return o.Sign = a, o;
2054
2064
  }
2055
2065
  async helloIboot() {
@@ -2092,42 +2102,42 @@ class Pr {
2092
2102
  }
2093
2103
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
2094
2104
  async get({ url: e, data: t, token: o, cache: n = "default" }) {
2095
- const a = this.assemblyParameter(t), c = this.convertUrlParameter(a), r = await this.assemblyHeader({ urlParams: c, token: o }), d = `${this.getApiUrl(e)}?${c.toString()}`, g = {
2105
+ const a = this.assemblyParameter(t), u = this.convertUrlParameter(a), r = await this.assemblyHeader({ urlParams: u, token: o }), d = `${this.getApiUrl(e)}?${u.toString()}`, g = {
2096
2106
  url: d,
2097
2107
  headers: r
2098
2108
  };
2099
2109
  k.info(g, "GET");
2100
- const u = await fetch(d, {
2110
+ const c = await fetch(d, {
2101
2111
  method: "GET",
2102
2112
  headers: r,
2103
2113
  credentials: "include",
2104
2114
  cache: n
2105
2115
  });
2106
- if (u.ok) {
2107
- const p = Object.fromEntries(u.headers.entries()), R = { ...await u.json(), headers: p };
2116
+ if (c.ok) {
2117
+ const p = Object.fromEntries(c.headers.entries()), R = { ...await c.json(), headers: p };
2108
2118
  return k.debug(R, "GET_RESULT"), R;
2109
2119
  }
2110
2120
  const _ = {
2111
- code: u.status,
2121
+ code: c.status,
2112
2122
  success: !1,
2113
- msg: u.statusText
2123
+ msg: c.statusText
2114
2124
  };
2115
2125
  return k.error(_), _;
2116
2126
  }
2117
2127
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
2118
2128
  async post({ url: e, data: t, token: o, cache: n = "default" }) {
2119
2129
  t = t ? { ...t } : {};
2120
- const a = t.buffer ?? void 0, c = t.boundary ?? void 0;
2121
- a && delete t.buffer, c && delete t.boundary;
2130
+ const a = t.buffer ?? void 0, u = t.boundary ?? void 0;
2131
+ a && delete t.buffer, u && delete t.boundary;
2122
2132
  const r = this.assemblyParameter(t), d = this.convertUrlParameter(r), g = await this.assemblyHeader({ urlParams: d, token: o });
2123
- a && c && (g[K] = `multipart/form-data; boundary=${c}`);
2124
- const u = this.getApiUrl(e), _ = {
2125
- url: u,
2133
+ a && u && (g[K] = `multipart/form-data; boundary=${u}`);
2134
+ const c = this.getApiUrl(e), _ = {
2135
+ url: c,
2126
2136
  headers: g,
2127
2137
  params: r
2128
2138
  };
2129
2139
  k.info(_, "POST");
2130
- const p = a ? `${u}?${d}` : u, R = await fetch(p, {
2140
+ const p = a ? `${c}?${d}` : c, R = await fetch(p, {
2131
2141
  method: "POST",
2132
2142
  headers: g,
2133
2143
  body: a || d.toString(),
@@ -2150,17 +2160,17 @@ class Pr {
2150
2160
  t = t ? { ...t } : {};
2151
2161
  const n = t.buffer ?? void 0, a = t.boundary ?? void 0;
2152
2162
  n && delete t.buffer, a && delete t.boundary;
2153
- const c = this.assemblyParameter(t), r = this.convertUrlParameter(c), d = await this.assemblyHeader({ urlParams: r, token: o });
2163
+ const u = this.assemblyParameter(t), r = this.convertUrlParameter(u), d = await this.assemblyHeader({ urlParams: r, token: o });
2154
2164
  n && a && (d[K] = `multipart/form-data; boundary=${a}`), d.Connection = "keep-alive", d["X-Accel-Buffering"] = "no", d["Cache-Control"] = "no-cache";
2155
2165
  const g = this.getApiUrl(e);
2156
2166
  try {
2157
- const u = n ? `${g}?${r}` : g, _ = {
2167
+ const c = n ? `${g}?${r}` : g, _ = {
2158
2168
  url: g,
2159
2169
  headers: d,
2160
- params: c
2170
+ params: u
2161
2171
  };
2162
2172
  k.info(_, "STREAM");
2163
- const p = await fetch(u, {
2173
+ const p = await fetch(c, {
2164
2174
  method: "POST",
2165
2175
  headers: d,
2166
2176
  body: n || r.toString(),
@@ -2174,40 +2184,40 @@ class Pr {
2174
2184
  return new Response(p.body, {
2175
2185
  headers: R
2176
2186
  });
2177
- } catch (u) {
2178
- throw u;
2187
+ } catch (c) {
2188
+ throw c;
2179
2189
  }
2180
2190
  }
2181
2191
  }
2182
2192
  export {
2183
- Ir as ACCOUNT_TYPE_MAP,
2193
+ xr as ACCOUNT_TYPE_MAP,
2184
2194
  K as CONTENT_TYPE_KEY,
2185
2195
  X as CONTENT_TYPE_MAP,
2186
- Lr as HTTPRouter,
2187
- Pr as HttpClient,
2188
- Cr as NextJsAdapter,
2189
- Or as USER_FORM_MAP,
2190
- xr as USER_SEX_MAP,
2191
- Dt as USER_TYPE_MAP,
2192
- Rr as cleanToken,
2193
- Nr as dateFormat,
2194
- br as get,
2195
- Fr as getLoginUser,
2196
- qr as getServerHttpCookies,
2197
- wr as getServerHttpOpts,
2198
- Er as getToken,
2199
- Ur as iGet,
2200
- Dr as iPost,
2201
- Mr as iPostSuccess,
2202
- st as isArray,
2196
+ Ur as HTTPRouter,
2197
+ Sr as HttpClient,
2198
+ kr as NextJsAdapter,
2199
+ Nr as USER_FORM_MAP,
2200
+ Cr as USER_SEX_MAP,
2201
+ jt as USER_TYPE_MAP,
2202
+ yr as cleanToken,
2203
+ Lr as dateFormat,
2204
+ Er as get,
2205
+ Br as getLoginUser,
2206
+ Fr as getServerHttpCookies,
2207
+ vr as getServerHttpOpts,
2208
+ Rr as getToken,
2209
+ Mr as iGet,
2210
+ jr as iPost,
2211
+ qr as iPostSuccess,
2212
+ at as isArray,
2203
2213
  k as logger,
2204
- Bt as post,
2205
- at as randomString,
2206
- kr as setClientRequestHeader,
2207
- Hr as setServerHttpCookies,
2208
- jr as setServerHttpHeaders,
2209
- vr as setToken,
2214
+ Wt as post,
2215
+ ut as randomString,
2216
+ Dr as setClientRequestHeader,
2217
+ Gr as setServerHttpCookies,
2218
+ Hr as setServerHttpHeaders,
2219
+ Pr as setToken,
2210
2220
  we as urlEncode,
2211
- Ze as urlParamToJson
2221
+ et as urlParamToJson
2212
2222
  };
2213
2223
  //# sourceMappingURL=iboot-http-client.es.js.map