@cleocode/cleo 2026.10.1 → 2026.10.3

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 (61) hide show
  1. package/bin/cleo.js +17 -1
  2. package/dist/cli/hook-entry.js +372 -0
  3. package/dist/cli/index.js +1779 -329
  4. package/package.json +13 -13
  5. package/studio-dist/client/_app/immutable/chunks/Bw6J8NDM.js +1 -0
  6. package/studio-dist/client/_app/immutable/chunks/{BpRY8_m9.js → DMj27Pxj.js} +1 -1
  7. package/studio-dist/client/_app/immutable/chunks/Dc2owyvE.js +3 -0
  8. package/studio-dist/client/_app/immutable/chunks/{CMfYgGYJ.js → qq3pe1aT.js} +1 -1
  9. package/studio-dist/client/_app/immutable/entry/{app.DKqdTuYA.js → app.CHWXLeE9.js} +2 -2
  10. package/studio-dist/client/_app/immutable/entry/start.C9bwPpvc.js +1 -0
  11. package/studio-dist/client/_app/immutable/nodes/{0.BuXCTiZp.js → 0.DmKQGvFh.js} +1 -1
  12. package/studio-dist/client/_app/immutable/nodes/{1.CsO1BGsz.js → 1.DqJk_REO.js} +1 -1
  13. package/studio-dist/client/_app/immutable/nodes/{15.Bp-qXNPk.js → 15.GUy6kdW1.js} +1 -1
  14. package/studio-dist/client/_app/immutable/nodes/{16.DMXWbK7I.js → 16.CcnKZ8f9.js} +1 -1
  15. package/studio-dist/client/_app/immutable/nodes/{17.CVLdfMFL.js → 17.DAlQF3lQ.js} +1 -1
  16. package/studio-dist/client/_app/immutable/nodes/{18.CyQUos9v.js → 18.vQFr-vFj.js} +1 -1
  17. package/studio-dist/client/_app/immutable/nodes/{20.Dx3wZ86J.js → 20.GVOj5j_r.js} +1 -1
  18. package/studio-dist/client/_app/immutable/nodes/{24.CXGl5ZJ3.js → 24.2-wC6DOh.js} +1 -1
  19. package/studio-dist/client/_app/immutable/nodes/25.D1vYaH8g.js +39 -0
  20. package/studio-dist/client/_app/immutable/nodes/{26.U1MxbYsk.js → 26.C3rNqzZF.js} +1 -1
  21. package/studio-dist/client/_app/immutable/nodes/{3.CUHmTi6Q.js → 3.b-7pzc3M.js} +1 -1
  22. package/studio-dist/client/_app/version.json +1 -1
  23. package/studio-dist/server/chunks/{0-Ban8NQ70.js → 0-BaCce-O1.js} +3 -3
  24. package/studio-dist/server/chunks/1-CVo7Nk6d.js +9 -0
  25. package/studio-dist/server/chunks/{15-C2ukbZuI.js → 15-DRMOSIC9.js} +3 -3
  26. package/studio-dist/server/chunks/{16-C-gWtKZb.js → 16-BulXhoZZ.js} +3 -3
  27. package/studio-dist/server/chunks/{17-CzQ5BDNx.js → 17-DUEOCM0H.js} +3 -3
  28. package/studio-dist/server/chunks/{18-Cnqp0uMS.js → 18-DP7Q8zPs.js} +3 -3
  29. package/studio-dist/server/chunks/{20-D9243OmI.js → 20-9ta6MI7q.js} +3 -3
  30. package/studio-dist/server/chunks/{24-D-3OyyjO.js → 24-DysdL1ab.js} +3 -3
  31. package/studio-dist/server/chunks/{25-BC8dXyIT.js → 25-CYsps38R.js} +4 -4
  32. package/studio-dist/server/chunks/{26-DIYVHPeE.js → 26-Df4YXgg0.js} +3 -3
  33. package/studio-dist/server/chunks/{3-DDNPJWI0.js → 3-BEhOhYpL.js} +3 -3
  34. package/studio-dist/server/chunks/{_layout.svelte-ouauc7nn.js → _layout.svelte-CnLcXYG-.js} +4 -4
  35. package/studio-dist/server/chunks/{_page.svelte-B7CTgxGI.js → _page.svelte-C0qgUvzA.js} +4 -4
  36. package/studio-dist/server/chunks/{_page.svelte-DS8uziG5.js → _page.svelte-CbyEPj2j.js} +3 -3
  37. package/studio-dist/server/chunks/{_page.svelte-BKEo8OSf.js → _page.svelte-DGhXqeRc.js} +3 -3
  38. package/studio-dist/server/chunks/{_page.svelte-ez5VvNrn.js → _page.svelte-DOl0DGOO.js} +3 -3
  39. package/studio-dist/server/chunks/{_page.svelte-BlIGw3KR.js → _page.svelte-Da4q5l93.js} +3 -3
  40. package/studio-dist/server/chunks/{_page.svelte-DU-KSkGO.js → _page.svelte-Dv8tmDEC.js} +3 -3
  41. package/studio-dist/server/chunks/{_page.svelte-ZzSjr8MT.js → _page.svelte-DzcZljiy.js} +5 -5
  42. package/studio-dist/server/chunks/{_page.svelte-Ba45egd6.js → _page.svelte-HUqTICJR.js} +3 -3
  43. package/studio-dist/server/chunks/{_page.svelte-CkagR7NW.js → _page.svelte-ui7LnWkL.js} +3 -3
  44. package/studio-dist/server/chunks/{_server.ts-DMqfOwim.js → _server.ts-2BazvYRP.js} +3 -3
  45. package/studio-dist/server/chunks/{_server.ts-DNL_pHM3.js → _server.ts-C0evMKCk.js} +3 -3
  46. package/studio-dist/server/chunks/{_server.ts-CBaXrLT0.js → _server.ts-CnKVmf_s.js} +2 -2
  47. package/studio-dist/server/chunks/{_server.ts-D0rSedle.js → _server.ts-Cr57EKWf.js} +3 -3
  48. package/studio-dist/server/chunks/{_server.ts-DYCIQvnl.js → _server.ts-P4wVVksg.js} +3 -3
  49. package/studio-dist/server/chunks/{client-CM2Un2n3.js → client-CPM4LrO2.js} +2 -2
  50. package/studio-dist/server/chunks/{dist-BUqYzm8B.js → dist-CdoCt9zT.js} +92 -27
  51. package/studio-dist/server/chunks/{error.svelte-ZYrc30ps.js → error.svelte-ShcZo43D.js} +3 -3
  52. package/studio-dist/server/chunks/{http-Dc9ezTZW.js → http-BiQjEmVU.js} +2 -2
  53. package/studio-dist/server/chunks/{internal-BkiUrFap.js → internal-Cgsrya1j.js} +2 -2
  54. package/studio-dist/server/chunks/{stores-C00-wTzq.js → stores-BGrpEDMK.js} +2 -2
  55. package/studio-dist/server/index.js +1 -1
  56. package/studio-dist/server/manifest.js +17 -17
  57. package/studio-dist/client/_app/immutable/chunks/BhBqZa2S.js +0 -3
  58. package/studio-dist/client/_app/immutable/chunks/Cltvu8Dg.js +0 -1
  59. package/studio-dist/client/_app/immutable/entry/start.DTRTU1pq.js +0 -1
  60. package/studio-dist/client/_app/immutable/nodes/25.BKYmiCU1.js +0 -39
  61. package/studio-dist/server/chunks/1-CZPXu25_.js +0 -9
@@ -1,12 +1,12 @@
1
1
  import { x as head, p as escape_html, m as attr_class, j as ensure_array_like, k as attr, t as attr_style, w as derived } from './dev-Br5zieNA.js';
2
- import { g as goto } from './client-CM2Un2n3.js';
2
+ import { g as goto } from './client-CPM4LrO2.js';
3
3
  import { a as Breadcrumb, C as Card, T as Tabs } from './Tabs-DQKDflnT.js';
4
4
  import { c as TabPanel } from './ui-CkQ-pCs3.js';
