@toa.io/extensions.configuration 1.0.0-alpha.283 → 1.0.0-alpha.284

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/components/configuration.values/operations/create.js +1 -1
  3. package/components/configuration.values/operations/fetch.js +1 -1
  4. package/components/configuration.values/operations/get.js +1 -1
  5. package/components/configuration.values/operations/lib/map.js +1 -1
  6. package/components/configuration.values/operations/lib/resolve.js +1 -1
  7. package/components/configuration.values/operations/list.js +1 -1
  8. package/components/configuration.values/tsconfig.json +1 -1
  9. package/components/configuration.values/tsconfig.tsbuildinfo +1 -1
  10. package/components/configuration.values/types/index.d.ts +1 -1
  11. package/package.json +3 -3
  12. package/tsconfig.json +3 -0
  13. package/tsconfig.tsbuildinfo +1 -1
  14. package/ui/dist/_app/immutable/chunks/{D4R3sAUA.js → Bxde3uE_.js} +2 -2
  15. package/ui/dist/_app/immutable/chunks/BzG-gka8.js +1 -0
  16. package/ui/dist/_app/immutable/chunks/{pcT5puVp.js → _I_MUoRn.js} +1 -1
  17. package/ui/dist/_app/immutable/chunks/{4P-VMHlb.js → mvspXr3J.js} +2 -2
  18. package/ui/dist/_app/immutable/chunks/{BR0r7ehv.js → p9RyiXQ-.js} +1 -1
  19. package/ui/dist/_app/immutable/entry/{app.iFQBmOia.js → app.C1VIepN7.js} +2 -2
  20. package/ui/dist/_app/immutable/entry/start.BQWCs_Pq.js +1 -0
  21. package/ui/dist/_app/immutable/nodes/{0.COfWb7Uk.js → 0.D_0dtFej.js} +1 -1
  22. package/ui/dist/_app/immutable/nodes/{1.Do_XXsj8.js → 1.DFlgHh-H.js} +1 -1
  23. package/ui/dist/_app/immutable/nodes/{2.YNbZtxbt.js → 2.BIHgAxXR.js} +1 -1
  24. package/ui/dist/_app/immutable/nodes/3.R-_yCt5X.js +1 -0
  25. package/ui/dist/_app/immutable/nodes/{4.BDs6ujpw.js → 4.BZMuJGfA.js} +1 -1
  26. package/ui/dist/_app/version.json +1 -1
  27. package/ui/dist/index.html +10 -10
  28. package/components/configuration.values/operations/create.d.ts +0 -16
  29. package/components/configuration.values/operations/create.js.map +0 -1
  30. package/components/configuration.values/operations/fetch.d.ts +0 -11
  31. package/components/configuration.values/operations/fetch.js.map +0 -1
  32. package/components/configuration.values/operations/get.d.ts +0 -17
  33. package/components/configuration.values/operations/get.js.map +0 -1
  34. package/components/configuration.values/operations/lib/map.d.ts +0 -11
  35. package/components/configuration.values/operations/lib/map.js.map +0 -1
  36. package/components/configuration.values/operations/lib/map.test.d.ts +0 -1
  37. package/components/configuration.values/operations/lib/map.test.js +0 -26
  38. package/components/configuration.values/operations/lib/map.test.js.map +0 -1
  39. package/components/configuration.values/operations/lib/resolve.d.ts +0 -27
  40. package/components/configuration.values/operations/lib/resolve.js.map +0 -1
  41. package/components/configuration.values/operations/list.d.ts +0 -10
  42. package/components/configuration.values/operations/list.js.map +0 -1
  43. package/transpiled/Aspect.test.d.ts +0 -1
  44. package/transpiled/Aspect.test.js +0 -66
  45. package/transpiled/Aspect.test.js.map +0 -1
  46. package/transpiled/Client.test.d.ts +0 -1
  47. package/transpiled/Client.test.js +0 -78
  48. package/transpiled/Client.test.js.map +0 -1
  49. package/transpiled/Secret.test.d.ts +0 -1
  50. package/transpiled/Secret.test.js +0 -26
  51. package/transpiled/Secret.test.js.map +0 -1
  52. package/transpiled/configuration.test.d.ts +0 -1
  53. package/transpiled/configuration.test.js +0 -111
  54. package/transpiled/configuration.test.js.map +0 -1
  55. package/transpiled/deployment.test.d.ts +0 -1
  56. package/transpiled/deployment.test.js +0 -66
  57. package/transpiled/deployment.test.js.map +0 -1
  58. package/transpiled/epoch.test.d.ts +0 -1
  59. package/transpiled/epoch.test.js +0 -22
  60. package/transpiled/epoch.test.js.map +0 -1
  61. package/transpiled/manifest.test.d.ts +0 -1
  62. package/transpiled/manifest.test.js +0 -14
  63. package/transpiled/manifest.test.js.map +0 -1
  64. package/ui/dist/_app/immutable/chunks/C6SvLx74.js +0 -1
  65. package/ui/dist/_app/immutable/entry/start.BJ8wH2bz.js +0 -1
  66. package/ui/dist/_app/immutable/nodes/3.DPdUtAMe.js +0 -1
