File: /var/www/quadcode.com/build/server/index.js
import { A as A$1, y, T, S } from './chunks/ssr-c4e448c1.js';
import { a as a$1, d, g as g$1, c, o, i } from './chunks/index-d9e8b680.js';
import { A as A$2, z } from './chunks/index2-db879dd9.js';
import { a, s, n } from './chunks/shared-server-c92518c6.js';
let p="",u=p;const g={base:p,assets:u};function k(){p=g.base,u=g.assets;}const b=A$1((n,t,e,_)=>{let{stores:o}=t,{page:d}=t,{constructors:s}=t,{components:a=[]}=t,{form:l}=t,{data_0:c=null}=t,{data_1:m=null}=t;y("__svelte__",o),o.page.notify,t.stores===void 0&&e.stores&&o!==void 0&&e.stores(o),t.page===void 0&&e.page&&d!==void 0&&e.page(d),t.constructors===void 0&&e.constructors&&s!==void 0&&e.constructors(s),t.components===void 0&&e.components&&a!==void 0&&e.components(a),t.form===void 0&&e.form&&l!==void 0&&e.form(l),t.data_0===void 0&&e.data_0&&c!==void 0&&e.data_0(c),t.data_1===void 0&&e.data_1&&m!==void 0&&e.data_1(m);let i,v;do i=!0,o.page.set(d),v=` ${s[1]?`${T(s[0]||S,"svelte:component").$$render(n,{data:c,this:a[0]},{this:r=>{a[0]=r,i=!1;}},{default:()=>`${T(s[1]||S,"svelte:component").$$render(n,{data:m,form:l,this:a[1]},{this:r=>{a[1]=r,i=!1;}},{})}`})}`:`${T(s[0]||S,"svelte:component").$$render(n,{data:c,form:l,this:a[0]},{this:r=>{a[0]=r,i=!1;}},{})}`} `;while(!i);return v}),j={app_template_contains_nonce:!1,csp:{mode:"auto",directives:{"upgrade-insecure-requests":!1,"block-all-mixed-content":!1},reportOnly:{"upgrade-insecure-requests":!1,"block-all-mixed-content":!1}},csrf_check_origin:!1,track_server_fetches:!1,embedded:!1,env_public_prefix:"PUBLIC_",env_private_prefix:"",hooks:null,preload_strategy:"modulepreload",root:b,service_worker:!0,templates:{app:({head:n,body:t,assets:e,nonce:_,env:o})=>`<!DOCTYPE html>
<html lang="%lang%">
<head>
<meta charset="utf-8" />
<base href="/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta content="true" name="HandheldFriendly" />
<meta content="width" name="MobileOptimized" />
<meta name="mobile-web-app-capable" content="yes">
<link rel="shortcut icon" type="image/x-icon" href="`+e+`/favicon.ico" />
<meta name="msapplication-TileColor" content="#da532c" />
<meta name="theme-color" content="#f8fbfd" />
<!-- Google Tag Manager -->
<script>
(function (w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' });
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-KQ8QT66');
<\/script>
<!-- End Google Tag Manager -->
<script>
window.onRecaptchaReady = function() {
(window.__recaptchaQueue || []).forEach(fn => fn());
window.__recaptchaQueue = [];
};
<\/script>
`+n+`
</head>
<body data-sveltekit-reload>
<main id="root">`+t+`</main>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-KQ8QT66"
height="0"
width="0"
loading="lazy"
style="display: none; visibility: hidden"
></iframe
></noscript>
<!-- End Google Tag Manager (noscript) -->
<script src="`+(o.PUBLIC_POPUP_WIDGET??"")+`" defer><\/script>
</body>
</html>
`,error:({status:n,message:t})=>`<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>`+t+`</title>
<style>
body {
--bg: white;
--fg: #222;
--divider: #ccc;
background: var(--bg);
color: var(--fg);
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen,
Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
margin: 0;
}
.error {
display: flex;
align-items: center;
max-width: 32rem;
margin: 0 1rem;
}
.status {
font-weight: 200;
font-size: 3rem;
line-height: 1;
position: relative;
top: -0.05rem;
}
.message {
border-left: 1px solid var(--divider);
padding: 0 0 0 1rem;
margin: 0 0 0 1rem;
min-height: 2.5rem;
display: flex;
align-items: center;
}
.message h1 {
font-weight: 400;
font-size: 1em;
margin: 0;
}
@media (prefers-color-scheme: dark) {
body {
--bg: #222;
--fg: #ddd;
--divider: #666;
}
}
</style>
</head>
<body>
<div class="error">
<span class="status">`+n+`</span>
<div class="message">
<h1>`+t+`</h1>
</div>
</div>
</body>
</html>
`},version_hash:"1i2cho8"};function C(){return import('./chunks/hooks.server-6eac7800.js')}
/** @type {Record<string, string>} */
const escaped = {
'<': '\\u003C',
'\\': '\\\\',
'\b': '\\b',
'\f': '\\f',
'\n': '\\n',
'\r': '\\r',
'\t': '\\t',
'\u2028': '\\u2028',
'\u2029': '\\u2029'
};
class DevalueError extends Error {
/**
* @param {string} message
* @param {string[]} keys
*/
constructor(message, keys) {
super(message);
this.name = 'DevalueError';
this.path = keys.join('');
}
}
/** @param {any} thing */
function is_primitive(thing) {
return Object(thing) !== thing;
}
const object_proto_names = /* @__PURE__ */ Object.getOwnPropertyNames(
Object.prototype
)
.sort()
.join('\0');
/** @param {any} thing */
function is_plain_object(thing) {
const proto = Object.getPrototypeOf(thing);
return (
proto === Object.prototype ||
proto === null ||
Object.getOwnPropertyNames(proto).sort().join('\0') === object_proto_names
);
}
/** @param {any} thing */
function get_type(thing) {
return Object.prototype.toString.call(thing).slice(8, -1);
}
/** @param {string} char */
function get_escaped_char(char) {
switch (char) {
case '"':
return '\\"';
case '<':
return '\\u003C';
case '\\':
return '\\\\';
case '\n':
return '\\n';
case '\r':
return '\\r';
case '\t':
return '\\t';
case '\b':
return '\\b';
case '\f':
return '\\f';
case '\u2028':
return '\\u2028';
case '\u2029':
return '\\u2029';
default:
return char < ' '
? `\\u${char.charCodeAt(0).toString(16).padStart(4, '0')}`
: '';
}
}
/** @param {string} str */
function stringify_string(str) {
let result = '';
let last_pos = 0;
const len = str.length;
for (let i = 0; i < len; i += 1) {
const char = str[i];
const replacement = get_escaped_char(char);
if (replacement) {
result += str.slice(last_pos, i) + replacement;
last_pos = i + 1;
}
}
return `"${last_pos === 0 ? str : result + str.slice(last_pos)}"`;
}
const chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_$';
const unsafe_chars = /[<\b\f\n\r\t\0\u2028\u2029]/g;
const reserved =
/^(?:do|if|in|for|int|let|new|try|var|byte|case|char|else|enum|goto|long|this|void|with|await|break|catch|class|const|final|float|short|super|throw|while|yield|delete|double|export|import|native|return|switch|throws|typeof|boolean|default|extends|finally|package|private|abstract|continue|debugger|function|volatile|interface|protected|transient|implements|instanceof|synchronized)$/;
/**
* Turn a value into the JavaScript that creates an equivalent value
* @param {any} value
* @param {(value: any) => string | void} [replacer]
*/
function uneval(value, replacer) {
const counts = new Map();
/** @type {string[]} */
const keys = [];
const custom = new Map();
/** @param {any} thing */
function walk(thing) {
if (typeof thing === 'function') {
throw new DevalueError(`Cannot stringify a function`, keys);
}
if (!is_primitive(thing)) {
if (counts.has(thing)) {
counts.set(thing, counts.get(thing) + 1);
return;
}
counts.set(thing, 1);
if (replacer) {
const str = replacer(thing);
if (typeof str === 'string') {
custom.set(thing, str);
return;
}
}
const type = get_type(thing);
switch (type) {
case 'Number':
case 'BigInt':
case 'String':
case 'Boolean':
case 'Date':
case 'RegExp':
return;
case 'Array':
/** @type {any[]} */ (thing).forEach((value, i) => {
keys.push(`[${i}]`);
walk(value);
keys.pop();
});
break;
case 'Set':
Array.from(thing).forEach(walk);
break;
case 'Map':
for (const [key, value] of thing) {
keys.push(
`.get(${is_primitive(key) ? stringify_primitive$1(key) : '...'})`
);
walk(value);
keys.pop();
}
break;
default:
if (!is_plain_object(thing)) {
throw new DevalueError(
`Cannot stringify arbitrary non-POJOs`,
keys
);
}
if (Object.getOwnPropertySymbols(thing).length > 0) {
throw new DevalueError(
`Cannot stringify POJOs with symbolic keys`,
keys
);
}
for (const key in thing) {
keys.push(`.${key}`);
walk(thing[key]);
keys.pop();
}
}
}
}
walk(value);
const names = new Map();
Array.from(counts)
.filter((entry) => entry[1] > 1)
.sort((a, b) => b[1] - a[1])
.forEach((entry, i) => {
names.set(entry[0], get_name(i));
});
/**
* @param {any} thing
* @returns {string}
*/
function stringify(thing) {
if (names.has(thing)) {
return names.get(thing);
}
if (is_primitive(thing)) {
return stringify_primitive$1(thing);
}
if (custom.has(thing)) {
return custom.get(thing);
}
const type = get_type(thing);
switch (type) {
case 'Number':
case 'String':
case 'Boolean':
return `Object(${stringify(thing.valueOf())})`;
case 'RegExp':
return `new RegExp(${stringify_string(thing.source)}, "${
thing.flags
}")`;
case 'Date':
return `new Date(${thing.getTime()})`;
case 'Array':
const members = /** @type {any[]} */ (thing).map((v, i) =>
i in thing ? stringify(v) : ''
);
const tail = thing.length === 0 || thing.length - 1 in thing ? '' : ',';
return `[${members.join(',')}${tail}]`;
case 'Set':
case 'Map':
return `new ${type}([${Array.from(thing).map(stringify).join(',')}])`;
default:
const obj = `{${Object.keys(thing)
.map((key) => `${safe_key(key)}:${stringify(thing[key])}`)
.join(',')}}`;
const proto = Object.getPrototypeOf(thing);
if (proto === null) {
return Object.keys(thing).length > 0
? `Object.assign(Object.create(null),${obj})`
: `Object.create(null)`;
}
return obj;
}
}
const str = stringify(value);
if (names.size) {
/** @type {string[]} */
const params = [];
/** @type {string[]} */
const statements = [];
/** @type {string[]} */
const values = [];
names.forEach((name, thing) => {
params.push(name);
if (custom.has(thing)) {
values.push(/** @type {string} */ (custom.get(thing)));
return;
}
if (is_primitive(thing)) {
values.push(stringify_primitive$1(thing));
return;
}
const type = get_type(thing);
switch (type) {
case 'Number':
case 'String':
case 'Boolean':
values.push(`Object(${stringify(thing.valueOf())})`);
break;
case 'RegExp':
values.push(thing.toString());
break;
case 'Date':
values.push(`new Date(${thing.getTime()})`);
break;
case 'Array':
values.push(`Array(${thing.length})`);
/** @type {any[]} */ (thing).forEach((v, i) => {
statements.push(`${name}[${i}]=${stringify(v)}`);
});
break;
case 'Set':
values.push(`new Set`);
statements.push(
`${name}.${Array.from(thing)
.map((v) => `add(${stringify(v)})`)
.join('.')}`
);
break;
case 'Map':
values.push(`new Map`);
statements.push(
`${name}.${Array.from(thing)
.map(([k, v]) => `set(${stringify(k)}, ${stringify(v)})`)
.join('.')}`
);
break;
default:
values.push(
Object.getPrototypeOf(thing) === null ? 'Object.create(null)' : '{}'
);
Object.keys(thing).forEach((key) => {
statements.push(
`${name}${safe_prop(key)}=${stringify(thing[key])}`
);
});
}
});
statements.push(`return ${str}`);
return `(function(${params.join(',')}){${statements.join(
';'
)}}(${values.join(',')}))`;
} else {
return str;
}
}
/** @param {number} num */
function get_name(num) {
let name = '';
do {
name = chars[num % chars.length] + name;
num = ~~(num / chars.length) - 1;
} while (num >= 0);
return reserved.test(name) ? `${name}0` : name;
}
/** @param {string} c */
function escape_unsafe_char(c) {
return escaped[c] || c;
}
/** @param {string} str */
function escape_unsafe_chars(str) {
return str.replace(unsafe_chars, escape_unsafe_char);
}
/** @param {string} key */
function safe_key(key) {
return /^[_$a-zA-Z][_$a-zA-Z0-9]*$/.test(key)
? key
: escape_unsafe_chars(JSON.stringify(key));
}
/** @param {string} key */
function safe_prop(key) {
return /^[_$a-zA-Z][_$a-zA-Z0-9]*$/.test(key)
? `.${key}`
: `[${escape_unsafe_chars(JSON.stringify(key))}]`;
}
/** @param {any} thing */
function stringify_primitive$1(thing) {
if (typeof thing === 'string') return stringify_string(thing);
if (thing === void 0) return 'void 0';
if (thing === 0 && 1 / thing < 0) return '-0';
const str = String(thing);
if (typeof thing === 'number') return str.replace(/^(-)?0\./, '$1.');
if (typeof thing === 'bigint') return thing + 'n';
return str;
}
const UNDEFINED = -1;
const HOLE = -2;
const NAN = -3;
const POSITIVE_INFINITY = -4;
const NEGATIVE_INFINITY = -5;
const NEGATIVE_ZERO = -6;
/**
* Turn a value into a JSON string that can be parsed with `devalue.parse`
* @param {any} value
* @param {Record<string, (value: any) => any>} [reducers]
*/
function stringify(value, reducers) {
/** @type {any[]} */
const stringified = [];
/** @type {Map<any, number>} */
const indexes = new Map();
/** @type {Array<{ key: string, fn: (value: any) => any }>} */
const custom = [];
for (const key in reducers) {
custom.push({ key, fn: reducers[key] });
}
/** @type {string[]} */
const keys = [];
let p = 0;
/** @param {any} thing */
function flatten(thing) {
if (typeof thing === 'function') {
throw new DevalueError(`Cannot stringify a function`, keys);
}
if (indexes.has(thing)) return indexes.get(thing);
if (thing === undefined) return UNDEFINED;
if (Number.isNaN(thing)) return NAN;
if (thing === Infinity) return POSITIVE_INFINITY;
if (thing === -Infinity) return NEGATIVE_INFINITY;
if (thing === 0 && 1 / thing < 0) return NEGATIVE_ZERO;
const index = p++;
indexes.set(thing, index);
for (const { key, fn } of custom) {
const value = fn(thing);
if (value) {
stringified[index] = `["${key}",${flatten(value)}]`;
return index;
}
}
let str = '';
if (is_primitive(thing)) {
str = stringify_primitive(thing);
} else {
const type = get_type(thing);
switch (type) {
case 'Number':
case 'String':
case 'Boolean':
str = `["Object",${stringify_primitive(thing)}]`;
break;
case 'BigInt':
str = `["BigInt",${thing}]`;
break;
case 'Date':
str = `["Date","${thing.toISOString()}"]`;
break;
case 'RegExp':
const { source, flags } = thing;
str = flags
? `["RegExp",${stringify_string(source)},"${flags}"]`
: `["RegExp",${stringify_string(source)}]`;
break;
case 'Array':
str = '[';
for (let i = 0; i < thing.length; i += 1) {
if (i > 0) str += ',';
if (i in thing) {
keys.push(`[${i}]`);
str += flatten(thing[i]);
keys.pop();
} else {
str += HOLE;
}
}
str += ']';
break;
case 'Set':
str = '["Set"';
for (const value of thing) {
str += `,${flatten(value)}`;
}
str += ']';
break;
case 'Map':
str = '["Map"';
for (const [key, value] of thing) {
keys.push(
`.get(${is_primitive(key) ? stringify_primitive(key) : '...'})`
);
str += `,${flatten(key)},${flatten(value)}`;
}
str += ']';
break;
default:
if (!is_plain_object(thing)) {
throw new DevalueError(
`Cannot stringify arbitrary non-POJOs`,
keys
);
}
if (Object.getOwnPropertySymbols(thing).length > 0) {
throw new DevalueError(
`Cannot stringify POJOs with symbolic keys`,
keys
);
}
if (Object.getPrototypeOf(thing) === null) {
str = '["null"';
for (const key in thing) {
keys.push(`.${key}`);
str += `,${stringify_string(key)},${flatten(thing[key])}`;
keys.pop();
}
str += ']';
} else {
str = '{';
let started = false;
for (const key in thing) {
if (started) str += ',';
started = true;
keys.push(`.${key}`);
str += `${stringify_string(key)}:${flatten(thing[key])}`;
keys.pop();
}
str += '}';
}
}
}
stringified[index] = str;
return index;
}
const index = flatten(value);
// special case — value is represented as a negative index
if (index < 0) return `${index}`;
return `[${stringified.join(',')}]`;
}
/**
* @param {any} thing
* @returns {string}
*/
function stringify_primitive(thing) {
const type = typeof thing;
if (type === 'string') return stringify_string(thing);
if (thing instanceof String) return stringify_string(thing.toString());
if (thing === void 0) return UNDEFINED.toString();
if (thing === 0 && 1 / thing < 0) return NEGATIVE_ZERO.toString();
if (type === 'bigint') return `["BigInt","${thing}"]`;
return String(thing);
}
var cookie = {};
/*!
* cookie
* Copyright(c) 2012-2014 Roman Shtylman
* Copyright(c) 2015 Douglas Christopher Wilson
* MIT Licensed
*/
var hasRequiredCookie;
function requireCookie () {
if (hasRequiredCookie) return cookie;
hasRequiredCookie = 1;
/**
* Module exports.
* @public
*/
cookie.parse = parse;
cookie.serialize = serialize;
/**
* Module variables.
* @private
*/
var __toString = Object.prototype.toString;
/**
* RegExp to match field-content in RFC 7230 sec 3.2
*
* field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]
* field-vchar = VCHAR / obs-text
* obs-text = %x80-FF
*/
var fieldContentRegExp = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;
/**
* Parse a cookie header.
*
* Parse the given cookie header string into an object
* The object has the various cookies as keys(names) => values
*
* @param {string} str
* @param {object} [options]
* @return {object}
* @public
*/
function parse(str, options) {
if (typeof str !== 'string') {
throw new TypeError('argument str must be a string');
}
var obj = {};
var opt = options || {};
var dec = opt.decode || decode;
var index = 0;
while (index < str.length) {
var eqIdx = str.indexOf('=', index);
// no more cookie pairs
if (eqIdx === -1) {
break
}
var endIdx = str.indexOf(';', index);
if (endIdx === -1) {
endIdx = str.length;
} else if (endIdx < eqIdx) {
// backtrack on prior semicolon
index = str.lastIndexOf(';', eqIdx - 1) + 1;
continue
}
var key = str.slice(index, eqIdx).trim();
// only assign once
if (undefined === obj[key]) {
var val = str.slice(eqIdx + 1, endIdx).trim();
// quoted values
if (val.charCodeAt(0) === 0x22) {
val = val.slice(1, -1);
}
obj[key] = tryDecode(val, dec);
}
index = endIdx + 1;
}
return obj;
}
/**
* Serialize data into a cookie header.
*
* Serialize the a name value pair into a cookie string suitable for
* http headers. An optional options object specified cookie parameters.
*
* serialize('foo', 'bar', { httpOnly: true })
* => "foo=bar; httpOnly"
*
* @param {string} name
* @param {string} val
* @param {object} [options]
* @return {string}
* @public
*/
function serialize(name, val, options) {
var opt = options || {};
var enc = opt.encode || encode;
if (typeof enc !== 'function') {
throw new TypeError('option encode is invalid');
}
if (!fieldContentRegExp.test(name)) {
throw new TypeError('argument name is invalid');
}
var value = enc(val);
if (value && !fieldContentRegExp.test(value)) {
throw new TypeError('argument val is invalid');
}
var str = name + '=' + value;
if (null != opt.maxAge) {
var maxAge = opt.maxAge - 0;
if (isNaN(maxAge) || !isFinite(maxAge)) {
throw new TypeError('option maxAge is invalid')
}
str += '; Max-Age=' + Math.floor(maxAge);
}
if (opt.domain) {
if (!fieldContentRegExp.test(opt.domain)) {
throw new TypeError('option domain is invalid');
}
str += '; Domain=' + opt.domain;
}
if (opt.path) {
if (!fieldContentRegExp.test(opt.path)) {
throw new TypeError('option path is invalid');
}
str += '; Path=' + opt.path;
}
if (opt.expires) {
var expires = opt.expires;
if (!isDate(expires) || isNaN(expires.valueOf())) {
throw new TypeError('option expires is invalid');
}
str += '; Expires=' + expires.toUTCString();
}
if (opt.httpOnly) {
str += '; HttpOnly';
}
if (opt.secure) {
str += '; Secure';
}
if (opt.priority) {
var priority = typeof opt.priority === 'string'
? opt.priority.toLowerCase()
: opt.priority;
switch (priority) {
case 'low':
str += '; Priority=Low';
break
case 'medium':
str += '; Priority=Medium';
break
case 'high':
str += '; Priority=High';
break
default:
throw new TypeError('option priority is invalid')
}
}
if (opt.sameSite) {
var sameSite = typeof opt.sameSite === 'string'
? opt.sameSite.toLowerCase() : opt.sameSite;
switch (sameSite) {
case true:
str += '; SameSite=Strict';
break;
case 'lax':
str += '; SameSite=Lax';
break;
case 'strict':
str += '; SameSite=Strict';
break;
case 'none':
str += '; SameSite=None';
break;
default:
throw new TypeError('option sameSite is invalid');
}
}
return str;
}
/**
* URL-decode string value. Optimized to skip native call when no %.
*
* @param {string} str
* @returns {string}
*/
function decode (str) {
return str.indexOf('%') !== -1
? decodeURIComponent(str)
: str
}
/**
* URL-encode value.
*
* @param {string} str
* @returns {string}
*/
function encode (val) {
return encodeURIComponent(val)
}
/**
* Determine if value is a Date.
*
* @param {*} val
* @private
*/
function isDate (val) {
return __toString.call(val) === '[object Date]' ||
val instanceof Date
}
/**
* Try decoding a string using a decoding function.
*
* @param {string} str
* @param {function} decode
* @private
*/
function tryDecode(str, decode) {
try {
return decode(str);
} catch (e) {
return str;
}
}
return cookie;
}
var cookieExports = requireCookie();
var setCookie = {exports: {}};
var hasRequiredSetCookie;
function requireSetCookie () {
if (hasRequiredSetCookie) return setCookie.exports;
hasRequiredSetCookie = 1;
var defaultParseOptions = {
decodeValues: true,
map: false,
silent: false,
};
function isNonEmptyString(str) {
return typeof str === "string" && !!str.trim();
}
function parseString(setCookieValue, options) {
var parts = setCookieValue.split(";").filter(isNonEmptyString);
var nameValuePairStr = parts.shift();
var parsed = parseNameValuePair(nameValuePairStr);
var name = parsed.name;
var value = parsed.value;
options = options
? Object.assign({}, defaultParseOptions, options)
: defaultParseOptions;
try {
value = options.decodeValues ? decodeURIComponent(value) : value; // decode cookie value
} catch (e) {
console.error(
"set-cookie-parser encountered an error while decoding a cookie with value '" +
value +
"'. Set options.decodeValues to false to disable this feature.",
e
);
}
var cookie = {
name: name,
value: value,
};
parts.forEach(function (part) {
var sides = part.split("=");
var key = sides.shift().trimLeft().toLowerCase();
var value = sides.join("=");
if (key === "expires") {
cookie.expires = new Date(value);
} else if (key === "max-age") {
cookie.maxAge = parseInt(value, 10);
} else if (key === "secure") {
cookie.secure = true;
} else if (key === "httponly") {
cookie.httpOnly = true;
} else if (key === "samesite") {
cookie.sameSite = value;
} else {
cookie[key] = value;
}
});
return cookie;
}
function parseNameValuePair(nameValuePairStr) {
// Parses name-value-pair according to rfc6265bis draft
var name = "";
var value = "";
var nameValueArr = nameValuePairStr.split("=");
if (nameValueArr.length > 1) {
name = nameValueArr.shift();
value = nameValueArr.join("="); // everything after the first =, joined by a "=" if there was more than one part
} else {
value = nameValuePairStr;
}
return { name: name, value: value };
}
function parse(input, options) {
options = options
? Object.assign({}, defaultParseOptions, options)
: defaultParseOptions;
if (!input) {
if (!options.map) {
return [];
} else {
return {};
}
}
if (input.headers) {
if (typeof input.headers.getSetCookie === "function") {
// for fetch responses - they combine headers of the same type in the headers array,
// but getSetCookie returns an uncombined array
input = input.headers.getSetCookie();
} else if (input.headers["set-cookie"]) {
// fast-path for node.js (which automatically normalizes header names to lower-case
input = input.headers["set-cookie"];
} else {
// slow-path for other environments - see #25
var sch =
input.headers[
Object.keys(input.headers).find(function (key) {
return key.toLowerCase() === "set-cookie";
})
];
// warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36
if (!sch && input.headers.cookie && !options.silent) {
console.warn(
"Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."
);
}
input = sch;
}
}
if (!Array.isArray(input)) {
input = [input];
}
options = options
? Object.assign({}, defaultParseOptions, options)
: defaultParseOptions;
if (!options.map) {
return input.filter(isNonEmptyString).map(function (str) {
return parseString(str, options);
});
} else {
var cookies = {};
return input.filter(isNonEmptyString).reduce(function (cookies, str) {
var cookie = parseString(str, options);
cookies[cookie.name] = cookie;
return cookies;
}, cookies);
}
}
/*
Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas
that are within a single set-cookie field-value, such as in the Expires portion.
This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2
Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128
React Native's fetch does this for *every* header, including set-cookie.
Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25
Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation
*/
function splitCookiesString(cookiesString) {
if (Array.isArray(cookiesString)) {
return cookiesString;
}
if (typeof cookiesString !== "string") {
return [];
}
var cookiesStrings = [];
var pos = 0;
var start;
var ch;
var lastComma;
var nextStart;
var cookiesSeparatorFound;
function skipWhitespace() {
while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) {
pos += 1;
}
return pos < cookiesString.length;
}
function notSpecialChar() {
ch = cookiesString.charAt(pos);
return ch !== "=" && ch !== ";" && ch !== ",";
}
while (pos < cookiesString.length) {
start = pos;
cookiesSeparatorFound = false;
while (skipWhitespace()) {
ch = cookiesString.charAt(pos);
if (ch === ",") {
// ',' is a cookie separator if we have later first '=', not ';' or ','
lastComma = pos;
pos += 1;
skipWhitespace();
nextStart = pos;
while (pos < cookiesString.length && notSpecialChar()) {
pos += 1;
}
// currently special character
if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
// we found cookies separator
cookiesSeparatorFound = true;
// pos is inside the next cookie, so back up and return it.
pos = nextStart;
cookiesStrings.push(cookiesString.substring(start, lastComma));
start = pos;
} else {
// in param ',' or param separator ';',
// we continue from that comma
pos = lastComma + 1;
}
} else {
pos += 1;
}
}
if (!cookiesSeparatorFound || pos >= cookiesString.length) {
cookiesStrings.push(cookiesString.substring(start, cookiesString.length));
}
}
return cookiesStrings;
}
setCookie.exports = parse;
setCookie.exports.parse = parse;
setCookie.exports.parseString = parseString;
setCookie.exports.splitCookiesString = splitCookiesString;
return setCookie.exports;
}
var setCookieExports = requireSetCookie();
const gt="/_svelte_kit_assets",He=new Set(["GET","POST","PUT","PATCH","DELETE","OPTIONS","HEAD"]),$t=new Set(["GET","POST","HEAD"]);function ce(e,t){const r=[];e.split(",").forEach((o,a)=>{const u=/([^/]+)\/([^;]+)(?:;q=([0-9.]+))?/.exec(o);if(u){const[,d,i,c="1"]=u;r.push({type:d,subtype:i,q:+c,i:a});}}),r.sort((o,a)=>o.q!==a.q?a.q-o.q:o.subtype==="*"!=(a.subtype==="*")?o.subtype==="*"?1:-1:o.type==="*"!=(a.type==="*")?o.type==="*"?1:-1:o.i-a.i);let n,s=1/0;for(const o of t){const[a,u]=o.split("/"),d=r.findIndex(i=>(i.type===a||i.type==="*")&&(i.subtype===u||i.subtype==="*"));d!==-1&&d<s&&(n=o,s=d);}return n}function kt(e,...t){const r=e.headers.get("content-type")?.split(";",1)[0].trim()??"";return t.includes(r.toLowerCase())}function Ue(e){return kt(e,"application/x-www-form-urlencoded","multipart/form-data","text/plain")}function bt(e,t,r){const n={},s=e.slice(1);let o=0;for(let a=0;a<t.length;a+=1){const u=t[a];let d=s[a-o];if(u.chained&&u.rest&&o&&(d=s.slice(a-o,a+1).filter(i=>i).join("/"),o=0),d===void 0){u.rest&&(n[u.name]="");continue}if(!u.matcher||r[u.matcher](d)){n[u.name]=d;const i=t[a+1],c=s[a+1];i&&!i.rest&&i.optional&&c&&u.chained&&(o=0);continue}if(u.optional&&u.chained){o++;continue}return}if(!o)return n}function vt(e){return e instanceof Error||e&&e.name&&e.message?e:new Error(JSON.stringify(e))}function ze(e,t){return g$1(`${t} method not allowed`,{status:405,headers:{allow:xt(e).join(", ")}})}function xt(e){const t=Array.from(He).filter(r=>r in e);return ("GET"in e||"HEAD"in e)&&t.push("HEAD"),t}function ue(e,t,r){let n=e.templates.error({status:t,message:r});return g$1(n,{headers:{"content-type":"text/html; charset=utf-8"},status:t})}async function we(e,t,r){r=r instanceof o?r:vt(r);const n=r instanceof o?r.status:500,s=await A(e,t,r),o$1=ce(e.request.headers.get("accept")||"text/html",["application/json","text/html"]);return e.isDataRequest||o$1==="application/json"?d(s,{status:n}):ue(t,n,s.message)}async function A(e,t,r){return r instanceof o?r.body:await t.hooks.handleError({error:r,event:e})??{message:e.route.id!=null?"Internal Error":"Not Found"}}function K(e,t){return new Response(void 0,{status:e,headers:{location:t}})}function Ie(e,t){return t.path?`Data returned from \`load\` while rendering ${e.route.id} is not serializable: ${t.message} (data${t.path})`:t.path===""?`Data returned from \`load\` while rendering ${e.route.id} is not a plain object`:t.message}function Ne(e){const t=[];return e.uses&&e.uses.dependencies.size>0&&t.push(`"dependencies":${JSON.stringify(Array.from(e.uses.dependencies))}`),e.uses&&e.uses.params.size>0&&t.push(`"params":${JSON.stringify(Array.from(e.uses.params))}`),e.uses?.parent&&t.push('"parent":1'),e.uses?.route&&t.push('"route":1'),e.uses?.url&&t.push('"url":1'),`"uses":{${t.join(",")}}`}async function Et(e,t,r){const n=e.request.method;let s=t[n];if(!s&&n==="HEAD"&&(s=t.GET),!s)return ze(t,n);const o=t.prerender??r.prerender_default;if(o&&(t.POST||t.PATCH||t.PUT||t.DELETE))throw new Error("Cannot prerender endpoints that have mutative methods");if(r.prerendering&&!o){if(r.depth>0)throw new Error(`${e.route.id} is not prerenderable`);return new Response(void 0,{status:204})}try{let a=await s(e);if(!(a instanceof Response))throw new Error(`Invalid response from route ${e.url.pathname}: handler should return a Response object`);return r.prerendering&&(a=new Response(a.body,{status:a.status,statusText:a.statusText,headers:new Headers(a.headers)}),a.headers.set("x-sveltekit-prerender",String(o))),a}catch(a){if(a instanceof c)return new Response(void 0,{status:a.status,headers:{location:a.location}});throw a}}function jt(e){const{method:t,headers:r}=e.request;if(He.has(t)&&!$t.has(t))return !0;if(t==="POST"&&r.get("x-sveltekit-action")==="true")return !1;const n=e.request.headers.get("accept")??"*/*";return ce(n,["*","text/html"])!=="text/html"}function ge(e){return e.filter(t=>t!=null)}function le(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function St(e){return e.split("%25").map(decodeURI).join("%25")}function Rt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}const Tt=["href","pathname","search","searchParams","toString","toJSON"];function Ot(e,t){const r=new URL(e);for(const n of Tt)Object.defineProperty(r,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return r[Symbol.for("nodejs.util.inspect.custom")]=(n,s,o)=>o(e,s),Pt(r),r}function Pt(e){Le(e),Object.defineProperty(e,"hash",{get(){throw new Error("Cannot access event.url.hash. Consider using `$page.url.hash` inside a component instead")}});}function De(e){Le(e);for(const t of ["search","searchParams"])Object.defineProperty(e,t,{get(){throw new Error(`Cannot access url.${t} on a page with prerendering enabled`)}});}function Le(e){e[Symbol.for("nodejs.util.inspect.custom")]=(t,r,n)=>n(new URL(e),r);}const de="/__data.json";function At(e){return e.endsWith(de)}function qt(e){return e.replace(/\/$/,"")+de}function $e(e){return e.slice(0,-de.length)}function We(e){return ce(e.request.headers.get("accept")??"*/*",["application/json","text/html"])==="application/json"&&e.request.method==="POST"}async function Ct(e,t,r){const n=r?.actions;if(!n){const s=a$1(405,"POST method not allowed. No actions exist for this page");return J({type:"error",error:await A(e,t,s)},{status:s.status,headers:{allow:"GET"}})}Me(n);try{const s=await Fe(e,n);return s instanceof i?J({type:"failure",status:s.status,data:ke(s.data,e.route.id)}):J({type:"success",status:s?200:204,data:ke(s,e.route.id)})}catch(s){const o$1=s;return o$1 instanceof c?Je(o$1):J({type:"error",error:await A(e,t,Ge(o$1))},{status:o$1 instanceof o?o$1.status:500})}}function Ge(e){return e instanceof i?new Error('Cannot "throw fail()". Use "return fail()"'):e}function Je(e){return J({type:"redirect",status:e.status,location:e.location})}function J(e,t){return d(e,t)}function Ht(e){return e.request.method==="POST"}async function Ut(e,t){const r=t?.actions;if(!r)return e.setHeaders({allow:"GET"}),{type:"error",error:a$1(405,"POST method not allowed. No actions exist for this page")};Me(r);try{const n=await Fe(e,r);return n instanceof i?{type:"failure",status:n.status,data:n.data}:{type:"success",status:200,data:n}}catch(n){const s=n;return s instanceof c?{type:"redirect",status:s.status,location:s.location}:{type:"error",error:Ge(s)}}}function Me(e){if(e.default&&Object.keys(e).length>1)throw new Error("When using named actions, the default action cannot be used. See the docs for more info: https://kit.svelte.dev/docs/form-actions#named-actions")}async function Fe(e,t){const r=new URL(e.request.url);let n="default";for(const o of r.searchParams)if(o[0].startsWith("/")){if(n=o[0].slice(1),n==="default")throw new Error('Cannot use reserved action name "default"');break}const s=t[n];if(!s)throw new Error(`No action with name '${n}' found`);if(!Ue(e.request))throw new Error(`Actions expect form-encoded data (received ${e.request.headers.get("content-type")})`);return s(e)}function zt(e,t){return Ve(e,uneval,t)}function ke(e,t){return Ve(e,stringify,t)}function Ve(e,t,r){try{return t(e)}catch(n){const s=n;if("path"in s){let o=`Data returned from action inside ${r} is not serializable: ${s.message}`;throw s.path!==""&&(o+=` (data.${s.path})`),new Error(o)}throw s}}async function Be(e){for(const t in e)if(typeof e[t]?.then=="function")return Object.fromEntries(await Promise.all(Object.entries(e).map(async([r,n])=>[r,await n])));return e}const be="x-sveltekit-invalidated",ve="x-sveltekit-trailing-slash";async function fe({event:e,state:t,node:r,parent:n,track_server_fetches:s}){if(!r?.server)return null;const o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1},a=Ot(e.url,()=>{o.url=!0;});t.prerendering&&De(a);const u=await r.server.load?.call(null,{...e,fetch:(i,c)=>{const _=new URL(i instanceof Request?i.url:i,e.url);return s&&o.dependencies.add(_.href),e.fetch(i,c)},depends:(...i)=>{for(const c of i){const{href:_}=new URL(c,e.url);o.dependencies.add(_);}},params:new Proxy(e.params,{get:(i,c)=>(o.params.add(c),i[c])}),parent:async()=>(o.parent=!0,n()),route:new Proxy(e.route,{get:(i,c)=>(o.route=!0,i[c])}),url:a});return {type:"data",data:u?await Be(u):null,uses:o,slash:r.server.trailingSlash}}async function Xe({event:e,fetched:t,node:r,parent:n,server_data_promise:s,state:o,resolve_opts:a,csr:u}){const d=await s;if(!r?.universal?.load)return d?.data??null;const i=await r.universal.load.call(null,{url:e.url,params:e.params,data:d?.data??null,route:e.route,fetch:It(e,o,t,u,a),setHeaders:e.setHeaders,depends:()=>{},parent:n});return i?await Be(i):null}function It(e,t,r,n,s){return async(o,a)=>{const u=o instanceof Request&&o.body?o.clone().body:null,d=o instanceof Request&&[...o.headers].length?new Headers(o.headers):a?.headers;let i=await e.fetch(o,a);const c=new URL(o instanceof Request?o.url:o,e.url),_=c.origin===e.url.origin;let m;if(_)t.prerendering&&(m={response:i,body:null},t.prerendering.dependencies.set(c.pathname,m));else if((o instanceof Request?o.mode:a?.mode??"cors")==="no-cors")i=new Response("",{status:i.status,statusText:i.statusText,headers:i.headers});else {const w=i.headers.get("access-control-allow-origin");if(!w||w!==e.url.origin&&w!=="*")throw new Error(`CORS error: ${w?"Incorrect":"No"} 'Access-Control-Allow-Origin' header is present on the requested resource`)}const l=new Proxy(i,{get(p,w,h){async function y(){const g=await p.text();if(!g||typeof g=="string"){const f=Number(p.status);if(isNaN(f))throw new Error(`response.status is not a number. value: "${p.status}" type: ${typeof p.status}`);r.push({url:_?c.href.slice(e.url.origin.length):c.href,method:e.request.method,request_body:o instanceof Request&&u?await Nt(u):a?.body,request_headers:d,response_body:g,response:p});}return m&&(m.body=g),g}return w==="arrayBuffer"?async()=>{const g=await p.arrayBuffer();return m&&(m.body=new Uint8Array(g)),g}:w==="text"?y:w==="json"?async()=>JSON.parse(await y()):Reflect.get(p,w,p)}});if(n){const p=i.headers.get;i.headers.get=w=>{const h=w.toLowerCase(),y=p.call(i.headers,h);if(y&&!h.startsWith("x-sveltekit-")&&!s.filterSerializedResponseHeaders(h,y))throw new Error(`Failed to get response header "${h}" — it must be included by the \`filterSerializedResponseHeaders\` option: https://kit.svelte.dev/docs/hooks#server-hooks-handle (at ${e.route.id})`);return y};}return l}}async function Nt(e){let t="";const r=e.getReader(),n=new TextDecoder;for(;;){const{done:s,value:o}=await r.read();if(s)break;t+=n.decode(o);}return t}function Ke(...e){let t=5381;for(const r of e)if(typeof r=="string"){let n=r.length;for(;n;)t=t*33^r.charCodeAt(--n);}else if(ArrayBuffer.isView(r)){const n=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);let s=n.length;for(;s;)t=t*33^n[--s];}else throw new TypeError("value must be a string or TypedArray");return (t>>>0).toString(36)}const Qe={"&":"&",'"':"""},Dt=new RegExp(`[${Object.keys(Qe).join("")}]|[\\ud800-\\udbff](?![\\udc00-\\udfff])|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\udc00-\\udfff]`,"g");function Ye(e){return `"${e.replace(Dt,r=>r.length===2?r:Qe[r]??`&#${r.charCodeAt(0)};`)}"`}const Ze={"<":"\\u003C","\u2028":"\\u2028","\u2029":"\\u2029"},Lt=new RegExp(`[${Object.keys(Ze).join("")}]`,"g");function Wt(e,t,r=!1){const n={};let s=null,o=null,a=!1;for(const[c,_]of e.response.headers)t(c,_)&&(n[c]=_),c==="cache-control"?s=_:c==="age"?o=_:c==="vary"&&_.trim()==="*"&&(a=!0);const u={status:e.response.status,statusText:e.response.statusText,headers:n,body:e.response_body},d=JSON.stringify(u).replace(Lt,c=>Ze[c]),i=['type="application/json"',"data-sveltekit-fetched",`data-url=${Ye(e.url)}`];if(e.request_headers||e.request_body){const c=[];e.request_headers&&c.push([...new Headers(e.request_headers)].join(",")),e.request_body&&c.push(e.request_body),i.push(`data-hash="${Ke(...c)}"`);}if(!r&&e.method==="GET"&&s&&!a){const c=/s-maxage=(\d+)/g.exec(s)??/max-age=(\d+)/g.exec(s);if(c){const _=+c[1]-+(o??"0");i.push(`data-ttl="${_}"`);}}return `<script ${i.join(" ")}>${d}<\/script>`}const N=JSON.stringify,Gt=new TextEncoder;function xe(e){re[0]||Jt();const t=et.slice(0),r=Mt(e);for(let s=0;s<r.length;s+=16){const o=r.subarray(s,s+16);let a,u,d,i=t[0],c=t[1],_=t[2],m=t[3],l=t[4],p=t[5],w=t[6],h=t[7];for(let y=0;y<64;y++)y<16?a=o[y]:(u=o[y+1&15],d=o[y+14&15],a=o[y&15]=(u>>>7^u>>>18^u>>>3^u<<25^u<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+o[y&15]+o[y+9&15]|0),a=a+h+(l>>>6^l>>>11^l>>>25^l<<26^l<<21^l<<7)+(w^l&(p^w))+re[y],h=w,w=p,p=l,l=m+a|0,m=_,_=c,c=i,i=a+(c&_^m&(c^_))+(c>>>2^c>>>13^c>>>22^c<<30^c<<19^c<<10)|0;t[0]=t[0]+i|0,t[1]=t[1]+c|0,t[2]=t[2]+_|0,t[3]=t[3]+m|0,t[4]=t[4]+l|0,t[5]=t[5]+p|0,t[6]=t[6]+w|0,t[7]=t[7]+h|0;}const n=new Uint8Array(t.buffer);return tt(n),rt(n)}const et=new Uint32Array(8),re=new Uint32Array(64);function Jt(){function e(r){return (r-Math.floor(r))*4294967296}let t=2;for(let r=0;r<64;t++){let n=!0;for(let s=2;s*s<=t;s++)if(t%s===0){n=!1;break}n&&(r<8&&(et[r]=e(t**(1/2))),re[r]=e(t**(1/3)),r++);}}function tt(e){for(let t=0;t<e.length;t+=4){const r=e[t+0],n=e[t+1],s=e[t+2],o=e[t+3];e[t+0]=o,e[t+1]=s,e[t+2]=n,e[t+3]=r;}}function Mt(e){const t=Gt.encode(e),r=t.length*8,n=512*Math.ceil((r+65)/512),s=new Uint8Array(n/8);s.set(t),s[t.length]=128,tt(s);const o=new Uint32Array(s.buffer);return o[o.length-2]=Math.floor(r/4294967296),o[o.length-1]=r,o}const H="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");function rt(e){const t=e.length;let r="",n;for(n=2;n<t;n+=3)r+=H[e[n-2]>>2],r+=H[(e[n-2]&3)<<4|e[n-1]>>4],r+=H[(e[n-1]&15)<<2|e[n]>>6],r+=H[e[n]&63];return n===t+1&&(r+=H[e[n-2]>>2],r+=H[(e[n-2]&3)<<4],r+="=="),n===t&&(r+=H[e[n-2]>>2],r+=H[(e[n-2]&3)<<4|e[n-1]>>4],r+=H[(e[n-1]&15)<<2],r+="="),r}const Ee=new Uint8Array(16);function Ft(){return crypto.getRandomValues(Ee),rt(Ee)}const Vt=new Set(["self","unsafe-eval","unsafe-hashes","unsafe-inline","none","strict-dynamic","report-sample","wasm-unsafe-eval","script"]),Bt=/^(nonce|sha\d\d\d)-/;class nt{#e;#t;#s;#o;#r;#n;#a;constructor(t,r,n){this.#e=t,this.#o=r;const s=this.#o;this.#r=[],this.#n=[];const o=s["script-src"]||s["default-src"],a=s["style-src"]||s["default-src"];this.#t=!!o&&o.filter(u=>u!=="unsafe-inline").length>0,this.#s=!!a&&a.filter(u=>u!=="unsafe-inline").length>0,this.script_needs_nonce=this.#t&&!this.#e,this.style_needs_nonce=this.#s&&!this.#e,this.#a=n;}add_script(t){this.#t&&(this.#e?this.#r.push(`sha256-${xe(t)}`):this.#r.length===0&&this.#r.push(`nonce-${this.#a}`));}add_style(t){this.#s&&(this.#e?this.#n.push(`sha256-${xe(t)}`):this.#n.length===0&&this.#n.push(`nonce-${this.#a}`));}get_header(t=!1){const r=[],n={...this.#o};this.#n.length>0&&(n["style-src"]=[...n["style-src"]||n["default-src"]||[],...this.#n]),this.#r.length>0&&(n["script-src"]=[...n["script-src"]||n["default-src"]||[],...this.#r]);for(const s in n){if(t&&(s==="frame-ancestors"||s==="report-uri"||s==="sandbox"))continue;const o=n[s];if(!o)continue;const a=[s];Array.isArray(o)&&o.forEach(u=>{Vt.has(u)||Bt.test(u)?a.push(`'${u}'`):a.push(u);}),r.push(a.join(" "));}return r.join("; ")}}class Xt extends nt{get_meta(){const t=this.get_header(!0);if(t)return `<meta http-equiv="content-security-policy" content=${Ye(t)}>`}}class Kt extends nt{constructor(t,r,n){if(super(t,r,n),Object.values(r).filter(s=>!!s).length>0){const s=r["report-to"]?.length??0>0,o=r["report-uri"]?.length??0>0;if(!s&&!o)throw Error("`content-security-policy-report-only` must be specified with either the `report-to` or `report-uri` directives, or both")}}}class Qt{nonce=Ft();csp_provider;report_only_provider;constructor({mode:t,directives:r,reportOnly:n},{prerender:s}){const o=t==="hash"||t==="auto"&&s;this.csp_provider=new Xt(o,r,this.nonce),this.report_only_provider=new Kt(o,n,this.nonce);}get script_needs_nonce(){return this.csp_provider.script_needs_nonce||this.report_only_provider.script_needs_nonce}get style_needs_nonce(){return this.csp_provider.style_needs_nonce||this.report_only_provider.style_needs_nonce}add_script(t){this.csp_provider.add_script(t),this.report_only_provider.add_script(t);}add_style(t){this.csp_provider.add_style(t),this.report_only_provider.add_style(t);}}function je(){let e,t;return {promise:new Promise((n,s)=>{e=n,t=s;}),fulfil:e,reject:t}}function st(){const e=[je()];return {iterator:{[Symbol.asyncIterator](){return {next:async()=>{const t=await e[0].promise;return t.done||e.shift(),t}}}},push:t=>{e[e.length-1].fulfil({value:t,done:!1}),e.push(je());},done:()=>{e[e.length-1].fulfil({done:!0});}}}const Yt={...z(!1),check:()=>!1},Se=new TextEncoder;async function M({branch:e,fetched:t,options:r,manifest:n$1,state:s,page_config:o,status:a,error:u$1=null,event:d,resolve_opts:i,action_result:c}){if(s.prerendering){if(r.csp.mode==="nonce")throw new Error('Cannot use prerendering if config.kit.csp.mode === "nonce"');if(r.app_template_contains_nonce)throw new Error("Cannot use prerendering if page template contains %sveltekit.nonce%")}const{client:_}=n$1._,m=new Set(_.imports),l=new Set(_.stylesheets),p$1=new Set(_.fonts),w=new Set,h=new Map;let y;const g=c?.type==="success"||c?.type==="failure"?c.data??null:null;let f=p,b=u,$=N(p);if(s.prerendering?.fallback||(f=d.url.pathname.slice(p.length).split("/").slice(2).map(()=>"..").join("/")||".",$=`new URL(${N(f)}, location).pathname.slice(0, -1)`,(!u||u[0]==="/"&&u!==gt)&&(b=f)),o.ssr){const v={stores:{page:A$2(null),navigating:A$2(null),updated:Yt},constructors:await Promise.all(e.map(({node:S})=>S.component())),form:g};let E={};for(let S=0;S<e.length;S+=1)E={...E,...e[S].data},v[`data_${S}`]=E;v.page={error:u$1,params:d.params,route:d.route,status:a,url:d.url,data:E,form:g};try{y=r.root.render(v);}finally{k();}for(const{node:S}of e){for(const T of S.imports)m.add(T);for(const T of S.stylesheets)l.add(T);for(const T of S.fonts)p$1.add(T);S.inline_styles&&Object.entries(await S.inline_styles()).forEach(([T,B])=>h.set(T,B));}}else y={head:"",html:"",css:{code:"",map:null}};let k$1="",x=y.html;const j=new Qt(r.csp,{prerender:!!s.prerendering}),R=v=>v.startsWith("/")?p+v:`${b}/${v}`;if(h.size>0){const v=Array.from(h.values()).join(`
`),E=[];j.style_needs_nonce&&E.push(` nonce="${j.nonce}"`),j.add_style(v),k$1+=`
<style${E.join("")}>${v}</style>`;}for(const v of l){const E=R(v),S=['rel="stylesheet"'];if(h.has(v))S.push("disabled",'media="(max-width: 0)"');else if(i.preload({type:"css",path:E})){const T=['rel="preload"','as="style"'];w.add(`<${encodeURI(E)}>; ${T.join(";")}; nopush`);}k$1+=`
<link href="${E}" ${S.join(" ")}>`;}for(const v of p$1){const E=R(v);if(i.preload({type:"font",path:E})){const T=['rel="preload"','as="font"',`type="font/${v.slice(v.lastIndexOf(".")+1)}"`,`href="${E}"`,"crossorigin"];k$1+=`
<link ${T.join(" ")}>`;}}const L=`__sveltekit_${r.version_hash}`,{data:W,chunks:V}=Zt(d,r,e.map(v=>v.server_data),L);if(o.ssr&&o.csr&&(x+=`
${t.map(v=>Wt(v,i.filterSerializedResponseHeaders,!!s.prerendering)).join(`
`)}`),o.csr){const v=Array.from(m,O=>R(O)).filter(O=>i.preload({type:"js",path:O}));for(const O of v)w.add(`<${encodeURI(O)}>; rel="modulepreload"; nopush`),r.preload_strategy!=="modulepreload"?k$1+=`
<link rel="preload" as="script" crossorigin="anonymous" href="${O}">`:s.prerendering&&(k$1+=`
<link rel="modulepreload" href="${O}">`);const E=[],S=[u&&`assets: ${N(u)}`,`base: ${$}`,`env: ${N(n)}`].filter(Boolean);V&&(E.push("const deferred = new Map();"),S.push(`defer: (id) => new Promise((fulfil, reject) => {
deferred.set(id, { fulfil, reject });
})`),S.push(`resolve: ({ id, data, error }) => {
const { fulfil, reject } = deferred.get(id);
deferred.delete(id);
if (error) reject(error);
else fulfil(data);
}`)),E.push(`${L} = {
${S.join(`,
`)}
};`);const T=["app","element"];if(E.push("const element = document.currentScript.parentElement;"),o.ssr){const O={form:"null",error:"null"};E.push(`const data = ${W};`),g&&(O.form=zt(g,d.route.id)),u$1&&(O.error=uneval(u$1));const Z=[`node_ids: [${e.map(({node:ft})=>ft.index).join(", ")}]`,"data",`form: ${O.form}`,`error: ${O.error}`];a!==200&&Z.push(`status: ${a}`),r.embedded&&Z.push(`params: ${uneval(d.params)}`,`route: ${N(d.route)}`),T.push(`{
${Z.join(`,
`)}
}`);}if(E.push(`Promise.all([
import(${N(R(_.start))}),
import(${N(R(_.app))})
]).then(([kit, app]) => {
kit.start(${T.join(", ")});
});`),r.service_worker){const O="";E.push(`if ('serviceWorker' in navigator) {
addEventListener('load', function () {
navigator.serviceWorker.register('${R("service-worker.js")}'${O});
});
}`);}const B=`
{
${E.join(`
`)}
}
`;j.add_script(B),x+=`
<script${j.script_needs_nonce?` nonce="${j.nonce}"`:""}>${B}<\/script>
`;}const G=new Headers({"x-sveltekit-page":"true","content-type":"text/html"});if(s.prerendering){const v=[],E=j.csp_provider.get_meta();E&&v.push(E),s.prerendering.cache&&v.push(`<meta http-equiv="cache-control" content="${s.prerendering.cache}">`),v.length>0&&(k$1=v.join(`
`)+k$1);}else {const v=j.csp_provider.get_header();v&&G.set("content-security-policy",v);const E=j.report_only_provider.get_header();E&&G.set("content-security-policy-report-only",E),w.size&&G.set("link",Array.from(w).join(", "));}k$1+=y.head;const dt=r.templates.app({head:k$1,body:x,assets:b,nonce:j.nonce,env:n}),Y=await i.transformPageChunk({html:dt,done:!0})||"";return V||G.set("etag",`"${Ke(Y)}"`),V?new Response(new ReadableStream({async start(v){v.enqueue(Se.encode(Y+`
`));for await(const E of V)v.enqueue(Se.encode(E));v.close();},type:"bytes"}),{headers:{"content-type":"text/html"}}):g$1(Y,{status:a,headers:G})}function Zt(e,t,r,n){let s=1,o=0;const{iterator:a,push:u,done:d}=st();function i(c){if(typeof c?.then=="function"){const _=s++;return o+=1,c.then(m=>({data:m})).catch(async m=>({error:await A(e,t,m)})).then(async({data:m,error:l})=>{o-=1;let p;try{p=uneval({id:_,data:m,error:l},i);}catch{l=await A(e,t,new Error(`Failed to serialize promise while rendering ${e.route.id}`)),m=void 0,p=uneval({id:_,data:m,error:l},i);}u(`<script>${n}.resolve(${p})<\/script>
`),o===0&&d();}),`${n}.defer(${_})`}}try{return {data:`[${r.map(_=>_?`{"type":"data","data":${uneval(_.data,i)},${Ne(_)}${_.slash?`,"slash":${JSON.stringify(_.slash)}`:""}}`:"null").join(",")}]`,chunks:o>0?a:null}}catch(c){throw new Error(Ie(e,c))}}function U(e,t){return e.reduce((r,n)=>n?.universal?.[t]??n?.server?.[t]??r,void 0)}async function ot({event:e,options:t,manifest:r,state:n,status:s,error:o$1,resolve_opts:a}){const u=[];try{const d=[],i=await r._.nodes[0](),c=U([i],"ssr")??!0,_=U([i],"csr")??!0;if(c){n.error=!0;const m=fe({event:e,state:n,node:i,parent:async()=>({}),track_server_fetches:t.track_server_fetches}),l=await m,p=await Xe({event:e,fetched:u,node:i,parent:async()=>({}),resolve_opts:a,server_data_promise:m,state:n,csr:_});d.push({node:i,server_data:l,data:p},{node:await r._.nodes[1](),data:null,server_data:null});}return await M({options:t,manifest:r,state:n,page_config:{ssr:c,csr:U([i],"csr")??!0},status:s,error:await A(e,t,o$1),branch:d,fetched:u,event:e,resolve_opts:a})}catch(d){return d instanceof c?K(d.status,d.location):ue(t,d instanceof o?d.status:500,(await A(e,t,d)).message)}}function er(e){let t=!1,r;return ()=>t?r:(t=!0,r=e())}const Re=new TextEncoder;async function tr(e,t,r,n,s,o$1,a){if(!t.page)return new Response(void 0,{status:404});try{const u=[...t.page.layouts,t.page.leaf],d=o$1??u.map(()=>!0);let i=!1;const c$1=new URL(e.url);c$1.pathname=le(c$1.pathname,a);const _={...e,url:c$1},m=u.map((g,f)=>er(async()=>{try{if(i)return {type:"skip"};const b=g==null?g:await n._.nodes[g]();return fe({event:_,state:s,node:b,parent:async()=>{const $={};for(let k=0;k<f;k+=1){const x=await m[k]();x&&Object.assign($,x.data);}return $},track_server_fetches:r.track_server_fetches})}catch(b){throw i=!0,b}})),l=m.map(async(g,f)=>d[f]?g():{type:"skip"});let p=l.length;const w=await Promise.all(l.map((g,f)=>g.catch(async b=>{if(b instanceof c)throw b;return p=Math.min(p,f+1),{type:"error",error:await A(e,r,b),status:b instanceof o?b.status:void 0}}))),{data:h,chunks:y}=at(e,r,w);return y?new Response(new ReadableStream({async start(g){g.enqueue(Re.encode(h));for await(const f of y)g.enqueue(Re.encode(f));g.close();},type:"bytes"}),{headers:{"content-type":"text/sveltekit-data","cache-control":"private, no-store"}}):ne(h)}catch(u){const d=u;return d instanceof c?se(d):ne(await A(e,r,d),500)}}function ne(e,t=200){return g$1(typeof e=="string"?e:JSON.stringify(e),{status:t,headers:{"content-type":"application/json","cache-control":"private, no-store"}})}function se(e){return ne({type:"redirect",location:e.location})}function at(e,t,r){let n=1,s=0;const{iterator:o,push:a,done:u}=st(),d={Promise:i=>{if(typeof i?.then=="function"){const c=n++;s+=1;let _="data";return i.catch(async m=>(_="error",A(e,t,m))).then(async m=>{let l;try{l=stringify(m,d);}catch{const w=await A(e,t,new Error(`Failed to serialize promise while rendering ${e.route.id}`));_="error",l=stringify(w,d);}s-=1,a(`{"type":"chunk","id":${c},"${_}":${l}}
`),s===0&&u();}),c}}};try{return {data:`{"type":"data","nodes":[${r.map(c=>c?c.type==="error"||c.type==="skip"?JSON.stringify(c):`{"type":"data","data":${stringify(c.data,d)},${Ne(c)}${c.slash?`,"slash":${JSON.stringify(c.slash)}`:""}}`:"null").join(",")}]}
`,chunks:s>0?o:null}}catch(i){throw new Error(Ie(e,i))}}const rr=10;async function nr(e,t,r,n,s,o$1){if(s.depth>rr)return g$1(`Not found: ${e.url.pathname}`,{status:404});if(We(e)){const a=await n._.nodes[t.leaf]();return Ct(e,r,a?.server)}try{const a=await Promise.all([...t.layouts.map(f=>f==null?f:n._.nodes[f]()),n._.nodes[t.leaf]()]),u=a.at(-1);let d=200,i;if(Ht(e)){if(i=await Ut(e,u.server),i?.type==="redirect")return K(i.status,i.location);if(i?.type==="error"){const f=i.error;d=f instanceof o?f.status:500;}i?.type==="failure"&&(d=i.status);}const c$1=a.some(f=>f?.server),_=qt(e.url.pathname),m=U(a,"prerender")??!1;if(m){if(u.server?.actions)throw new Error("Cannot prerender pages with actions")}else if(s.prerendering)return new Response(void 0,{status:204});s.prerender_default=m;const l=[];if(U(a,"ssr")===!1)return await M({branch:[],fetched:l,page_config:{ssr:!1,csr:U(a,"csr")??!0},status:d,error:null,event:e,options:r,manifest:n,state:s,resolve_opts:o$1});const p=[];let w=null;const h=a.map((f,b)=>{if(w)throw w;return Promise.resolve().then(async()=>{try{if(f===u&&i?.type==="error")throw i.error;return await fe({event:e,state:s,node:f,parent:async()=>{const $={};for(let k=0;k<b;k+=1){const x=await h[k];x&&Object.assign($,await x.data);}return $},track_server_fetches:r.track_server_fetches})}catch($){throw w=$,w}})}),y=U(a,"csr")??!0,g=a.map((f,b)=>{if(w)throw w;return Promise.resolve().then(async()=>{try{return await Xe({event:e,fetched:l,node:f,parent:async()=>{const $={};for(let k=0;k<b;k+=1)Object.assign($,await g[k]);return $},resolve_opts:o$1,server_data_promise:h[b],state:s,csr:y})}catch($){throw w=$,w}})});for(const f of h)f.catch(()=>{});for(const f of g)f.catch(()=>{});for(let f=0;f<a.length;f+=1){const b=a[f];if(b)try{const $=await h[f],k=await g[f];p.push({node:b,server_data:$,data:k});}catch($){const k=$;if(k instanceof c){if(s.prerendering&&c$1){const R=JSON.stringify({type:"redirect",location:k.location});s.prerendering.dependencies.set(_,{response:g$1(R),body:R});}return K(k.status,k.location)}const x=k instanceof o?k.status:500,j=await A(e,r,k);for(;f--;)if(t.errors[f]){const R=t.errors[f],L=await n._.nodes[R]();let W=f;for(;!p[W];)W-=1;return await M({event:e,options:r,manifest:n,state:s,resolve_opts:o$1,page_config:{ssr:!0,csr:!0},status:x,error:j,branch:ge(p.slice(0,W+1)).concat({node:L,data:null,server_data:null}),fetched:l})}return ue(r,x,j.message)}else p.push(null);}if(s.prerendering&&c$1){let{data:f,chunks:b}=at(e,r,p.map($=>$?.server_data));if(b)for await(const $ of b)f+=$;s.prerendering.dependencies.set(_,{response:g$1(f),body:f});}return await M({event:e,options:r,manifest:n,state:s,resolve_opts:o$1,page_config:{csr:U(a,"csr")??!0,ssr:!0},status:d,error:null,branch:ge(p),action_result:i,fetched:l})}catch(a){return await ot({event:e,options:r,manifest:n,state:s,status:500,error:a,resolve_opts:o$1})}}function sr(e,t,r){const n=e.headers.get("cookie")??"",s=cookieExports.parse(n,{decode:m=>m}),a=le(t.pathname,r).split("/").slice(0,-1).join("/")||"/",u={},d={httpOnly:!0,sameSite:"lax",secure:!(t.hostname==="localhost"&&t.protocol==="http:")},i={get(m,l){const p=u[m];if(p&&ee(t.hostname,p.options.domain)&&te(t.pathname,p.options.path))return p.value;const w=l?.decode||decodeURIComponent;return cookieExports.parse(n,{decode:w})[m]},getAll(m){const l=m?.decode||decodeURIComponent,p=cookieExports.parse(n,{decode:l});for(const w of Object.values(u))ee(t.hostname,w.options.domain)&&te(t.pathname,w.options.path)&&(p[w.name]=w.value);return Object.entries(p).map(([w,h])=>({name:w,value:h}))},set(m,l,p={}){_(m,l,{...d,...p});},delete(m,l={}){i.set(m,"",{...l,maxAge:0});},serialize(m,l,p){return cookieExports.serialize(m,l,{...d,...p})}};function c(m,l){const p={...s};for(const w in u){const h=u[w];if(!ee(m.hostname,h.options.domain)||!te(m.pathname,h.options.path))continue;const y=h.options.encode||encodeURIComponent;p[h.name]=y(h.value);}if(l){const w=cookieExports.parse(l,{decode:h=>h});for(const h in w)p[h]=w[h];}return Object.entries(p).map(([w,h])=>`${w}=${h}`).join("; ")}function _(m,l,p){const w=p.path??a;u[m]={name:m,value:l,options:{...p,path:w}};}return {cookies:i,new_cookies:u,get_cookie_header:c,set_internal:_}}function ee(e,t){if(!t)return !0;const r=t[0]==="."?t.slice(1):t;return e===r?!0:e.endsWith("."+r)}function te(e,t){if(!t)return !0;const r=t.endsWith("/")?t.slice(0,-1):t;return e===r?!0:e.startsWith(r+"/")}function Te(e,t){for(const r of t){const{name:n,value:s,options:o}=r;e.append("set-cookie",cookieExports.serialize(n,s,o));}}function or({event:e,options:t,manifest:r,state:n,get_cookie_header:s,set_internal:o}){return async(a,u$1)=>{const d=Oe(a,u$1,e.url);let i=(a instanceof Request?a.mode:u$1?.mode)??"cors",c=(a instanceof Request?a.credentials:u$1?.credentials)??"same-origin";return await t.hooks.handleFetch({event:e,request:d,fetch:async(_,m)=>{const l=Oe(_,m,e.url),p$1=new URL(l.url);if(l.headers.has("origin")||l.headers.set("origin",e.url.origin),_!==d&&(i=(_ instanceof Request?_.mode:m?.mode)??"cors",c=(_ instanceof Request?_.credentials:m?.credentials)??"same-origin"),(l.method==="GET"||l.method==="HEAD")&&(i==="no-cors"&&p$1.origin!==e.url.origin||p$1.origin===e.url.origin)&&l.headers.delete("origin"),p$1.origin!==e.url.origin){if(`.${p$1.hostname}`.endsWith(`.${e.url.hostname}`)&&c!=="omit"){const x=s(p$1,l.headers.get("cookie"));x&&l.headers.set("cookie",x);}return fetch(l)}const w=u||p,h=decodeURIComponent(p$1.pathname),y=(h.startsWith(w)?h.slice(w.length):h).slice(1),g=`${y}/index.html`,f=r.assets.has(y),b=r.assets.has(g);if(f||b){const x=f?y:g;if(n.read){const j=f?r.mimeTypes[y.slice(y.lastIndexOf("."))]:"text/html";return new Response(n.read(x),{headers:j?{"content-type":j}:{}})}return await fetch(l)}if(c!=="omit"){const x=s(p$1,l.headers.get("cookie"));x&&l.headers.set("cookie",x);const j=e.request.headers.get("authorization");j&&!l.headers.has("authorization")&&l.headers.set("authorization",j);}l.headers.has("accept")||l.headers.set("accept","*/*"),l.headers.has("accept-language")||l.headers.set("accept-language",e.request.headers.get("accept-language"));const $=await lt(l,t,r,{...n,depth:n.depth+1}),k=$.headers.get("set-cookie");if(k)for(const x of setCookieExports.splitCookiesString(k)){const{name:j,value:R,...L}=setCookieExports.parseString(x);o(j,R,L);}return $}})}}function Oe(e,t,r){return e instanceof Request?e:new Request(typeof e=="string"?new URL(e,r):e,t)}const Q=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);new Set([...Q,"entries"]);const he=new Set([...Q]);new Set([...he,"actions","entries"]);const Pe=({html:e})=>e,Ae=()=>!1,qe=({type:e})=>e==="js"||e==="css",ir=new Set(["GET","HEAD","POST"]),cr=new Set(["GET","HEAD","OPTIONS"]);async function lt(e,t,r,n){const s=new URL(e.url);if(t.csrf_check_origin&&Ue(e)&&(e.method==="POST"||e.method==="PUT"||e.method==="PATCH"||e.method==="DELETE")&&e.headers.get("origin")!==s.origin){const y=a$1(403,`Cross-site ${e.method} form submissions are forbidden`);return e.headers.get("accept")==="application/json"?d(y.body,{status:y.status}):g$1(y.body.message,{status:y.status})}let o;try{o=St(s.pathname);}catch{return g$1("Malformed URI",{status:400})}let a=null,u={};if(p&&!n.prerendering?.fallback){if(!o.startsWith(p))return g$1("Not found",{status:404});o=o.slice(p.length)||"/";}const d$1=At(o);let i;if(d$1&&(o=$e(o)||"/",s.pathname=$e(s.pathname)+(s.searchParams.get(ve)==="1"?"/":"")||"/",s.searchParams.delete(ve),i=s.searchParams.get(be)?.split("").map(h=>h==="1"),s.searchParams.delete(be)),!n.prerendering?.fallback){const h=await r._.matchers();for(const y of r._.routes){const g=y.pattern.exec(o);if(!g)continue;const f=bt(g,y.params,h);if(f){a=y,u=Rt(f);break}}}let c$1;const _={};let m={};const l={cookies:null,fetch:null,getClientAddress:n.getClientAddress||(()=>{throw new Error("@sveltejs/adapter-node does not specify getClientAddress. Please raise an issue")}),locals:{},params:u,platform:n.platform,request:e,route:{id:a?.id??null},setHeaders:h=>{for(const y in h){const g=y.toLowerCase(),f=h[y];if(g==="set-cookie")throw new Error("Use `event.cookies.set(name, value, options)` instead of `event.setHeaders` to set cookies");if(g in _)throw new Error(`"${y}" header is already set`);_[g]=f,n.prerendering&&g==="cache-control"&&(n.prerendering.cache=f);}},url:s,isDataRequest:d$1,isSubRequest:n.depth>0};let p$1={transformPageChunk:Pe,filterSerializedResponseHeaders:Ae,preload:qe};try{if(a){if(s.pathname===p||s.pathname===p+"/")c$1="always";else if(a.page){const $=await Promise.all([...a.page.layouts.map(k=>k==null?k:r._.nodes[k]()),r._.nodes[a.page.leaf]()]);c$1=U($,"trailingSlash");}else a.endpoint&&(c$1=(await a.endpoint()).trailingSlash);if(!d$1){const $=le(s.pathname,c$1??"never");if($!==s.pathname&&!n.prerendering?.fallback)return new Response(void 0,{status:308,headers:{"x-sveltekit-normalize":"1",location:($.startsWith("//")?s.origin+$:$)+(s.search==="?"?"":s.search)}})}}const{cookies:h,new_cookies:y,get_cookie_header:g,set_internal:f}=sr(e,s,c$1??"never");m=y,l.cookies=h,l.fetch=or({event:l,options:t,manifest:r,state:n,get_cookie_header:g,set_internal:f}),n.prerendering&&!n.prerendering.fallback&&De(s);const b=await t.hooks.handle({event:l,resolve:($,k)=>w($,k).then(x=>{for(const j in _){const R=_[j];x.headers.set(j,R);}return Te(x.headers,Object.values(m)),n.prerendering&&$.route.id!==null&&x.headers.set("x-sveltekit-routeid",encodeURI($.route.id)),x})});if(b.status===200&&b.headers.has("etag")){let $=e.headers.get("if-none-match");$?.startsWith('W/"')&&($=$.substring(2));const k=b.headers.get("etag");if($===k){const x=new Headers({etag:k});for(const j of ["cache-control","content-location","date","expires","vary","set-cookie"]){const R=b.headers.get(j);R&&x.set(j,R);}return new Response(void 0,{status:304,headers:x})}}if(d$1&&b.status>=300&&b.status<=308){const $=b.headers.get("location");if($)return se(new c(b.status,$))}return b}catch(h){if(h instanceof c){const y=d$1?se(h):a?.page&&We(l)?Je(h):K(h.status,h.location);return Te(y.headers,Object.values(m)),y}return await we(l,t,h)}async function w(h,y){try{if(y){if("ssr"in y)throw new Error("ssr has been removed, set it in the appropriate +layout.js instead. See the PR for more information: https://github.com/sveltejs/kit/pull/6197");p$1={transformPageChunk:y.transformPageChunk||Pe,filterSerializedResponseHeaders:y.filterSerializedResponseHeaders||Ae,preload:y.preload||qe};}if(n.prerendering?.fallback)return await M({event:h,options:t,manifest:r,state:n,page_config:{ssr:!1,csr:!0},status:200,error:null,branch:[],fetched:[],resolve_opts:p$1});if(a){const g=h.request.method;let f;if(d$1)f=await tr(h,a,t,r,n,i,c$1??"never");else if(a.endpoint&&(!a.page||jt(h)))f=await Et(h,await a.endpoint(),n);else if(a.page)if(ir.has(g))f=await nr(h,a.page,t,r,n,p$1);else {const b=new Set(cr);if((await r._.nodes[a.page.leaf]())?.server?.actions&&b.add("POST"),g==="OPTIONS")f=new Response(null,{status:204,headers:{allow:Array.from(b.values()).join(", ")}});else {const k=[...b].reduce((x,j)=>(x[j]=!0,x),{});f=ze(k,g);}}else throw new Error("This should never happen");if(e.method==="GET"&&a.page&&a.endpoint){const b=f.headers.get("vary")?.split(",")?.map($=>$.trim().toLowerCase());b?.includes("accept")||b?.includes("*")||(f=new Response(f.body,{status:f.status,statusText:f.statusText,headers:new Headers(f.headers)}),f.headers.append("Vary","Accept"));}return f}return n.error?g$1("Internal Server Error",{status:500}):n.depth===0?await ot({event:h,options:t,manifest:r,state:n,status:404,error:new Error(`Not found: ${h.url.pathname}`),resolve_opts:p$1}):n.prerendering?g$1("not found",{status:404}):await fetch(e)}catch(g){return await we(h,t,g)}finally{h.cookies.set=()=>{throw new Error("Cannot use `cookies.set(...)` after the response has been generated")},h.setHeaders=()=>{throw new Error("Cannot use `setHeaders(...)` after the response has been generated")};}}}function ur(e,{public_prefix:t,private_prefix:r}){return Object.fromEntries(Object.entries(e).filter(([n])=>n.startsWith(r)&&(t===""||!n.startsWith(t))))}function lr(e,{public_prefix:t,private_prefix:r}){return Object.fromEntries(Object.entries(e).filter(([n])=>n.startsWith(t)&&(r===""||!n.startsWith(r))))}class kr{#e;#t;constructor(t){this.#e=j,this.#t=t;}async init({env:t}){if(a(ur(t,{public_prefix:this.#e.env_public_prefix,private_prefix:this.#e.env_private_prefix})),s(lr(t,{public_prefix:this.#e.env_public_prefix,private_prefix:this.#e.env_private_prefix})),!this.#e.hooks)try{const r=await C();this.#e.hooks={handle:r.handle||(({event:n,resolve:s})=>s(n)),handleError:r.handleError||(({error:n})=>console.error(n)),handleFetch:r.handleFetch||(({request:n,fetch:s})=>s(n))};}catch(r){throw r}}async respond(t,r){if(!(t instanceof Request))throw new Error("The first argument to server.respond must be a Request object. See https://github.com/sveltejs/kit/pull/3384 for details");return lt(t,this.#e,this.#t,{...r,error:!1,depth:0})}}
export { kr as Server };
//# sourceMappingURL=index.js.map