5
5
  import { d as describeEdgeKind, E as EDGE_STYLE } from './no-face-up-B_3h6Hgs.js';
6
6
  import { C as CosmosRenderer, m as mapNexusRelationToEdgeKind } from './nexus-adapter-D1ryYG1Z.js';
7
7
  import './index-server-BgfA6C0S.js';
8
8
  import 'node:module';
9
- import './internal-BkiUrFap.js';
9
+ import './internal-Cgsrya1j.js';
10
10
  import './utils-g564cUMV.js';
11
11
  import './cluster-label-layer-CysRMvhi.js';
12
12
 
@@ -229,4 +229,4 @@ function _page($$renderer, $$props) {
229
229
  }
230
230
 
231
231
  export { _page as default };
232
- //# sourceMappingURL=_page.svelte-CkagR7NW.js.map
232
+ //# sourceMappingURL=_page.svelte-ui7LnWkL.js.map
@@ -1,7 +1,7 @@
1
- import { c as createSseStream, S as SSE_HEADERS } from './http-Dc9ezTZW.js';
1
+ import { c as createSseStream, S as SSE_HEADERS } from './http-BiQjEmVU.js';
2
2
  import { metrics } from '@cleocode/core';
3
3
  import { listSessions } from '@cleocode/core/sessions';
4
- import './dist-BUqYzm8B.js';
4
+ import './dist-CdoCt9zT.js';
5
5
  import 'node:fs';
6
6
  import 'node:path';
7
7
  import 'path';
@@ -139,4 +139,4 @@ var GET = ({ locals, params, request }) => {
139
139
  };
140
140
 
141
141
  export { GET };
142
- //# sourceMappingURL=_server.ts-DMqfOwim.js.map
142
+ //# sourceMappingURL=_server.ts-2BazvYRP.js.map
@@ -1,6 +1,6 @@
1
- import { c as createSseStream, S as SSE_HEADERS } from './http-Dc9ezTZW.js';
1
+ import { c as createSseStream, S as SSE_HEADERS } from './http-BiQjEmVU.js';
2
2
  import { g as getTasksDb } from './connections2-DyYEcX2h.js';
3
- import './dist-BUqYzm8B.js';
3
+ import './dist-CdoCt9zT.js';
4
4
  import 'node:fs';
5
5
  import 'node:path';
6
6
  import '@cleocode/core';
@@ -65,4 +65,4 @@ var GET = ({ locals, request }) => {
65
65
  };
66
66
 
67
67
  export { GET };
68
- //# sourceMappingURL=_server.ts-DNL_pHM3.js.map
68
+ //# sourceMappingURL=_server.ts-C0evMKCk.js.map
@@ -13,7 +13,7 @@ import '@cleocode/core/store/open-cleo-db';
13
13
  import '@cleocode/core/store/worktree-build-guard';
14
14
 
15
15
  //#region package.json
16
- var version = "2026.10.1";
16
+ var version = "2026.10.3";
17
17
  //#endregion
18
18
  //#region src/routes/api/health/+server.ts
19
19
  /**
@@ -120,4 +120,4 @@ var GET = ({ locals }) => {
120
120
  };
121
121
 
122
122
  export { GET };
123
- //# sourceMappingURL=_server.ts-CBaXrLT0.js.map
123
+ //# sourceMappingURL=_server.ts-CnKVmf_s.js.map
@@ -1,6 +1,6 @@
1
- import { c as createSseStream, S as SSE_HEADERS, e as encodeSseFrame } from './http-Dc9ezTZW.js';
1
+ import { c as createSseStream, S as SSE_HEADERS, e as encodeSseFrame } from './http-BiQjEmVU.js';
2
2
  import { a as getBrainDb, g as getTasksDb, c as getConduitDb } from './connections2-DyYEcX2h.js';
3
- import './dist-BUqYzm8B.js';
3
+ import './dist-CdoCt9zT.js';
4
4
  import 'node:fs';
5
5
  import 'node:path';
6
6
  import '@cleocode/core';
@@ -275,4 +275,4 @@ var GET = ({ locals, request }) => {
275
275
  };
276
276
 
277
277
  export { GET };
278
- //# sourceMappingURL=_server.ts-D0rSedle.js.map
278
+ //# sourceMappingURL=_server.ts-Cr57EKWf.js.map
@@ -1,8 +1,8 @@
1
- import { c as createSseStream, S as SSE_HEADERS, a as encodeStreamEvent } from './http-Dc9ezTZW.js';
1
+ import { c as createSseStream, S as SSE_HEADERS, a as encodeStreamEvent } from './http-BiQjEmVU.js';
2
2
  import { c as resolveGatewayBaseUrl } from './_dispatch-DTWViLGL.js';
3
3
  import { getTaskAccessor } from '@cleocode/core/store/data-accessor';
4
4
  import { listTasks } from '@cleocode/core/tasks/list';
5
- import './dist-BUqYzm8B.js';
5
+ import './dist-CdoCt9zT.js';
6
6
  import 'node:fs';
7
7
  import 'node:path';
8
8
  import '@cleocode/core';
@@ -134,4 +134,4 @@ var GET = async ({ locals, url, request }) => {
134
134
  };
135
135
 
136
136
  export { GET };
137
- //# sourceMappingURL=_server.ts-DYCIQvnl.js.map
137
+ //# sourceMappingURL=_server.ts-P4wVVksg.js.map
@@ -1,5 +1,5 @@
1
1
  import { i as index_server_exports } from './index-server-BgfA6C0S.js';
2
- import './internal-BkiUrFap.js';
2
+ import './internal-Cgsrya1j.js';
3
3
  import './utils-g564cUMV.js';
4
4
  import { n as noop } from './dev-Br5zieNA.js';
5
5
 
@@ -42,4 +42,4 @@ function goto(url, opts = {}) {
42
42
  }
43
43
 
44
44
  export { goto as g };
45
- //# sourceMappingURL=client-CM2Un2n3.js.map
45
+ //# sourceMappingURL=client-CPM4LrO2.js.map
@@ -529,7 +529,7 @@ var guid = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-
529
529
  /** Returns a regex for validating an RFC 9562/4122 UUID.
530
530
  *
531
531
  * @param version Optionally specify a version 1-8. If no version is specified, all versions are supported. */