@@ -1,111 +0,0 @@
1
- import { describe, it, beforeEach, afterEach } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { Locator } from '@toa.io/core';
4
- import { generate } from 'randomstring';
5
- import { fit, local, overridden } from './configuration.js';
6
- import { Secret } from './Secret.js';
7
- let locator;
8
- let manifest;
9
- beforeEach(() => {
10
- locator = new Locator(generate(), generate());
11
- manifest = {
12
- schema: {
13
- type: 'object',
14
- properties: { foo: { type: 'string' } }
15
- }
16
- };
17
- });
18
- afterEach(() => {
19
- for (const name of used)
20
- delete process.env[name];
21
- used = [];
22
- });
23
- describe('overridden', () => {
24
- it('should be false without the variable', async () => {
25
- assert.deepStrictEqual(overridden(locator), false);
26
- });
27
- it('should be true with the variable', async () => {
28
- set({});
29
- assert.deepStrictEqual(overridden(locator), true);
30
- });
31
- });
32
- describe('local', () => {
33
- it('should read value', async () => {
34
- const value = { foo: generate() };
35
- set(value);
36
- assert.deepStrictEqual(local(locator, manifest), value);
37
- });
38
- it('should return empty object if no value set', async () => {
39
- assert.deepStrictEqual(local(locator, manifest), {});
40
- });
41
- it('should substitute secrets', async () => {
42
- set({ foo: '$BAR' });
43
- set('bar', '_BAR');
44
- const { foo } = local(locator, manifest);
45
- assert.ok(foo instanceof Secret);
46
- assert.deepStrictEqual(foo.unwrap(), 'bar');
47
- assert.deepStrictEqual(String(foo), '<REDACTED>');
48
- });
49
- it('should substitute secrets in defaults', async () => {
50
- manifest.defaults = { foo: '$BAR' };
51
- set('bar', '_BAR');
52
- assert.deepStrictEqual(local(locator, manifest).foo.unwrap(), 'bar');
53
- });
54
- it('should use defaults', async () => {
55
- manifest.schema = {
56
- type: 'object',
57
- properties: {
58
- foo: { type: 'string' },
59
- bar: { type: 'array', items: { type: 'number' } },
60
- baz: { type: 'string' }
61
- },
62
- required: ['foo', 'bar']
63
- };
64
- manifest.defaults = { foo: 'bar', bar: [1] };
65
- set({ bar: [2], baz: 'foo' });
66
- assert.deepStrictEqual(local(locator, manifest), { foo: 'bar', bar: [2], baz: 'foo' });
67
- });
68
- it('should validate', async () => {
69
- manifest.schema = {
70
- type: 'object',
71
- properties: {
72
- foo: { type: 'string', default: 'hello' },
73
- bar: { type: 'number' }
74
- }
75
- };
76
- set({ bar: 5 });
77
- assert.deepStrictEqual(local(locator, manifest), { foo: 'hello', bar: 5 });
78
- });
79
- });
80
- describe('fit', () => {
81
- it('should substitute secrets and apply the schema', async () => {
82
- manifest.schema = {
83
- type: 'object',
84
- properties: {
85
- foo: { type: 'string' },
86
- bar: { type: 'number', default: 1 }
87
- }
88
- };
89
- set('secret', '_FOO');
90
- const raw = { foo: '$FOO' };
91
- const values = fit(raw, manifest);
92
- assert.deepStrictEqual(values.foo.unwrap(), 'secret');
93
- assert.deepStrictEqual(values.bar, 1);
94
- assert.deepStrictEqual(raw, { foo: '$FOO' }); // untouched
95
- });
96
- it('should not apply the manifest defaults', async () => {
97
- manifest.defaults = { foo: 'hello' };
98
- assert.deepStrictEqual(fit({}, manifest), {});
99
- });
100
- it('should throw on a value not fitting the schema', async () => {
101
- assert.throws(() => fit({ foo: { nested: true } }, manifest));
102
- });
103
- });
104
- function set(value, key = locator.uppercase) {
105
- const string = typeof value === 'string' ? value : JSON.stringify(value);
106
- const name = 'TOA_CONFIGURATION_' + key;
107
- process.env[name] = string;
108
- used.push(name);
109
- }
110
- let used = [];
111
- //# sourceMappingURL=configuration.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configuration.test.js","sourceRoot":"","sources":["../source/configuration.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,66 +0,0 @@
1
- import { it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { Locator } from '@toa.io/core';
4
- import { deployment, describe as map } from './deployment.js';
5
- import { epoch } from './epoch.js';
6
- import { EVENT, VALUES } from './const.js';
7
- const schema = {
8
- type: 'object',
9
- properties: { foo: { type: 'string' }, key: { type: 'string' } }
10
- };
11
- function instance(name, defaults) {
12
- return {
13
- locator: new Locator(name, 'configuration'),
14
- manifest: { schema, defaults },
15
- component: {}
16
- };
17
- }
18
- it('should validate annotation', async () => {
19
- const wrongType = 'not ok';
20
- assert.throws(() => deployment([], wrongType), (error) => /object/.test(error.message));
21
- });
22
- it('should reject unknown components', async () => {
23
- assert.throws(() => deployment([instance('base')], { 'configuration.nope': {} }), (error) => /Component 'configuration\.nope' does not request configuration/.test(error.message));
24
- });
25
- it('should deploy the values service with the map', async () => {
26
- const instances = [instance('base', { foo: 'hello' }), instance('other')];
27
- const annotation = { 'configuration.other': { foo: 'set' } };
28
- const dependency = deployment(instances, annotation);
29
- assert.deepStrictEqual(dependency.events, [EVENT]);
30
- assert.strictEqual(dependency.services?.length, 1);
31
- const service = dependency.services[0];
32
- assert.deepStrictEqual(service.group, 'configuration');
33
- assert.deepStrictEqual(service.name, 'values');
34
- assert.deepStrictEqual(service.components, ['configuration-values']);
35
- const variable = service.variables.find((variable) => variable.name === VALUES);
36
- assert.notStrictEqual(variable, undefined);
37
- assert.deepStrictEqual(JSON.parse(variable.value), map(instances, annotation));
38
- });
39
- it('should describe every component', async () => {
40
- const instances = [instance('base', { foo: 'hello' }), instance('other')];
41
- const values = map(instances, { 'configuration.other': { foo: 'set' } });
42
- assert.deepStrictEqual(values, {
43
- 'configuration.base': { epoch: epoch(schema), schema, defaults: { foo: 'hello' } },
44
- 'configuration.other': { epoch: epoch(schema), schema, defaults: { foo: 'set' } }
45
- });
46
- });
47
- it('should prefer the context over the manifest defaults', async () => {
48
- const values = map([instance('base', { foo: 'hello' })], { 'configuration.base': { foo: 'bye' } });
49
- assert.deepStrictEqual(values['configuration.base'].defaults, { foo: 'bye' });
50
- });
51
- it('should not map values to the component', async () => {
52
- const dependency = deployment([instance('base')], { 'configuration.base': { foo: 'set' } });
53
- assert.deepStrictEqual(dependency.variables, {});
54
- });
55
- it('should map secrets to the component', async () => {
56
- const dependency = deployment([instance('base')], { 'configuration.base': { key: '$KEY' } });
57
- assert.deepStrictEqual(dependency.variables, {
58
- 'configuration-base': [{
59
- name: 'TOA_CONFIGURATION__KEY',
60
- secret: { name: 'toa-configuration', key: 'KEY' }
61
- }]
62
- });
63
- // the service holds the reference, not the secret
64
- assert.deepStrictEqual(map([instance('base')], { 'configuration.base': { key: '$KEY' } })['configuration.base'].defaults, { key: '$KEY' });
65
- });
66
- //# sourceMappingURL=deployment.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deployment.test.js","sourceRoot":"","sources":["../source/deployment.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,22 +0,0 @@
1
- import { it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { epoch } from './epoch.js';
4
- it('should be a sha256 hex', () => {
5
- assert.match(epoch({ type: 'object' }), /^[a-f0-9]{64}$/);
6
- });
7
- it('should not depend on key order', () => {
8
- const a = { type: 'object', properties: { foo: { type: 'string', default: 'x' }, bar: { type: 'number' } } };
9
- const b = { properties: { bar: { type: 'number' }, foo: { default: 'x', type: 'string' } }, type: 'object' };
10
- assert.deepStrictEqual(epoch(a), epoch(b));
11
- });
12
- it('should depend on values', () => {
13
- const a = { type: 'object', properties: { foo: { type: 'string' } } };
14
- const b = { type: 'object', properties: { foo: { type: 'number' } } };
15
- assert.notDeepStrictEqual(epoch(a), epoch(b));
16
- });
17
- it('should keep array order', () => {
18
- const a = { enum: [1, 2] };
19
- const b = { enum: [2, 1] };
20
- assert.notDeepStrictEqual(epoch(a), epoch(b));
21
- });
22
- //# sourceMappingURL=epoch.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"epoch.test.js","sourceRoot":"","sources":["../source/epoch.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAA;AAC9B,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAChC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAA;AAC3D,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;IACxC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IAC5G,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IAE5G,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACjC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IACrE,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IAErE,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACjC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;IAC1B,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;IAE1B,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/C,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,14 +0,0 @@
1
- import { it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { manifest } from './manifest.js';
4
- it('should validate', async () => {
5
- const additional = { schema: {}, foo: 'bar' };
6
- assert.throws(() => {
7
- manifest(additional);
8
- }, (error) => /not expected/.test(error.message));
9
- const wrongType = { schema: 'not ok' };
10
- assert.throws(() => {
11
- manifest(wrongType);
12
- }, (error) => /object/.test(error.message));
13
- });
14
- //# sourceMappingURL=manifest.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.test.js","sourceRoot":"","sources":["../source/manifest.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAA;AAC9B,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,OAAO,EAAiB,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEvD,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;IAC/B,MAAM,UAAU,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAyB,CAAA;IAEpE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QACjB,QAAQ,CAAC,UAAU,CAAC,CAAA;IACtB,CAAC,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IAEtD,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAyB,CAAA;IAE7D,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QACjB,QAAQ,CAAC,SAAS,CAAC,CAAA;IACrB,CAAC,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;AAClD,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- import{B as e,H as t,V as n,ht as r,it as i,n as a,ot as o,t as s}from"./CcD_ISxM.js";var c=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},l=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},u=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function d(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function f(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function p(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var v=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&y.delete(x(e)),v(e,t));var y=new Map;function ee(e,t){let n=x(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&y.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function b(e,t,n){if(y.size>0){let t=x(e,n),r=y.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);y.delete(t)}}return window.fetch(t,n)}function x(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var te=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ne=/^\/\((?:[^)]+)\)$/;function re(e){let t=[];return{pattern:e===`/`||ne.test(e)?/^\/$/:RegExp(`^${ae(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return se(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return se(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=te.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return se(e)}).join(``)}).join(``)}/?$`),params:t}}function ie(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ae(e){return e.slice(1).split(`/`).filter(ie)}function oe(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function se(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ce({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=re(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return oe(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function le(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function ue(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_mewkk7?.base??`/.configuration`,de=globalThis.__sveltekit_mewkk7?.assets??S??``,fe=`1788551943964`,pe=`sveltekit:snapshot`,me=`sveltekit:scroll`,he=`sveltekit:states`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ge=location.origin;function _e(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var ve={...T,"":T.hover};function ye(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function be(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=ye(e)}}function xe(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||k(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ge&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=ye(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:ve[r??`off`],preload_data:ve[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Se(e){let t=r(e),n=!0;function i(){n=!0,t.update(e=>e)}function a(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:i,set:a,subscribe:o}}var Ce={v:h};function we(){let{set:e,subscribe:t}=r(!1),n;async function i(){clearTimeout(n);try{let t=await fetch(`${de}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==fe;return r&&(e(!0),Ce.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:i}}function k(e,t,n){return e.origin!==ge||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Te(e){}var Ee=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Ee],[...new Set([...Ee])];function De(e){return e.filter(e=>e!=null)}function A(e,t){return e+`/`+t}function Oe(e){return e instanceof c||e instanceof u?e.status:500}function ke(e){return e instanceof u?e.text:`Internal Error`}var j,M,Ae,je=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),Me=`a:`;je?(j={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Me)},M={current:null},Ae={current:!1}):(j=new class{#e=o({});get data(){return e(this.#e)}set data(e){i(this.#e,e)}#t=o(null);get form(){return e(this.#t)}set form(e){i(this.#t,e)}#n=o(null);get error(){return e(this.#n)}set error(e){i(this.#n,e)}#r=o({});get params(){return e(this.#r)}set params(e){i(this.#r,e)}#i=o({id:null});get route(){return e(this.#i)}set route(e){i(this.#i,e)}#a=o({});get state(){return e(this.#a)}set state(e){i(this.#a,e)}#o=o(-1);get status(){return e(this.#o)}set status(e){i(this.#o,e)}#s=o(new URL(Me));get url(){return e(this.#s)}set url(e){i(this.#s,e)}},M=new class{#e=o(null);get current(){return e(this.#e)}set current(e){i(this.#e,e)}},Ae=new class{#e=o(!1);get current(){return e(this.#e)}set current(e){i(this.#e,e)}},Ce.v=()=>Ae.current=!0);function Ne(e){Object.assign(j,e)}var{onMount:Pe,tick:Fe}=s,Ie=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=le(`sveltekit:scroll`)??{},F=le(`sveltekit:snapshot`)??{},I={url:Se({}),page:Se({}),navigating:r(null),updated:we()};function Le(e){P[e]=E()}function Re(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function L(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function ze(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var Be,Ve,R,z,He,B,Ue={},We={},V=[],H=[],U=null;function Ge(){U?.fork?.then(e=>e?.discard()),U=null,Q={element:void 0,href:void 0}}var Ke=new Map,qe=new Set,Je=new Set,W=new Set,G={branch:[],error:null,url:null,nav:null},Ye=!1,Xe=!1,Ze=!0,K=!1,q=!1,Qe=!1,$e=!1,et,J,Y,X,tt=new Set,nt=new Map,rt=new Map;async function it(e,t,n){if(globalThis.__sveltekit_mewkk7.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_mewkk7.data;for(let t in e)Ue[t]=e[t];for(let e in n)Ue[e]=n[e];for(let e in r)Ue[e]=r[e];for(let e in t)We[e]=t[e]}document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),Be=ce(e),z=document.documentElement,He=t,Ve=e.nodes[0],R=e.nodes[1],Ve(),R(),J=history.state?.[C],Y=history.state?.[w],J||(J=Y=Date.now(),history.replaceState({...history.state,[C]:J,[w]:Y},``));let r=P[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Ft(He,n)):(await Z({type:`enter`,url:_e(B.hash?Vt(new URL(location.href)):location.href),replace_state:!0}),i()),Pt()}function at(){V.length=0,$e=!1}function ot(e){H.some(e=>e?.snapshot)&&(F[e]=H.map(e=>e?.snapshot?.capture()))}function st(e){F[e]?.forEach((e,t)=>{H[t]?.snapshot?.restore(e)})}function ct(){Le(J),ue(me,P),ot(Y),ue(pe,F)}async function lt(e,n,r,i){let a,o;n.invalidateAll&&Ge(),await Z({type:`goto`,url:_e(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){$e=!0,a=new Set;for(let[e,t]of nt)for(let[n,r]of t)r.resource?.reset(),a.add(A(e,n));o=new Set;for(let[e,t]of rt)for(let n of t.keys())o.add(A(e,n))}n.invalidate&&n.invalidate.forEach(Nt)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of nt)for(let[n,{resource:r}]of t)a?.has(A(e,n))&&r.start();for(let[e,t]of rt)for(let[n,{resource:r}]of t)o?.has(A(e,n))&&r.reconnect()})}async function ut(e){if(e.id!==U?.id){Ge();let t={};tt.add(t),U={id:e.id,token:t,promise:bt({...e,preload:t}).then(e=>(tt.delete(t),e.type===`loaded`&&e.state.error&&Ge(),e)),fork:null}}return U.promise}async function dt(e){let t=(await wt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function ft(e,t,n){let r={params:G.params,route:{id:G.route?.id??null},url:new URL(location.href)};if(G={...e.state,nav:r},Ne(e.props.page),et=new B.root({target:t,props:{...e.props,stores:I,components:H},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:P[J]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};W.forEach(t=>t(e))}st(Y),Xe=!0}async function pt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(S&&(e.pathname===S||e.pathname===S+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=d(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:De(n).map(e=>e.node.component),page:Bt(j)}};s!==void 0&&(l.props.form=s);let u={},f=!j,p=0;for(let e=0;e<Math.max(n.length,G.branch.length);e+=1){let t=n[e],r=G.branch[e];t?.data!==r?.data&&(f=!0),t&&(u={...u,...t.data},f&&(l.props[`data_${p}`]=u),p+=1)}return(!G.url||e.href!==G.url.href||G.error!==a||s!==void 0&&s!==j.form||f)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:f?u:j.data}),l}async function mt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function ht(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:Xe?b(r,i.href,t):ee(r,t)}}function gt(e,t,n,r,i,a){if($e)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==G.params[e])return!0;for(let e of i.dependencies)if(V.some(t=>t(new URL(e))))return!0;return!1}function _t(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function vt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function yt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Bt(j),constructors:[]}}}async function bt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(U?.id===e)return tt.delete(U.token),U.promise;let{errors:o,layouts:s,leaf:u}=i,d=[...s,u];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=G.url?e!==Et(G.url):!1,p=G.route?i.id!==G.route.id:!1,m=vt(G.url,n),g=!1,_=d.map(async(e,t)=>{if(!e)return;let a=G.branch[t];return e[1]===a?.loader&&!gt(g,p,f,m,a.universal?.uses,r)?a:(g=!0,mt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await _[n])?.data);return e},server_data_node:_t(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of _)e.catch(h);let v=[];for(let e=0;e<d.length;e+=1)if(d[e])try{v.push(await _[e])}catch(t){if(t instanceof l)return{type:`redirect`,location:t.location};if(a&&tt.has(a))return yt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Oe(t),u;if(t instanceof c)u=t.body;else{if(await I.updated.check())return await ze(),await L(n);u=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await xt(e,v,o);return d?pt({url:n,params:r,branch:v.slice(0,d.idx).concat(d.node),errors:o,status:s,error:u,route:i}):await Ot(n,{id:i.id},u,s)}else v.push(void 0);return pt({url:n,params:r,branch:v,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function xt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function St({status:e,error:t,url:n,route:r}){let i={};try{return pt({url:n,params:i,branch:[await mt({loader:Ve,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:_t(null)}),{node:await R(),loader:R,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof l){await lt(new URL(t.location,location.href),{},0);return}let a=await B.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Ct(e){let t=e.href;if(Ke.has(t))return Ke.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>ht(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);B.hash?n.hash=t:n.pathname=t,t=n}return t})();Ke.set(t,r),n=await r}catch{Ke.delete(t);return}return n}async function wt(e,t){if(e&&!k(e,S,B.hash)){let n=await Ct(e);if(!n)return;let r=Tt(n);for(let n of Be){let i=n.exec(r);if(i)return{id:Et(e),invalidating:t,route:n,params:p(i),url:e}}}}function Tt(e){return f(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function Et(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Dt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=zt(G,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||qe.forEach(e=>e(c)),o?null:s}async function Z({type:e,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:d={},accept:f=h,block:p=h,event:m}){let g=X;X=d;let _=await wt(r,!1),v=e===`enter`?zt(G,_,r,e):Dt({url:r,type:e,delta:i?.delta,intent:_,scroll:i?.scroll,event:m});if(!v){p(),X===d&&(X=g);return}let y=J,ee=Y;f(),K=!0,Xe&&v.navigation.type!==`enter`&&I.navigating.set(M.current=v.navigation);let b=_&&await bt(_);if(!b){if(k(r,S,B.hash))return await L(r,s);b=await Ot(r,{id:null},await $(new u(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=_?.url||r,X!==d){v.reject(Error(`navigation aborted`));return}if(!b)return;if(b.type===`redirect`){if(l<20){await Z({type:e,url:new URL(b.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:d}),v.fulfil(void 0);return}if(b=await St({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}}),!b)return}else if(b.props.page.status>=400&&await I.updated.check())return await ze(),await L(r,s);if(at(),Le(y),ot(ee),b.props.page.url.pathname!==r.pathname&&(r.pathname=b.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[C]:J+=e,[w]:Y+=e,[he]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||Re(J,Y)}let x=_&&U?.id===_.id?U.fork:null;U?.fork&&!x?Ge():(U=null,Q={element:void 0,href:void 0}),b.props.page.state=c;let te;if(Xe){let e=(await Promise.all(Array.from(Je,e=>e(v.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{W.delete(e)})}e.push(t),e.forEach(e=>{W.add(e)})}let t=v.navigation.to;G={...b.state,nav:{params:t.params,route:t.route,url:t.url}},b.props.page&&(b.props.page.url=r),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=x&&await x;i?te=i.commit():(N=null,et.$set(b.props),N&&Object.assign(b.props.page,N),Ne(b.props.page),te=n?.()),Qe=!0}else await ft(b,He,!1);let{activeElement:ne}=document;if(await te,await t(),await t(),X!==d){v.reject(Error(`navigation aborted`));return}b.props.page&&N&&Object.assign(b.props.page,N);let re=null;if(Ze){let e=i?i.scroll:o?E():null;e?scrollTo(e.x,e.y):(re=r.hash&&document.getElementById(Ht(r)))?re.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==ne&&document.activeElement!==document.body;!a&&!ie&&Rt(r,!re),Ze=!0,K=!1,v.fulfil(void 0),v.navigation.to&&(v.navigation.to.scroll=E()),W.forEach(e=>e(v.navigation)),e===`popstate`&&st(Y),I.navigating.set(M.current=null)}async function Ot(e,t,n,r,i){return e.origin===ge&&e.pathname===location.pathname&&!Ye?await St({status:r,error:n,url:e,route:t}):await L(e,i)}var Q={element:void 0,href:void 0};function kt(){let e,t;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,T.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],T.tap)}z.addEventListener(`mousedown`,n),z.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(dt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=be(e,z),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=xe(r,S,B.hash);if(o||s)return;let c=O(r),l=a&&Et(G.url)===Et(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=T.tap;let e=await wt(a,!1);if(!e)return;ut(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,dt(a))}}function a(){r.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:i}=xe(e,S,B.hash);if(n||i)continue;let a=O(e);a.reload||(a.preload_code===T.viewport&&r.observe(e),a.preload_code===T.eager&&dt(t))}}W.add(a),a()}function $(e,t){if(e instanceof c)return e.body;let n=Oe(e),r=ke(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function At(e,t){Pe(()=>(e.add(t),()=>{e.delete(t)}))}function jt(e){At(Je,e)}function Mt(e,t={}){return e=new URL(_e(e)),e.origin===ge?lt(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Nt(e){if(typeof e==`function`)V.push(e);else{let{href:t}=new URL(e,location.href);V.push(e=>e.href===t)}}function Pt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(ct(),!K){let e=zt(G,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};qe.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&ct()}),navigator.connection?.saveData||kt(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=be(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=xe(n,S,B.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=O(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(B.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Dt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=G.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Le(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),z.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(k(r,S,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Lt){if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(X={},n===J)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=G.url?m(location)===m(G.url):!1;if(o===Y&&(Qe||s)){i!==j.state&&(j.state=i),e(a),P[J]=E(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),B.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[C]:++J,[w]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ie.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(M.current=null)});function e(e){G.url=j.url=e,I.page.set(Bt(j)),I.page.notify()}}async function Ft(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){Ye=!0;let u=new URL(location.href),d;({params:i={},route:a={id:null}}=await wt(u,!1)||{}),d=Be.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=It(r.uses)),mt({loader:B.nodes[t],url:u,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:_t(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await pt({url:u,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof l)return await L(new URL(t.location,location.href));f=await St({status:Oe(t),error:await $(t,{url:u,params:i,route:a}),url:u,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await ft(f,e,p))}function It(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Lt=!1;function Rt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=Ht(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Lt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Lt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function zt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:E()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Bt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Vt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Ht(e){let t;if(B.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{j as a,S as c,M as i,jt as n,Te as o,it as r,fe as s,Mt as t};
@@ -1 +0,0 @@
1
- import{o as e,r as t}from"../chunks/C6SvLx74.js";export{e as load_css,t as start};
@@ -1 +0,0 @@
1
- import{Et as e,Q as t,j as n,k as r}from"../chunks/CcD_ISxM.js";import"../chunks/xihTtKlq.js";import{r as i}from"../chunks/D4R3sAUA.js";var a=n(`<div class="mx-auto h-full max-w-7xl overflow-auto px-4 pb-12"><!></div>`);function o(n){var o=a(),s=t(o);i(s,{}),e(o),r(n,o)}export{o as component};