icms-api 0.0.3 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/icms-api.cjs.js +1 -1
- package/dist/icms-api.cjs.js.map +1 -1
- package/dist/icms-api.es.js +206 -209
- package/dist/icms-api.es.js.map +1 -1
- package/dist/icms-api.umd.js +2 -2
- package/dist/icms-api.umd.js.map +1 -1
- package/dist/types/client.d.ts +4 -0
- package/dist/types/server.d.ts +3 -5
- package/dist/types/types/site.d.ts +4 -0
- package/package.json +2 -2
package/dist/icms-api.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icms-api.cjs.js","names":["ne","Kt","values: Omit<ServerHttpOpts, 'userType' | 'helloURL'>","result: WebsiteInfo"],"sources":["../node_modules/@rock.chen/icms-http-client/dist/icms-http-client.es.js","../src/server.ts","../src/router.ts"],"sourcesContent":["import zt from \"pino\";\nimport Vt from \"pino-pretty\";\nimport Kt from \"js-md5\";\nimport ne from \"crypto-js\";\nimport { getRequestURL as Yt, parseCookies as Jt, readBody as st, readMultipartFormData as $t, setResponseStatus as Qt, setHeader as Zt, setCookie as ye, deleteCookie as er } from \"h3\";\nconst qr = {\n GENERAL: 0,\n PHONE: 1,\n EMAIL: 2\n}, tr = {\n TYPE_MGT: 0,\n TYPE_C: 1,\n TYPE_B: 2\n}, Hr = {\n FROM_WEB: 1,\n FROM_PC: 2,\n FROM_WX_MINI_PRO: 3,\n FROM_WX_PLU: 4,\n FROM_WX_E: 5,\n FROM_APP: 6,\n FROM_DEVICE: 7\n}, Fr = {\n unknown: 0,\n male: 1,\n female: 2\n}, rr = Vt({\n colorize: !0,\n destination: process.stdout,\n translateTime: \"SYS:yyyy-mm-dd HH:MM:ss\",\n ignore: \"pid,hostname\",\n messageFormat: \"{msg}\",\n singleLine: !0\n}), L = zt({\n name: process.env.APP_NAME ?? \"iBoot\",\n level: process.env.APP_ENV === \"production\" ? \"info\" : \"debug\",\n nestedKey: \"payload\"\n}, rr), nr = {}, Br = (o) => Array.isArray(o) || typeof o == \"object\" && Object.prototype.toString.call(o) === \"[object Array]\", Dt = (o) => {\n const e = o || 32, t = \"ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678\", n = t.length;\n let i = \"\";\n for (let a = 0; a < e; a++)\n i += t.charAt(Math.floor(Math.random() * n));\n return i;\n}, Gr = (o, e) => {\n const t = {\n \"M+\": o.getMonth() + 1,\n //月份\n \"d+\": o.getDate(),\n //日\n \"h+\": o.getHours(),\n //小时\n \"m+\": o.getMinutes(),\n //分\n \"s+\": o.getSeconds(),\n //秒\n \"q+\": Math.floor((o.getMonth() + 3) / 3),\n //季度\n S: o.getMilliseconds()\n //毫秒\n };\n if (/(y+)/.test(e)) {\n const i = new RegExp(/(y+)/).exec(e);\n let a = 0;\n i && i.length > 0 && (a = i[0].length), e = e.replace(/(y+)/, o.getFullYear() + \"\").substring(4 - a);\n }\n for (const n in t) {\n const i = \"(\" + n + \")\", a = new RegExp(i);\n if (a.test(e)) {\n const c = a.exec(e);\n let r = 0;\n c && c.length > 0 && (r = c[0].length), e = e.replace(a, r == 1 ? t[n].toString() : (\"00\" + t[n]).substring(t[n].toString().length));\n }\n }\n return e;\n};\nfunction ir() {\n try {\n const o = nr.networkInterfaces();\n for (const e of Object.keys(o)) {\n const t = o[e];\n if (t) {\n for (const n of t)\n if (n.mac && n.mac !== \"00:00:00:00:00:00\")\n return n.mac.replace(/:/g, \"\").toUpperCase();\n }\n }\n return crypto.randomUUID().replace(/-/g, \"\").toUpperCase();\n } catch {\n return Dt(10);\n }\n}\nvar we = { exports: {} }, Te = {}, Ie = {}, Se = {}, at;\nfunction or() {\n return at || (at = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"detectDomainLocale\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, n, i) {\n if (t) {\n i && (i = i.toLowerCase());\n for (const r of t) {\n var a, c;\n const l = (a = r.domain) == null ? void 0 : a.split(\":\", 1)[0].toLowerCase();\n if (n === l || i === r.defaultLocale.toLowerCase() || (c = r.locales) != null && c.some((h) => h.toLowerCase() === i))\n return r;\n }\n }\n }\n })(Se)), Se;\n}\nvar Ae = {}, Oe = {}, ut;\nfunction sr() {\n return ut || (ut = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"removeTrailingSlash\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t) {\n return t.replace(/\\/$/, \"\") || \"/\";\n }\n })(Oe)), Oe;\n}\nvar xe = {}, Ne = {}, ct;\nfunction et() {\n return ct || (ct = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"parsePath\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t) {\n const n = t.indexOf(\"#\"), i = t.indexOf(\"?\"), a = i > -1 && (n < 0 || i < n);\n return a || n > -1 ? {\n pathname: t.substring(0, a ? i : n),\n query: a ? t.substring(i, n > -1 ? n : void 0) : \"\",\n hash: n > -1 ? t.slice(n) : \"\"\n } : {\n pathname: t,\n query: \"\",\n hash: \"\"\n };\n }\n })(Ne)), Ne;\n}\nvar lt;\nfunction Mt() {\n return lt || (lt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addPathPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(n, i) {\n if (!n.startsWith(\"/\") || !i)\n return n;\n const { pathname: a, query: c, hash: r } = (0, e.parsePath)(n);\n return \"\" + i + a + c + r;\n }\n })(xe)), xe;\n}\nvar Ce = {}, dt;\nfunction ar() {\n return dt || (dt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addPathSuffix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(n, i) {\n if (!n.startsWith(\"/\") || !i)\n return n;\n const { pathname: a, query: c, hash: r } = (0, e.parsePath)(n);\n return \"\" + a + i + c + r;\n }\n })(Ce)), Ce;\n}\nvar Le = {}, ke = {}, ht;\nfunction tt() {\n return ht || (ht = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"pathHasPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(n, i) {\n if (typeof n != \"string\")\n return !1;\n const { pathname: a } = (0, e.parsePath)(n);\n return a === i || a.startsWith(i + \"/\");\n }\n })(ke)), ke;\n}\nvar ft;\nfunction ur() {\n return ft || (ft = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addLocale\", {\n enumerable: !0,\n get: function() {\n return n;\n }\n });\n const e = Mt(), t = tt();\n function n(i, a, c, r) {\n if (!a || a === c) return i;\n const l = i.toLowerCase();\n return !r && ((0, t.pathHasPrefix)(l, \"/api\") || (0, t.pathHasPrefix)(l, \"/\" + a.toLowerCase())) ? i : (0, e.addPathPrefix)(i, \"/\" + a);\n }\n })(Le)), Le;\n}\nvar pt;\nfunction cr() {\n return pt || (pt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"formatNextPathnameInfo\", {\n enumerable: !0,\n get: function() {\n return a;\n }\n });\n const e = sr(), t = Mt(), n = ar(), i = ur();\n function a(c) {\n let r = (0, i.addLocale)(c.pathname, c.locale, c.buildId ? void 0 : c.defaultLocale, c.ignorePrefix);\n return (c.buildId || !c.trailingSlash) && (r = (0, e.removeTrailingSlash)(r)), c.buildId && (r = (0, n.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, n.addPathSuffix)(r, \"/\") : (0, e.removeTrailingSlash)(r);\n }\n })(Ae)), Ae;\n}\nvar Ue = {}, mt;\nfunction lr() {\n return mt || (mt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"getHostname\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, n) {\n let i;\n if (n?.host && !Array.isArray(n.host))\n i = n.host.toString().split(\":\", 1)[0];\n else if (t.hostname)\n i = t.hostname;\n else return;\n return i.toLowerCase();\n }\n })(Ue)), Ue;\n}\nvar De = {}, Me = {}, _t;\nfunction dr() {\n return _t || (_t = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"normalizeLocalePath\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, n) {\n let i;\n const a = t.split(\"/\");\n return (n || []).some((c) => a[1] && a[1].toLowerCase() === c.toLowerCase() ? (i = c, a.splice(1, 1), t = a.join(\"/\") || \"/\", !0) : !1), {\n pathname: t,\n detectedLocale: i\n };\n }\n })(Me)), Me;\n}\nvar je = {}, bt;\nfunction hr() {\n return bt || (bt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"removePathPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = tt();\n function t(n, i) {\n if (!(0, e.pathHasPrefix)(n, i))\n return n;\n const a = n.slice(i.length);\n return a.startsWith(\"/\") ? a : \"/\" + a;\n }\n })(je)), je;\n}\nvar gt;\nfunction fr() {\n return gt || (gt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"getNextPathnameInfo\", {\n enumerable: !0,\n get: function() {\n return i;\n }\n });\n const e = dr(), t = hr(), n = tt();\n function i(a, c) {\n var r;\n const { basePath: l, i18n: h, trailingSlash: u } = (r = c.nextConfig) != null ? r : {}, m = {\n pathname: a,\n trailingSlash: a !== \"/\" ? a.endsWith(\"/\") : u\n };\n l && (0, n.pathHasPrefix)(m.pathname, l) && (m.pathname = (0, t.removePathPrefix)(m.pathname, l), m.basePath = l);\n let g = m.pathname;\n if (m.pathname.startsWith(\"/_next/data/\") && m.pathname.endsWith(\".json\")) {\n const y = m.pathname.replace(/^\\/_next\\/data\\//, \"\").replace(/\\.json$/, \"\").split(\"/\"), A = y[0];\n m.buildId = A, g = y[1] !== \"index\" ? \"/\" + y.slice(1).join(\"/\") : \"/\", c.parseData === !0 && (m.pathname = g);\n }\n if (h) {\n let y = c.i18nProvider ? c.i18nProvider.analyze(m.pathname) : (0, e.normalizeLocalePath)(m.pathname, h.locales);\n m.locale = y.detectedLocale;\n var R;\n m.pathname = (R = y.pathname) != null ? R : m.pathname, !y.detectedLocale && m.buildId && (y = c.i18nProvider ? c.i18nProvider.analyze(g) : (0, e.normalizeLocalePath)(g, h.locales), y.detectedLocale && (m.locale = y.detectedLocale));\n }\n return m;\n }\n })(De)), De;\n}\nvar wt;\nfunction jt() {\n return wt || (wt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"NextURL\", {\n enumerable: !0,\n get: function() {\n return l;\n }\n });\n const e = or(), t = cr(), n = lr(), i = fr(), a = /(?!^https?:\\/\\/)(127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\\[::1\\]|localhost)/;\n function c(h, u) {\n return new URL(String(h).replace(a, \"localhost\"), u && String(u).replace(a, \"localhost\"));\n }\n const r = /* @__PURE__ */ Symbol(\"NextURLInternal\");\n class l {\n constructor(u, m, g) {\n let R, y;\n typeof m == \"object\" && \"pathname\" in m || typeof m == \"string\" ? (R = m, y = g || {}) : y = g || m || {}, this[r] = {\n url: c(u, R ?? y.base),\n options: y,\n basePath: \"\"\n }, this.analyze();\n }\n analyze() {\n var u, m, g, R, y;\n const A = (0, i.getNextPathnameInfo)(this[r].url.pathname, {\n nextConfig: this[r].options.nextConfig,\n parseData: !process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE,\n i18nProvider: this[r].options.i18nProvider\n }), d = (0, n.getHostname)(this[r].url, this[r].options.headers);\n this[r].domainLocale = this[r].options.i18nProvider ? this[r].options.i18nProvider.detectDomainLocale(d) : (0, e.detectDomainLocale)((m = this[r].options.nextConfig) == null || (u = m.i18n) == null ? void 0 : u.domains, d);\n const b = ((g = this[r].domainLocale) == null ? void 0 : g.defaultLocale) || ((y = this[r].options.nextConfig) == null || (R = y.i18n) == null ? void 0 : R.defaultLocale);\n this[r].url.pathname = A.pathname, this[r].defaultLocale = b, this[r].basePath = A.basePath ?? \"\", this[r].buildId = A.buildId, this[r].locale = A.locale ?? b, this[r].trailingSlash = A.trailingSlash;\n }\n formatPathname() {\n return (0, t.formatNextPathnameInfo)({\n basePath: this[r].basePath,\n buildId: this[r].buildId,\n defaultLocale: this[r].options.forceLocale ? void 0 : this[r].defaultLocale,\n locale: this[r].locale,\n pathname: this[r].url.pathname,\n trailingSlash: this[r].trailingSlash\n });\n }\n formatSearch() {\n return this[r].url.search;\n }\n get buildId() {\n return this[r].buildId;\n }\n set buildId(u) {\n this[r].buildId = u;\n }\n get locale() {\n return this[r].locale ?? \"\";\n }\n set locale(u) {\n var m, g;\n if (!this[r].locale || !(!((g = this[r].options.nextConfig) == null || (m = g.i18n) == null) && m.locales.includes(u)))\n throw new TypeError(`The NextURL configuration includes no locale \"${u}\"`);\n this[r].locale = u;\n }\n get defaultLocale() {\n return this[r].defaultLocale;\n }\n get domainLocale() {\n return this[r].domainLocale;\n }\n get searchParams() {\n return this[r].url.searchParams;\n }\n get host() {\n return this[r].url.host;\n }\n set host(u) {\n this[r].url.host = u;\n }\n get hostname() {\n return this[r].url.hostname;\n }\n set hostname(u) {\n this[r].url.hostname = u;\n }\n get port() {\n return this[r].url.port;\n }\n set port(u) {\n this[r].url.port = u;\n }\n get protocol() {\n return this[r].url.protocol;\n }\n set protocol(u) {\n this[r].url.protocol = u;\n }\n get href() {\n const u = this.formatPathname(), m = this.formatSearch();\n return `${this.protocol}//${this.host}${u}${m}${this.hash}`;\n }\n set href(u) {\n this[r].url = c(u), this.analyze();\n }\n get origin() {\n return this[r].url.origin;\n }\n get pathname() {\n return this[r].url.pathname;\n }\n set pathname(u) {\n this[r].url.pathname = u;\n }\n get hash() {\n return this[r].url.hash;\n }\n set hash(u) {\n this[r].url.hash = u;\n }\n get search() {\n return this[r].url.search;\n }\n set search(u) {\n this[r].url.search = u;\n }\n get password() {\n return this[r].url.password;\n }\n set password(u) {\n this[r].url.password = u;\n }\n get username() {\n return this[r].url.username;\n }\n set username(u) {\n this[r].url.username = u;\n }\n get basePath() {\n return this[r].basePath;\n }\n set basePath(u) {\n this[r].basePath = u.startsWith(\"/\") ? u : `/${u}`;\n }\n toString() {\n return this.href;\n }\n toJSON() {\n return this.href;\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n href: this.href,\n origin: this.origin,\n protocol: this.protocol,\n username: this.username,\n password: this.password,\n host: this.host,\n hostname: this.hostname,\n port: this.port,\n pathname: this.pathname,\n search: this.search,\n searchParams: this.searchParams,\n hash: this.hash\n };\n }\n clone() {\n return new l(String(this), this[r].options);\n }\n }\n })(Ie)), Ie;\n}\nvar qe = {}, He = {}, Et;\nfunction pr() {\n return Et || (Et = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(_e, be) {\n for (var J in be) Object.defineProperty(_e, J, {\n enumerable: !0,\n get: be[J]\n });\n }\n e(o, {\n ACTION_SUFFIX: function() {\n return l;\n },\n APP_DIR_ALIAS: function() {\n return j;\n },\n CACHE_ONE_YEAR: function() {\n return E;\n },\n DOT_NEXT_ALIAS: function() {\n return P;\n },\n ESLINT_DEFAULT_DIRS: function() {\n return te;\n },\n GSP_NO_RETURNED_VALUE: function() {\n return oe;\n },\n GSSP_COMPONENT_MEMBER_ERROR: function() {\n return ee;\n },\n GSSP_NO_RETURNED_VALUE: function() {\n return se;\n },\n INSTRUMENTATION_HOOK_FILENAME: function() {\n return p;\n },\n MIDDLEWARE_FILENAME: function() {\n return s;\n },\n MIDDLEWARE_LOCATION_REGEXP: function() {\n return v;\n },\n NEXT_BODY_SUFFIX: function() {\n return m;\n },\n NEXT_CACHE_IMPLICIT_TAG_ID: function() {\n return _;\n },\n NEXT_CACHE_REVALIDATED_TAGS_HEADER: function() {\n return y;\n },\n NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER: function() {\n return A;\n },\n NEXT_CACHE_SOFT_TAGS_HEADER: function() {\n return R;\n },\n NEXT_CACHE_SOFT_TAG_MAX_LENGTH: function() {\n return f;\n },\n NEXT_CACHE_TAGS_HEADER: function() {\n return g;\n },\n NEXT_CACHE_TAG_MAX_ITEMS: function() {\n return d;\n },\n NEXT_CACHE_TAG_MAX_LENGTH: function() {\n return b;\n },\n NEXT_DATA_SUFFIX: function() {\n return h;\n },\n NEXT_INTERCEPTION_MARKER_PREFIX: function() {\n return n;\n },\n NEXT_META_SUFFIX: function() {\n return u;\n },\n NEXT_QUERY_PARAM_PREFIX: function() {\n return t;\n },\n NON_STANDARD_NODE_ENV: function() {\n return ae;\n },\n PAGES_DIR_ALIAS: function() {\n return w;\n },\n PRERENDER_REVALIDATE_HEADER: function() {\n return i;\n },\n PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER: function() {\n return a;\n },\n PUBLIC_DIR_MIDDLEWARE_CONFLICT: function() {\n return B;\n },\n ROOT_DIR_ALIAS: function() {\n return N;\n },\n RSC_ACTION_CLIENT_WRAPPER_ALIAS: function() {\n return Q;\n },\n RSC_ACTION_ENCRYPTION_ALIAS: function() {\n return $;\n },\n RSC_ACTION_PROXY_ALIAS: function() {\n return q;\n },\n RSC_ACTION_VALIDATE_ALIAS: function() {\n return F;\n },\n RSC_MOD_REF_PROXY_ALIAS: function() {\n return D;\n },\n RSC_PREFETCH_SUFFIX: function() {\n return c;\n },\n RSC_SUFFIX: function() {\n return r;\n },\n SERVER_PROPS_EXPORT_ERROR: function() {\n return de;\n },\n SERVER_PROPS_GET_INIT_PROPS_CONFLICT: function() {\n return ie;\n },\n SERVER_PROPS_SSG_CONFLICT: function() {\n return z;\n },\n SERVER_RUNTIME: function() {\n return ue;\n },\n SSG_FALLBACK_EXPORT_ERROR: function() {\n return fe;\n },\n SSG_GET_INITIAL_PROPS_CONFLICT: function() {\n return W;\n },\n STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR: function() {\n return Z;\n },\n UNSTABLE_REVALIDATE_RENAME_ERROR: function() {\n return he;\n },\n WEBPACK_LAYERS: function() {\n return pe;\n },\n WEBPACK_RESOURCE_QUERIES: function() {\n return me;\n }\n });\n const t = \"nxtP\", n = \"nxtI\", i = \"x-prerender-revalidate\", a = \"x-prerender-revalidate-if-generated\", c = \".prefetch.rsc\", r = \".rsc\", l = \".action\", h = \".json\", u = \".meta\", m = \".body\", g = \"x-next-cache-tags\", R = \"x-next-cache-soft-tags\", y = \"x-next-revalidated-tags\", A = \"x-next-revalidate-tag-token\", d = 128, b = 256, f = 1024, _ = \"_N_T_\", E = 31536e3, s = \"middleware\", v = `(?:src/)?${s}`, p = \"instrumentation\", w = \"private-next-pages\", P = \"private-dot-next\", N = \"private-next-root-dir\", j = \"private-next-app-dir\", D = \"private-next-rsc-mod-ref-proxy\", F = \"private-next-rsc-action-validate\", q = \"private-next-rsc-server-reference\", $ = \"private-next-rsc-action-encryption\", Q = \"private-next-rsc-action-client-wrapper\", B = \"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 = [\n \"app\",\n \"pages\",\n \"components\",\n \"lib\",\n \"src\"\n ], ue = {\n edge: \"edge\",\n experimentalEdge: \"experimental-edge\",\n nodejs: \"nodejs\"\n }, k = {\n /**\n * The layer for the shared code between the client and server bundles.\n */\n shared: \"shared\",\n /**\n * React Server Components layer (rsc).\n */\n reactServerComponents: \"rsc\",\n /**\n * Server Side Rendering layer for app (ssr).\n */\n serverSideRendering: \"ssr\",\n /**\n * The browser client bundle layer for actions.\n */\n actionBrowser: \"action-browser\",\n /**\n * The layer for the API routes.\n */\n api: \"api\",\n /**\n * The layer for the middleware code.\n */\n middleware: \"middleware\",\n /**\n * The layer for the instrumentation hooks.\n */\n instrument: \"instrument\",\n /**\n * The layer for assets on the edge.\n */\n edgeAsset: \"edge-asset\",\n /**\n * The browser client bundle layer for App directory.\n */\n appPagesBrowser: \"app-pages-browser\",\n /**\n * The server bundle layer for metadata routes.\n */\n appMetadataRoute: \"app-metadata-route\",\n /**\n * The layer for the server bundle for App Route handlers.\n */\n appRouteHandler: \"app-route-handler\"\n }, pe = {\n ...k,\n GROUP: {\n serverOnly: [\n k.reactServerComponents,\n k.actionBrowser,\n k.appMetadataRoute,\n k.appRouteHandler,\n k.instrument\n ],\n clientOnly: [\n k.serverSideRendering,\n k.appPagesBrowser\n ],\n nonClientServerTarget: [\n // middleware and pages api\n k.middleware,\n k.api\n ],\n app: [\n k.reactServerComponents,\n k.actionBrowser,\n k.appMetadataRoute,\n k.appRouteHandler,\n k.serverSideRendering,\n k.appPagesBrowser,\n k.shared,\n k.instrument\n ]\n }\n }, me = {\n edgeSSREntry: \"__next_edge_ssr_entry__\",\n metadata: \"__next_metadata__\",\n metadataRoute: \"__next_metadata_route__\",\n metadataImageMeta: \"__next_metadata_image_meta__\"\n };\n })(He)), He;\n}\nvar vt;\nfunction qt() {\n return vt || (vt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(l, h) {\n for (var u in h) Object.defineProperty(l, u, {\n enumerable: !0,\n get: h[u]\n });\n }\n e(o, {\n fromNodeOutgoingHttpHeaders: function() {\n return n;\n },\n normalizeNextQueryParam: function() {\n return r;\n },\n splitCookiesString: function() {\n return i;\n },\n toNodeOutgoingHttpHeaders: function() {\n return a;\n },\n validateURL: function() {\n return c;\n }\n });\n const t = pr();\n function n(l) {\n const h = new Headers();\n for (let [u, m] of Object.entries(l)) {\n const g = Array.isArray(m) ? m : [\n m\n ];\n for (let R of g)\n typeof R > \"u\" || (typeof R == \"number\" && (R = R.toString()), h.append(u, R));\n }\n return h;\n }\n function i(l) {\n var h = [], u = 0, m, g, R, y, A;\n function d() {\n for (; u < l.length && /\\s/.test(l.charAt(u)); )\n u += 1;\n return u < l.length;\n }\n function b() {\n return g = l.charAt(u), g !== \"=\" && g !== \";\" && g !== \",\";\n }\n for (; u < l.length; ) {\n for (m = u, A = !1; d(); )\n if (g = l.charAt(u), g === \",\") {\n for (R = u, u += 1, d(), y = u; u < l.length && b(); )\n u += 1;\n u < l.length && l.charAt(u) === \"=\" ? (A = !0, u = y, h.push(l.substring(m, R)), m = u) : u = R + 1;\n } else\n u += 1;\n (!A || u >= l.length) && h.push(l.substring(m, l.length));\n }\n return h;\n }\n function a(l) {\n const h = {}, u = [];\n if (l)\n for (const [m, g] of l.entries())\n m.toLowerCase() === \"set-cookie\" ? (u.push(...i(g)), h[m] = u.length === 1 ? u[0] : u) : h[m] = g;\n return h;\n }\n function c(l) {\n try {\n return String(new URL(String(l)));\n } catch (h) {\n throw new Error(`URL is malformed \"${String(l)}\". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`, {\n cause: h\n });\n }\n }\n function r(l, h) {\n const u = [\n t.NEXT_QUERY_PARAM_PREFIX,\n t.NEXT_INTERCEPTION_MARKER_PREFIX\n ];\n for (const m of u)\n if (l !== m && l.startsWith(m)) {\n const g = l.substring(m.length);\n h(g);\n }\n }\n })(qe)), qe;\n}\nvar Fe = {}, Rt;\nfunction mr() {\n return Rt || (Rt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(a, c) {\n for (var r in c) Object.defineProperty(a, r, {\n enumerable: !0,\n get: c[r]\n });\n }\n e(o, {\n PageSignatureError: function() {\n return t;\n },\n RemovedPageError: function() {\n return n;\n },\n RemovedUAError: function() {\n return i;\n }\n });\n class t extends Error {\n constructor({ page: c }) {\n super(`The middleware \"${c}\" accepts an async API directly with the form:\n \n export function middleware(request, event) {\n return NextResponse.redirect('/new-location')\n }\n \n Read more: https://nextjs.org/docs/messages/middleware-new-signature\n `);\n }\n }\n class n extends Error {\n constructor() {\n super(\"The request.page has been deprecated in favour of `URLPattern`.\\n Read more: https://nextjs.org/docs/messages/middleware-request-page\\n \");\n }\n }\n class i extends Error {\n constructor() {\n 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 \");\n }\n }\n })(Fe)), Fe;\n}\nvar Be = {}, Ge, Pt;\nfunction _r() {\n if (Pt) return Ge;\n Pt = 1;\n var o = Object.defineProperty, e = Object.getOwnPropertyDescriptor, t = Object.getOwnPropertyNames, n = Object.prototype.hasOwnProperty, i = (s, v) => {\n for (var p in v)\n o(s, p, { get: v[p], enumerable: !0 });\n }, a = (s, v, p, w) => {\n if (v && typeof v == \"object\" || typeof v == \"function\")\n for (let P of t(v))\n !n.call(s, P) && P !== p && o(s, P, { get: () => v[P], enumerable: !(w = e(v, P)) || w.enumerable });\n return s;\n }, c = (s) => a(o({}, \"__esModule\", { value: !0 }), s), r = {};\n i(r, {\n RequestCookies: () => b,\n ResponseCookies: () => f,\n parseCookie: () => h,\n parseSetCookie: () => u,\n stringifyCookie: () => l\n }), Ge = c(r);\n function l(s) {\n var v;\n const p = [\n \"path\" in s && s.path && `Path=${s.path}`,\n \"expires\" in s && (s.expires || s.expires === 0) && `Expires=${(typeof s.expires == \"number\" ? new Date(s.expires) : s.expires).toUTCString()}`,\n \"maxAge\" in s && typeof s.maxAge == \"number\" && `Max-Age=${s.maxAge}`,\n \"domain\" in s && s.domain && `Domain=${s.domain}`,\n \"secure\" in s && s.secure && \"Secure\",\n \"httpOnly\" in s && s.httpOnly && \"HttpOnly\",\n \"sameSite\" in s && s.sameSite && `SameSite=${s.sameSite}`,\n \"partitioned\" in s && s.partitioned && \"Partitioned\",\n \"priority\" in s && s.priority && `Priority=${s.priority}`\n ].filter(Boolean), w = `${s.name}=${encodeURIComponent((v = s.value) != null ? v : \"\")}`;\n return p.length === 0 ? w : `${w}; ${p.join(\"; \")}`;\n }\n function h(s) {\n const v = /* @__PURE__ */ new Map();\n for (const p of s.split(/; */)) {\n if (!p)\n continue;\n const w = p.indexOf(\"=\");\n if (w === -1) {\n v.set(p, \"true\");\n continue;\n }\n const [P, N] = [p.slice(0, w), p.slice(w + 1)];\n try {\n v.set(P, decodeURIComponent(N ?? \"true\"));\n } catch {\n }\n }\n return v;\n }\n function u(s) {\n if (!s)\n return;\n const [[v, p], ...w] = h(s), {\n domain: P,\n expires: N,\n httponly: j,\n maxage: D,\n path: F,\n samesite: q,\n secure: $,\n partitioned: Q,\n priority: B\n } = Object.fromEntries(\n w.map(([ie, z]) => [ie.toLowerCase(), z])\n ), W = {\n name: v,\n value: decodeURIComponent(p),\n domain: P,\n ...N && { expires: new Date(N) },\n ...j && { httpOnly: !0 },\n ...typeof D == \"string\" && { maxAge: Number(D) },\n path: F,\n ...q && { sameSite: R(q) },\n ...$ && { secure: !0 },\n ...B && { priority: A(B) },\n ...Q && { partitioned: !0 }\n };\n return m(W);\n }\n function m(s) {\n const v = {};\n for (const p in s)\n s[p] && (v[p] = s[p]);\n return v;\n }\n var g = [\"strict\", \"lax\", \"none\"];\n function R(s) {\n return s = s.toLowerCase(), g.includes(s) ? s : void 0;\n }\n var y = [\"low\", \"medium\", \"high\"];\n function A(s) {\n return s = s.toLowerCase(), y.includes(s) ? s : void 0;\n }\n function d(s) {\n if (!s)\n return [];\n var v = [], p = 0, w, P, N, j, D;\n function F() {\n for (; p < s.length && /\\s/.test(s.charAt(p)); )\n p += 1;\n return p < s.length;\n }\n function q() {\n return P = s.charAt(p), P !== \"=\" && P !== \";\" && P !== \",\";\n }\n for (; p < s.length; ) {\n for (w = p, D = !1; F(); )\n if (P = s.charAt(p), P === \",\") {\n for (N = p, p += 1, F(), j = p; p < s.length && q(); )\n p += 1;\n p < s.length && s.charAt(p) === \"=\" ? (D = !0, p = j, v.push(s.substring(w, N)), w = p) : p = N + 1;\n } else\n p += 1;\n (!D || p >= s.length) && v.push(s.substring(w, s.length));\n }\n return v;\n }\n var b = class {\n constructor(s) {\n this._parsed = /* @__PURE__ */ new Map(), this._headers = s;\n const v = s.get(\"cookie\");\n if (v) {\n const p = h(v);\n for (const [w, P] of p)\n this._parsed.set(w, { name: w, value: P });\n }\n }\n [Symbol.iterator]() {\n return this._parsed[Symbol.iterator]();\n }\n /**\n * The amount of cookies received from the client\n */\n get size() {\n return this._parsed.size;\n }\n get(...s) {\n const v = typeof s[0] == \"string\" ? s[0] : s[0].name;\n return this._parsed.get(v);\n }\n getAll(...s) {\n var v;\n const p = Array.from(this._parsed);\n if (!s.length)\n return p.map(([P, N]) => N);\n const w = typeof s[0] == \"string\" ? s[0] : (v = s[0]) == null ? void 0 : v.name;\n return p.filter(([P]) => P === w).map(([P, N]) => N);\n }\n has(s) {\n return this._parsed.has(s);\n }\n set(...s) {\n const [v, p] = s.length === 1 ? [s[0].name, s[0].value] : s, w = this._parsed;\n return w.set(v, { name: v, value: p }), this._headers.set(\n \"cookie\",\n Array.from(w).map(([P, N]) => l(N)).join(\"; \")\n ), this;\n }\n /**\n * Delete the cookies matching the passed name or names in the request.\n */\n delete(s) {\n const v = this._parsed, p = Array.isArray(s) ? s.map((w) => v.delete(w)) : v.delete(s);\n return this._headers.set(\n \"cookie\",\n Array.from(v).map(([w, P]) => l(P)).join(\"; \")\n ), p;\n }\n /**\n * Delete all the cookies in the cookies in the request.\n */\n clear() {\n return this.delete(Array.from(this._parsed.keys())), this;\n }\n /**\n * Format the cookies in the request as a string for logging\n */\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map((s) => `${s.name}=${encodeURIComponent(s.value)}`).join(\"; \");\n }\n }, f = class {\n constructor(s) {\n this._parsed = /* @__PURE__ */ new Map();\n var v, p, w;\n this._headers = s;\n const P = (w = (p = (v = s.getSetCookie) == null ? void 0 : v.call(s)) != null ? p : s.get(\"set-cookie\")) != null ? w : [], N = Array.isArray(P) ? P : d(P);\n for (const j of N) {\n const D = u(j);\n D && this._parsed.set(D.name, D);\n }\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-get CookieStore#get} without the Promise.\n */\n get(...s) {\n const v = typeof s[0] == \"string\" ? s[0] : s[0].name;\n return this._parsed.get(v);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-getAll CookieStore#getAll} without the Promise.\n */\n getAll(...s) {\n var v;\n const p = Array.from(this._parsed.values());\n if (!s.length)\n return p;\n const w = typeof s[0] == \"string\" ? s[0] : (v = s[0]) == null ? void 0 : v.name;\n return p.filter((P) => P.name === w);\n }\n has(s) {\n return this._parsed.has(s);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-set CookieStore#set} without the Promise.\n */\n set(...s) {\n const [v, p, w] = s.length === 1 ? [s[0].name, s[0].value, s[0]] : s, P = this._parsed;\n return P.set(v, E({ name: v, value: p, ...w })), _(P, this._headers), this;\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-delete CookieStore#delete} without the Promise.\n */\n delete(...s) {\n const [v, p, w] = typeof s[0] == \"string\" ? [s[0]] : [s[0].name, s[0].path, s[0].domain];\n return this.set({ name: v, path: p, domain: w, value: \"\", expires: /* @__PURE__ */ new Date(0) });\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map(l).join(\"; \");\n }\n };\n function _(s, v) {\n v.delete(\"set-cookie\");\n for (const [, p] of s) {\n const w = l(p);\n v.append(\"set-cookie\", w);\n }\n }\n function E(s = { name: \"\", value: \"\" }) {\n 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;\n }\n return Ge;\n}\nvar yt;\nfunction $e() {\n return yt || (yt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(n, i) {\n for (var a in i) Object.defineProperty(n, a, {\n enumerable: !0,\n get: i[a]\n });\n }\n e(o, {\n RequestCookies: function() {\n return t.RequestCookies;\n },\n ResponseCookies: function() {\n return t.ResponseCookies;\n },\n stringifyCookie: function() {\n return t.stringifyCookie;\n }\n });\n const t = _r();\n })(Be)), Be;\n}\nvar Tt;\nfunction br() {\n return Tt || (Tt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(l, h) {\n for (var u in h) Object.defineProperty(l, u, {\n enumerable: !0,\n get: h[u]\n });\n }\n e(o, {\n INTERNALS: function() {\n return c;\n },\n NextRequest: function() {\n return r;\n }\n });\n const t = jt(), n = qt(), i = mr(), a = $e(), c = /* @__PURE__ */ Symbol(\"internal request\");\n class r extends Request {\n constructor(h, u = {}) {\n const m = typeof h != \"string\" && \"url\" in h ? h.url : String(h);\n (0, n.validateURL)(m), h instanceof Request ? super(h, u) : super(m, u);\n const g = new t.NextURL(m, {\n headers: (0, n.toNodeOutgoingHttpHeaders)(this.headers),\n nextConfig: u.nextConfig\n });\n this[c] = {\n cookies: new a.RequestCookies(this.headers),\n geo: u.geo || {},\n ip: u.ip,\n nextUrl: g,\n url: process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE ? m : g.toString()\n };\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n cookies: this.cookies,\n geo: this.geo,\n ip: this.ip,\n nextUrl: this.nextUrl,\n url: this.url,\n // rest of props come from Request\n bodyUsed: this.bodyUsed,\n cache: this.cache,\n credentials: this.credentials,\n destination: this.destination,\n headers: Object.fromEntries(this.headers),\n integrity: this.integrity,\n keepalive: this.keepalive,\n method: this.method,\n mode: this.mode,\n redirect: this.redirect,\n referrer: this.referrer,\n referrerPolicy: this.referrerPolicy,\n signal: this.signal\n };\n }\n get cookies() {\n return this[c].cookies;\n }\n get geo() {\n return this[c].geo;\n }\n get ip() {\n return this[c].ip;\n }\n get nextUrl() {\n return this[c].nextUrl;\n }\n /**\n * @deprecated\n * `page` has been deprecated in favour of `URLPattern`.\n * Read more: https://nextjs.org/docs/messages/middleware-request-page\n */\n get page() {\n throw new i.RemovedPageError();\n }\n /**\n * @deprecated\n * `ua` has been removed in favour of \\`userAgent\\` function.\n * Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent\n */\n get ua() {\n throw new i.RemovedUAError();\n }\n get url() {\n return this[c].url;\n }\n }\n })(Te)), Te;\n}\nvar Xe = {}, We = {}, It;\nfunction gr() {\n return It || (It = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"ReflectAdapter\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n class e {\n static get(n, i, a) {\n const c = Reflect.get(n, i, a);\n return typeof c == \"function\" ? c.bind(n) : c;\n }\n static set(n, i, a, c) {\n return Reflect.set(n, i, a, c);\n }\n static has(n, i) {\n return Reflect.has(n, i);\n }\n static deleteProperty(n, i) {\n return Reflect.deleteProperty(n, i);\n }\n }\n })(We)), We;\n}\nvar St;\nfunction wr() {\n return St || (St = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"NextResponse\", {\n enumerable: !0,\n get: function() {\n return h;\n }\n });\n const e = $e(), t = jt(), n = qt(), i = gr(), a = $e(), c = /* @__PURE__ */ Symbol(\"internal response\"), r = /* @__PURE__ */ new Set([\n 301,\n 302,\n 303,\n 307,\n 308\n ]);\n function l(u, m) {\n var g;\n if (!(u == null || (g = u.request) == null) && g.headers) {\n if (!(u.request.headers instanceof Headers))\n throw new Error(\"request.headers must be an instance of Headers\");\n const R = [];\n for (const [y, A] of u.request.headers)\n m.set(\"x-middleware-request-\" + y, A), R.push(y);\n m.set(\"x-middleware-override-headers\", R.join(\",\"));\n }\n }\n class h extends Response {\n constructor(m, g = {}) {\n super(m, g);\n const R = this.headers, y = new a.ResponseCookies(R), A = new Proxy(y, {\n get(d, b, f) {\n switch (b) {\n case \"delete\":\n case \"set\":\n return (..._) => {\n const E = Reflect.apply(d[b], d, _), s = new Headers(R);\n return E instanceof a.ResponseCookies && R.set(\"x-middleware-set-cookie\", E.getAll().map((v) => (0, e.stringifyCookie)(v)).join(\",\")), l(g, s), E;\n };\n default:\n return i.ReflectAdapter.get(d, b, f);\n }\n }\n });\n this[c] = {\n cookies: A,\n url: g.url ? new t.NextURL(g.url, {\n headers: (0, n.toNodeOutgoingHttpHeaders)(R),\n nextConfig: g.nextConfig\n }) : void 0\n };\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n cookies: this.cookies,\n url: this.url,\n // rest of props come from Response\n body: this.body,\n bodyUsed: this.bodyUsed,\n headers: Object.fromEntries(this.headers),\n ok: this.ok,\n redirected: this.redirected,\n status: this.status,\n statusText: this.statusText,\n type: this.type\n };\n }\n get cookies() {\n return this[c].cookies;\n }\n static json(m, g) {\n const R = Response.json(m, g);\n return new h(R.body, R);\n }\n static redirect(m, g) {\n const R = typeof g == \"number\" ? g : g?.status ?? 307;\n if (!r.has(R))\n throw new RangeError('Failed to execute \"redirect\" on \"response\": Invalid status code');\n const y = typeof g == \"object\" ? g : {}, A = new Headers(y?.headers);\n return A.set(\"Location\", (0, n.validateURL)(m)), new h(null, {\n ...y,\n headers: A,\n status: R\n });\n }\n static rewrite(m, g) {\n const R = new Headers(g?.headers);\n return R.set(\"x-middleware-rewrite\", (0, n.validateURL)(m)), l(g, R), new h(null, {\n ...g,\n headers: R\n });\n }\n static next(m) {\n const g = new Headers(m?.headers);\n return g.set(\"x-middleware-next\", \"1\"), l(m, g), new h(null, {\n ...m,\n headers: g\n });\n }\n }\n })(Xe)), Xe;\n}\nvar ze = {}, At;\nfunction Er() {\n return At || (At = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"ImageResponse\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e() {\n throw new Error('ImageResponse moved from \"next/server\" to \"next/og\" since Next.js 14, please import from \"next/og\" instead');\n }\n })(ze)), ze;\n}\nvar Ve = {}, Ke = { exports: {} }, Ot;\nfunction vr() {\n return Ot || (Ot = 1, (() => {\n var o = { 226: function(i, a) {\n (function(c, r) {\n var l = \"1.0.35\", h = \"\", u = \"?\", m = \"function\", g = \"undefined\", R = \"object\", y = \"string\", A = \"major\", d = \"model\", b = \"name\", f = \"type\", _ = \"vendor\", E = \"version\", s = \"architecture\", v = \"console\", p = \"mobile\", w = \"tablet\", P = \"smarttv\", N = \"wearable\", j = \"embedded\", D = 350, F = \"Amazon\", q = \"Apple\", $ = \"ASUS\", Q = \"BlackBerry\", B = \"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\", k = \"Zebra\", pe = \"Facebook\", me = \"Chromium OS\", _e = \"Mac OS\", be = function(S, x) {\n var I = {};\n for (var C in S)\n x[C] && x[C].length % 2 === 0 ? I[C] = x[C].concat(S[C]) : I[C] = S[C];\n return I;\n }, J = function(S) {\n for (var x = {}, I = 0; I < S.length; I++)\n x[S[I].toUpperCase()] = S[I];\n return x;\n }, rt = function(S, x) {\n return typeof S === y ? ce(x).indexOf(ce(S)) !== -1 : !1;\n }, ce = function(S) {\n return S.toLowerCase();\n }, Xt = function(S) {\n return typeof S === y ? S.replace(/[^\\d\\.]/g, h).split(\".\")[0] : r;\n }, ve = function(S, x) {\n if (typeof S === y)\n return S = S.replace(/^\\s\\s*/, h), typeof x === g ? S : S.substring(0, D);\n }, le = function(S, x) {\n for (var I = 0, C, V, G, O, T, X; I < x.length && !T; ) {\n var Pe = x[I], ot = x[I + 1];\n for (C = V = 0; C < Pe.length && !T && Pe[C]; )\n if (T = Pe[C++].exec(S), T)\n for (G = 0; G < ot.length; G++)\n X = T[++V], O = ot[G], typeof O === R && O.length > 0 ? O.length === 2 ? typeof O[1] == m ? this[O[0]] = O[1].call(this, X) : this[O[0]] = O[1] : O.length === 3 ? typeof O[1] === m && !(O[1].exec && O[1].test) ? this[O[0]] = X ? O[1].call(this, X, O[2]) : r : this[O[0]] = X ? X.replace(O[1], O[2]) : r : O.length === 4 && (this[O[0]] = X ? O[3].call(this, X.replace(O[1], O[2])) : r) : this[O] = X || r;\n I += 2;\n }\n }, Re = function(S, x) {\n for (var I in x)\n if (typeof x[I] === R && x[I].length > 0) {\n for (var C = 0; C < x[I].length; C++)\n if (rt(x[I][C], S))\n return I === u ? r : I;\n } else if (rt(x[I], S))\n return I === u ? r : I;\n return S;\n }, 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\" + B]], [/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 \" + B], 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 \" + B]], [/fxios\\/([-\\w\\.]+)/i], [E, [b, z]], [/\\bqihu|(qi?ho?o?|360)browser/i], [[b, \"360 \" + B]], [/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i], [[b, /(.+)/, \"$1 \" + B], 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 \" + B]], [/(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/, h, 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], [d, [_, ae], [f, w]], [/\\b((?:s[cgp]h|gt|sm)-\\w+|sc[g-]?[\\d]+a?|galaxy nexus)/i, /samsung[- ]([-\\w]+)/i, /sec-(sgh\\w+)/i], [d, [_, ae], [f, p]], [/(?:\\/|\\()(ip(?:hone|od)[\\w, ]*)(?:\\/|;)/i], [d, [_, q], [f, p]], [/\\((ipad);[-\\w\\),; ]+apple/i, /applecoremedia\\/[\\w\\.]+ \\((ipad)/i, /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i], [d, [_, q], [f, w]], [/(macintosh);/i], [d, [_, q]], [/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i], [d, [_, fe], [f, p]], [/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i], [d, [_, de], [f, w]], [/(?:huawei|honor)([-\\w ]+)[;\\)]/i, /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i], [d, [_, de], [f, p]], [/\\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], [[d, /_/g, \" \"], [_, ue], [f, p]], [/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i], [[d, /_/g, \" \"], [_, ue], [f, w]], [/; (\\w+) bui.+ oppo/i, /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i], [d, [_, \"OPPO\"], [f, p]], [/vivo (\\w+)(?: bui|\\))/i, /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i], [d, [_, \"Vivo\"], [f, p]], [/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i], [d, [_, \"Realme\"], [f, p]], [/\\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], [d, [_, he], [f, p]], [/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i], [d, [_, he], [f, w]], [/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i], [d, [_, oe], [f, w]], [/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i, /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i, /\\blg-?([\\d\\w]+) bui/i], [d, [_, oe], [f, p]], [/(ideatab[-\\w ]+)/i, /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i], [d, [_, \"Lenovo\"], [f, w]], [/(?:maemo|nokia).*(n900|lumia \\d+)/i, /nokia[-_ ]?([-\\w\\.]*)/i], [[d, /_/g, \" \"], [_, \"Nokia\"], [f, p]], [/(pixel c)\\b/i], [d, [_, Z], [f, w]], [/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i], [d, [_, Z], [f, p]], [/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], [d, [_, te], [f, p]], [/sony tablet [ps]/i, /\\b(?:sony)?sgp\\w+(?: bui|\\))/i], [[d, \"Xperia Tablet\"], [_, te], [f, w]], [/ (kb2005|in20[12]5|be20[12][59])\\b/i, /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i], [d, [_, \"OnePlus\"], [f, p]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\))/i, /(kf[a-z]+)( bui|\\)).+silk\\//i], [d, [_, F], [f, w]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i], [[d, /(.+)/g, \"Fire Phone $1\"], [_, F], [f, p]], [/(playbook);[-\\w\\),; ]+(rim)/i], [d, _, [f, w]], [/\\b((?:bb[a-f]|st[hv])100-\\d)/i, /\\(bb10; (\\w+)/i], [d, [_, Q], [f, p]], [/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i], [d, [_, $], [f, w]], [/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i], [d, [_, $], [f, p]], [/(nexus 9)/i], [d, [_, \"HTC\"], [f, w]], [/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i, /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\.))|sony(?!-bra))[-_ ]?([-\\w]*)/i], [_, [d, /_/g, \" \"], [f, p]], [/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i], [d, [_, \"Acer\"], [f, w]], [/droid.+; (m[1-5] note) bui/i, /\\bmz-([-\\w]{2,})/i], [d, [_, \"Meizu\"], [f, p]], [/(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], [_, d, [f, p]], [/(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], [_, d, [f, w]], [/(surface duo)/i], [d, [_, se], [f, w]], [/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i], [d, [_, \"Fairphone\"], [f, p]], [/(u304aa)/i], [d, [_, \"AT&T\"], [f, p]], [/\\bsie-(\\w*)/i], [d, [_, \"Siemens\"], [f, p]], [/\\b(rct\\w+) b/i], [d, [_, \"RCA\"], [f, w]], [/\\b(venue[\\d ]{2,7}) b/i], [d, [_, \"Dell\"], [f, w]], [/\\b(q(?:mv|ta)\\w+) b/i], [d, [_, \"Verizon\"], [f, w]], [/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i], [d, [_, \"Barnes & Noble\"], [f, w]], [/\\b(tm\\d{3}\\w+) b/i], [d, [_, \"NuVision\"], [f, w]], [/\\b(k88) b/i], [d, [_, \"ZTE\"], [f, w]], [/\\b(nx\\d{3}j) b/i], [d, [_, \"ZTE\"], [f, p]], [/\\b(gen\\d{3}) b.+49h/i], [d, [_, \"Swiss\"], [f, p]], [/\\b(zur\\d{3}) b/i], [d, [_, \"Swiss\"], [f, w]], [/\\b((zeki)?tb.*\\b) b/i], [d, [_, \"Zeki\"], [f, w]], [/\\b([yr]\\d{2}) b/i, /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i], [[_, \"Dragon Touch\"], d, [f, w]], [/\\b(ns-?\\w{0,9}) b/i], [d, [_, \"Insignia\"], [f, w]], [/\\b((nxa|next)-?\\w{0,9}) b/i], [d, [_, \"NextBook\"], [f, w]], [/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[_, \"Voice\"], d, [f, p]], [/\\b(lvtel\\-)?(v1[12]) b/i], [[_, \"LvTel\"], d, [f, p]], [/\\b(ph-1) /i], [d, [_, \"Essential\"], [f, p]], [/\\b(v(100md|700na|7011|917g).*\\b) b/i], [d, [_, \"Envizen\"], [f, w]], [/\\b(trio[-\\w\\. ]+) b/i], [d, [_, \"MachSpeed\"], [f, w]], [/\\btu_(1491) b/i], [d, [_, \"Rotor\"], [f, w]], [/(shield[\\w ]+) b/i], [d, [_, \"Nvidia\"], [f, w]], [/(sprint) (\\w+)/i], [_, d, [f, p]], [/(kin\\.[onetw]{3})/i], [[d, /\\./g, \" \"], [_, se], [f, p]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i], [d, [_, k], [f, w]], [/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i], [d, [_, k], [f, p]], [/smart-tv.+(samsung)/i], [_, [f, P]], [/hbbtv.+maple;(\\d+)/i], [[d, /^/, \"SmartTV\"], [_, ae], [f, P]], [/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i], [[_, oe], [f, P]], [/(apple) ?tv/i], [_, [d, q + \" TV\"], [f, P]], [/crkey/i], [[d, W + \"cast\"], [_, Z], [f, P]], [/droid.+aft(\\w)( bui|\\))/i], [d, [_, F], [f, P]], [/\\(dtv[\\);].+(aquos)/i, /(aquos-tv[\\w ]+)\\)/i], [d, [_, fe], [f, P]], [/(bravia[\\w ]+)( bui|\\))/i], [d, [_, te], [f, P]], [/(mitv-\\w{5}) bui/i], [d, [_, ue], [f, P]], [/Hbbtv.*(technisat) (.*);/i], [_, d, [f, P]], [/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i, /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w\\+ ]*; *([\\w\\d][^;]*);([^;]*)/i], [[_, ve], [d, ve], [f, P]], [/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i], [[f, P]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [_, d, [f, v]], [/droid.+; (shield) bui/i], [d, [_, \"Nvidia\"], [f, v]], [/(playstation [345portablevi]+)/i], [d, [_, te], [f, v]], [/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i], [d, [_, se], [f, v]], [/((pebble))app/i], [_, d, [f, N]], [/(watch)(?: ?os[,\\/]|\\d,\\d\\/)[\\d\\.]+/i], [d, [_, q], [f, N]], [/droid.+; (glass) \\d/i], [d, [_, Z], [f, N]], [/droid.+; (wt63?0{2,3})\\)/i], [d, [_, k], [f, N]], [/(quest( 2| pro)?)/i], [d, [_, pe], [f, N]], [/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i], [_, [f, j]], [/(aeobc)\\b/i], [d, [_, F], [f, j]], [/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i], [d, [f, p]], [/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i], [d, [f, w]], [/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i], [[f, w]], [/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i], [[f, p]], [/(android[-\\w\\. ]{0,9});.+buil/i], [d, [_, \"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]] }, H = function(S, x) {\n if (typeof S === R && (x = S, S = r), !(this instanceof H))\n return new H(S, x).getResult();\n var I = typeof c !== g && c.navigator ? c.navigator : r, C = S || (I && I.userAgent ? I.userAgent : h), V = I && I.userAgentData ? I.userAgentData : r, G = x ? be(it, x) : it, O = I && I.userAgent == C;\n return this.getBrowser = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.browser), T[A] = Xt(T[E]), O && I && I.brave && typeof I.brave.isBrave == m && (T[b] = \"Brave\"), T;\n }, this.getCPU = function() {\n var T = {};\n return T[s] = r, le.call(T, C, G.cpu), T;\n }, this.getDevice = function() {\n var T = {};\n return T[_] = r, T[d] = r, T[f] = r, le.call(T, C, G.device), O && !T[f] && V && V.mobile && (T[f] = p), O && T[d] == \"Macintosh\" && I && typeof I.standalone !== g && I.maxTouchPoints && I.maxTouchPoints > 2 && (T[d] = \"iPad\", T[f] = w), T;\n }, this.getEngine = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.engine), T;\n }, this.getOS = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.os), O && !T[b] && V && V.platform != \"Unknown\" && (T[b] = V.platform.replace(/chrome os/i, me).replace(/macos/i, _e)), T;\n }, this.getResult = function() {\n return { ua: this.getUA(), browser: this.getBrowser(), engine: this.getEngine(), os: this.getOS(), device: this.getDevice(), cpu: this.getCPU() };\n }, this.getUA = function() {\n return C;\n }, this.setUA = function(T) {\n return C = typeof T === y && T.length > D ? ve(T, D) : T, this;\n }, this.setUA(C), this;\n };\n H.VERSION = l, H.BROWSER = J([b, E, A]), H.CPU = J([s]), H.DEVICE = J([d, _, f, v, p, P, w, N, j]), H.ENGINE = H.OS = J([b, E]), typeof a !== g ? (i.exports && (a = i.exports = H), a.UAParser = H) : typeof c !== g && (c.UAParser = H);\n var re = typeof c !== g && (c.jQuery || c.Zepto);\n if (re && !re.ua) {\n var ge = new H();\n re.ua = ge.getResult(), re.ua.get = function() {\n return ge.getUA();\n }, re.ua.set = function(S) {\n ge.setUA(S);\n var x = ge.getResult();\n for (var I in x)\n re.ua[I] = x[I];\n };\n }\n })(typeof window == \"object\" ? window : this);\n } }, e = {};\n function t(i) {\n var a = e[i];\n if (a !== void 0)\n return a.exports;\n var c = e[i] = { exports: {} }, r = !0;\n try {\n o[i].call(c.exports, c, c.exports, t), r = !1;\n } finally {\n r && delete e[i];\n }\n return c.exports;\n }\n typeof t < \"u\" && (t.ab = import.meta.dirname + \"/\");\n var n = t(226);\n Ke.exports = n;\n })()), Ke.exports;\n}\nvar xt;\nfunction Nt() {\n return xt || (xt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(r, l) {\n for (var h in l) Object.defineProperty(r, h, {\n enumerable: !0,\n get: l[h]\n });\n }\n e(o, {\n isBot: function() {\n return i;\n },\n userAgent: function() {\n return c;\n },\n userAgentFromString: function() {\n return a;\n }\n });\n const t = /* @__PURE__ */ n(vr());\n function n(r) {\n return r && r.__esModule ? r : {\n default: r\n };\n }\n function i(r) {\n return /Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(r);\n }\n function a(r) {\n return {\n ...(0, t.default)(r),\n isBot: r === void 0 ? !1 : i(r)\n };\n }\n function c({ headers: r }) {\n return a(r.get(\"user-agent\") || void 0);\n }\n })(Ve)), Ve;\n}\nvar Ye = {}, Ct;\nfunction Rr() {\n return Ct || (Ct = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"URLPattern\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n const e = (\n // @ts-expect-error: URLPattern is not available in Node.js\n typeof URLPattern > \"u\" ? void 0 : URLPattern\n );\n })(Ye)), Ye;\n}\nvar Lt;\nfunction Pr() {\n return Lt || (Lt = 1, (function(o, e) {\n const t = {\n NextRequest: br().NextRequest,\n NextResponse: wr().NextResponse,\n ImageResponse: Er().ImageResponse,\n userAgentFromString: Nt().userAgentFromString,\n userAgent: Nt().userAgent,\n URLPattern: Rr().URLPattern\n };\n o.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;\n })(we, we.exports)), we.exports;\n}\nvar yr = Pr();\nclass Xr {\n async parseRequest(e) {\n const t = new URL(e.url), n = e.method, i = e.headers.get(Y) ?? \"\", a = {};\n e.cookies.getAll().forEach((l) => {\n a[l.name] = l.value;\n });\n let c, r;\n if (n !== \"GET\") {\n if (i.includes(M.applicationJson))\n try {\n c = await e.json();\n } catch {\n L.warn(\"request body is null!\");\n }\n else if (i.includes(M.multipartFormData)) {\n const l = e.clone(), h = await e.formData(), u = await l.arrayBuffer();\n r = { formData: h, buffer: u };\n } else if (i.includes(M.applicationXwwwFormUrlencoded)) {\n const l = await e.text(), h = new URLSearchParams(l);\n h.delete(\"m\"), c = h;\n }\n }\n return {\n url: t,\n method: n,\n contentType: i,\n body: c,\n requestFormData: r,\n cookies: a\n };\n }\n createResponse(e) {\n const t = yr.NextResponse.json(e.body);\n if (Object.entries(e.cookies).forEach(([n, i]) => {\n typeof i == \"object\" && i.value ? t.cookies.set(n, i.value, i.options) : typeof i == \"string\" && t.cookies.set(n, i);\n }), e.cleanCookies) {\n const n = {\n set(i, a, c) {\n t.cookies.set(i, a, c);\n },\n delete(i, a) {\n t.cookies.delete({ ...a, name: i });\n }\n };\n e.cleanCookies(n);\n }\n return t;\n }\n setCookie(e, t, n, i) {\n e.cookies[t] = { value: n, options: i };\n }\n}\nclass Wr {\n async parseRequest(e) {\n const t = Yt(e), n = e.method, i = e.headers.get(Y) || \"\", a = Jt(e);\n let c, r;\n if (n !== \"GET\") {\n if (i.includes(M.applicationJson))\n try {\n c = await st(e);\n } catch {\n L.warn(\"request body is null!\");\n }\n else if (i.includes(M.multipartFormData)) {\n const l = await $t(e) ?? [], h = new FormData(), u = [];\n for (const R of l)\n if (R.type === \"file\" && R.data) {\n const y = new File([R.data], R.filename || \"unknown\", {\n type: R.type\n });\n h.append(\"file\", y), u.push(R.data);\n } else if (R.name) {\n const y = R.data ? R.data.toString() : \"\";\n h.append(R.name, y);\n }\n const m = Buffer.concat(u.map((R) => Buffer.from(R))), g = m.buffer.slice(\n m.byteOffset,\n m.byteOffset + m.byteLength\n );\n r = { formData: h, buffer: g };\n } else if (i.includes(M.applicationXwwwFormUrlencoded))\n try {\n c = await st(e);\n } catch {\n L.warn(\"request body is null!\");\n }\n }\n return {\n url: t,\n method: n,\n contentType: i,\n body: c,\n requestFormData: r,\n cookies: a,\n context: e\n };\n }\n createResponse(e) {\n const { status: t, headers: n, body: i, cookies: a, cleanCookies: c, context: r } = e, l = r;\n return Qt(l, t), Object.entries(n).forEach(([h, u]) => {\n Zt(l, h, u);\n }), Object.entries(a).forEach(([h, u]) => {\n typeof u == \"object\" && u.value ? ye(l, h, u.value, u.options) : typeof u == \"string\" && ye(l, h, u);\n }), c && c({\n set(u, m, g) {\n ye(l, u, m, g);\n },\n delete(u, m) {\n er(l, u, m);\n }\n }), i;\n }\n setCookie(e, t, n, i) {\n e.cookies[t] = { value: n, options: i };\n }\n}\nvar Qe = /* @__PURE__ */ ((o) => (o[o.login = 0] = \"login\", o[o.logout = 1] = \"logout\", o))(Qe || {});\nconst Je = {\n login: \"login\",\n logout: \"logout\",\n unknown: \"\"\n}, Y = \"Content-Type\", M = {\n applicationJson: \"application/json\",\n multipartFormData: \"multipart/form-data\",\n applicationXwwwFormUrlencoded: \"application/x-www-form-urlencoded\"\n};\nclass zr {\n config;\n http;\n adapter;\n constructor({\n config: e,\n adapter: t,\n storage: n\n }) {\n this.config = e;\n let i = Ar(n.headers);\n (!i.deviceId || i.deviceId.trim().length === 0) && (i = Or(n.cookies)), this.http = new Lr({ ...i, userType: e.userType, helloURL: e.helloURL }), this.adapter = t;\n }\n async handleRequest(e) {\n try {\n const t = await this.adapter.parseRequest(e), n = await this.processRequest(t);\n return this.adapter.createResponse(n);\n } catch (t) {\n L.error({ error: t?.toString() || \"Internal server error\" }, \"ROUTE ERROR\");\n const n = this.createErrorResponse(500, t?.toString() || \"Internal server error\");\n return this.adapter.createResponse(n);\n }\n }\n async processRequest(e) {\n const t = e.url.searchParams, n = t.get(\"m\") ?? \"unknown\", a = { ...Je, ...this.config.APIMAP }[n], c = e.cookies;\n if (this.http.setHttpOptsToCookies(c), !a || a.length === 0)\n return this.createErrorResponse(404, \"API not found\", c);\n let r;\n if ((a.startsWith(\"admin/\") || a.startsWith(\"api/\")) && (r = xr(c), L.debug(r, \"token\"), !r || r.username.length === 0 || r.token.length === 0))\n return this.createErrorResponse(409, \"Authentication required\", c);\n L.debug({ \"content-type\": e.contentType }, \"Content-Type\"), L.debug({ hostUrl: a, token: r ? { ...r } : \"\" }, \"processRequest\");\n const l = e.method;\n if (l === \"GET\") {\n const h = { ...t };\n h.delete(\"m\");\n const u = await this.http.get({\n url: a,\n data: h,\n token: r\n });\n return this.createResponse({ url: a, result: u, config: this.config, req: e });\n } else if (l === \"POST\") {\n let h;\n const u = e.contentType;\n if (u.includes(M.applicationJson) || u.includes(M.applicationXwwwFormUrlencoded))\n e.body && (h = { ...e.body });\n else if (u.includes(M.multipartFormData)) {\n const g = u.match(/boundary=([^\\s;]+)/);\n if (!g || !e.requestFormData)\n return this.createErrorResponse(411, \"Missing boundary in form data\", c);\n const R = e.requestFormData.buffer;\n h = {\n boundary: g[1],\n buffer: Buffer.from(R)\n };\n const A = e.requestFormData.formData;\n if (A)\n for (const [d, b] of Object.entries(A))\n d !== \"file\" && (h[d] = b);\n } else\n return this.createErrorResponse(410, \"Unsupported content type\", c);\n const m = await this.http.post({\n url: a,\n data: h,\n token: r\n });\n return this.createResponse({ url: a, result: m, config: this.config, req: e });\n }\n return this.createErrorResponse(405, \"Method not allowed, only supported GET or POST\", c);\n }\n createResponse({ url: e, result: t, config: n, req: i }) {\n const a = {};\n a[Y] = M.applicationJson;\n const c = {\n status: t.success ? 200 : t.code,\n headers: a,\n cookies: this.setCookies(i.cookies),\n body: t,\n context: i.context\n };\n if (t.success) {\n switch (e) {\n case Je[Qe[\n 0\n /* login */\n ]]:\n const r = t.data;\n Nr(r, c);\n break;\n case Je[Qe[\n 1\n /* logout */\n ]]:\n c.cleanCookies = (l) => Cr(l);\n break;\n }\n n.onHandlerSuccess && n.onHandlerSuccess({\n url: e,\n data: t.data,\n req: i,\n res: c\n });\n }\n return c;\n }\n createErrorResponse(e, t, n) {\n const i = {};\n return i[Y] = M.applicationJson, {\n status: e,\n headers: i,\n cookies: n ? this.setCookies(n) : {},\n body: {\n code: e,\n success: !1,\n msg: t\n }\n };\n }\n setCookies(e) {\n const t = {};\n return Object.entries(e).forEach(([n, i]) => {\n t[n] = { value: i };\n }), t;\n }\n}\nconst Tr = \"zh-CN\", Ht = \"_device_id_key\", Ft = \"_current_website_key\", kt = \"Get request error!\", Ze = \"Post request error!\", U = {\n IBOOT_DEVICE_ID: \"dvid\",\n IBOOT_LANG: \"lang\",\n IBOOT_WEBSITE_ID: \"wid\",\n IBOOT_WEBSITE_NO: \"wno\",\n IBOOT_TOKEN: \"token\",\n IBOOT_USER: \"user\"\n}, K = {\n DEVICE_ID: \"Device-Id\",\n LANG: \"Lang\",\n WEBSITE_ID: \"Website-Id\",\n WEBSITE_NO: \"Website-No\"\n}, Bt = (o) => {\n if (!o.get)\n throw new Error(\"The get method of IStorage has not been implemented.\");\n const e = o.get(Ht) ?? \"\", t = o.get(Ft), n = t != null ? JSON.parse(t) : null, i = {};\n return e.length > 0 && (i[\"Device-Id\"] = e), n && (i.Lang = n.language, n.websiteId && (i[\"Website-Id\"] = n.websiteId), n.websiteNo && (i[\"Website-No\"] = n.websiteNo)), i;\n}, Vr = ({ deviceId: o, website: e }, t) => {\n if (!t.set)\n throw new Error(\"The set method of IStorage has not been implemented.\");\n t.set(Ht, o), e && t.set(Ft, JSON.stringify(e));\n}, Ir = (o) => `${process.env.BASE_URL || \"/api/services\"}?m=${o}`, Sr = async (o, e) => {\n let t = Ir(o);\n if (e?.data) {\n const r = new URLSearchParams(e.data);\n t += `&${r}`;\n }\n const n = e && e.storage && e.storage.get ? Bt(e.storage) : {}, i = e?.headers;\n if (i)\n for (const r in i) {\n const l = i[r];\n l && (n[r] = l);\n }\n L.info({\n url: t,\n headers: n\n }, \"GET\");\n const a = await fetch(t, {\n method: \"GET\",\n headers: n,\n cache: e?.useCache ? \"force-cache\" : \"default\"\n });\n if (a.ok) {\n const r = Object.fromEntries(a.headers.entries()), l = { ...await a.json(), headers: r };\n return L.debug(l, \"GET_RESULT\"), l;\n }\n const c = {\n code: a.status,\n success: !1,\n msg: a.statusText\n };\n return L.error(c), c;\n}, Gt = async (o, e) => {\n const t = e?.data ?? {}, n = e?.headers;\n let i;\n const a = e && e.storage && e.storage.get ? Bt(e.storage) : {}, c = new Headers(a);\n if (t instanceof FormData ? i = t : (i = JSON.stringify(t), c.set(Y, M.applicationJson)), n)\n for (let h in n) {\n const u = n[h];\n u && c.set(h, u);\n }\n L.info({\n url: o,\n headers: c\n }, \"POST\");\n const r = await fetch(o, {\n method: \"POST\",\n headers: c,\n body: i\n });\n if (r.ok) {\n const h = Object.fromEntries(r.headers.entries()), u = { ...await r.json(), headers: h };\n return L.debug(u, \"POST_RESULT\"), u;\n }\n const l = {\n code: r.status,\n success: !1,\n msg: r.statusText\n };\n return L.error(l), l;\n}, Kr = async (o, e) => {\n const t = await Sr(o, e);\n if (t.success)\n return t.data;\n if (e?.showError) {\n e.showError(t.msg ?? kt);\n return;\n }\n throw Error(t.msg ?? kt);\n}, Yr = async (o, e) => {\n const t = await Gt(o, e);\n if (t.success)\n return t.data;\n if (e?.showError) {\n e.showError(t.msg ?? Ze);\n return;\n }\n throw Error(t.msg ?? Ze);\n}, Jr = async (o, e) => {\n const t = await Gt(o, e);\n return t.success ? (e?.showSuccess && e.showSuccess(t.msg ?? \"SUCCESS\"), !0) : (e?.showError && e.showError(t.msg ?? Ze), !1);\n}, Ar = (o) => {\n if (o.get) {\n const e = o.get(K.DEVICE_ID), t = o.get(K.LANG), n = o.get(K.WEBSITE_ID), i = o.get(K.WEBSITE_NO), a = {};\n return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), n && n.length > 0 && (a.websiteId = n), i && i.length > 0 && (a.websiteNo = i), a;\n }\n throw new Error(\"The get method of IStorage has not been implemented.\");\n}, $r = (o, e) => {\n if (o.set)\n e.deviceId && o.set(K.DEVICE_ID, e.deviceId), e.lang && o.set(K.LANG, e.lang), e.websiteId && o.set(K.WEBSITE_ID, e.websiteId), e.websiteNo && o.set(K.WEBSITE_NO, e.websiteNo);\n else\n throw new Error(\"The set method of IStorage has not been implemented.\");\n}, Or = (o) => {\n if (o.get) {\n const e = o.get(U.IBOOT_DEVICE_ID), t = o.get(U.IBOOT_LANG), n = o.get(U.IBOOT_WEBSITE_ID), i = o.get(U.IBOOT_WEBSITE_NO), a = {};\n return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), n && n.length > 0 && (a.websiteId = n), i && i.length > 0 && (a.websiteNo = i), a;\n }\n throw new Error(\"The get method of ICookies has not been implemented.\");\n}, Qr = (o, e) => {\n if (o.set)\n e.deviceId && o.set(U.IBOOT_DEVICE_ID, e.deviceId), e.lang && o.set(U.IBOOT_LANG, e.lang), e.websiteId && o.set(U.IBOOT_WEBSITE_ID, e.websiteId), e.websiteNo && o.set(U.IBOOT_WEBSITE_NO, e.websiteNo);\n else\n throw new Error(\"The set method of ICookies has not been implemented.\");\n}, Zr = (o) => {\n if (o.get) {\n const e = o.get(U.IBOOT_USER);\n if (e && e.length > 0)\n return JSON.parse(e);\n }\n}, xr = (o) => {\n if (o.get) {\n const e = o[U.IBOOT_USER];\n if (e && e.length > 0) {\n const t = JSON.parse(e), n = t.username, i = t.userType.toString(), a = o[U.IBOOT_TOKEN];\n if (a)\n return {\n username: n,\n utype: i,\n token: a\n };\n }\n }\n}, Ut = () => ({\n path: \"/\",\n secure: process.env.APP_ENV === \"production\",\n httpOnly: !0,\n sameSite: \"strict\"\n}), Ee = {\n maxAge: -1,\n //设置为 -1表示立即过期\n httpOnly: !0,\n path: \"/\"\n}, Nr = (o, e) => {\n const { id: t, name: n, username: i, nickname: a, headImg: c, token: r, lastLoginTime: l, deviceId: h, userType: u, mustChangePwd: m } = o, g = {\n id: t,\n name: n,\n username: i,\n nickname: a || n,\n headImg: c,\n lastLoginTime: l,\n deviceId: h,\n userType: u,\n accountType: 0,\n needToReview: !1,\n socketOnline: !1,\n mustChangePwd: m\n };\n e.cookies[U.IBOOT_TOKEN] = {\n value: r,\n options: Ut()\n }, e.cookies[U.IBOOT_USER] = {\n value: JSON.stringify(g),\n options: Ut()\n };\n}, Cr = (o) => {\n if (!o.set)\n throw new Error(\"cookies set function is undefined\");\n if (o.set(U.IBOOT_TOKEN, \"\", Ee), o.set(U.IBOOT_USER, \"\", Ee), !o.delete)\n throw new Error(\"cookies delete function is undefined\");\n o.delete(U.IBOOT_TOKEN, Ee), o.delete(U.IBOOT_USER, Ee);\n};\nclass Lr {\n baseUrl;\n helloMethod;\n apiKey;\n userType;\n userFrom;\n deviceId;\n version = \"1\";\n lang;\n websiteId;\n websiteNo;\n constructor(e) {\n process.env.APP_ENV === \"production\" || L.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 ?? tr.TYPE_MGT, this.deviceId = e.deviceId ?? ir(), this.lang = e.lang ?? Tr, this.websiteId = e.websiteId, this.websiteNo = e.websiteNo;\n }\n encrypt(e) {\n const t = ne.enc.Utf8.parse(this.apiKey);\n return ne.AES.encrypt(e, t).toString();\n }\n decrypt(e) {\n const t = ne.enc.Utf8.parse(this.apiKey);\n return ne.AES.decrypt(e, t, {\n mode: ne.mode.ECB\n }).toString(ne.enc.Utf8);\n }\n setHttpOptsToCookies = (e) => {\n this.deviceId && this.deviceId.length > 0 && (e[U.IBOOT_DEVICE_ID] = this.deviceId), this.websiteId && this.websiteId.length > 0 && (e[U.IBOOT_WEBSITE_ID] = this.websiteId), this.websiteNo && this.websiteNo.length > 0 && (e[U.IBOOT_WEBSITE_NO] = this.websiteNo), this.lang && this.lang.length > 0 && (e[U.IBOOT_LANG] = this.lang);\n };\n async sign(e) {\n const t = \"&key=\" + await this.helloIboot(), n = [];\n for (const l of e.keys())\n n.push(l);\n n.sort((l, h) => {\n const u = l.match(/(\\d+)/), m = h.match(/(\\d+)/);\n return u && m && l.replace(/\\d+/, \"\") === h.replace(/\\d+/, \"\") ? parseInt(u[1]) - parseInt(m[1]) : l.toLowerCase().localeCompare(h.toLowerCase(), void 0, {\n numeric: !0,\n // 启用数字识别\n sensitivity: \"base\"\n });\n });\n const i = [];\n n.forEach((l) => {\n const h = e.get(l);\n h && i.push(l + \"=\" + h);\n });\n const a = i.join(\"&\"), c = Kt.md5((a + t).toLocaleUpperCase()), r = {\n params: a,\n md5: c\n };\n return L.debug(r, \"API_SIGN\"), c;\n }\n assemblyParameter(e, t) {\n const n = e ?? new URLSearchParams(), i = Intl.DateTimeFormat().resolvedOptions().timeZone;\n return n.set(\"timezone\", i), n.set(\"timestamp\", Date.now().toString()), n.set(\"echostr\", Dt(10)), n.set(\"version\", this.version), n.set(\"deviceId\", this.deviceId), n.set(\"webid\", this.websiteId ?? \"\"), n.set(\"apiKey\", this.apiKey), t && t.length > 0 && n.set(\"username\", t), new URLSearchParams([...n].filter(([, a]) => a !== \"\"));\n }\n async assemblyHeader({ urlParams: e, token: t }) {\n const n = {\n \"Res-Type\": \"json\",\n \"Device-Id\": this.deviceId,\n \"User-Type\": t?.utype.toString() ?? this.userType.toString(),\n \"User-From\": this.userFrom,\n \"Api-Key\": this.apiKey\n };\n n[Y] = M.applicationXwwwFormUrlencoded, this.lang && this.lang.length > 0 && (n.Lang = this.lang), this.websiteId && this.websiteId.length > 0 && (n[\"Web-Id\"] = this.websiteId), this.websiteNo && this.websiteNo.length > 0 && (n[\"Web-No\"] = this.websiteNo), t && (t.token && t.token.length > 0 && t.username && t.username.length > 0 && (n.Authorization = t.token, n.Username = t.username), t.xcsrf && (n[t.xcsrf.csrfHeader] = t.xcsrf.csrfToken));\n const i = await this.sign(e);\n return n.Sign = i, n;\n }\n async helloIboot() {\n if (this.helloMethod.length <= 0)\n return this.apiKey;\n const e = this.getApiUrl(this.helloMethod), t = {\n \"Res-Type\": \"json\",\n \"Api-Key\": this.apiKey\n };\n t[Y] = M.applicationXwwwFormUrlencoded;\n const n = {\n url: e,\n headers: t\n };\n L.debug(n, \"HELLO\");\n const i = await fetch(e, {\n method: \"GET\",\n headers: t,\n credentials: \"include\",\n cache: \"force-cache\"\n });\n if (i.ok) {\n const a = await i.json();\n return L.debug(a.data, \"HELLO RESULT\"), a.data;\n }\n throw new Error(\"hello iBoot error!\");\n }\n getApiUrl(e) {\n return `${this.baseUrl}/${e}`;\n }\n async csrf() {\n const e = await this.get({\n url: \"guest/csrf\"\n });\n if (e.success) {\n const t = e.data;\n if (t)\n return t.csrfToken.toString();\n }\n }\n async get({ url: e, data: t, token: n, cache: i = \"default\" }) {\n const a = this.assemblyParameter(t ? new URLSearchParams(t) : void 0), c = await this.assemblyHeader({ urlParams: a, token: n }), r = `${this.getApiUrl(e)}?${a.toString()}`, l = {\n url: r,\n headers: c\n };\n L.info(l, \"GET\");\n const h = await fetch(r, {\n method: \"GET\",\n headers: c,\n credentials: \"include\",\n cache: i\n });\n if (h.ok) {\n const m = Object.fromEntries(h.headers.entries()), g = { ...await h.json(), headers: m };\n return L.debug(g, \"GET_RESULT\"), g;\n }\n const u = {\n code: h.status,\n success: !1,\n msg: h.statusText\n };\n return L.error(u), u;\n }\n async post({ url: e, data: t, token: n, cache: i = \"default\" }) {\n const a = t ? { ...t } : {}, c = a.buffer ?? void 0, r = a.boundary ?? void 0;\n c && delete a.buffer, r && delete a.boundary;\n const l = this.assemblyParameter(new URLSearchParams(a)), h = await this.assemblyHeader({ urlParams: l, token: n });\n c && r && (h[Y] = `multipart/form-data; boundary=${r}`);\n const u = this.getApiUrl(e), m = {\n url: u,\n headers: h,\n params: l\n };\n L.info(m, \"POST\");\n const g = c ? `${u}?${l}` : u, R = await fetch(g, {\n method: \"POST\",\n headers: h,\n body: c || l,\n credentials: \"include\",\n cache: i\n });\n if (R.ok) {\n const A = Object.fromEntries(R.headers.entries()), d = { ...await R.json(), headers: A };\n return L.debug(d, \"POST_RESULT\"), d;\n }\n const y = {\n code: R.status,\n success: !1,\n msg: R.statusText\n };\n return L.error(y), y;\n }\n}\nexport {\n qr as ACCOUNT_TYPE_MAP,\n Y as CONTENT_TYPE_KEY,\n M as CONTENT_TYPE_MAP,\n U as COOKIE_NAMES,\n zr as HTTPRouter,\n Lr as HttpClient,\n Xr as NextJsAdapter,\n Wr as NuxtJsAdapter,\n Hr as USER_FORM_MAP,\n Fr as USER_SEX_MAP,\n tr as USER_TYPE_MAP,\n Cr as cleanToken,\n Gr as dateFormat,\n ir as generateDeviceId,\n Sr as get,\n Zr as getLoginUser,\n Or as getServerHttpCookies,\n Ar as getServerHttpOpts,\n xr as getToken,\n Kr as iGet,\n Yr as iPost,\n Jr as iPostSuccess,\n Br as isArray,\n L as logger,\n Gt as post,\n Dt as randomString,\n Vr as setClientRequestHeader,\n Qr as setServerHttpCookies,\n $r as setServerHttpHeaders,\n Nr as setToken\n};\n//# sourceMappingURL=icms-http-client.es.js.map\n","import { getServerHttpOpts, HttpClient, ICookies, IStorage, ServerHttpOpts, setServerHttpCookies, setServerHttpHeaders, USER_TYPE_MAP } from \"@rock.chen/icms-http-client\";\r\nimport { I18NWebsite, Webchannel, WebSite, WebsiteInfo } from './types/site';\r\nimport { ProductContent } from './types/cms-product';\r\nimport { PageInfo, PageParams } from './types/cms-base';\r\nimport { NewsContent } from './types/cms-news';\r\nimport { Reviews } from './types/cms-message';\r\n\r\nconst baseUrl = {\r\n \"site\": \"guest/site/\",\r\n \"shop\": \"guest/site/shop/\"\r\n}\r\n\r\nconst buildEmptyPageInfo = <T>({ pageNo, pageSize }: { pageNo: number, pageSize: number }): PageInfo<T> => {\r\n return {\r\n \"total\": 0,\r\n \"pageNo\": pageNo,\r\n \"pageSize\": pageSize,\r\n \"pageCount\": 0,\r\n \"first\": true,\r\n \"last\": true,\r\n \"content\": [],\r\n }\r\n}\r\n\r\nexport const helloURL = `${baseUrl.site}helloIBoot`;\r\n\r\nexport class ICMSServer {\r\n private readonly http: HttpClient;\r\n constructor(opts: Readonly<{ headerStorage: IStorage }>) {\r\n let httpOpts = getServerHttpOpts(opts.headerStorage);\r\n this.http = new HttpClient({\r\n ...httpOpts,\r\n userType: USER_TYPE_MAP.TYPE_C,\r\n helloURL\r\n })\r\n }\r\n\r\n //#region ----网站及栏目\r\n async helloWebsite(h: IStorage, c: ICookies) {\r\n const url = baseUrl.site + \"helloWebsite\";\r\n const res = await this.http.get({ url: url });\r\n if (res.success) {\r\n const headers = res.headers;\r\n if (headers) {\r\n const deviceId = headers['device-id'];\r\n const lang = headers[\"lang\"];\r\n const websiteId = headers['web-id'];\r\n const websiteNo = headers[\"web-no\"];\r\n const values: Omit<ServerHttpOpts, 'userType' | 'helloURL'> = {}\r\n\r\n if (deviceId && deviceId.length > 0) {\r\n values['deviceId'] = deviceId\r\n }\r\n if (lang && lang.length > 0) {\r\n values['lang'] = lang\r\n }\r\n if (websiteId && websiteId.length > 0) {\r\n values['websiteId'] = websiteId\r\n }\r\n if (websiteNo && websiteNo.length > 0) {\r\n values['websiteNo'] = websiteNo\r\n }\r\n setServerHttpHeaders(h, values);\r\n setServerHttpCookies(c, values);\r\n }\r\n }\r\n }\r\n /**\r\n * 获取言语网站列表\r\n * @returns I18NWebsite[]\r\n */\r\n async loadI18nList(): Promise<Array<I18NWebsite>> {\r\n const url = baseUrl.site + \"i18nList\";\r\n const res = await this.http.get<Array<I18NWebsite>>({ url: url });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n return []\r\n }\r\n\r\n /**\r\n * 获取网站信息\r\n * @param params {showNav:是否拉取网站导航菜单(默认为true),showFriendLink:是否拉取首页有情链接sortBy升序前20个}\r\n * @returns \r\n */\r\n async loadWebsite(params?: Readonly<{ showNav?: boolean, showFriendLink?: boolean, showI18NList?: boolean }>): Promise<WebsiteInfo> {\r\n const url = baseUrl.site + \"currentWebSite\";\r\n const res = await this.http.get<WebSite>({ url: url, data: { \"showNav\": params?.showNav ?? 'true', \"showFriendLink\": params?.showFriendLink ?? 'false' } });\r\n if (res.success) {\r\n const website = res.data!;\r\n const seo = website.seoProps;\r\n const result: WebsiteInfo = {\r\n \"website\": website!,\r\n \"metadata\": {\r\n \"title\": seo?.title,\r\n \"description\": seo?.description,\r\n \"keywords\": seo?.keywords,\r\n \"authors\": {\r\n \"url\": \"https://www.icms.xin\",\r\n \"name\": \"iCMS\"\r\n }\r\n },\r\n \"i18nSites\": params?.showI18NList ? await this.loadI18nList() : []\r\n }\r\n return result;\r\n }\r\n throw Error(res.msg)\r\n }\r\n\r\n /**\r\n * 获取栏目channelNo下的子栏目列表\r\n * @param params {channelNo?:栏目编号(不传从顶及栏目开始), showChildren?:是否同时获取下级栏目的子栏目}\r\n * @returns \r\n */\r\n\r\n async loadChannels(params?: Readonly<{ channelNo?: string, showChildren?: boolean }>): Promise<Array<Webchannel>> {\r\n const url = baseUrl.site + \"getChannelListByNo\";\r\n const res = await this.http.get<Array<Webchannel>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 通过channelId获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelById(params: Readonly<{ channelId: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + \"getChannelById\";\r\n const res = await this.http.get<Webchannel>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data\r\n }\r\n throw new Error(res.msg)\r\n }\r\n /**\r\n * 通过channelNo获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelByNo(params: Readonly<{ channelNo: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + 'getChannelByNo';\r\n const res = await this.http.get<Webchannel>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 通过uri(如'/about')获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelByUri(params: Readonly<{ uri: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + \"getChannelByUrl\";\r\n const res = await this.http.get<Webchannel>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n //#endregion\r\n\r\n //#region ----产品内容\r\n /**\r\n * 获取产品详情\r\n * @param proId \r\n * @returns \r\n */\r\n async loadProductDetail(proId: string): Promise<ProductContent | undefined> {\r\n const url = baseUrl.site + 'getProduct';\r\n const res = await this.http.get<ProductContent>({ url, data: { \"proId\": proId } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分页获取产品内容列表\r\n * @param params {channelId指定栏目下的产品,为空则不限,keyword:关键字查询}\r\n * @returns \r\n */\r\n async loadProductPageInfo(params: Readonly<{ channelId?: string, keyword?: string } & PageParams>): Promise<PageInfo<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductForPage';\r\n const res = await this.http.get<PageInfo<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<ProductContent>({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分组获取产品内容列表PageInfo\r\n * @param params {groupId:分组ID}\r\n * @returns \r\n */\r\n async loadProductPageInfoByGroup(params: Readonly<{ groupId: string } & PageParams>): Promise<PageInfo<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductForPageByGroup';\r\n const res = await this.http.get<PageInfo<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<ProductContent>({ pageNo: params.pageNo, pageSize: params.pageSize })\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分组获取产品内容列表\r\n * @param params \r\n * @returns \r\n */\r\n async loadProductListByGroupId(params: Readonly<{ groupId: string }>): Promise<Array<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductByGroup';\r\n const res = await this.http.get<Array<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? [];\r\n }\r\n throw new Error(res.msg)\r\n }\r\n //#endregion\r\n\r\n //#region ----图文内容\r\n /**\r\n * 获取图文详情\r\n * @param newId \r\n * @returns \r\n */\r\n async loadNewsDetail(newId: string): Promise<NewsContent | undefined> {\r\n const url = baseUrl.site + 'getNewsDetail';\r\n const res = await this.http.get<NewsContent>({ url: url, data: { \"newId\": newId } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 分页获取图文列表\r\n * @param params {channelNo?:指定栏目的内容, keyword?:关键字查询, pageNo:页码, pageSize:每页记录数, sortBy?:指定排序字段, sort?:排序方向'ASC' | 'DESC'}\r\n * @returns \r\n */\r\n async loadNewsPageInfo(params: Readonly<{ channelNo?: string, keyword?: string } & PageParams>): Promise<PageInfo<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsForPage';\r\n const res = await this.http.get<PageInfo<NewsContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<NewsContent>({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 依组ID分页获取图文列表\r\n * @param params {groupId:组ID}\r\n * @returns \r\n */\r\n async loadNewsPageInfoByGroupId(params: Readonly<{ groupId: string } & PageParams>): Promise<PageInfo<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsForPageByGroup';\r\n const res = await this.http.get<PageInfo<NewsContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg);\r\n }\r\n\r\n /**\r\n * 依组ID获取图文列表\r\n * @param params \r\n * @returns \r\n */\r\n async loadNewsListByGroupId(params: Readonly<{ groupId: string }>): Promise<Array<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsByGroup';\r\n const res = await this.http.get<Array<NewsContent>>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg);\r\n }\r\n //#endregion\r\n\r\n //#region ----相册内容\r\n\r\n //#region \r\n\r\n //#region ----视频内容\r\n\r\n //#endregion\r\n\r\n //#region ----活动内容\r\n\r\n //#endregion\r\n\r\n //#region ----订阅、评论、留言\r\n async loadReviewList(params: Readonly<{ entityNo?: string, rowCount?: string }>): Promise<Array<Reviews>> {\r\n const url = baseUrl.site + 'getReviewList';\r\n const res = await this.http.get<Array<Reviews>>({ url: url, data: { ...params, rowCount: params.rowCount ?? 20 } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg);\r\n }\r\n //#endregion\r\n\r\n}","import { FrameworkAdapter, HTTPRouter, RouteStorage, USER_TYPE_MAP } from \"@rock.chen/icms-http-client\";\r\nimport { helloURL } from \"./server\";\r\n\r\nconst APIMAP = {\r\n\r\n}\r\nexport const icmsRouter = async <T, R>({\r\n request,\r\n routeAdapter,\r\n storage\r\n}: Readonly<{\r\n request: T,\r\n routeAdapter: FrameworkAdapter\r\n storage: RouteStorage\r\n}>): Promise<R> => {\r\n const res = new HTTPRouter({\r\n \"config\": {\r\n \"userType\": USER_TYPE_MAP.TYPE_B,\r\n \"APIMAP\": APIMAP,\r\n \"helloURL\": helloURL\r\n },\r\n \"adapter\": routeAdapter,\r\n \"storage\": storage\r\n });\r\n return await res.handleRequest<T, R>(request);\r\n}"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"icms-api.cjs.js","names":["ne","Wt","values: Omit<ServerHttpOpts, 'userType' | 'helloURL'>","result: WebsiteInfo"],"sources":["../node_modules/@rock.chen/icms-http-client/dist/icms-http-client.es.js","../src/server.ts","../src/router.ts"],"sourcesContent":["import Gt from \"pino\";\nimport Xt from \"pino-pretty\";\nimport Wt from \"js-md5\";\nimport ne from \"crypto-js\";\nimport { getRequestURL as zt, parseCookies as Vt, readBody as st, readMultipartFormData as Kt, setResponseStatus as Yt, setHeader as Jt, setCookie as ye, deleteCookie as $t } from \"h3\";\nconst Dr = {\n GENERAL: 0,\n PHONE: 1,\n EMAIL: 2\n}, Qt = {\n TYPE_MGT: 0,\n TYPE_C: 1,\n TYPE_B: 2\n}, Mr = {\n FROM_WEB: 1,\n FROM_PC: 2,\n FROM_WX_MINI_PRO: 3,\n FROM_WX_PLU: 4,\n FROM_WX_E: 5,\n FROM_APP: 6,\n FROM_DEVICE: 7\n}, jr = {\n unknown: 0,\n male: 1,\n female: 2\n}, Zt = Xt({\n colorize: !0,\n destination: process.stdout,\n translateTime: \"SYS:yyyy-mm-dd HH:MM:ss\",\n ignore: \"pid,hostname\",\n messageFormat: \"{msg}\",\n singleLine: !0\n}), L = Gt({\n name: process.env.APP_NAME ?? \"iBoot\",\n level: process.env.APP_ENV === \"production\" ? \"info\" : \"debug\",\n nestedKey: \"payload\"\n}, Zt), er = {}, qr = (o) => Array.isArray(o) || typeof o == \"object\" && Object.prototype.toString.call(o) === \"[object Array]\", Dt = (o) => {\n const e = o || 32, t = \"ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678\", i = t.length;\n let n = \"\";\n for (let a = 0; a < e; a++)\n n += t.charAt(Math.floor(Math.random() * i));\n return n;\n}, Hr = (o, e) => {\n const t = {\n \"M+\": o.getMonth() + 1,\n //月份\n \"d+\": o.getDate(),\n //日\n \"h+\": o.getHours(),\n //小时\n \"m+\": o.getMinutes(),\n //分\n \"s+\": o.getSeconds(),\n //秒\n \"q+\": Math.floor((o.getMonth() + 3) / 3),\n //季度\n S: o.getMilliseconds()\n //毫秒\n };\n if (/(y+)/.test(e)) {\n const n = new RegExp(/(y+)/).exec(e);\n let a = 0;\n n && n.length > 0 && (a = n[0].length), e = e.replace(/(y+)/, o.getFullYear() + \"\").substring(4 - a);\n }\n for (const i in t) {\n const n = \"(\" + i + \")\", a = new RegExp(n);\n if (a.test(e)) {\n const c = a.exec(e);\n let r = 0;\n c && c.length > 0 && (r = c[0].length), e = e.replace(a, r == 1 ? t[i].toString() : (\"00\" + t[i]).substring(t[i].toString().length));\n }\n }\n return e;\n};\nfunction tr() {\n try {\n const o = er.networkInterfaces();\n for (const e of Object.keys(o)) {\n const t = o[e];\n if (t) {\n for (const i of t)\n if (i.mac && i.mac !== \"00:00:00:00:00:00\")\n return i.mac.replace(/:/g, \"\").toUpperCase();\n }\n }\n return crypto.randomUUID().replace(/-/g, \"\").toUpperCase();\n } catch {\n return Dt(10);\n }\n}\nvar we = { exports: {} }, Te = {}, Se = {}, Ie = {}, at;\nfunction rr() {\n return at || (at = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"detectDomainLocale\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, i, n) {\n if (t) {\n n && (n = n.toLowerCase());\n for (const r of t) {\n var a, c;\n const d = (a = r.domain) == null ? void 0 : a.split(\":\", 1)[0].toLowerCase();\n if (i === d || n === r.defaultLocale.toLowerCase() || (c = r.locales) != null && c.some((h) => h.toLowerCase() === n))\n return r;\n }\n }\n }\n })(Ie)), Ie;\n}\nvar Ae = {}, Oe = {}, ut;\nfunction nr() {\n return ut || (ut = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"removeTrailingSlash\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t) {\n return t.replace(/\\/$/, \"\") || \"/\";\n }\n })(Oe)), Oe;\n}\nvar xe = {}, Ne = {}, ct;\nfunction et() {\n return ct || (ct = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"parsePath\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t) {\n const i = t.indexOf(\"#\"), n = t.indexOf(\"?\"), a = n > -1 && (i < 0 || n < i);\n return a || i > -1 ? {\n pathname: t.substring(0, a ? n : i),\n query: a ? t.substring(n, i > -1 ? i : void 0) : \"\",\n hash: i > -1 ? t.slice(i) : \"\"\n } : {\n pathname: t,\n query: \"\",\n hash: \"\"\n };\n }\n })(Ne)), Ne;\n}\nvar lt;\nfunction Mt() {\n return lt || (lt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addPathPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(i, n) {\n if (!i.startsWith(\"/\") || !n)\n return i;\n const { pathname: a, query: c, hash: r } = (0, e.parsePath)(i);\n return \"\" + n + a + c + r;\n }\n })(xe)), xe;\n}\nvar Ce = {}, dt;\nfunction ir() {\n return dt || (dt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addPathSuffix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(i, n) {\n if (!i.startsWith(\"/\") || !n)\n return i;\n const { pathname: a, query: c, hash: r } = (0, e.parsePath)(i);\n return \"\" + a + n + c + r;\n }\n })(Ce)), Ce;\n}\nvar Le = {}, ke = {}, ht;\nfunction tt() {\n return ht || (ht = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"pathHasPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = et();\n function t(i, n) {\n if (typeof i != \"string\")\n return !1;\n const { pathname: a } = (0, e.parsePath)(i);\n return a === n || a.startsWith(n + \"/\");\n }\n })(ke)), ke;\n}\nvar ft;\nfunction or() {\n return ft || (ft = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"addLocale\", {\n enumerable: !0,\n get: function() {\n return i;\n }\n });\n const e = Mt(), t = tt();\n function i(n, a, c, r) {\n if (!a || a === c) return n;\n const d = n.toLowerCase();\n return !r && ((0, t.pathHasPrefix)(d, \"/api\") || (0, t.pathHasPrefix)(d, \"/\" + a.toLowerCase())) ? n : (0, e.addPathPrefix)(n, \"/\" + a);\n }\n })(Le)), Le;\n}\nvar pt;\nfunction sr() {\n return pt || (pt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"formatNextPathnameInfo\", {\n enumerable: !0,\n get: function() {\n return a;\n }\n });\n const e = nr(), t = Mt(), i = ir(), n = or();\n function a(c) {\n let r = (0, n.addLocale)(c.pathname, c.locale, c.buildId ? void 0 : c.defaultLocale, c.ignorePrefix);\n return (c.buildId || !c.trailingSlash) && (r = (0, e.removeTrailingSlash)(r)), c.buildId && (r = (0, i.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, i.addPathSuffix)(r, \"/\") : (0, e.removeTrailingSlash)(r);\n }\n })(Ae)), Ae;\n}\nvar Ue = {}, mt;\nfunction ar() {\n return mt || (mt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"getHostname\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, i) {\n let n;\n if (i?.host && !Array.isArray(i.host))\n n = i.host.toString().split(\":\", 1)[0];\n else if (t.hostname)\n n = t.hostname;\n else return;\n return n.toLowerCase();\n }\n })(Ue)), Ue;\n}\nvar De = {}, Me = {}, _t;\nfunction ur() {\n return _t || (_t = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"normalizeLocalePath\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e(t, i) {\n let n;\n const a = t.split(\"/\");\n return (i || []).some((c) => a[1] && a[1].toLowerCase() === c.toLowerCase() ? (n = c, a.splice(1, 1), t = a.join(\"/\") || \"/\", !0) : !1), {\n pathname: t,\n detectedLocale: n\n };\n }\n })(Me)), Me;\n}\nvar je = {}, bt;\nfunction cr() {\n return bt || (bt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"removePathPrefix\", {\n enumerable: !0,\n get: function() {\n return t;\n }\n });\n const e = tt();\n function t(i, n) {\n if (!(0, e.pathHasPrefix)(i, n))\n return i;\n const a = i.slice(n.length);\n return a.startsWith(\"/\") ? a : \"/\" + a;\n }\n })(je)), je;\n}\nvar gt;\nfunction lr() {\n return gt || (gt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"getNextPathnameInfo\", {\n enumerable: !0,\n get: function() {\n return n;\n }\n });\n const e = ur(), t = cr(), i = tt();\n function n(a, c) {\n var r;\n const { basePath: d, i18n: h, trailingSlash: u } = (r = c.nextConfig) != null ? r : {}, m = {\n pathname: a,\n trailingSlash: a !== \"/\" ? a.endsWith(\"/\") : u\n };\n d && (0, i.pathHasPrefix)(m.pathname, d) && (m.pathname = (0, t.removePathPrefix)(m.pathname, d), m.basePath = d);\n let g = m.pathname;\n if (m.pathname.startsWith(\"/_next/data/\") && m.pathname.endsWith(\".json\")) {\n const y = m.pathname.replace(/^\\/_next\\/data\\//, \"\").replace(/\\.json$/, \"\").split(\"/\"), A = y[0];\n m.buildId = A, g = y[1] !== \"index\" ? \"/\" + y.slice(1).join(\"/\") : \"/\", c.parseData === !0 && (m.pathname = g);\n }\n if (h) {\n let y = c.i18nProvider ? c.i18nProvider.analyze(m.pathname) : (0, e.normalizeLocalePath)(m.pathname, h.locales);\n m.locale = y.detectedLocale;\n var R;\n m.pathname = (R = y.pathname) != null ? R : m.pathname, !y.detectedLocale && m.buildId && (y = c.i18nProvider ? c.i18nProvider.analyze(g) : (0, e.normalizeLocalePath)(g, h.locales), y.detectedLocale && (m.locale = y.detectedLocale));\n }\n return m;\n }\n })(De)), De;\n}\nvar wt;\nfunction jt() {\n return wt || (wt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"NextURL\", {\n enumerable: !0,\n get: function() {\n return d;\n }\n });\n const e = rr(), t = sr(), i = ar(), n = lr(), a = /(?!^https?:\\/\\/)(127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\\[::1\\]|localhost)/;\n function c(h, u) {\n return new URL(String(h).replace(a, \"localhost\"), u && String(u).replace(a, \"localhost\"));\n }\n const r = /* @__PURE__ */ Symbol(\"NextURLInternal\");\n class d {\n constructor(u, m, g) {\n let R, y;\n typeof m == \"object\" && \"pathname\" in m || typeof m == \"string\" ? (R = m, y = g || {}) : y = g || m || {}, this[r] = {\n url: c(u, R ?? y.base),\n options: y,\n basePath: \"\"\n }, this.analyze();\n }\n analyze() {\n var u, m, g, R, y;\n const A = (0, n.getNextPathnameInfo)(this[r].url.pathname, {\n nextConfig: this[r].options.nextConfig,\n parseData: !process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE,\n i18nProvider: this[r].options.i18nProvider\n }), l = (0, i.getHostname)(this[r].url, this[r].options.headers);\n this[r].domainLocale = this[r].options.i18nProvider ? this[r].options.i18nProvider.detectDomainLocale(l) : (0, e.detectDomainLocale)((m = this[r].options.nextConfig) == null || (u = m.i18n) == null ? void 0 : u.domains, l);\n const b = ((g = this[r].domainLocale) == null ? void 0 : g.defaultLocale) || ((y = this[r].options.nextConfig) == null || (R = y.i18n) == null ? void 0 : R.defaultLocale);\n this[r].url.pathname = A.pathname, this[r].defaultLocale = b, this[r].basePath = A.basePath ?? \"\", this[r].buildId = A.buildId, this[r].locale = A.locale ?? b, this[r].trailingSlash = A.trailingSlash;\n }\n formatPathname() {\n return (0, t.formatNextPathnameInfo)({\n basePath: this[r].basePath,\n buildId: this[r].buildId,\n defaultLocale: this[r].options.forceLocale ? void 0 : this[r].defaultLocale,\n locale: this[r].locale,\n pathname: this[r].url.pathname,\n trailingSlash: this[r].trailingSlash\n });\n }\n formatSearch() {\n return this[r].url.search;\n }\n get buildId() {\n return this[r].buildId;\n }\n set buildId(u) {\n this[r].buildId = u;\n }\n get locale() {\n return this[r].locale ?? \"\";\n }\n set locale(u) {\n var m, g;\n if (!this[r].locale || !(!((g = this[r].options.nextConfig) == null || (m = g.i18n) == null) && m.locales.includes(u)))\n throw new TypeError(`The NextURL configuration includes no locale \"${u}\"`);\n this[r].locale = u;\n }\n get defaultLocale() {\n return this[r].defaultLocale;\n }\n get domainLocale() {\n return this[r].domainLocale;\n }\n get searchParams() {\n return this[r].url.searchParams;\n }\n get host() {\n return this[r].url.host;\n }\n set host(u) {\n this[r].url.host = u;\n }\n get hostname() {\n return this[r].url.hostname;\n }\n set hostname(u) {\n this[r].url.hostname = u;\n }\n get port() {\n return this[r].url.port;\n }\n set port(u) {\n this[r].url.port = u;\n }\n get protocol() {\n return this[r].url.protocol;\n }\n set protocol(u) {\n this[r].url.protocol = u;\n }\n get href() {\n const u = this.formatPathname(), m = this.formatSearch();\n return `${this.protocol}//${this.host}${u}${m}${this.hash}`;\n }\n set href(u) {\n this[r].url = c(u), this.analyze();\n }\n get origin() {\n return this[r].url.origin;\n }\n get pathname() {\n return this[r].url.pathname;\n }\n set pathname(u) {\n this[r].url.pathname = u;\n }\n get hash() {\n return this[r].url.hash;\n }\n set hash(u) {\n this[r].url.hash = u;\n }\n get search() {\n return this[r].url.search;\n }\n set search(u) {\n this[r].url.search = u;\n }\n get password() {\n return this[r].url.password;\n }\n set password(u) {\n this[r].url.password = u;\n }\n get username() {\n return this[r].url.username;\n }\n set username(u) {\n this[r].url.username = u;\n }\n get basePath() {\n return this[r].basePath;\n }\n set basePath(u) {\n this[r].basePath = u.startsWith(\"/\") ? u : `/${u}`;\n }\n toString() {\n return this.href;\n }\n toJSON() {\n return this.href;\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n href: this.href,\n origin: this.origin,\n protocol: this.protocol,\n username: this.username,\n password: this.password,\n host: this.host,\n hostname: this.hostname,\n port: this.port,\n pathname: this.pathname,\n search: this.search,\n searchParams: this.searchParams,\n hash: this.hash\n };\n }\n clone() {\n return new d(String(this), this[r].options);\n }\n }\n })(Se)), Se;\n}\nvar qe = {}, He = {}, Et;\nfunction dr() {\n return Et || (Et = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(_e, be) {\n for (var J in be) Object.defineProperty(_e, J, {\n enumerable: !0,\n get: be[J]\n });\n }\n e(o, {\n ACTION_SUFFIX: function() {\n return d;\n },\n APP_DIR_ALIAS: function() {\n return j;\n },\n CACHE_ONE_YEAR: function() {\n return E;\n },\n DOT_NEXT_ALIAS: function() {\n return P;\n },\n ESLINT_DEFAULT_DIRS: function() {\n return te;\n },\n GSP_NO_RETURNED_VALUE: function() {\n return oe;\n },\n GSSP_COMPONENT_MEMBER_ERROR: function() {\n return ee;\n },\n GSSP_NO_RETURNED_VALUE: function() {\n return se;\n },\n INSTRUMENTATION_HOOK_FILENAME: function() {\n return p;\n },\n MIDDLEWARE_FILENAME: function() {\n return s;\n },\n MIDDLEWARE_LOCATION_REGEXP: function() {\n return v;\n },\n NEXT_BODY_SUFFIX: function() {\n return m;\n },\n NEXT_CACHE_IMPLICIT_TAG_ID: function() {\n return _;\n },\n NEXT_CACHE_REVALIDATED_TAGS_HEADER: function() {\n return y;\n },\n NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER: function() {\n return A;\n },\n NEXT_CACHE_SOFT_TAGS_HEADER: function() {\n return R;\n },\n NEXT_CACHE_SOFT_TAG_MAX_LENGTH: function() {\n return f;\n },\n NEXT_CACHE_TAGS_HEADER: function() {\n return g;\n },\n NEXT_CACHE_TAG_MAX_ITEMS: function() {\n return l;\n },\n NEXT_CACHE_TAG_MAX_LENGTH: function() {\n return b;\n },\n NEXT_DATA_SUFFIX: function() {\n return h;\n },\n NEXT_INTERCEPTION_MARKER_PREFIX: function() {\n return i;\n },\n NEXT_META_SUFFIX: function() {\n return u;\n },\n NEXT_QUERY_PARAM_PREFIX: function() {\n return t;\n },\n NON_STANDARD_NODE_ENV: function() {\n return ae;\n },\n PAGES_DIR_ALIAS: function() {\n return w;\n },\n PRERENDER_REVALIDATE_HEADER: function() {\n return n;\n },\n PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER: function() {\n return a;\n },\n PUBLIC_DIR_MIDDLEWARE_CONFLICT: function() {\n return B;\n },\n ROOT_DIR_ALIAS: function() {\n return N;\n },\n RSC_ACTION_CLIENT_WRAPPER_ALIAS: function() {\n return Q;\n },\n RSC_ACTION_ENCRYPTION_ALIAS: function() {\n return $;\n },\n RSC_ACTION_PROXY_ALIAS: function() {\n return q;\n },\n RSC_ACTION_VALIDATE_ALIAS: function() {\n return F;\n },\n RSC_MOD_REF_PROXY_ALIAS: function() {\n return D;\n },\n RSC_PREFETCH_SUFFIX: function() {\n return c;\n },\n RSC_SUFFIX: function() {\n return r;\n },\n SERVER_PROPS_EXPORT_ERROR: function() {\n return de;\n },\n SERVER_PROPS_GET_INIT_PROPS_CONFLICT: function() {\n return ie;\n },\n SERVER_PROPS_SSG_CONFLICT: function() {\n return z;\n },\n SERVER_RUNTIME: function() {\n return ue;\n },\n SSG_FALLBACK_EXPORT_ERROR: function() {\n return fe;\n },\n SSG_GET_INITIAL_PROPS_CONFLICT: function() {\n return W;\n },\n STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR: function() {\n return Z;\n },\n UNSTABLE_REVALIDATE_RENAME_ERROR: function() {\n return he;\n },\n WEBPACK_LAYERS: function() {\n return pe;\n },\n WEBPACK_RESOURCE_QUERIES: function() {\n return me;\n }\n });\n const t = \"nxtP\", i = \"nxtI\", n = \"x-prerender-revalidate\", a = \"x-prerender-revalidate-if-generated\", c = \".prefetch.rsc\", r = \".rsc\", d = \".action\", h = \".json\", u = \".meta\", m = \".body\", g = \"x-next-cache-tags\", R = \"x-next-cache-soft-tags\", y = \"x-next-revalidated-tags\", A = \"x-next-revalidate-tag-token\", l = 128, b = 256, f = 1024, _ = \"_N_T_\", E = 31536e3, s = \"middleware\", v = `(?:src/)?${s}`, p = \"instrumentation\", w = \"private-next-pages\", P = \"private-dot-next\", N = \"private-next-root-dir\", j = \"private-next-app-dir\", D = \"private-next-rsc-mod-ref-proxy\", F = \"private-next-rsc-action-validate\", q = \"private-next-rsc-server-reference\", $ = \"private-next-rsc-action-encryption\", Q = \"private-next-rsc-action-client-wrapper\", B = \"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 = [\n \"app\",\n \"pages\",\n \"components\",\n \"lib\",\n \"src\"\n ], ue = {\n edge: \"edge\",\n experimentalEdge: \"experimental-edge\",\n nodejs: \"nodejs\"\n }, k = {\n /**\n * The layer for the shared code between the client and server bundles.\n */\n shared: \"shared\",\n /**\n * React Server Components layer (rsc).\n */\n reactServerComponents: \"rsc\",\n /**\n * Server Side Rendering layer for app (ssr).\n */\n serverSideRendering: \"ssr\",\n /**\n * The browser client bundle layer for actions.\n */\n actionBrowser: \"action-browser\",\n /**\n * The layer for the API routes.\n */\n api: \"api\",\n /**\n * The layer for the middleware code.\n */\n middleware: \"middleware\",\n /**\n * The layer for the instrumentation hooks.\n */\n instrument: \"instrument\",\n /**\n * The layer for assets on the edge.\n */\n edgeAsset: \"edge-asset\",\n /**\n * The browser client bundle layer for App directory.\n */\n appPagesBrowser: \"app-pages-browser\",\n /**\n * The server bundle layer for metadata routes.\n */\n appMetadataRoute: \"app-metadata-route\",\n /**\n * The layer for the server bundle for App Route handlers.\n */\n appRouteHandler: \"app-route-handler\"\n }, pe = {\n ...k,\n GROUP: {\n serverOnly: [\n k.reactServerComponents,\n k.actionBrowser,\n k.appMetadataRoute,\n k.appRouteHandler,\n k.instrument\n ],\n clientOnly: [\n k.serverSideRendering,\n k.appPagesBrowser\n ],\n nonClientServerTarget: [\n // middleware and pages api\n k.middleware,\n k.api\n ],\n app: [\n k.reactServerComponents,\n k.actionBrowser,\n k.appMetadataRoute,\n k.appRouteHandler,\n k.serverSideRendering,\n k.appPagesBrowser,\n k.shared,\n k.instrument\n ]\n }\n }, me = {\n edgeSSREntry: \"__next_edge_ssr_entry__\",\n metadata: \"__next_metadata__\",\n metadataRoute: \"__next_metadata_route__\",\n metadataImageMeta: \"__next_metadata_image_meta__\"\n };\n })(He)), He;\n}\nvar vt;\nfunction qt() {\n return vt || (vt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(d, h) {\n for (var u in h) Object.defineProperty(d, u, {\n enumerable: !0,\n get: h[u]\n });\n }\n e(o, {\n fromNodeOutgoingHttpHeaders: function() {\n return i;\n },\n normalizeNextQueryParam: function() {\n return r;\n },\n splitCookiesString: function() {\n return n;\n },\n toNodeOutgoingHttpHeaders: function() {\n return a;\n },\n validateURL: function() {\n return c;\n }\n });\n const t = dr();\n function i(d) {\n const h = new Headers();\n for (let [u, m] of Object.entries(d)) {\n const g = Array.isArray(m) ? m : [\n m\n ];\n for (let R of g)\n typeof R > \"u\" || (typeof R == \"number\" && (R = R.toString()), h.append(u, R));\n }\n return h;\n }\n function n(d) {\n var h = [], u = 0, m, g, R, y, A;\n function l() {\n for (; u < d.length && /\\s/.test(d.charAt(u)); )\n u += 1;\n return u < d.length;\n }\n function b() {\n return g = d.charAt(u), g !== \"=\" && g !== \";\" && g !== \",\";\n }\n for (; u < d.length; ) {\n for (m = u, A = !1; l(); )\n if (g = d.charAt(u), g === \",\") {\n for (R = u, u += 1, l(), y = u; u < d.length && b(); )\n u += 1;\n u < d.length && d.charAt(u) === \"=\" ? (A = !0, u = y, h.push(d.substring(m, R)), m = u) : u = R + 1;\n } else\n u += 1;\n (!A || u >= d.length) && h.push(d.substring(m, d.length));\n }\n return h;\n }\n function a(d) {\n const h = {}, u = [];\n if (d)\n for (const [m, g] of d.entries())\n m.toLowerCase() === \"set-cookie\" ? (u.push(...n(g)), h[m] = u.length === 1 ? u[0] : u) : h[m] = g;\n return h;\n }\n function c(d) {\n try {\n return String(new URL(String(d)));\n } catch (h) {\n throw new Error(`URL is malformed \"${String(d)}\". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`, {\n cause: h\n });\n }\n }\n function r(d, h) {\n const u = [\n t.NEXT_QUERY_PARAM_PREFIX,\n t.NEXT_INTERCEPTION_MARKER_PREFIX\n ];\n for (const m of u)\n if (d !== m && d.startsWith(m)) {\n const g = d.substring(m.length);\n h(g);\n }\n }\n })(qe)), qe;\n}\nvar Fe = {}, Rt;\nfunction hr() {\n return Rt || (Rt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(a, c) {\n for (var r in c) Object.defineProperty(a, r, {\n enumerable: !0,\n get: c[r]\n });\n }\n e(o, {\n PageSignatureError: function() {\n return t;\n },\n RemovedPageError: function() {\n return i;\n },\n RemovedUAError: function() {\n return n;\n }\n });\n class t extends Error {\n constructor({ page: c }) {\n super(`The middleware \"${c}\" accepts an async API directly with the form:\n \n export function middleware(request, event) {\n return NextResponse.redirect('/new-location')\n }\n \n Read more: https://nextjs.org/docs/messages/middleware-new-signature\n `);\n }\n }\n class i extends Error {\n constructor() {\n super(\"The request.page has been deprecated in favour of `URLPattern`.\\n Read more: https://nextjs.org/docs/messages/middleware-request-page\\n \");\n }\n }\n class n extends Error {\n constructor() {\n 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 \");\n }\n }\n })(Fe)), Fe;\n}\nvar Be = {}, Ge, Pt;\nfunction fr() {\n if (Pt) return Ge;\n Pt = 1;\n var o = Object.defineProperty, e = Object.getOwnPropertyDescriptor, t = Object.getOwnPropertyNames, i = Object.prototype.hasOwnProperty, n = (s, v) => {\n for (var p in v)\n o(s, p, { get: v[p], enumerable: !0 });\n }, a = (s, v, p, w) => {\n if (v && typeof v == \"object\" || typeof v == \"function\")\n for (let P of t(v))\n !i.call(s, P) && P !== p && o(s, P, { get: () => v[P], enumerable: !(w = e(v, P)) || w.enumerable });\n return s;\n }, c = (s) => a(o({}, \"__esModule\", { value: !0 }), s), r = {};\n n(r, {\n RequestCookies: () => b,\n ResponseCookies: () => f,\n parseCookie: () => h,\n parseSetCookie: () => u,\n stringifyCookie: () => d\n }), Ge = c(r);\n function d(s) {\n var v;\n const p = [\n \"path\" in s && s.path && `Path=${s.path}`,\n \"expires\" in s && (s.expires || s.expires === 0) && `Expires=${(typeof s.expires == \"number\" ? new Date(s.expires) : s.expires).toUTCString()}`,\n \"maxAge\" in s && typeof s.maxAge == \"number\" && `Max-Age=${s.maxAge}`,\n \"domain\" in s && s.domain && `Domain=${s.domain}`,\n \"secure\" in s && s.secure && \"Secure\",\n \"httpOnly\" in s && s.httpOnly && \"HttpOnly\",\n \"sameSite\" in s && s.sameSite && `SameSite=${s.sameSite}`,\n \"partitioned\" in s && s.partitioned && \"Partitioned\",\n \"priority\" in s && s.priority && `Priority=${s.priority}`\n ].filter(Boolean), w = `${s.name}=${encodeURIComponent((v = s.value) != null ? v : \"\")}`;\n return p.length === 0 ? w : `${w}; ${p.join(\"; \")}`;\n }\n function h(s) {\n const v = /* @__PURE__ */ new Map();\n for (const p of s.split(/; */)) {\n if (!p)\n continue;\n const w = p.indexOf(\"=\");\n if (w === -1) {\n v.set(p, \"true\");\n continue;\n }\n const [P, N] = [p.slice(0, w), p.slice(w + 1)];\n try {\n v.set(P, decodeURIComponent(N ?? \"true\"));\n } catch {\n }\n }\n return v;\n }\n function u(s) {\n if (!s)\n return;\n const [[v, p], ...w] = h(s), {\n domain: P,\n expires: N,\n httponly: j,\n maxage: D,\n path: F,\n samesite: q,\n secure: $,\n partitioned: Q,\n priority: B\n } = Object.fromEntries(\n w.map(([ie, z]) => [ie.toLowerCase(), z])\n ), W = {\n name: v,\n value: decodeURIComponent(p),\n domain: P,\n ...N && { expires: new Date(N) },\n ...j && { httpOnly: !0 },\n ...typeof D == \"string\" && { maxAge: Number(D) },\n path: F,\n ...q && { sameSite: R(q) },\n ...$ && { secure: !0 },\n ...B && { priority: A(B) },\n ...Q && { partitioned: !0 }\n };\n return m(W);\n }\n function m(s) {\n const v = {};\n for (const p in s)\n s[p] && (v[p] = s[p]);\n return v;\n }\n var g = [\"strict\", \"lax\", \"none\"];\n function R(s) {\n return s = s.toLowerCase(), g.includes(s) ? s : void 0;\n }\n var y = [\"low\", \"medium\", \"high\"];\n function A(s) {\n return s = s.toLowerCase(), y.includes(s) ? s : void 0;\n }\n function l(s) {\n if (!s)\n return [];\n var v = [], p = 0, w, P, N, j, D;\n function F() {\n for (; p < s.length && /\\s/.test(s.charAt(p)); )\n p += 1;\n return p < s.length;\n }\n function q() {\n return P = s.charAt(p), P !== \"=\" && P !== \";\" && P !== \",\";\n }\n for (; p < s.length; ) {\n for (w = p, D = !1; F(); )\n if (P = s.charAt(p), P === \",\") {\n for (N = p, p += 1, F(), j = p; p < s.length && q(); )\n p += 1;\n p < s.length && s.charAt(p) === \"=\" ? (D = !0, p = j, v.push(s.substring(w, N)), w = p) : p = N + 1;\n } else\n p += 1;\n (!D || p >= s.length) && v.push(s.substring(w, s.length));\n }\n return v;\n }\n var b = class {\n constructor(s) {\n this._parsed = /* @__PURE__ */ new Map(), this._headers = s;\n const v = s.get(\"cookie\");\n if (v) {\n const p = h(v);\n for (const [w, P] of p)\n this._parsed.set(w, { name: w, value: P });\n }\n }\n [Symbol.iterator]() {\n return this._parsed[Symbol.iterator]();\n }\n /**\n * The amount of cookies received from the client\n */\n get size() {\n return this._parsed.size;\n }\n get(...s) {\n const v = typeof s[0] == \"string\" ? s[0] : s[0].name;\n return this._parsed.get(v);\n }\n getAll(...s) {\n var v;\n const p = Array.from(this._parsed);\n if (!s.length)\n return p.map(([P, N]) => N);\n const w = typeof s[0] == \"string\" ? s[0] : (v = s[0]) == null ? void 0 : v.name;\n return p.filter(([P]) => P === w).map(([P, N]) => N);\n }\n has(s) {\n return this._parsed.has(s);\n }\n set(...s) {\n const [v, p] = s.length === 1 ? [s[0].name, s[0].value] : s, w = this._parsed;\n return w.set(v, { name: v, value: p }), this._headers.set(\n \"cookie\",\n Array.from(w).map(([P, N]) => d(N)).join(\"; \")\n ), this;\n }\n /**\n * Delete the cookies matching the passed name or names in the request.\n */\n delete(s) {\n const v = this._parsed, p = Array.isArray(s) ? s.map((w) => v.delete(w)) : v.delete(s);\n return this._headers.set(\n \"cookie\",\n Array.from(v).map(([w, P]) => d(P)).join(\"; \")\n ), p;\n }\n /**\n * Delete all the cookies in the cookies in the request.\n */\n clear() {\n return this.delete(Array.from(this._parsed.keys())), this;\n }\n /**\n * Format the cookies in the request as a string for logging\n */\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map((s) => `${s.name}=${encodeURIComponent(s.value)}`).join(\"; \");\n }\n }, f = class {\n constructor(s) {\n this._parsed = /* @__PURE__ */ new Map();\n var v, p, w;\n this._headers = s;\n const P = (w = (p = (v = s.getSetCookie) == null ? void 0 : v.call(s)) != null ? p : s.get(\"set-cookie\")) != null ? w : [], N = Array.isArray(P) ? P : l(P);\n for (const j of N) {\n const D = u(j);\n D && this._parsed.set(D.name, D);\n }\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-get CookieStore#get} without the Promise.\n */\n get(...s) {\n const v = typeof s[0] == \"string\" ? s[0] : s[0].name;\n return this._parsed.get(v);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-getAll CookieStore#getAll} without the Promise.\n */\n getAll(...s) {\n var v;\n const p = Array.from(this._parsed.values());\n if (!s.length)\n return p;\n const w = typeof s[0] == \"string\" ? s[0] : (v = s[0]) == null ? void 0 : v.name;\n return p.filter((P) => P.name === w);\n }\n has(s) {\n return this._parsed.has(s);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-set CookieStore#set} without the Promise.\n */\n set(...s) {\n const [v, p, w] = s.length === 1 ? [s[0].name, s[0].value, s[0]] : s, P = this._parsed;\n return P.set(v, E({ name: v, value: p, ...w })), _(P, this._headers), this;\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-delete CookieStore#delete} without the Promise.\n */\n delete(...s) {\n const [v, p, w] = typeof s[0] == \"string\" ? [s[0]] : [s[0].name, s[0].path, s[0].domain];\n return this.set({ name: v, path: p, domain: w, value: \"\", expires: /* @__PURE__ */ new Date(0) });\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map(d).join(\"; \");\n }\n };\n function _(s, v) {\n v.delete(\"set-cookie\");\n for (const [, p] of s) {\n const w = d(p);\n v.append(\"set-cookie\", w);\n }\n }\n function E(s = { name: \"\", value: \"\" }) {\n 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;\n }\n return Ge;\n}\nvar yt;\nfunction $e() {\n return yt || (yt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(i, n) {\n for (var a in n) Object.defineProperty(i, a, {\n enumerable: !0,\n get: n[a]\n });\n }\n e(o, {\n RequestCookies: function() {\n return t.RequestCookies;\n },\n ResponseCookies: function() {\n return t.ResponseCookies;\n },\n stringifyCookie: function() {\n return t.stringifyCookie;\n }\n });\n const t = fr();\n })(Be)), Be;\n}\nvar Tt;\nfunction pr() {\n return Tt || (Tt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(d, h) {\n for (var u in h) Object.defineProperty(d, u, {\n enumerable: !0,\n get: h[u]\n });\n }\n e(o, {\n INTERNALS: function() {\n return c;\n },\n NextRequest: function() {\n return r;\n }\n });\n const t = jt(), i = qt(), n = hr(), a = $e(), c = /* @__PURE__ */ Symbol(\"internal request\");\n class r extends Request {\n constructor(h, u = {}) {\n const m = typeof h != \"string\" && \"url\" in h ? h.url : String(h);\n (0, i.validateURL)(m), h instanceof Request ? super(h, u) : super(m, u);\n const g = new t.NextURL(m, {\n headers: (0, i.toNodeOutgoingHttpHeaders)(this.headers),\n nextConfig: u.nextConfig\n });\n this[c] = {\n cookies: new a.RequestCookies(this.headers),\n geo: u.geo || {},\n ip: u.ip,\n nextUrl: g,\n url: process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE ? m : g.toString()\n };\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n cookies: this.cookies,\n geo: this.geo,\n ip: this.ip,\n nextUrl: this.nextUrl,\n url: this.url,\n // rest of props come from Request\n bodyUsed: this.bodyUsed,\n cache: this.cache,\n credentials: this.credentials,\n destination: this.destination,\n headers: Object.fromEntries(this.headers),\n integrity: this.integrity,\n keepalive: this.keepalive,\n method: this.method,\n mode: this.mode,\n redirect: this.redirect,\n referrer: this.referrer,\n referrerPolicy: this.referrerPolicy,\n signal: this.signal\n };\n }\n get cookies() {\n return this[c].cookies;\n }\n get geo() {\n return this[c].geo;\n }\n get ip() {\n return this[c].ip;\n }\n get nextUrl() {\n return this[c].nextUrl;\n }\n /**\n * @deprecated\n * `page` has been deprecated in favour of `URLPattern`.\n * Read more: https://nextjs.org/docs/messages/middleware-request-page\n */\n get page() {\n throw new n.RemovedPageError();\n }\n /**\n * @deprecated\n * `ua` has been removed in favour of \\`userAgent\\` function.\n * Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent\n */\n get ua() {\n throw new n.RemovedUAError();\n }\n get url() {\n return this[c].url;\n }\n }\n })(Te)), Te;\n}\nvar Xe = {}, We = {}, St;\nfunction mr() {\n return St || (St = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"ReflectAdapter\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n class e {\n static get(i, n, a) {\n const c = Reflect.get(i, n, a);\n return typeof c == \"function\" ? c.bind(i) : c;\n }\n static set(i, n, a, c) {\n return Reflect.set(i, n, a, c);\n }\n static has(i, n) {\n return Reflect.has(i, n);\n }\n static deleteProperty(i, n) {\n return Reflect.deleteProperty(i, n);\n }\n }\n })(We)), We;\n}\nvar It;\nfunction _r() {\n return It || (It = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"NextResponse\", {\n enumerable: !0,\n get: function() {\n return h;\n }\n });\n const e = $e(), t = jt(), i = qt(), n = mr(), a = $e(), c = /* @__PURE__ */ Symbol(\"internal response\"), r = /* @__PURE__ */ new Set([\n 301,\n 302,\n 303,\n 307,\n 308\n ]);\n function d(u, m) {\n var g;\n if (!(u == null || (g = u.request) == null) && g.headers) {\n if (!(u.request.headers instanceof Headers))\n throw new Error(\"request.headers must be an instance of Headers\");\n const R = [];\n for (const [y, A] of u.request.headers)\n m.set(\"x-middleware-request-\" + y, A), R.push(y);\n m.set(\"x-middleware-override-headers\", R.join(\",\"));\n }\n }\n class h extends Response {\n constructor(m, g = {}) {\n super(m, g);\n const R = this.headers, y = new a.ResponseCookies(R), A = new Proxy(y, {\n get(l, b, f) {\n switch (b) {\n case \"delete\":\n case \"set\":\n return (..._) => {\n const E = Reflect.apply(l[b], l, _), s = new Headers(R);\n return E instanceof a.ResponseCookies && R.set(\"x-middleware-set-cookie\", E.getAll().map((v) => (0, e.stringifyCookie)(v)).join(\",\")), d(g, s), E;\n };\n default:\n return n.ReflectAdapter.get(l, b, f);\n }\n }\n });\n this[c] = {\n cookies: A,\n url: g.url ? new t.NextURL(g.url, {\n headers: (0, i.toNodeOutgoingHttpHeaders)(R),\n nextConfig: g.nextConfig\n }) : void 0\n };\n }\n [/* @__PURE__ */ Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return {\n cookies: this.cookies,\n url: this.url,\n // rest of props come from Response\n body: this.body,\n bodyUsed: this.bodyUsed,\n headers: Object.fromEntries(this.headers),\n ok: this.ok,\n redirected: this.redirected,\n status: this.status,\n statusText: this.statusText,\n type: this.type\n };\n }\n get cookies() {\n return this[c].cookies;\n }\n static json(m, g) {\n const R = Response.json(m, g);\n return new h(R.body, R);\n }\n static redirect(m, g) {\n const R = typeof g == \"number\" ? g : g?.status ?? 307;\n if (!r.has(R))\n throw new RangeError('Failed to execute \"redirect\" on \"response\": Invalid status code');\n const y = typeof g == \"object\" ? g : {}, A = new Headers(y?.headers);\n return A.set(\"Location\", (0, i.validateURL)(m)), new h(null, {\n ...y,\n headers: A,\n status: R\n });\n }\n static rewrite(m, g) {\n const R = new Headers(g?.headers);\n return R.set(\"x-middleware-rewrite\", (0, i.validateURL)(m)), d(g, R), new h(null, {\n ...g,\n headers: R\n });\n }\n static next(m) {\n const g = new Headers(m?.headers);\n return g.set(\"x-middleware-next\", \"1\"), d(m, g), new h(null, {\n ...m,\n headers: g\n });\n }\n }\n })(Xe)), Xe;\n}\nvar ze = {}, At;\nfunction br() {\n return At || (At = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"ImageResponse\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n function e() {\n throw new Error('ImageResponse moved from \"next/server\" to \"next/og\" since Next.js 14, please import from \"next/og\" instead');\n }\n })(ze)), ze;\n}\nvar Ve = {}, Ke = { exports: {} }, Ot;\nfunction gr() {\n return Ot || (Ot = 1, (() => {\n var o = { 226: function(n, a) {\n (function(c, r) {\n var d = \"1.0.35\", h = \"\", u = \"?\", m = \"function\", g = \"undefined\", R = \"object\", y = \"string\", A = \"major\", l = \"model\", b = \"name\", f = \"type\", _ = \"vendor\", E = \"version\", s = \"architecture\", v = \"console\", p = \"mobile\", w = \"tablet\", P = \"smarttv\", N = \"wearable\", j = \"embedded\", D = 350, F = \"Amazon\", q = \"Apple\", $ = \"ASUS\", Q = \"BlackBerry\", B = \"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\", k = \"Zebra\", pe = \"Facebook\", me = \"Chromium OS\", _e = \"Mac OS\", be = function(I, x) {\n var S = {};\n for (var C in I)\n x[C] && x[C].length % 2 === 0 ? S[C] = x[C].concat(I[C]) : S[C] = I[C];\n return S;\n }, J = function(I) {\n for (var x = {}, S = 0; S < I.length; S++)\n x[I[S].toUpperCase()] = I[S];\n return x;\n }, rt = function(I, x) {\n return typeof I === y ? ce(x).indexOf(ce(I)) !== -1 : !1;\n }, ce = function(I) {\n return I.toLowerCase();\n }, Ft = function(I) {\n return typeof I === y ? I.replace(/[^\\d\\.]/g, h).split(\".\")[0] : r;\n }, ve = function(I, x) {\n if (typeof I === y)\n return I = I.replace(/^\\s\\s*/, h), typeof x === g ? I : I.substring(0, D);\n }, le = function(I, x) {\n for (var S = 0, C, V, G, O, T, X; S < x.length && !T; ) {\n var Pe = x[S], ot = x[S + 1];\n for (C = V = 0; C < Pe.length && !T && Pe[C]; )\n if (T = Pe[C++].exec(I), T)\n for (G = 0; G < ot.length; G++)\n X = T[++V], O = ot[G], typeof O === R && O.length > 0 ? O.length === 2 ? typeof O[1] == m ? this[O[0]] = O[1].call(this, X) : this[O[0]] = O[1] : O.length === 3 ? typeof O[1] === m && !(O[1].exec && O[1].test) ? this[O[0]] = X ? O[1].call(this, X, O[2]) : r : this[O[0]] = X ? X.replace(O[1], O[2]) : r : O.length === 4 && (this[O[0]] = X ? O[3].call(this, X.replace(O[1], O[2])) : r) : this[O] = X || r;\n S += 2;\n }\n }, Re = function(I, x) {\n for (var S in x)\n if (typeof x[S] === R && x[S].length > 0) {\n for (var C = 0; C < x[S].length; C++)\n if (rt(x[S][C], I))\n return S === u ? r : S;\n } else if (rt(x[S], I))\n return S === u ? r : S;\n return I;\n }, Bt = { \"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\" + B]], [/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 \" + B], 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 \" + B]], [/fxios\\/([-\\w\\.]+)/i], [E, [b, z]], [/\\bqihu|(qi?ho?o?|360)browser/i], [[b, \"360 \" + B]], [/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i], [[b, /(.+)/, \"$1 \" + B], 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 \" + B]], [/(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, Bt]], [/(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/, h, 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, [_, ae], [f, w]], [/\\b((?:s[cgp]h|gt|sm)-\\w+|sc[g-]?[\\d]+a?|galaxy nexus)/i, /samsung[- ]([-\\w]+)/i, /sec-(sgh\\w+)/i], [l, [_, ae], [f, p]], [/(?:\\/|\\()(ip(?:hone|od)[\\w, ]*)(?:\\/|;)/i], [l, [_, q], [f, p]], [/\\((ipad);[-\\w\\),; ]+apple/i, /applecoremedia\\/[\\w\\.]+ \\((ipad)/i, /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i], [l, [_, q], [f, w]], [/(macintosh);/i], [l, [_, q]], [/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i], [l, [_, fe], [f, p]], [/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i], [l, [_, de], [f, w]], [/(?:huawei|honor)([-\\w ]+)[;\\)]/i, /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i], [l, [_, de], [f, p]], [/\\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, \" \"], [_, ue], [f, p]], [/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i], [[l, /_/g, \" \"], [_, ue], [f, 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, [_, \"OPPO\"], [f, p]], [/vivo (\\w+)(?: bui|\\))/i, /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i], [l, [_, \"Vivo\"], [f, p]], [/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i], [l, [_, \"Realme\"], [f, p]], [/\\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, [_, he], [f, p]], [/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i], [l, [_, he], [f, w]], [/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i], [l, [_, oe], [f, w]], [/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i, /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i, /\\blg-?([\\d\\w]+) bui/i], [l, [_, oe], [f, p]], [/(ideatab[-\\w ]+)/i, /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i], [l, [_, \"Lenovo\"], [f, w]], [/(?:maemo|nokia).*(n900|lumia \\d+)/i, /nokia[-_ ]?([-\\w\\.]*)/i], [[l, /_/g, \" \"], [_, \"Nokia\"], [f, p]], [/(pixel c)\\b/i], [l, [_, Z], [f, w]], [/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i], [l, [_, Z], [f, p]], [/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, [_, te], [f, p]], [/sony tablet [ps]/i, /\\b(?:sony)?sgp\\w+(?: bui|\\))/i], [[l, \"Xperia Tablet\"], [_, te], [f, w]], [/ (kb2005|in20[12]5|be20[12][59])\\b/i, /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i], [l, [_, \"OnePlus\"], [f, p]], [/(alexa)webm/i, /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\))/i, /(kf[a-z]+)( bui|\\)).+silk\\//i], [l, [_, F], [f, w]], [/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i], [[l, /(.+)/g, \"Fire Phone $1\"], [_, F], [f, p]], [/(playbook);[-\\w\\),; ]+(rim)/i], [l, _, [f, w]], [/\\b((?:bb[a-f]|st[hv])100-\\d)/i, /\\(bb10; (\\w+)/i], [l, [_, Q], [f, p]], [/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i], [l, [_, $], [f, w]], [/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i], [l, [_, $], [f, p]], [/(nexus 9)/i], [l, [_, \"HTC\"], [f, w]], [/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i, /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i, /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\.))|sony(?!-bra))[-_ ]?([-\\w]*)/i], [_, [l, /_/g, \" \"], [f, p]], [/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i], [l, [_, \"Acer\"], [f, w]], [/droid.+; (m[1-5] note) bui/i, /\\bmz-([-\\w]{2,})/i], [l, [_, \"Meizu\"], [f, p]], [/(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], [_, l, [f, p]], [/(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], [_, l, [f, w]], [/(surface duo)/i], [l, [_, se], [f, w]], [/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i], [l, [_, \"Fairphone\"], [f, p]], [/(u304aa)/i], [l, [_, \"AT&T\"], [f, p]], [/\\bsie-(\\w*)/i], [l, [_, \"Siemens\"], [f, p]], [/\\b(rct\\w+) b/i], [l, [_, \"RCA\"], [f, w]], [/\\b(venue[\\d ]{2,7}) b/i], [l, [_, \"Dell\"], [f, w]], [/\\b(q(?:mv|ta)\\w+) b/i], [l, [_, \"Verizon\"], [f, w]], [/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i], [l, [_, \"Barnes & Noble\"], [f, w]], [/\\b(tm\\d{3}\\w+) b/i], [l, [_, \"NuVision\"], [f, w]], [/\\b(k88) b/i], [l, [_, \"ZTE\"], [f, w]], [/\\b(nx\\d{3}j) b/i], [l, [_, \"ZTE\"], [f, p]], [/\\b(gen\\d{3}) b.+49h/i], [l, [_, \"Swiss\"], [f, p]], [/\\b(zur\\d{3}) b/i], [l, [_, \"Swiss\"], [f, w]], [/\\b((zeki)?tb.*\\b) b/i], [l, [_, \"Zeki\"], [f, w]], [/\\b([yr]\\d{2}) b/i, /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i], [[_, \"Dragon Touch\"], l, [f, w]], [/\\b(ns-?\\w{0,9}) b/i], [l, [_, \"Insignia\"], [f, w]], [/\\b((nxa|next)-?\\w{0,9}) b/i], [l, [_, \"NextBook\"], [f, w]], [/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i], [[_, \"Voice\"], l, [f, p]], [/\\b(lvtel\\-)?(v1[12]) b/i], [[_, \"LvTel\"], l, [f, p]], [/\\b(ph-1) /i], [l, [_, \"Essential\"], [f, p]], [/\\b(v(100md|700na|7011|917g).*\\b) b/i], [l, [_, \"Envizen\"], [f, w]], [/\\b(trio[-\\w\\. ]+) b/i], [l, [_, \"MachSpeed\"], [f, w]], [/\\btu_(1491) b/i], [l, [_, \"Rotor\"], [f, w]], [/(shield[\\w ]+) b/i], [l, [_, \"Nvidia\"], [f, w]], [/(sprint) (\\w+)/i], [_, l, [f, p]], [/(kin\\.[onetw]{3})/i], [[l, /\\./g, \" \"], [_, se], [f, p]], [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i], [l, [_, k], [f, w]], [/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i], [l, [_, k], [f, p]], [/smart-tv.+(samsung)/i], [_, [f, P]], [/hbbtv.+maple;(\\d+)/i], [[l, /^/, \"SmartTV\"], [_, ae], [f, P]], [/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i], [[_, oe], [f, P]], [/(apple) ?tv/i], [_, [l, q + \" TV\"], [f, P]], [/crkey/i], [[l, W + \"cast\"], [_, Z], [f, P]], [/droid.+aft(\\w)( bui|\\))/i], [l, [_, F], [f, P]], [/\\(dtv[\\);].+(aquos)/i, /(aquos-tv[\\w ]+)\\)/i], [l, [_, fe], [f, P]], [/(bravia[\\w ]+)( bui|\\))/i], [l, [_, te], [f, P]], [/(mitv-\\w{5}) bui/i], [l, [_, ue], [f, P]], [/Hbbtv.*(technisat) (.*);/i], [_, l, [f, P]], [/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i, /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w\\+ ]*; *([\\w\\d][^;]*);([^;]*)/i], [[_, ve], [l, ve], [f, P]], [/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i], [[f, P]], [/(ouya)/i, /(nintendo) ([wids3utch]+)/i], [_, l, [f, v]], [/droid.+; (shield) bui/i], [l, [_, \"Nvidia\"], [f, v]], [/(playstation [345portablevi]+)/i], [l, [_, te], [f, v]], [/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i], [l, [_, se], [f, v]], [/((pebble))app/i], [_, l, [f, N]], [/(watch)(?: ?os[,\\/]|\\d,\\d\\/)[\\d\\.]+/i], [l, [_, q], [f, N]], [/droid.+; (glass) \\d/i], [l, [_, Z], [f, N]], [/droid.+; (wt63?0{2,3})\\)/i], [l, [_, k], [f, N]], [/(quest( 2| pro)?)/i], [l, [_, pe], [f, N]], [/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i], [_, [f, j]], [/(aeobc)\\b/i], [l, [_, F], [f, j]], [/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i], [l, [f, p]], [/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i], [l, [f, w]], [/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i], [[f, w]], [/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i], [[f, p]], [/(android[-\\w\\. ]{0,9});.+buil/i], [l, [_, \"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]] }, H = function(I, x) {\n if (typeof I === R && (x = I, I = r), !(this instanceof H))\n return new H(I, x).getResult();\n var S = typeof c !== g && c.navigator ? c.navigator : r, C = I || (S && S.userAgent ? S.userAgent : h), V = S && S.userAgentData ? S.userAgentData : r, G = x ? be(it, x) : it, O = S && S.userAgent == C;\n return this.getBrowser = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.browser), T[A] = Ft(T[E]), O && S && S.brave && typeof S.brave.isBrave == m && (T[b] = \"Brave\"), T;\n }, this.getCPU = function() {\n var T = {};\n return T[s] = r, le.call(T, C, G.cpu), T;\n }, this.getDevice = function() {\n var T = {};\n return T[_] = r, T[l] = r, T[f] = r, le.call(T, C, G.device), O && !T[f] && V && V.mobile && (T[f] = p), O && T[l] == \"Macintosh\" && S && typeof S.standalone !== g && S.maxTouchPoints && S.maxTouchPoints > 2 && (T[l] = \"iPad\", T[f] = w), T;\n }, this.getEngine = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.engine), T;\n }, this.getOS = function() {\n var T = {};\n return T[b] = r, T[E] = r, le.call(T, C, G.os), O && !T[b] && V && V.platform != \"Unknown\" && (T[b] = V.platform.replace(/chrome os/i, me).replace(/macos/i, _e)), T;\n }, this.getResult = function() {\n return { ua: this.getUA(), browser: this.getBrowser(), engine: this.getEngine(), os: this.getOS(), device: this.getDevice(), cpu: this.getCPU() };\n }, this.getUA = function() {\n return C;\n }, this.setUA = function(T) {\n return C = typeof T === y && T.length > D ? ve(T, D) : T, this;\n }, this.setUA(C), this;\n };\n H.VERSION = d, H.BROWSER = J([b, E, A]), H.CPU = J([s]), H.DEVICE = J([l, _, f, v, p, P, w, N, j]), H.ENGINE = H.OS = J([b, E]), typeof a !== g ? (n.exports && (a = n.exports = H), a.UAParser = H) : typeof c !== g && (c.UAParser = H);\n var re = typeof c !== g && (c.jQuery || c.Zepto);\n if (re && !re.ua) {\n var ge = new H();\n re.ua = ge.getResult(), re.ua.get = function() {\n return ge.getUA();\n }, re.ua.set = function(I) {\n ge.setUA(I);\n var x = ge.getResult();\n for (var S in x)\n re.ua[S] = x[S];\n };\n }\n })(typeof window == \"object\" ? window : this);\n } }, e = {};\n function t(n) {\n var a = e[n];\n if (a !== void 0)\n return a.exports;\n var c = e[n] = { exports: {} }, r = !0;\n try {\n o[n].call(c.exports, c, c.exports, t), r = !1;\n } finally {\n r && delete e[n];\n }\n return c.exports;\n }\n typeof t < \"u\" && (t.ab = import.meta.dirname + \"/\");\n var i = t(226);\n Ke.exports = i;\n })()), Ke.exports;\n}\nvar xt;\nfunction Nt() {\n return xt || (xt = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n });\n function e(r, d) {\n for (var h in d) Object.defineProperty(r, h, {\n enumerable: !0,\n get: d[h]\n });\n }\n e(o, {\n isBot: function() {\n return n;\n },\n userAgent: function() {\n return c;\n },\n userAgentFromString: function() {\n return a;\n }\n });\n const t = /* @__PURE__ */ i(gr());\n function i(r) {\n return r && r.__esModule ? r : {\n default: r\n };\n }\n function n(r) {\n return /Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(r);\n }\n function a(r) {\n return {\n ...(0, t.default)(r),\n isBot: r === void 0 ? !1 : n(r)\n };\n }\n function c({ headers: r }) {\n return a(r.get(\"user-agent\") || void 0);\n }\n })(Ve)), Ve;\n}\nvar Ye = {}, Ct;\nfunction wr() {\n return Ct || (Ct = 1, (function(o) {\n Object.defineProperty(o, \"__esModule\", {\n value: !0\n }), Object.defineProperty(o, \"URLPattern\", {\n enumerable: !0,\n get: function() {\n return e;\n }\n });\n const e = (\n // @ts-expect-error: URLPattern is not available in Node.js\n typeof URLPattern > \"u\" ? void 0 : URLPattern\n );\n })(Ye)), Ye;\n}\nvar Lt;\nfunction Er() {\n return Lt || (Lt = 1, (function(o, e) {\n const t = {\n NextRequest: pr().NextRequest,\n NextResponse: _r().NextResponse,\n ImageResponse: br().ImageResponse,\n userAgentFromString: Nt().userAgentFromString,\n userAgent: Nt().userAgent,\n URLPattern: wr().URLPattern\n };\n o.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;\n })(we, we.exports)), we.exports;\n}\nvar vr = Er();\nclass Fr {\n async parseRequest(e) {\n const t = new URL(e.url), i = e.method, n = e.headers.get(Y) ?? \"\", a = {};\n e.cookies.getAll().forEach((d) => {\n a[d.name] = d.value;\n });\n let c, r;\n if (i !== \"GET\") {\n if (n.includes(M.applicationJson))\n try {\n c = await e.json();\n } catch {\n L.warn(\"request body is null!\");\n }\n else if (n.includes(M.multipartFormData)) {\n const d = e.clone(), h = await e.formData(), u = await d.arrayBuffer();\n r = { formData: h, buffer: u };\n } else if (n.includes(M.applicationXwwwFormUrlencoded)) {\n const d = await e.text(), h = new URLSearchParams(d);\n h.delete(\"m\"), c = h;\n }\n }\n return {\n url: t,\n method: i,\n contentType: n,\n body: c,\n requestFormData: r,\n cookies: a\n };\n }\n createResponse(e) {\n const t = vr.NextResponse.json(e.body);\n if (Object.entries(e.cookies).forEach(([i, n]) => {\n typeof n == \"object\" && n.value ? t.cookies.set(i, n.value, n.options) : typeof n == \"string\" && t.cookies.set(i, n);\n }), e.cleanCookies) {\n const i = {\n set(n, a, c) {\n t.cookies.set(n, a, c);\n },\n delete(n, a) {\n t.cookies.delete({ ...a, name: n });\n }\n };\n e.cleanCookies(i);\n }\n return t;\n }\n setCookie(e, t, i, n) {\n e.cookies[t] = { value: i, options: n };\n }\n}\nclass Br {\n async parseRequest(e) {\n const t = zt(e), i = e.method, n = e.headers.get(Y) || \"\", a = Vt(e);\n let c, r;\n if (i !== \"GET\") {\n if (n.includes(M.applicationJson))\n try {\n c = await st(e);\n } catch {\n L.warn(\"request body is null!\");\n }\n else if (n.includes(M.multipartFormData)) {\n const d = await Kt(e) ?? [], h = new FormData(), u = [];\n for (const R of d)\n if (R.type === \"file\" && R.data) {\n const y = new File([R.data], R.filename || \"unknown\", {\n type: R.type\n });\n h.append(\"file\", y), u.push(R.data);\n } else if (R.name) {\n const y = R.data ? R.data.toString() : \"\";\n h.append(R.name, y);\n }\n const m = Buffer.concat(u.map((R) => Buffer.from(R))), g = m.buffer.slice(\n m.byteOffset,\n m.byteOffset + m.byteLength\n );\n r = { formData: h, buffer: g };\n } else if (n.includes(M.applicationXwwwFormUrlencoded))\n try {\n c = await st(e);\n } catch {\n L.warn(\"request body is null!\");\n }\n }\n return {\n url: t,\n method: i,\n contentType: n,\n body: c,\n requestFormData: r,\n cookies: a,\n context: e\n };\n }\n createResponse(e) {\n const { status: t, headers: i, body: n, cookies: a, cleanCookies: c, context: r } = e, d = r;\n return Yt(d, t), Object.entries(i).forEach(([h, u]) => {\n Jt(d, h, u);\n }), Object.entries(a).forEach(([h, u]) => {\n typeof u == \"object\" && u.value ? ye(d, h, u.value, u.options) : typeof u == \"string\" && ye(d, h, u);\n }), c && c({\n set(u, m, g) {\n ye(d, u, m, g);\n },\n delete(u, m) {\n $t(d, u, m);\n }\n }), n;\n }\n setCookie(e, t, i, n) {\n e.cookies[t] = { value: i, options: n };\n }\n}\nvar Qe = /* @__PURE__ */ ((o) => (o[o.login = 0] = \"login\", o[o.logout = 1] = \"logout\", o))(Qe || {});\nconst Je = {\n login: \"login\",\n logout: \"logout\",\n unknown: \"\"\n}, Y = \"Content-Type\", M = {\n applicationJson: \"application/json\",\n multipartFormData: \"multipart/form-data\",\n applicationXwwwFormUrlencoded: \"application/x-www-form-urlencoded\"\n};\nclass Gr {\n config;\n http;\n adapter;\n constructor({\n config: e,\n adapter: t,\n storage: i\n }) {\n this.config = e;\n let n = Tr(i.headers);\n const a = n.deviceId && n.deviceId.length > 0, c = n.websiteId && n.websiteId.length > 0, r = n.websiteNo && n.websiteNo.length > 0, d = n.lang && n.lang.length > 0;\n (!a || !c || !r || !d) && (n = Sr(i.cookies)), this.http = new xr({ ...n, userType: e.userType, helloURL: e.helloURL }), this.adapter = t;\n }\n async handleRequest(e) {\n try {\n const t = await this.adapter.parseRequest(e), i = await this.processRequest(t);\n return this.adapter.createResponse(i);\n } catch (t) {\n L.error({ error: t?.toString() || \"Internal server error\" }, \"ROUTE ERROR\");\n const i = this.createErrorResponse(500, t?.toString() || \"Internal server error\");\n return this.adapter.createResponse(i);\n }\n }\n async processRequest(e) {\n const t = e.url.searchParams, i = t.get(\"m\") ?? \"unknown\", a = { ...Je, ...this.config.APIMAP }[i], c = e.cookies;\n if (this.http.setHttpOptsToCookies(c), !a || a.length === 0)\n return this.createErrorResponse(404, \"API not found\", c);\n let r;\n if ((a.startsWith(\"admin/\") || a.startsWith(\"api/\")) && (r = Ir(c), L.debug(r, \"token\"), !r || r.username.length === 0 || r.token.length === 0))\n return this.createErrorResponse(409, \"Authentication required\", c);\n L.debug({ \"content-type\": e.contentType }, \"Content-Type\"), L.debug({ hostUrl: a, token: r ? { ...r } : \"\" }, \"processRequest\");\n const d = e.method;\n if (d === \"GET\") {\n const h = { ...t };\n h.delete(\"m\");\n const u = await this.http.get({\n url: a,\n data: h,\n token: r\n });\n return this.createResponse({ url: a, result: u, config: this.config, req: e });\n } else if (d === \"POST\") {\n let h;\n const u = e.contentType;\n if (u.includes(M.applicationJson) || u.includes(M.applicationXwwwFormUrlencoded))\n e.body && (h = { ...e.body });\n else if (u.includes(M.multipartFormData)) {\n const g = u.match(/boundary=([^\\s;]+)/);\n if (!g || !e.requestFormData)\n return this.createErrorResponse(411, \"Missing boundary in form data\", c);\n const R = e.requestFormData.buffer;\n h = {\n boundary: g[1],\n buffer: Buffer.from(R)\n };\n const A = e.requestFormData.formData;\n if (A)\n for (const [l, b] of Object.entries(A))\n l !== \"file\" && (h[l] = b);\n } else\n return this.createErrorResponse(410, \"Unsupported content type\", c);\n const m = await this.http.post({\n url: a,\n data: h,\n token: r\n });\n return this.createResponse({ url: a, result: m, config: this.config, req: e });\n }\n return this.createErrorResponse(405, \"Method not allowed, only supported GET or POST\", c);\n }\n createResponse({ url: e, result: t, config: i, req: n }) {\n const a = {};\n a[Y] = M.applicationJson;\n const c = {\n status: t.success ? 200 : t.code,\n headers: a,\n cookies: this.setCookies(n.cookies),\n body: t,\n context: n.context\n };\n if (t.success) {\n switch (e) {\n case Je[Qe[\n 0\n /* login */\n ]]:\n const r = t.data;\n Ar(r, c);\n break;\n case Je[Qe[\n 1\n /* logout */\n ]]:\n c.cleanCookies = (d) => Or(d);\n break;\n }\n i.onHandlerSuccess && i.onHandlerSuccess({\n url: e,\n data: t.data,\n req: n,\n res: c\n });\n }\n return c;\n }\n createErrorResponse(e, t, i) {\n const n = {};\n return n[Y] = M.applicationJson, {\n status: e,\n headers: n,\n cookies: i ? this.setCookies(i) : {},\n body: {\n code: e,\n success: !1,\n msg: t\n }\n };\n }\n setCookies(e) {\n const t = {};\n return Object.entries(e).forEach(([i, n]) => {\n t[i] = { value: n };\n }), t;\n }\n}\nconst Rr = \"zh-CN\", kt = \"Get request error!\", Ze = \"Post request error!\", U = {\n IBOOT_DEVICE_ID: \"dvid\",\n IBOOT_LANG: \"lang\",\n IBOOT_WEBSITE_ID: \"wid\",\n IBOOT_WEBSITE_NO: \"wno\",\n IBOOT_TOKEN: \"token\",\n IBOOT_USER: \"user\"\n}, K = {\n DEVICE_ID: \"Device-Id\",\n LANG: \"Lang\",\n WEBSITE_ID: \"Website-Id\",\n WEBSITE_NO: \"Website-No\"\n}, Pr = (o) => `${process.env.BASE_URL || \"/api/services\"}?m=${o}`, yr = async (o, e) => {\n let t = Pr(o);\n if (e?.data) {\n const c = new URLSearchParams(e.data);\n t += `&${c}`;\n }\n const i = e?.headers;\n L.info({\n url: t,\n headers: i\n }, \"GET\");\n const n = await fetch(t, {\n method: \"GET\",\n headers: i,\n cache: e?.useCache ? \"force-cache\" : \"default\"\n });\n if (n.ok) {\n const c = Object.fromEntries(n.headers.entries()), r = { ...await n.json(), headers: c };\n return L.debug(r, \"GET_RESULT\"), r;\n }\n const a = {\n code: n.status,\n success: !1,\n msg: n.statusText\n };\n return L.error(a), a;\n}, Ht = async (o, e) => {\n const t = e?.data ?? {}, i = e?.headers;\n let n;\n const a = e?.headers, c = new Headers(a);\n if (t instanceof FormData ? n = t : (n = JSON.stringify(t), c.set(Y, M.applicationJson)), i)\n for (let h in i) {\n const u = i[h];\n u && c.set(h, u);\n }\n L.info({\n url: o,\n headers: c\n }, \"POST\");\n const r = await fetch(o, {\n method: \"POST\",\n headers: c,\n body: n\n });\n if (r.ok) {\n const h = Object.fromEntries(r.headers.entries()), u = { ...await r.json(), headers: h };\n return L.debug(u, \"POST_RESULT\"), u;\n }\n const d = {\n code: r.status,\n success: !1,\n msg: r.statusText\n };\n return L.error(d), d;\n}, Xr = async (o, e) => {\n const t = await yr(o, e);\n if (t.success)\n return t.data;\n if (e?.showError) {\n e.showError(t.msg ?? kt);\n return;\n }\n throw Error(t.msg ?? kt);\n}, Wr = async (o, e) => {\n const t = await Ht(o, e);\n if (t.success)\n return t.data;\n if (e?.showError) {\n e.showError(t.msg ?? Ze);\n return;\n }\n throw Error(t.msg ?? Ze);\n}, zr = async (o, e) => {\n const t = await Ht(o, e);\n return t.success ? (e?.showSuccess && e.showSuccess(t.msg ?? \"SUCCESS\"), !0) : (e?.showError && e.showError(t.msg ?? Ze), !1);\n}, Tr = (o) => {\n if (o.get) {\n const e = o.get(K.DEVICE_ID), t = o.get(K.LANG), i = o.get(K.WEBSITE_ID), n = o.get(K.WEBSITE_NO), a = {};\n return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), i && i.length > 0 && (a.websiteId = i), n && n.length > 0 && (a.websiteNo = n), a;\n }\n throw new Error(\"The get method of IStorage has not been implemented.\");\n}, Vr = (o, e) => {\n if (o.set)\n e.deviceId && o.set(K.DEVICE_ID, e.deviceId), e.lang && o.set(K.LANG, e.lang), e.websiteId && o.set(K.WEBSITE_ID, e.websiteId), e.websiteNo && o.set(K.WEBSITE_NO, e.websiteNo);\n else\n throw new Error(\"The set method of IStorage has not been implemented.\");\n}, Sr = (o) => {\n if (o.get) {\n const e = o.get(U.IBOOT_DEVICE_ID), t = o.get(U.IBOOT_LANG), i = o.get(U.IBOOT_WEBSITE_ID), n = o.get(U.IBOOT_WEBSITE_NO), a = {};\n return e && e.length > 0 && (a.deviceId = e), t && t.length > 0 && (a.lang = t), i && i.length > 0 && (a.websiteId = i), n && n.length > 0 && (a.websiteNo = n), a;\n }\n throw new Error(\"The get method of ICookies has not been implemented.\");\n}, Kr = (o, e) => {\n if (o.set)\n e.deviceId && o.set(U.IBOOT_DEVICE_ID, e.deviceId), e.lang && o.set(U.IBOOT_LANG, e.lang), e.websiteId && o.set(U.IBOOT_WEBSITE_ID, e.websiteId), e.websiteNo && o.set(U.IBOOT_WEBSITE_NO, e.websiteNo);\n else\n throw new Error(\"The set method of ICookies has not been implemented.\");\n}, Yr = (o) => {\n if (o.get) {\n const e = o.get(U.IBOOT_USER);\n if (e && e.length > 0)\n return JSON.parse(e);\n }\n}, Ir = (o) => {\n if (o.get) {\n const e = o[U.IBOOT_USER];\n if (e && e.length > 0) {\n const t = JSON.parse(e), i = t.username, n = t.userType.toString(), a = o[U.IBOOT_TOKEN];\n if (a)\n return {\n username: i,\n utype: n,\n token: a\n };\n }\n }\n}, Ut = () => ({\n path: \"/\",\n secure: process.env.APP_ENV === \"production\",\n httpOnly: !0,\n sameSite: \"strict\"\n}), Ee = {\n maxAge: -1,\n //设置为 -1表示立即过期\n httpOnly: !0,\n path: \"/\"\n}, Ar = (o, e) => {\n const { id: t, name: i, username: n, nickname: a, headImg: c, token: r, lastLoginTime: d, deviceId: h, userType: u, mustChangePwd: m } = o, g = {\n id: t,\n name: i,\n username: n,\n nickname: a || i,\n headImg: c,\n lastLoginTime: d,\n deviceId: h,\n userType: u,\n accountType: 0,\n needToReview: !1,\n socketOnline: !1,\n mustChangePwd: m\n };\n e.cookies[U.IBOOT_TOKEN] = {\n value: r,\n options: Ut()\n }, e.cookies[U.IBOOT_USER] = {\n value: JSON.stringify(g),\n options: Ut()\n };\n}, Or = (o) => {\n if (!o.set)\n throw new Error(\"cookies set function is undefined\");\n if (o.set(U.IBOOT_TOKEN, \"\", Ee), o.set(U.IBOOT_USER, \"\", Ee), !o.delete)\n throw new Error(\"cookies delete function is undefined\");\n o.delete(U.IBOOT_TOKEN, Ee), o.delete(U.IBOOT_USER, Ee);\n};\nclass xr {\n baseUrl;\n helloMethod;\n apiKey;\n userType;\n userFrom;\n deviceId;\n version = \"1\";\n lang;\n websiteId;\n websiteNo;\n constructor(e) {\n process.env.APP_ENV === \"production\" || L.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 ?? Qt.TYPE_MGT, this.deviceId = e.deviceId ?? tr(), this.lang = e.lang ?? Rr, this.websiteId = e.websiteId, this.websiteNo = e.websiteNo;\n }\n encrypt(e) {\n const t = ne.enc.Utf8.parse(this.apiKey);\n return ne.AES.encrypt(e, t).toString();\n }\n decrypt(e) {\n const t = ne.enc.Utf8.parse(this.apiKey);\n return ne.AES.decrypt(e, t, {\n mode: ne.mode.ECB\n }).toString(ne.enc.Utf8);\n }\n setHttpOptsToCookies = (e) => {\n this.deviceId && this.deviceId.length > 0 && (e[U.IBOOT_DEVICE_ID] = this.deviceId), this.websiteId && this.websiteId.length > 0 && (e[U.IBOOT_WEBSITE_ID] = this.websiteId), this.websiteNo && this.websiteNo.length > 0 && (e[U.IBOOT_WEBSITE_NO] = this.websiteNo), this.lang && this.lang.length > 0 && (e[U.IBOOT_LANG] = this.lang);\n };\n async sign(e) {\n const t = \"&key=\" + await this.helloIboot(), i = [];\n for (const d of e.keys())\n i.push(d);\n i.sort((d, h) => {\n const u = d.match(/(\\d+)/), m = h.match(/(\\d+)/);\n return u && m && d.replace(/\\d+/, \"\") === h.replace(/\\d+/, \"\") ? parseInt(u[1]) - parseInt(m[1]) : d.toLowerCase().localeCompare(h.toLowerCase(), void 0, {\n numeric: !0,\n // 启用数字识别\n sensitivity: \"base\"\n });\n });\n const n = [];\n i.forEach((d) => {\n const h = e.get(d);\n h && n.push(d + \"=\" + h);\n });\n const a = n.join(\"&\"), c = Wt.md5((a + t).toLocaleUpperCase()), r = {\n params: a,\n md5: c\n };\n return L.debug(r, \"API_SIGN\"), c;\n }\n assemblyParameter(e, t) {\n const i = e ?? new URLSearchParams(), n = Intl.DateTimeFormat().resolvedOptions().timeZone;\n return i.set(\"timezone\", n), i.set(\"timestamp\", Date.now().toString()), i.set(\"echostr\", Dt(10)), i.set(\"version\", this.version), i.set(\"deviceId\", this.deviceId), i.set(\"webid\", this.websiteId ?? \"\"), i.set(\"apiKey\", this.apiKey), t && t.length > 0 && i.set(\"username\", t), new URLSearchParams([...i].filter(([, a]) => a !== \"\"));\n }\n async assemblyHeader({ urlParams: e, token: t }) {\n const i = {\n \"Res-Type\": \"json\",\n \"Device-Id\": this.deviceId,\n \"User-Type\": t?.utype.toString() ?? this.userType.toString(),\n \"User-From\": this.userFrom,\n \"Api-Key\": this.apiKey\n };\n i[Y] = M.applicationXwwwFormUrlencoded, this.lang && this.lang.length > 0 && (i.Lang = this.lang), this.websiteId && this.websiteId.length > 0 && (i[\"Web-Id\"] = this.websiteId), this.websiteNo && this.websiteNo.length > 0 && (i[\"Web-No\"] = this.websiteNo), t && (t.token && t.token.length > 0 && t.username && t.username.length > 0 && (i.Authorization = t.token, i.Username = t.username), t.xcsrf && (i[t.xcsrf.csrfHeader] = t.xcsrf.csrfToken));\n const n = await this.sign(e);\n return i.Sign = n, i;\n }\n async helloIboot() {\n if (this.helloMethod.length <= 0)\n return this.apiKey;\n const e = this.getApiUrl(this.helloMethod), t = {\n \"Res-Type\": \"json\",\n \"Api-Key\": this.apiKey\n };\n t[Y] = M.applicationXwwwFormUrlencoded;\n const i = {\n url: e,\n headers: t\n };\n L.debug(i, \"HELLO\");\n const n = await fetch(e, {\n method: \"GET\",\n headers: t,\n credentials: \"include\",\n cache: \"force-cache\"\n });\n if (n.ok) {\n const a = await n.json();\n return L.debug(a.data, \"HELLO RESULT\"), a.data;\n }\n throw new Error(\"hello iBoot error!\");\n }\n getApiUrl(e) {\n return `${this.baseUrl}/${e}`;\n }\n async csrf() {\n const e = await this.get({\n url: \"guest/csrf\"\n });\n if (e.success) {\n const t = e.data;\n if (t)\n return t.csrfToken.toString();\n }\n }\n async get({ url: e, data: t, token: i, cache: n = \"default\" }) {\n const a = this.assemblyParameter(t ? new URLSearchParams(t) : void 0), c = await this.assemblyHeader({ urlParams: a, token: i }), r = `${this.getApiUrl(e)}?${a.toString()}`, d = {\n url: r,\n headers: c\n };\n L.info(d, \"GET\");\n const h = await fetch(r, {\n method: \"GET\",\n headers: c,\n credentials: \"include\",\n cache: n\n });\n if (h.ok) {\n const m = Object.fromEntries(h.headers.entries()), g = { ...await h.json(), headers: m };\n return L.debug(g, \"GET_RESULT\"), g;\n }\n const u = {\n code: h.status,\n success: !1,\n msg: h.statusText\n };\n return L.error(u), u;\n }\n async post({ url: e, data: t, token: i, cache: n = \"default\" }) {\n const a = t ? { ...t } : {}, c = a.buffer ?? void 0, r = a.boundary ?? void 0;\n c && delete a.buffer, r && delete a.boundary;\n const d = this.assemblyParameter(new URLSearchParams(a)), h = await this.assemblyHeader({ urlParams: d, token: i });\n c && r && (h[Y] = `multipart/form-data; boundary=${r}`);\n const u = this.getApiUrl(e), m = {\n url: u,\n headers: h,\n params: d\n };\n L.info(m, \"POST\");\n const g = c ? `${u}?${d}` : u, R = await fetch(g, {\n method: \"POST\",\n headers: h,\n body: c || d,\n credentials: \"include\",\n cache: n\n });\n if (R.ok) {\n const A = Object.fromEntries(R.headers.entries()), l = { ...await R.json(), headers: A };\n return L.debug(l, \"POST_RESULT\"), l;\n }\n const y = {\n code: R.status,\n success: !1,\n msg: R.statusText\n };\n return L.error(y), y;\n }\n}\nexport {\n Dr as ACCOUNT_TYPE_MAP,\n Y as CONTENT_TYPE_KEY,\n M as CONTENT_TYPE_MAP,\n U as COOKIE_NAMES,\n Gr as HTTPRouter,\n xr as HttpClient,\n Fr as NextJsAdapter,\n Br as NuxtJsAdapter,\n Mr as USER_FORM_MAP,\n jr as USER_SEX_MAP,\n Qt as USER_TYPE_MAP,\n Or as cleanToken,\n Hr as dateFormat,\n tr as generateDeviceId,\n yr as get,\n Yr as getLoginUser,\n Sr as getServerHttpCookies,\n Tr as getServerHttpHeaders,\n Ir as getToken,\n Xr as iGet,\n Wr as iPost,\n zr as iPostSuccess,\n qr as isArray,\n L as logger,\n Ht as post,\n Dt as randomString,\n Kr as setServerHttpCookies,\n Vr as setServerHttpHeaders,\n Ar as setToken\n};\n//# sourceMappingURL=icms-http-client.es.js.map\n","import { getServerHttpCookies, HttpClient, ICookies, ServerHttpOpts, setServerHttpCookies, USER_TYPE_MAP } from \"@rock.chen/icms-http-client\";\r\nimport { I18NWebsite, Webchannel, WebSite, WebsiteInfo } from './types/site';\r\nimport { ProductContent } from './types/cms-product';\r\nimport { PageInfo, PageParams } from './types/cms-base';\r\nimport { NewsContent } from './types/cms-news';\r\nimport { Reviews } from './types/cms-message';\r\n\r\nconst baseUrl = {\r\n \"site\": \"guest/site/\",\r\n \"shop\": \"guest/site/shop/\"\r\n}\r\n\r\nconst buildEmptyPageInfo = <T>({ pageNo, pageSize }: { pageNo: number, pageSize: number }): PageInfo<T> => {\r\n return {\r\n \"total\": 0,\r\n \"pageNo\": pageNo,\r\n \"pageSize\": pageSize,\r\n \"pageCount\": 0,\r\n \"first\": true,\r\n \"last\": true,\r\n \"content\": [],\r\n }\r\n}\r\n\r\nexport const helloURL = `${baseUrl.site}helloIBoot`;\r\n\r\nexport class ICMSServer {\r\n private readonly http: HttpClient;\r\n constructor(cookies: Readonly<ICookies>) {\r\n let httpOpts = getServerHttpCookies(cookies);\r\n this.http = new HttpClient({\r\n ...httpOpts,\r\n userType: USER_TYPE_MAP.TYPE_C,\r\n helloURL\r\n })\r\n }\r\n\r\n //#region ----网站及栏目\r\n async helloWebsite(c: ICookies) {\r\n const url = baseUrl.site + \"helloWebsite\";\r\n const res = await this.http.get({ url: url });\r\n if (res.success) {\r\n const headers = res.headers;\r\n if (headers) {\r\n const deviceId = headers['device-id'];\r\n const lang = headers[\"lang\"];\r\n const websiteId = headers['web-id'];\r\n const websiteNo = headers[\"web-no\"];\r\n const values: Omit<ServerHttpOpts, 'userType' | 'helloURL'> = {}\r\n\r\n if (deviceId && deviceId.length > 0) {\r\n values['deviceId'] = deviceId\r\n }\r\n if (lang && lang.length > 0) {\r\n values['lang'] = lang\r\n }\r\n if (websiteId && websiteId.length > 0) {\r\n values['websiteId'] = websiteId\r\n }\r\n if (websiteNo && websiteNo.length > 0) {\r\n values['websiteNo'] = websiteNo\r\n }\r\n setServerHttpCookies(c, values);\r\n }\r\n }\r\n }\r\n /**\r\n * 获取言语网站列表\r\n * @returns I18NWebsite[]\r\n */\r\n async loadI18nList(): Promise<Array<I18NWebsite>> {\r\n const url = baseUrl.site + \"i18nList\";\r\n const res = await this.http.get<Array<I18NWebsite>>({ url: url });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n return []\r\n }\r\n\r\n /**\r\n * 获取网站信息\r\n * @param params {showNav:是否拉取网站导航菜单(默认为true),showFriendLink:是否拉取首页有情链接sortBy升序前20个}\r\n * @returns \r\n */\r\n async loadWebsite(params?: Readonly<{ showNav?: boolean, showFriendLink?: boolean, showI18NList?: boolean }>): Promise<WebsiteInfo> {\r\n const url = baseUrl.site + \"currentWebSite\";\r\n const res = await this.http.get<WebSite>({ url: url, data: { \"showNav\": params?.showNav ?? 'true', \"showFriendLink\": params?.showFriendLink ?? 'false' } });\r\n if (res.success) {\r\n const website = res.data!;\r\n const seo = website.seoProps;\r\n const result: WebsiteInfo = {\r\n \"website\": website!,\r\n \"metadata\": {\r\n \"title\": seo?.title,\r\n \"description\": seo?.description,\r\n \"keywords\": seo?.keywords,\r\n \"authors\": {\r\n \"url\": \"https://www.icms.xin\",\r\n \"name\": \"iCMS\"\r\n }\r\n },\r\n \"i18nSites\": params?.showI18NList ? await this.loadI18nList() : []\r\n }\r\n return result;\r\n }\r\n throw Error(res.msg)\r\n }\r\n\r\n /**\r\n * 获取栏目channelNo下的子栏目列表\r\n * @param params {channelNo?:栏目编号(不传从顶及栏目开始), showChildren?:是否同时获取下级栏目的子栏目}\r\n * @returns \r\n */\r\n\r\n async loadChannels(params?: Readonly<{ channelNo?: string, showChildren?: boolean }>): Promise<Array<Webchannel>> {\r\n const url = baseUrl.site + \"getChannelListByNo\";\r\n const res = await this.http.get<Array<Webchannel>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 通过channelId获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelById(params: Readonly<{ channelId: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + \"getChannelById\";\r\n const res = await this.http.get<Webchannel>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data\r\n }\r\n throw new Error(res.msg)\r\n }\r\n /**\r\n * 通过channelNo获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelByNo(params: Readonly<{ channelNo: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + 'getChannelByNo';\r\n const res = await this.http.get<Webchannel>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 通过uri(如'/about')获取栏目信息,showChildren为true时同时获取它的下级栏目\r\n * @param params \r\n * @returns \r\n */\r\n async loadChannelByUri(params: Readonly<{ uri: string, showChildren?: boolean }>): Promise<Webchannel | undefined> {\r\n const url = baseUrl.site + \"getChannelByUrl\";\r\n const res = await this.http.get<Webchannel>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n //#endregion\r\n\r\n //#region ----产品内容\r\n /**\r\n * 获取产品详情\r\n * @param proId \r\n * @returns \r\n */\r\n async loadProductDetail(proId: string): Promise<ProductContent | undefined> {\r\n const url = baseUrl.site + 'getProduct';\r\n const res = await this.http.get<ProductContent>({ url, data: { \"proId\": proId } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分页获取产品内容列表\r\n * @param params {channelId指定栏目下的产品,为空则不限,keyword:关键字查询}\r\n * @returns \r\n */\r\n async loadProductPageInfo(params: Readonly<{ channelId?: string, keyword?: string } & PageParams>): Promise<PageInfo<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductForPage';\r\n const res = await this.http.get<PageInfo<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<ProductContent>({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分组获取产品内容列表PageInfo\r\n * @param params {groupId:分组ID}\r\n * @returns \r\n */\r\n async loadProductPageInfoByGroup(params: Readonly<{ groupId: string } & PageParams>): Promise<PageInfo<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductForPageByGroup';\r\n const res = await this.http.get<PageInfo<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<ProductContent>({ pageNo: params.pageNo, pageSize: params.pageSize })\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 按分组获取产品内容列表\r\n * @param params \r\n * @returns \r\n */\r\n async loadProductListByGroupId(params: Readonly<{ groupId: string }>): Promise<Array<ProductContent>> {\r\n const url = baseUrl.site + 'searchProductByGroup';\r\n const res = await this.http.get<Array<ProductContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? [];\r\n }\r\n throw new Error(res.msg)\r\n }\r\n //#endregion\r\n\r\n //#region ----图文内容\r\n /**\r\n * 获取图文详情\r\n * @param newId \r\n * @returns \r\n */\r\n async loadNewsDetail(newId: string): Promise<NewsContent | undefined> {\r\n const url = baseUrl.site + 'getNewsDetail';\r\n const res = await this.http.get<NewsContent>({ url: url, data: { \"newId\": newId } });\r\n if (res.success) {\r\n return res.data;\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 分页获取图文列表\r\n * @param params {channelNo?:指定栏目的内容, keyword?:关键字查询, pageNo:页码, pageSize:每页记录数, sortBy?:指定排序字段, sort?:排序方向'ASC' | 'DESC'}\r\n * @returns \r\n */\r\n async loadNewsPageInfo(params: Readonly<{ channelNo?: string, keyword?: string } & PageParams>): Promise<PageInfo<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsForPage';\r\n const res = await this.http.get<PageInfo<NewsContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo<NewsContent>({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg)\r\n }\r\n\r\n /**\r\n * 依组ID分页获取图文列表\r\n * @param params {groupId:组ID}\r\n * @returns \r\n */\r\n async loadNewsPageInfoByGroupId(params: Readonly<{ groupId: string } & PageParams>): Promise<PageInfo<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsForPageByGroup';\r\n const res = await this.http.get<PageInfo<NewsContent>>({ url: url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? buildEmptyPageInfo({ pageNo: params.pageNo, pageSize: params.pageSize });\r\n }\r\n throw new Error(res.msg);\r\n }\r\n\r\n /**\r\n * 依组ID获取图文列表\r\n * @param params \r\n * @returns \r\n */\r\n async loadNewsListByGroupId(params: Readonly<{ groupId: string }>): Promise<Array<NewsContent>> {\r\n const url = baseUrl.site + 'searchNewsByGroup';\r\n const res = await this.http.get<Array<NewsContent>>({ url, data: { ...params } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg);\r\n }\r\n //#endregion\r\n\r\n //#region ----相册内容\r\n\r\n //#region \r\n\r\n //#region ----视频内容\r\n\r\n //#endregion\r\n\r\n //#region ----活动内容\r\n\r\n //#endregion\r\n\r\n //#region ----订阅、评论、留言\r\n async loadReviewList(params: Readonly<{ entityNo?: string, rowCount?: string }>): Promise<Array<Reviews>> {\r\n const url = baseUrl.site + 'getReviewList';\r\n const res = await this.http.get<Array<Reviews>>({ url: url, data: { ...params, rowCount: params.rowCount ?? 20 } });\r\n if (res.success) {\r\n return res.data ?? []\r\n }\r\n throw new Error(res.msg);\r\n }\r\n //#endregion\r\n\r\n}","import { FrameworkAdapter, HTTPRouter, RouteStorage, USER_TYPE_MAP } from \"@rock.chen/icms-http-client\";\r\nimport { helloURL } from \"./server\";\r\n\r\n//定义客户端接口\r\nconst APIMAP = {\r\n \r\n}\r\nexport const icmsRouter = async <T, R>({\r\n request,\r\n routeAdapter,\r\n storage\r\n}: Readonly<{\r\n request: T,\r\n routeAdapter: FrameworkAdapter\r\n storage: RouteStorage\r\n}>): Promise<R> => {\r\n const res = new HTTPRouter({\r\n \"config\": {\r\n \"userType\": USER_TYPE_MAP.TYPE_C,\r\n \"APIMAP\": APIMAP,\r\n \"helloURL\": helloURL\r\n },\r\n \"adapter\": routeAdapter,\r\n \"storage\": storage\r\n });\r\n return await res.handleRequest<T, R>(request);\r\n}"],"x_google_ignoreList":[0],"mappings":"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"}
|