532
- var uuid = (version) => {
532
+ var uuid$1 = (version) => {
533
533
  if (!version) return /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;
534
534
  return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${version}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`);
535
535
  };
@@ -1097,8 +1097,8 @@ var $ZodUUID = /* @__PURE__ */ $constructor("$ZodUUID", (inst, def) => {
1097
1097
  v8: 8
1098
1098
  }[def.version];
1099
1099
  if (v === void 0) throw new Error(`Invalid UUID version: "${def.version}"`);
1100
- def.pattern ?? (def.pattern = uuid(v));
1101
- } else def.pattern ?? (def.pattern = uuid());
1100
+ def.pattern ?? (def.pattern = uuid$1(v));
1101
+ } else def.pattern ?? (def.pattern = uuid$1());
1102
1102
  $ZodStringFormat.init(inst, def);
1103
1103
  });
1104
1104
  var $ZodEmail = /* @__PURE__ */ $constructor("$ZodEmail", (inst, def) => {
@@ -19290,7 +19290,7 @@ var NEXUS_CLOUD_PROFILES = ["device", "read-only"];
19290
19290
  * active-only check fails closed instead of the whole command failing.
19291
19291
  */
19292
19292
  var NEXUS_DEVICE_STATE_UNKNOWN = "unknown";
19293
- var isoTime = datetime({ offset: true });
19293
+ var isoTime$1 = datetime({ offset: true });
19294
19294
  /** A profile the CLI does not know reads as none, never as a parse failure. */
19295
19295
  var profile = _enum(NEXUS_CLOUD_PROFILES).nullable().catch(null);
19296
19296
  /** A device state; a value added by a newer server reads as `unknown` (not active). */
@@ -19301,9 +19301,9 @@ var nexusCloudCredentialSchema = object({
19301
19301
  credentialId: string().nullable().optional(),
19302
19302
  profile: profile.optional(),
19303
19303
  scopes: array(string()).default([]),
19304
- createdAt: isoTime.nullable().optional(),
19305
- lastUsedAt: isoTime.nullable().optional(),
19306
- idleExpiresAt: isoTime.nullable().optional()
19304
+ createdAt: isoTime$1.nullable().optional(),
19305
+ lastUsedAt: isoTime$1.nullable().optional(),
19306
+ idleExpiresAt: isoTime$1.nullable().optional()
19307
19307
  });
19308
19308
  /** `DeviceView` (§4.1), as far as the CLI reports it. E2 sends a subset. */
19309
19309
  var nexusCloudDeviceSchema = object({
@@ -19312,17 +19312,17 @@ var nexusCloudDeviceSchema = object({
19312
19312
  platform: string().optional(),
19313
19313
  arch: string().nullable().optional(),
19314
19314
  cliVersion: string().nullable().optional(),
19315
- createdAt: isoTime.optional(),
19316
- lastSeenAt: isoTime.nullable().optional(),
19315
+ createdAt: isoTime$1.optional(),
19316
+ lastSeenAt: isoTime$1.nullable().optional(),
19317
19317
  state: deviceState,
19318
- signedOutAt: isoTime.nullable().optional(),
19318
+ signedOutAt: isoTime$1.nullable().optional(),
19319
19319
  certificate: string().nullable().optional(),
19320
19320
  profile: profile.optional(),
19321
19321
  current: boolean().default(false),
19322
19322
  projects: number().int().nonnegative().optional(),
19323
19323
  replicas: number().int().nonnegative().optional(),
19324
- lastSyncAt: isoTime.nullable().optional(),
19325
- lastPresenceAt: isoTime.nullable().optional()
19324
+ lastSyncAt: isoTime$1.nullable().optional(),
19325
+ lastPresenceAt: isoTime$1.nullable().optional()
19326
19326
  });
19327
19327
  /** `OrganizationSummary` (§4.1). */
19328
19328
  var nexusCloudOrganizationSchema = object({
@@ -19339,7 +19339,7 @@ var nexusCloudUserSchema = object({
19339
19339
  name: string().nullable().optional()
19340
19340
  });
19341
19341
  object({
19342
- serverTime: isoTime.optional(),
19342
+ serverTime: isoTime$1.optional(),
19343
19343
  user: nexusCloudUserSchema,
19344
19344
  organizations: array(nexusCloudOrganizationSchema).default([]),
19345
19345
  credential: nexusCloudCredentialSchema,
@@ -19352,7 +19352,7 @@ object({
19352
19352
  });
19353
19353
  /** Path-free replica presence (`ReplicaPresence`), with the R4 `sync` flag; other fields kept as sent. */
19354
19354
  var nexusCloudPresenceSchema = looseObject({
19355
- observedAt: isoTime.optional(),
19355
+ observedAt: isoTime$1.optional(),
19356
19356
  sync: object({ enabled: boolean() }).optional()
19357
19357
  });
19358
19358
  /** `ReplicaRow` (§4.1). */
@@ -19362,10 +19362,10 @@ var nexusCloudReplicaSchema = object({
19362
19362
  deviceId: string(),
19363
19363
  deviceName: string(),
19364
19364
  deviceState: deviceState.optional(),
19365
- attachedAt: isoTime.optional(),
19366
- lastSyncAt: isoTime.nullable(),
19365
+ attachedAt: isoTime$1.optional(),
19366
+ lastSyncAt: isoTime$1.nullable(),
19367
19367
  presence: nexusCloudPresenceSchema.nullable(),
19368
- presenceAt: isoTime.nullable()
19368
+ presenceAt: isoTime$1.nullable()
19369
19369
  });
19370
19370
  /** `DeviceCounts` (§4.1): distinct devices holding a replica. */
19371
19371
  var nexusCloudDeviceCountsSchema = object({
@@ -19379,7 +19379,7 @@ var projectFields = {
19379
19379
  organizationId: string(),
19380
19380
  organizationName: string().optional(),
19381
19381
  remoteUrl: string().nullable().optional(),
19382
- createdAt: isoTime.optional()
19382
+ createdAt: isoTime$1.optional()
19383
19383
  };
19384
19384
  object({
19385
19385
  projects: array(object({
@@ -19391,8 +19391,8 @@ object({
19391
19391
  replicas: array(nexusCloudReplicaSchema).default([]),
19392
19392
  devices: nexusCloudDeviceCountsSchema.optional(),
19393
19393
  replicaCount: number().int().nonnegative().optional(),
19394
- lastSyncAt: isoTime.nullable().optional(),
19395
- lastPresenceAt: isoTime.nullable().optional(),
19394
+ lastSyncAt: isoTime$1.nullable().optional(),
19395
+ lastPresenceAt: isoTime$1.nullable().optional(),
19396
19396
  replicasTruncated: boolean().default(false)
19397
19397
  })),
19398
19398
  nextCursor: string().max(512).nullable().default(null),
@@ -19402,7 +19402,7 @@ object({
19402
19402
  object({
19403
19403
  project: object({
19404
19404
  ...projectFields,
19405
- deletedAt: isoTime.nullable().optional()
19405
+ deletedAt: isoTime$1.nullable().optional()
19406
19406
  }),
19407
19407
  role: string(),
19408
19408
  canTrash: boolean().optional(),
@@ -19410,7 +19410,7 @@ object({
19410
19410
  replicas: array(nexusCloudReplicaSchema),
19411
19411
  devices: nexusCloudDeviceCountsSchema,
19412
19412
  replicaCount: number().int().nonnegative().optional(),
19413
- lastSyncAt: isoTime.nullable().optional(),
19413
+ lastSyncAt: isoTime$1.nullable().optional(),
19414
19414
  truncated: boolean().default(false),
19415
19415
  stream: object({
19416
19416
  streamId: string(),
@@ -19454,7 +19454,7 @@ var nexusCloudStatusCheckSchema = object({
19454
19454
  detail: string()
19455
19455
  });
19456
19456
  object({
19457
- serverTime: isoTime.optional(),
19457
+ serverTime: isoTime$1.optional(),
19458
19458
  apiVersion: string().optional(),
19459
19459
  user: nexusCloudUserSchema,
19460
19460
  credential: nexusCloudCredentialSchema,
@@ -19470,9 +19470,9 @@ object({
19470
19470
  replicaId: string(),
19471
19471
  attached: boolean(),
19472
19472
  attachedElsewhere: boolean(),
19473
- attachedAt: isoTime.nullable(),
19474
- lastSyncAt: isoTime.nullable(),
19475
- presenceAt: isoTime.nullable(),
19473
+ attachedAt: isoTime$1.nullable(),
19474
+ lastSyncAt: isoTime$1.nullable(),
19475
+ presenceAt: isoTime$1.nullable(),
19476
19476
  lastReplicaSeq: number().int().nonnegative().nullable().optional()
19477
19477
  }).nullable(),
19478
19478
  stream: object({
@@ -19491,6 +19491,71 @@ object({
19491
19491
  })),
19492
19492
  verdict: _enum(NEXUS_STATUS_VERDICTS).catch("attention")
19493
19493
  });
19494
+ //#endregion
19495
+ //#region ../contracts/dist/nexus-vault.js
19496
+ /**
19497
+ * Cloud vault contracts: `cleo cloud push | pull | restore | verify | activity | lease`.
19498
+ *
19499
+ * The vault keeps encrypted snapshots of a project's (or this account's
19500
+ * global) CLEO state on Cleo Nexus, as checkpoints on the project's journal
19501
+ * stream (or the account's `home:` stream). The server stores ciphertext plus
19502
+ * a plaintext manifest of per-table row counts and keyed hashes, and refuses a
19503
+ * snapshot that does not descend from the stream head or whose counts do not
19504
+ * reconcile with the journal.
19505
+ *
19506
+ * Keys (owner decision 2026-10-01): adding a device needs only `cleo login`
19507
+ * and the one-time browser approval. The account master key is escrowed on
19508
+ * the server (stored encrypted under a server-held key, cleo-nexus T082) and
19509
+ * released only to an approved, active device, sealed to that device's X25519
19510
+ * key (`GET /v1/account/keys/escrow`). Snapshots are encrypted, but with keys
19511
+ * the server can recover: server-escrowed encryption, not zero-knowledge.
19512
+ *
19513
+ * The response schemas here parse what the API returns for the endpoints the
19514
+ * wire contract (`./cloud/api.ts`, mirrored from cleo-nexus) does not yet
19515
+ * carry; every object is loose so a newer server's extra fields survive.
19516
+ *
19517
+ * @task T12336
19518
+ * @task T12337
19519
+ * @task T12338
19520
+ * @epic T12322
19521
+ */
19522
+ var isoTime = datetime({ offset: true });
19523
+ var uuid = string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i);
19524
+ looseObject({
19525
+ keyVersion: number().int().positive(),
19526
+ masterKeyVerifier: string()
19527
+ });
19528
+ looseObject({ keys: array(looseObject({
19529
+ wrappedProjectKey: string(),
19530
+ keyVersion: number().int().positive()
19531
+ })) });
19532
+ looseObject({ lease: looseObject({
19533
+ streamId: string(),
19534
+ role: string(),
19535
+ replicaId: uuid,
19536
+ expiresAt: isoTime,
19537
+ forkedFromReplicaId: uuid.nullable().optional()
19538
+ }) });
19539
+ looseObject({
19540
+ streamId: string(),
19541
+ kind: string().optional(),
19542
+ headSeq: number().int().nonnegative(),
19543
+ headCheckpointId: string().nullable(),
19544
+ maxSchemaVersion: number().int().nonnegative().optional()
19545
+ });
19546
+ looseObject({
19547
+ events: array(looseObject({
19548
+ id: union([string(), number()]),
19549
+ at: isoTime,
19550
+ actorUserId: string().nullable().optional(),
19551
+ actorDeviceId: string().nullable().optional(),
19552
+ requestId: string().nullable().optional(),
19553
+ action: string(),
19554
+ target: string().nullable().optional(),
19555
+ detail: unknown().optional()
19556
+ })),
19557
+ nextBefore: union([string(), number()]).nullable().optional()
19558
+ });
19494
19559
 
19495
19560
  export { OPERATIONS as O, TASK_STATUSES as T };
19496
- //# sourceMappingURL=dist-BUqYzm8B.js.map
19561
+ //# sourceMappingURL=dist-CdoCt9zT.js.map
@@ -1,8 +1,8 @@
1
1
  import { g as getContext, p as escape_html } from './dev-Br5zieNA.js';
2
2
  import 'node:module';
3
- import './client-CM2Un2n3.js';
3
+ import './client-CPM4LrO2.js';
4
4
  import './index-server-BgfA6C0S.js';
5
- import './internal-BkiUrFap.js';
5
+ import './internal-Cgsrya1j.js';
6
6
  import './utils-g564cUMV.js';
7
7
 
8
8
  //#endregion
@@ -65,4 +65,4 @@ function Error$1($$renderer, $$props) {
65
65
  }
66
66
 
67
67
  export { Error$1 as default };
68
- //# sourceMappingURL=error.svelte-ZYrc30ps.js.map
68
+ //# sourceMappingURL=error.svelte-ShcZo43D.js.map
@@ -1,4 +1,4 @@
1
- import { O as OPERATIONS$1 } from './dist-BUqYzm8B.js';
1
+ import { O as OPERATIONS$1 } from './dist-CdoCt9zT.js';
2
2
  import '@cleocode/core';
3
3
  import 'path';
4
4
 
@@ -107,4 +107,4 @@ function createSseStream(source, signal) {
107
107
  }
108
108
 
109
109
  export { SSE_HEADERS as S, encodeStreamEvent as a, createSseStream as c, encodeSseFrame as e };
110
- //# sourceMappingURL=http-Dc9ezTZW.js.map
110
+ //# sourceMappingURL=http-BiQjEmVU.js.map
@@ -1430,7 +1430,7 @@ var options = {
1430
1430
  app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"en\" data-theme=\"dark\">\n <head>\n <meta charset=\"utf-8\" />\n <link rel=\"icon\" href=\"" + assets + "/favicon.png\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <meta name=\"color-scheme\" content=\"dark\" />\n <title>CLEO Studio</title>\n " + head + "\n </head>\n <body class=\"cleo-root\" data-sveltekit-preload-data=\"hover\">\n <div style=\"display: contents\">" + body + "</div>\n </body>\n</html>\n",
1431
1431
  error: ({ status, message }) => "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <title>" + message + "</title>\n\n <style>\n body {\n --bg: white;\n --fg: #222;\n --divider: #ccc;\n background: var(--bg);\n color: var(--fg);\n font-family:\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n 'Open Sans',\n 'Helvetica Neue',\n sans-serif;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100vh;\n margin: 0;\n }\n\n .error {\n display: flex;\n align-items: center;\n max-width: 32rem;\n margin: 0 1rem;\n }\n\n .status {\n font-weight: 200;\n font-size: 3rem;\n line-height: 1;\n position: relative;\n top: -0.05rem;\n }\n\n .message {\n border-left: 1px solid var(--divider);\n padding: 0 0 0 1rem;\n margin: 0 0 0 1rem;\n min-height: 2.5rem;\n display: flex;\n align-items: center;\n }\n\n .message h1 {\n font-weight: 400;\n font-size: 1em;\n margin: 0;\n }\n\n @media (prefers-color-scheme: dark) {\n body {\n --bg: #222;\n --fg: #ddd;\n --divider: #666;\n }\n }\n </style>\n </head>\n <body>\n <div class=\"error\">\n <span class=\"status\">" + status + "</span>\n <div class=\"message\">\n <h1>" + message + "</h1>\n </div>\n </div>\n </body>\n</html>\n"
1432
1432
  },
1433
- version_hash: "olx21"
1433
+ version_hash: "n5wyxn"
1434
1434
  };
1435
1435
  async function get_hooks() {
1436
1436
  let handle;
@@ -1453,4 +1453,4 @@ async function get_hooks() {
1453
1453
  }
1454
1454
 
1455
1455
  export { stringify as A, make_trackable as B, stringify$1 as C, read_implementation as D, split_remote_key as E, set_read_implementation as F, IN_WEBCONTAINER as I, NULL_BODY_STATUS as N, TRAILING_SLASH_PARAM as T, get_message as a, get_hooks as b, coalesce_to_error as c, INVALIDATED_PARAM as d, decode_pathname as e, find_route as f, get_status as g, normalize_path as h, disable_search as i, validate_layout_exports as j, validate_page_server_exports as k, validate_page_exports as l, merge_tracing as m, noop as n, options as o, parse as p, noop_span as q, create_remote_key as r, hash as s, compact as t, once as u, validate_layout_server_exports as v, with_request_store as w, normalize_error as x, resolve as y, parse_remote_arg as z };
1456
- //# sourceMappingURL=internal-BkiUrFap.js.map
1456
+ //# sourceMappingURL=internal-Cgsrya1j.js.map
@@ -1,6 +1,6 @@
1
1
  import { g as getContext } from './dev-Br5zieNA.js';
2
2
  import 'node:module';
3
- import './client-CM2Un2n3.js';
3
+ import './client-CPM4LrO2.js';
4
4
 
5
5
  //#region ../../node_modules/.pnpm/@sveltejs+kit@2.57.1_@opentelemetry+api@1.9.0_@sveltejs+vite-plugin-svelte@5.1.1_svelte_e94e6db60b0c5f7146157d0facbe8042/node_modules/@sveltejs/kit/src/runtime/app/stores.js
6
6
  /**
@@ -30,4 +30,4 @@ var page = { subscribe(fn) {
30
30
  } };
31
31
 
32
32
  export { page as p };
33
- //# sourceMappingURL=stores-C00-wTzq.js.map
33
+ //# sourceMappingURL=stores-BGrpEDMK.js.map
@@ -1,5 +1,5 @@
1
1
  import { _ as __commonJSMin } from './chunks/index-server-BgfA6C0S.js';
2
- import { c as coalesce_to_error, g as get_status, a as get_message, w as with_request_store, p as parse, o as options, I as IN_WEBCONTAINER, b as get_hooks, n as noop, T as TRAILING_SLASH_PARAM, d as INVALIDATED_PARAM, e as decode_pathname, f as find_route, h as normalize_path, i as disable_search, m as merge_tracing, v as validate_layout_server_exports, j as validate_layout_exports, k as validate_page_server_exports, l as validate_page_exports, q as noop_span, r as create_remote_key, s as hash, t as compact, u as once, x as normalize_error, y as resolve, z as parse_remote_arg, A as stringify, B as make_trackable, C as stringify$1, D as read_implementation, E as split_remote_key, N as NULL_BODY_STATUS, F as set_read_implementation } from './chunks/internal-BkiUrFap.js';
2
+ import { c as coalesce_to_error, g as get_status, a as get_message, w as with_request_store, p as parse, o as options, I as IN_WEBCONTAINER, b as get_hooks, n as noop, T as TRAILING_SLASH_PARAM, d as INVALIDATED_PARAM, e as decode_pathname, f as find_route, h as normalize_path, i as disable_search, m as merge_tracing, v as validate_layout_server_exports, j as validate_layout_exports, k as validate_page_server_exports, l as validate_page_exports, q as noop_span, r as create_remote_key, s as hash, t as compact, u as once, x as normalize_error, y as resolve, z as parse_remote_arg, A as stringify, B as make_trackable, C as stringify$1, D as read_implementation, E as split_remote_key, N as NULL_BODY_STATUS, F as set_read_implementation } from './chunks/internal-Cgsrya1j.js';
3
3
  import { H as HttpError, a as text_decoder, S as SvelteKitError, h as has_resolution_suffix, c as has_data_suffix, s as strip_resolution_suffix, d as strip_data_suffix, e as add_data_suffix, f as add_resolution_suffix, R as Redirect, t as text_encoder, A as ActionFailure, g as get_relative_path, i as base64_encode } from './chunks/utils-g564cUMV.js';
4
4
  import { j as json, t as text, e as error, i as isRedirect } from './chunks/exports-Dg-gdPPq.js';
5
5
  import { u as uneval, aa as writable, ab as readable } from './chunks/dev-Br5zieNA.js';
@@ -10,12 +10,12 @@ return {
10
10
  assets: new Set(["favicon.png"]),
11
11
  mimeTypes: {".png":"image/png"},
12
12
  _: {
13
- client: {start:"_app/immutable/entry/start.DTRTU1pq.js",app:"_app/immutable/entry/app.DKqdTuYA.js",imports:["_app/immutable/entry/start.DTRTU1pq.js","_app/immutable/chunks/BhBqZa2S.js","_app/immutable/chunks/DGftG5oL.js","_app/immutable/entry/app.DKqdTuYA.js","_app/immutable/chunks/DGftG5oL.js","_app/immutable/chunks/C6jhAnil.js","_app/immutable/chunks/B8WnZMYa.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
13
+ client: {start:"_app/immutable/entry/start.C9bwPpvc.js",app:"_app/immutable/entry/app.CHWXLeE9.js",imports:["_app/immutable/entry/start.C9bwPpvc.js","_app/immutable/chunks/Dc2owyvE.js","_app/immutable/chunks/DGftG5oL.js","_app/immutable/entry/app.CHWXLeE9.js","_app/immutable/chunks/DGftG5oL.js","_app/immutable/chunks/C6jhAnil.js","_app/immutable/chunks/B8WnZMYa.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
14
14
  nodes: [
15
- __memo(() => import('./chunks/0-Ban8NQ70.js')),
16
- __memo(() => import('./chunks/1-CZPXu25_.js')),
15
+ __memo(() => import('./chunks/0-BaCce-O1.js')),
16
+ __memo(() => import('./chunks/1-CVo7Nk6d.js')),
17
17
  __memo(() => import('./chunks/2-DQaIET_o.js')),
18
- __memo(() => import('./chunks/3-DDNPJWI0.js')),
18
+ __memo(() => import('./chunks/3-BEhOhYpL.js')),
19
19
  __memo(() => import('./chunks/4-C9BMSh4K.js')),
20
20
  __memo(() => import('./chunks/5-C0CF4WKG.js')),
21
21
  __memo(() => import('./chunks/6-BWyOJust.js')),
@@ -27,18 +27,18 @@ return {
27
27
  __memo(() => import('./chunks/12-WE1u104t.js')),
28
28
  __memo(() => import('./chunks/13-joBDoxhK.js')),
29
29
  __memo(() => import('./chunks/14-Doj5F4uJ.js')),
30
- __memo(() => import('./chunks/15-C2ukbZuI.js')),
31
- __memo(() => import('./chunks/16-C-gWtKZb.js')),
32
- __memo(() => import('./chunks/17-CzQ5BDNx.js')),
33
- __memo(() => import('./chunks/18-Cnqp0uMS.js')),
30
+ __memo(() => import('./chunks/15-DRMOSIC9.js')),
31
+ __memo(() => import('./chunks/16-BulXhoZZ.js')),
32
+ __memo(() => import('./chunks/17-DUEOCM0H.js')),
33
+ __memo(() => import('./chunks/18-DP7Q8zPs.js')),
34
34
  __memo(() => import('./chunks/19-BAQHPrMB.js')),
35
- __memo(() => import('./chunks/20-D9243OmI.js')),
35
+ __memo(() => import('./chunks/20-9ta6MI7q.js')),
36
36
  __memo(() => import('./chunks/21-qhGjkW41.js')),
37
37
  __memo(() => import('./chunks/22-Byy16hFA.js')),
38
38
  __memo(() => import('./chunks/23-D194DGVi.js')),
39
- __memo(() => import('./chunks/24-D-3OyyjO.js')),
40
- __memo(() => import('./chunks/25-BC8dXyIT.js')),
41
- __memo(() => import('./chunks/26-DIYVHPeE.js')),
39
+ __memo(() => import('./chunks/24-DysdL1ab.js')),
40
+ __memo(() => import('./chunks/25-CYsps38R.js')),
41
+ __memo(() => import('./chunks/26-Df4YXgg0.js')),
42
42
  __memo(() => import('./chunks/27-Cqzlh9gZ.js')),
43
43
  __memo(() => import('./chunks/28-DeYe2rpm.js')),
44
44
  __memo(() => import('./chunks/29-d_lZvJg3.js')),
@@ -82,7 +82,7 @@ return {
82
82
  pattern: /^\/api\/brain\/stream\/?$/,
83
83
  params: [],
84
84
  page: null,
85
- endpoint: __memo(() => import('./chunks/_server.ts-D0rSedle.js'))
85
+ endpoint: __memo(() => import('./chunks/_server.ts-Cr57EKWf.js'))
86
86
  },
87
87
  {
88
88
  id: "/api/brain/substrate/[name]",
@@ -110,7 +110,7 @@ return {
110
110
  pattern: /^\/api\/health\/?$/,
111
111
  params: [],
112
112
  page: null,
113
- endpoint: __memo(() => import('./chunks/_server.ts-CBaXrLT0.js'))
113
+ endpoint: __memo(() => import('./chunks/_server.ts-CnKVmf_s.js'))
114
114
  },
115
115
  {
116
116
  id: "/api/memory/decision-store",
@@ -355,7 +355,7 @@ return {
355
355
  pattern: /^\/api\/tasks\/events\/?$/,
356
356
  params: [],
357
357
  page: null,
358
- endpoint: __memo(() => import('./chunks/_server.ts-DNL_pHM3.js'))
358
+ endpoint: __memo(() => import('./chunks/_server.ts-C0evMKCk.js'))
359
359
  },
360
360
  {
361
361
  id: "/api/tasks/graph",
@@ -390,7 +390,7 @@ return {
390
390
  pattern: /^\/api\/tasks\/subscribe\/?$/,
391
391
  params: [],
392
392
  page: null,
393
- endpoint: __memo(() => import('./chunks/_server.ts-DYCIQvnl.js'))
393
+ endpoint: __memo(() => import('./chunks/_server.ts-P4wVVksg.js'))
394
394
  },
395
395
  {
396
396
  id: "/api/tasks/tree/[epicId]",
@@ -425,7 +425,7 @@ return {
425
425
  pattern: /^\/api\/tasks\/([^/]+?)\/stream\/?$/,
426
426
  params: [{"name":"id","optional":false,"rest":false,"chained":false}],
427
427
  page: null,
428
- endpoint: __memo(() => import('./chunks/_server.ts-DMqfOwim.js'))
428
+ endpoint: __memo(() => import('./chunks/_server.ts-2BazvYRP.js'))
429
429
  },
430
430
  {
431
431
  id: "/api/tasks/[id]/transition",
@@ -1,3 +0,0 @@
1
- import{$ as e,I as t,L as n,Q as r,R as i,r as a,rt as o,t as s}from"./DGftG5oL.js";var c=class{constructor(e,t){this.status=e,typeof t==`string`?this.body={message:t}:t?this.body=t:this.body={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 ee(...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;var g=new TextDecoder;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 te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent),i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),r.getAttribute(`data-b64`)!==null&&(e=_(e)),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.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);v.delete(t)}}return window.fetch(t,n)}function b(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="${ee(...e)}"]`}return n}var re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function ie(e){let t=[];return{pattern:e===`/`?/^\/$/:RegExp(`^${oe(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 ce(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return ce(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return ce(e)}).join(``)}).join(``)}/?$`),params:t}}function ae(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function oe(e){return e.slice(1).split(`/`).filter(ae)}function se(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 ce(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function le({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}=ie(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return se(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 ue(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function de(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_olx21?.base??``,fe=globalThis.__sveltekit_olx21?.assets??x??``,pe=`1790832596275`,me=`sveltekit:snapshot`,he=`sveltekit:scroll`,ge=`sveltekit:states`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},T=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={...w,"":w.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||Ee(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===T&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function Se(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 Ce(e){let t=o(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function a(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:a}}var we={v:h};function Te(){let{set:e,subscribe:t}=o(!1);async function n(){clearTimeout(void 0);try{let t=await fetch(`${fe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==pe;return n&&(e(!0),we.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:t,check:n}}function Ee(e,t,n){return e.origin!==T||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function De(e){}function Oe(e){return Uint8Array.fromBase64(e).buffer}function ke(e){return Uint8Array.from(Buffer.from(e,`base64`)).buffer}function Ae(e){let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}var je=typeof Uint8Array.fromBase64==`function`,Me=typeof process==`object`&&process.versions?.node!==void 0,Ne=je?Oe:Me?ke:Ae;function Pe(e,t){return Fe(JSON.parse(e),t)}function Fe(e,t){if(typeof e==`number`)return a(e,!0);if(!Array.isArray(e)||e.length===0)throw Error(`Invalid input`);let n=e,r=Array(n.length),i=null;function a(e,o=!1){if(e===-1)return;if(e===-3)return NaN;if(e===-4)return 1/0;if(e===-5)return-1/0;if(e===-6)return-0;if(o||typeof e!=`number`)throw Error(`Invalid input`);if(e in r)return r[e];let s=n[e];if(!s||typeof s!=`object`)r[e]=s;else if(Array.isArray(s))if(typeof s[0]==`string`){let o=s[0],c=t&&Object.hasOwn(t,o)?t[o]:void 0;if(c){let t=s[1];if(typeof t!=`number`&&(t=n.push(s[1])-1),i??=new Set,i.has(t))throw Error(`Invalid circular reference`);return i.add(t),r[e]=c(a(t)),i.delete(t),r[e]}switch(o){case`Date`:r[e]=new Date(s[1]);break;case`Set`:let t=new Set;r[e]=t;for(let e=1;e<s.length;e+=1)t.add(a(s[e]));break;case`Map`:let i=new Map;r[e]=i;for(let e=1;e<s.length;e+=2)i.set(a(s[e]),a(s[e+1]));break;case`RegExp`:r[e]=new RegExp(s[1],s[2]);break;case`Object`:{let t=s[1];if(typeof n[t]==`object`&&n[t][0]!==`BigInt`)throw Error(`Invalid input`);r[e]=Object(a(t));break}case`BigInt`:r[e]=BigInt(s[1]);break;case`null`:let c=Object.create(null);r[e]=c;for(let e=1;e<s.length;e+=2){if(s[e]===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");c[s[e]]=a(s[e+1])}break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{if(n[s[1]][0]!==`ArrayBuffer`)throw Error(`Invalid data`);let t=globalThis[o],i=a(s[1]);r[e]=s[2]===void 0?new t(i):new t(i,s[2],s[3]);break}case`ArrayBuffer`:{let t=s[1];if(typeof t!=`string`)throw Error(`Invalid ArrayBuffer encoding`);r[e]=Ne(t);break}case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:{let t=o.slice(9);r[e]=Temporal[t].from(s[1]);break}case`URL`:r[e]=new URL(s[1]);break;case`URLSearchParams`:r[e]=new URLSearchParams(s[1]);break;default:throw Error(`Unknown type ${o}`)}}else if(s[0]===-7){let t=s[1];if(!Number.isInteger(t)||t<0)throw Error(`Invalid input`);let n=Array(t);r[e]=n;for(let e=2;e<s.length;e+=2){let r=s[e];if(!Number.isInteger(r)||r<0||r>=t)throw Error(`Invalid input`);n[r]=a(s[e+1])}}else{let t=Array(s.length);r[e]=t;for(let e=0;e<s.length;e+=1){let n=s[e];n!==-2&&(t[e]=a(n))}}else{let t={};r[e]=t;for(let e of Object.keys(s)){if(e===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");let n=s[e];t[e]=a(n)}}return r[e]}return a(0)}var Ie=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);new Set([...Ie,`entries`]);var Le=new Set([...Ie]);new Set([...Le,`actions`,`entries`]);function Re(e){return e.filter(e=>e!=null)}var ze=`x-sveltekit-invalidated`,Be=`x-sveltekit-trailing-slash`;function Ve(e){return e instanceof c||e instanceof u?e.status:500}function He(e){return e instanceof u?e.text:`Internal Error`}var O,k,Ue,We=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),Ge=`a:`;We?(O={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Ge)},k={current:null},Ue={current:!1}):(O=new class{#e=e({});get data(){return t(this.#e)}set data(e){r(this.#e,e)}#t=e(null);get form(){return t(this.#t)}set form(e){r(this.#t,e)}#n=e(null);get error(){return t(this.#n)}set error(e){r(this.#n,e)}#r=e({});get params(){return t(this.#r)}set params(e){r(this.#r,e)}#i=e({id:null});get route(){return t(this.#i)}set route(e){r(this.#i,e)}#a=e({});get state(){return t(this.#a)}set state(e){r(this.#a,e)}#o=e(-1);get status(){return t(this.#o)}set status(e){r(this.#o,e)}#s=e(new URL(Ge));get url(){return t(this.#s)}set url(e){r(this.#s,e)}},k=new class{#e=e(null);get current(){return t(this.#e)}set current(e){r(this.#e,e)}},Ue=new class{#e=e(!1);get current(){return t(this.#e)}set current(e){r(this.#e,e)}},we.v=()=>Ue.current=!0);function Ke(e){Object.assign(O,e)}var qe=`/__data.json`,Je=`.html__data.json`;function Ye(e){return e.endsWith(`.html`)?e.replace(/\.html$/,Je):e.replace(/\/$/,``)+qe}var{onMount:Xe,tick:Ze}=s,Qe=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),A=null,j=ue(`sveltekit:scroll`)??{},M=ue(`sveltekit:snapshot`)??{},N={url:Ce({}),page:Ce({}),navigating:o(null),updated:Te()};function $e(e){j[e]=E()}function et(e,t){let n=e+1;for(;j[n];)delete j[n],n+=1;for(n=t+1;M[n];)delete M[n],n+=1}function P(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function tt(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var nt,rt,F,I,it,L,at=[],ot=[],R=null;function z(){R?.fork?.then(e=>e?.discard()),R=null}var st=new Map,ct=new Set,lt=new Set,B=new Set,V={branch:[],error:null,url:null,nav:null},ut=!1,dt=!1,ft=!0,H=!1,U=!1,pt=!1,W=!1,G,K,q,J,Y=new Set,mt,ht=new Map;async function gt(e,t,n){globalThis.__sveltekit_olx21&&(globalThis.__sveltekit_olx21.query,globalThis.__sveltekit_olx21.prerender),document.URL!==location.href&&(location.href=location.href),L=e,await e.hooks.init?.(),nt=le(e),I=document.documentElement,it=t,rt=e.nodes[0],F=e.nodes[1],rt(),F(),K=history.state?.[S],q=history.state?.[C],K||(K=q=Date.now(),history.replaceState({...history.state,[S]:K,[C]:q},``));let r=j[K];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await qt(it,n)):(await Q({type:`enter`,url:_e(L.hash?en(new URL(location.href)):location.href),replace_state:!0}),i()),Kt()}async function _t(e=!0,t=!0){if(await(mt||=Promise.resolve()),!mt)return;mt=null;let n=J={},r=await Z(V.url,!0);if(z(),W&&ht.forEach(e=>{e.forEach(({resource:e})=>{e.refresh?.()})}),e){let e=O.state,i=r&&await Mt(r);if(!i||n!==J)return;if(i.type===`redirect`)return St(new URL(i.location,V.url).href,{replaceState:!0},1,n);t||(i.props.page.state=e),Ke(i.props.page),V={...i.state,nav:V.nav},vt(),G.$set(i.props)}else vt();await Promise.all([...ht.values()].flatMap(e=>[...e.values()].map(({resource:e})=>e))).catch(h)}function vt(){at.length=0,W=!1}function yt(e){ot.some(e=>e?.snapshot)&&(M[e]=ot.map(e=>e?.snapshot?.capture()))}function bt(e){M[e]?.forEach((e,t)=>{ot[t]?.snapshot?.restore(e)})}function xt(){$e(K),de(he,j),yt(q),de(me,M)}async function St(e,t,n,r){let a;t.invalidateAll&&z(),await Q({type:`goto`,url:_e(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{t.invalidateAll&&(W=!0,a=[],ht.forEach((e,t)=>{for(let n of e.keys())a.push(t+`/`+n)})),t.invalidate&&t.invalidate.forEach(Ht)}}),t.invalidateAll&&i().then(i).then(()=>{ht.forEach((e,t)=>{e.forEach(({resource:e},n)=>{a?.includes(t+`/`+n)&&e.refresh?.()})})})}async function Ct(e){if(e.id!==R?.id){z();let t={};Y.add(t),R={id:e.id,token:t,promise:Mt({...e,preload:t}).then(e=>(Y.delete(t),e.type===`loaded`&&e.state.error&&z(),e)),fork:null}}return R.promise}async function wt(e){let t=(await Z(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Tt(e,t,n){let r={params:V.params,route:{id:V.route?.id??null},url:new URL(location.href)};V={...e.state,nav:r};let i=document.querySelector(`style[data-sveltekit]`);if(i&&i.remove(),Object.assign(O,e.props.page),G=new L.root({target:t,props:{...e.props,stores:N,components:ot},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),bt(q),n){let e={from:null,to:{...r,scroll:j[K]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};B.forEach(t=>t(e))}dt=!0}async function X({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))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:Re(n).map(e=>e.node.component),page:$t(O)}};s!==void 0&&(l.props.form=s);let u={},f=!O,p=0;for(let e=0;e<Math.max(n.length,V.branch.length);e+=1){let t=n[e],r=V.branch[e];t?.data!==r?.data&&(f=!0),t&&(u={...u,...t.data},f&&(l.props[`data_${p}`]=u),p+=1)}return(!V.url||e.href!==V.url.href||V.error!==a||s!==void 0&&s!==O.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:O.data}),l}async function Et({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 Dt(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:dt?ne(r,i.href,t):y(r,t)}}function Ot(e,t,n,r,i,a){if(W)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]!==V.params[e])return!0;for(let e of i.dependencies)if(at.some(t=>t(new URL(e))))return!0;return!1}function kt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function At(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 jt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:$t(O),constructors:[]}}}async function Mt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(R?.id===e)return Y.delete(R.token),R.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=null,p=V.url?e!==Lt(V.url):!1,m=V.route?i.id!==V.route.id:!1,ee=At(V.url,n),g=!1;{let t=d.map((e,t)=>{let n=V.branch[t],i=!!e?.[0]&&(n?.loader!==e[1]||Ot(g,m,p,ee,n.server?.uses,r));return i&&(g=!0),i});if(t.some(Boolean)){try{f=await Jt(n,t)}catch(t){let o=await $(t,{url:n,params:r,route:{id:e}});return Y.has(a)?jt({error:o,url:n,params:r,route:i}):Pt({status:Ve(t),error:o,url:n,route:i})}if(f.type===`redirect`)return f}}let _=f?.nodes,te=!1,v=d.map(async(e,t)=>{if(!e)return;let a=V.branch[t],o=_?.[t];if((!o||o.type===`skip`)&&e[1]===a?.loader&&!Ot(te,m,p,ee,a.universal?.uses,r))return a;if(te=!0,o?.type===`error`)throw o;return Et({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 v[n])?.data);return e},server_data_node:kt(o===void 0&&e[0]?{type:`skip`}:o??null,e[0]?a?.server:void 0)})});for(let e of v)e.catch(h);let y=[];for(let e=0;e<d.length;e+=1)if(d[e])try{y.push(await v[e])}catch(t){if(t instanceof l)return{type:`redirect`,location:t.location};if(Y.has(a))return jt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Ve(t),u;if(_?.includes(t))s=t.status??s,u=t.error;else if(t instanceof c)u=t.body;else{if(await N.updated.check())return await tt(),await P(n);u=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Nt(e,y,o);return d?X({url:n,params:r,branch:y.slice(0,d.idx).concat(d.node),errors:o,status:s,error:u,route:i}):await zt(n,{id:i.id},u,s)}else y.push(void 0);return X({url:n,params:r,branch:y,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Nt(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 Pt({status:e,error:t,url:n,route:r}){let i={},a=null;if(L.server_loads[0]===0)try{let e=await Jt(n,[!0]);if(e.type!==`data`||e.nodes[0]&&e.nodes[0].type!==`data`)throw 0;a=e.nodes[0]??null}catch{(n.origin!==T||n.pathname!==location.pathname||ut)&&await P(n)}try{return X({url:n,params:i,branch:[await Et({loader:rt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:kt(a)}),{node:await F(),loader:F,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(e){if(e instanceof l)return St(new URL(e.location,location.href),{},0);throw e}}async function Ft(e){let t=e.href;if(st.has(t))return st.get(t);let n;try{let r=(async()=>{let t=await L.hooks.reroute({url:new URL(e),fetch:async(t,n)=>Dt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);L.hash?n.hash=t:n.pathname=t,t=n}return t})();st.set(t,r),n=await r}catch{st.delete(t);return}return n}async function Z(e,t){if(e&&!Ee(e,x,L.hash)){let n=await Ft(e);if(!n)return;let r=It(n);for(let n of nt){let i=n.exec(r);if(i)return{id:Lt(e),invalidating:t,route:n,params:p(i),url:e}}}}function It(e){return f(L.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function Lt(e){return(L.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Rt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Qt(V,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 H||ct.forEach(e=>e(c)),o?null:s}async function Q({type:e,url:t,popped:r,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 ee=J;J=d;let g=await Z(t,!1),_=e===`enter`?Qt(V,g,t,e):Rt({url:t,type:e,delta:r?.delta,intent:g,scroll:r?.scroll,event:m});if(!_){p(),J===d&&(J=ee);return}let te=K,v=q;f(),H=!0,dt&&_.navigation.type!==`enter`&&N.navigating.set(k.current=_.navigation);let y=g&&await Mt(g);if(!y){if(Ee(t,x,L.hash))return await P(t,s);y=await zt(t,{id:null},await $(new u(404,`Not Found`,`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,s)}if(t=g?.url||t,J!==d)return _.reject(Error(`navigation aborted`)),!1;if(y.type===`redirect`){if(l<20){await Q({type:e,url:new URL(y.location,t),popped:r,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:d}),_.fulfil(void 0);return}y=await Pt({status:500,error:await $(Error(`Redirect loop`),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else y.props.page.status>=400&&await N.updated.check()&&(await tt(),await P(t,s));if(vt(),$e(te),yt(v),y.props.page.url.pathname!==t.pathname&&(t.pathname=y.props.page.url.pathname),c=r?r.state:c,!r){let e=+!s,n={[S]:K+=e,[C]:q+=e,[ge]:c};(s?history.replaceState:history.pushState).call(history,n,``,t),s||et(K,q)}let ne=g&&R?.id===g.id?R.fork:null;R?.fork&&!ne&&z(),R=null,y.props.page.state=c;let b;if(dt){let e=(await Promise.all(Array.from(lt,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{B.delete(e)})}e.push(t),e.forEach(e=>{B.add(e)})}let r=_.navigation.to;V={...y.state,nav:{params:r.params,route:r.route,url:r.url}},y.props.page&&(y.props.page.url=t);let i=ne&&await ne;i?b=i.commit():(A=null,G.$set(y.props),A&&Object.assign(y.props.page,A),Ke(y.props.page),b=n?.()),pt=!0}else await Tt(y,it,!1);let{activeElement:re}=document;await b,await i(),await i();let ie=null;if(ft){let e=r?r.scroll:o?E():null;e?scrollTo(e.x,e.y):(ie=t.hash&&document.getElementById(tn(t)))?ie.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==re&&document.activeElement!==document.body;!a&&!ae&&Zt(t,!ie),ft=!0,y.props.page&&(A&&Object.assign(y.props.page,A),Object.assign(O,y.props.page)),H=!1,e===`popstate`&&bt(q),_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=E()),B.forEach(e=>e(_.navigation)),N.navigating.set(k.current=null)}async function zt(e,t,n,r,i){return e.origin===T&&e.pathname===location.pathname&&!ut?await Pt({status:r,error:n,url:e,route:t}):await P(e,i)}function Bt(){let e,t={element:void 0,href:void 0},n;I.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{a(n,w.hover)},20)});function r(e){e.defaultPrevented||a(e.composedPath()[0],w.tap)}I.addEventListener(`mousedown`,r),I.addEventListener(`touchstart`,r,{passive:!0});let i=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(wt(new URL(t.target.href)),i.unobserve(t.target))},{threshold:0});async function a(e,r){let i=be(e,I),a=i===t.element&&i?.href===t.href&&r>=n;if(!i||a)return;let{url:o,external:s,download:c}=xe(i,x,L.hash);if(s||c)return;let l=Se(i),u=o&&Lt(V.url)===Lt(o);if(!(l.reload||u))if(r<=l.preload_data){t={element:i,href:i.href},n=w.tap;let e=await Z(o,!1);if(!e)return;Ct(e)}else r<=l.preload_code&&(t={element:i,href:i.href},n=r,wt(o))}function o(){i.disconnect();for(let e of I.querySelectorAll(`a`)){let{url:t,external:n,download:r}=xe(e,x,L.hash);if(n||r)continue;let a=Se(e);a.reload||(a.preload_code===w.viewport&&i.observe(e),a.preload_code===w.eager&&wt(t))}}B.add(o),o()}function $(e,t){if(e instanceof c)return e.body;let n=Ve(e),r=He(e);return L.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Vt(e,t={}){return e=new URL(_e(e)),e.origin===T?St(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Ht(e){if(typeof e==`function`)at.push(e);else{let{href:t}=new URL(e,location.href);at.push(e=>e.href===t)}}function Ut(){return W=!0,_t()}async function Wt(e){e.type===`error`?await Gt(e.error,e.status):e.type===`redirect`?await St(e.location,{invalidateAll:!0},0):(O.form=e.data,O.status=e.status,G.$set({form:null,page:$t(O)}),await Ze(),G.$set({form:e.data}),e.type===`success`&&Zt(O.url))}async function Gt(e,t=500){let n=new URL(location.href),{branch:r,route:i}=V;if(!i)return;let a=await Nt(V.branch.length,r,i.errors);if(a){let o=await X({url:n,params:V.params,branch:r.slice(0,a.idx).concat(a.node),status:t,error:e,route:i});V={...o.state,nav:V.nav},G.$set(o.props),Ke(o.props.page),Ze().then(()=>Zt(V.url))}}function Kt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(xt(),!H){let e=Qt(V,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};ct.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&xt()}),navigator.connection?.saveData||Bt(),I.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],I);if(!n)return;let{url:r,external:i,target:a,download:o}=xe(n,x,L.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=Se(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol===`https:`||r.protocol===`http:`)||o)return;let[c,l]=(L.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Rt({url:r,type:`link`,event:t})?H=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=V.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(U=!0,$e(K),e(r),!s.replace_state)return;U=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Q({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),I.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(Ee(r,x,!1))return;let i=e.target,a=Se(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Q({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(!Xt)if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(J={},n===K)return;let r=j[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=V.url?m(location)===m(V.url):!1;if(o===q&&(pt||s)){i!==O.state&&(O.state=i),e(a),j[K]=E(),r&&scrollTo(r.x,r.y),K=n;return}let c=n-K;await Q({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{K=n,q=o},block:()=>{history.go(-c)},nav_token:J,event:t})}else U||(e(new URL(location.href)),L.hash&&location.reload())}),addEventListener(`hashchange`,()=>{U&&(U=!1,history.replaceState({...history.state,[S]:++K,[C]:q},``,location.href))});for(let e of document.querySelectorAll(`link`))Qe.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&N.navigating.set(k.current=null)});function e(e){V.url=O.url=e,N.page.set($t(O)),N.page.notify()}}async function qt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){ut=!0;let u=new URL(location.href),d;({params:i={},route:a={id:null}}=await Z(u,!1)||{}),d=nt.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=Yt(r.uses)),Et({loader:L.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:kt(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 X({url:u,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof l){await P(new URL(t.location,location.href));return}f=await Pt({status:Ve(t),error:await $(t,{url:u,params:i,route:a}),url:u,route:a}),e.textContent=``,p=!1}f.props.page&&(f.props.page.state={}),await Tt(f,e,p)}async function Jt(e,t){let n=new URL(e);n.pathname=Ye(e.pathname),e.pathname.endsWith(`/`)&&n.searchParams.append(Be,`1`),n.searchParams.append(ze,t.map(e=>e?`1`:`0`).join(``));let r=await(0,window.fetch)(n.href,{});if(!r.ok){let e;throw r.headers.get(`content-type`)?.includes(`application/json`)?e=await r.json():r.status===404?e=`Not Found`:r.status===500&&(e=`Internal Error`),new c(r.status,e)}return new Promise(async e=>{let t=new Map,n=r.body.getReader();function i(e){return Fe(e,{...L.decoders,Promise:e=>new Promise((n,r)=>{t.set(e,{fulfil:n,reject:r})})})}let a=``;for(;;){let{done:r,value:o}=await n.read();if(r&&!a)break;for(a+=!o&&a?`
2
- `:g.decode(o,{stream:!0});;){let n=a.indexOf(`
3
- `);if(n===-1)break;let r=JSON.parse(a.slice(0,n));if(a=a.slice(n+1),r.type===`redirect`)return e(r);if(r.type===`data`)r.nodes?.forEach(e=>{e?.type===`data`&&(e.uses=Yt(e.uses),e.data=i(e.data))}),e(r);else if(r.type===`chunk`){let{id:e,data:n,error:a}=r,o=t.get(e);t.delete(e),a?o.reject(i(a)):o.fulfil(i(n))}}}})}function Yt(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 Xt=!1;function Zt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=tn(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Xt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Xt=!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 Qt(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 $t(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 en(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function tn(e){let t;if(L.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{gt as a,O as c,De as d,h as f,Ut as i,Ue as l,Wt as n,N as o,Vt as r,k as s,L as t,Pe as u};
@@ -1 +0,0 @@
1
- import"./BhBqZa2S.js";
@@ -1 +0,0 @@
1
- import{a as e,d as t}from"../chunks/BhBqZa2S.js";export{t as load_css,e as start};