@liip/liipgpt 3.2.5 → 3.3.0

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 (35) hide show
  1. package/button/liipgpt-button.iife.js +32 -32
  2. package/chat/liipgpt-chat.iife.js +56 -47
  3. package/config/index.cjs +160 -2
  4. package/config/index.d.ts +16724 -104
  5. package/config/index.js +160 -2
  6. package/configurator/_app/env.js +1 -1
  7. package/configurator/_app/immutable/chunks/03vg6Qp7.js +286 -0
  8. package/configurator/_app/immutable/chunks/BE9gm6hD.js +3 -0
  9. package/configurator/_app/immutable/chunks/{Cpbg6gqo.js → Br-58faA.js} +1 -1
  10. package/configurator/_app/immutable/chunks/{P3S4YAQG.js → C6XdV3Lv.js} +1 -1
  11. package/configurator/_app/immutable/chunks/{BFyTjJX5.js → CROVZbk3.js} +1 -1
  12. package/configurator/_app/immutable/chunks/DKF3ACGN.js +117 -0
  13. package/configurator/_app/immutable/chunks/DNlyCRHN.js +1 -0
  14. package/configurator/_app/immutable/chunks/DSyPh3A4.js +1 -0
  15. package/configurator/_app/immutable/chunks/DZwn2NPr.js +143 -0
  16. package/configurator/_app/immutable/entry/{app.Cu0QvATM.js → app.DCKqR20T.js} +2 -2
  17. package/configurator/_app/immutable/entry/start.BVpSXwgq.js +1 -0
  18. package/configurator/_app/immutable/nodes/{0.CrU899yL.js → 0.bJp16ZWw.js} +31 -2
  19. package/configurator/_app/immutable/nodes/{1.BD_SDJXL.js → 1.MUQxcZbH.js} +1 -1
  20. package/configurator/_app/immutable/nodes/{2.ugxPosyc.js → 2.BtbFsQ_S.js} +7 -7
  21. package/configurator/_app/immutable/nodes/{3.CNAbn5jO.js → 3.FvTTpqZ0.js} +1 -1
  22. package/configurator/_app/version.json +1 -1
  23. package/configurator/index.html +6 -6
  24. package/configurator/sidebar.html +6 -6
  25. package/index.cjs +168 -19
  26. package/index.d.ts +59259 -2846
  27. package/index.js +168 -19
  28. package/package.json +1 -1
  29. package/configurator/_app/immutable/chunks/-SuUzcLl.js +0 -3
  30. package/configurator/_app/immutable/chunks/4Bj_aAxI.js +0 -286
  31. package/configurator/_app/immutable/chunks/BZFduDCC.js +0 -1
  32. package/configurator/_app/immutable/chunks/CQ_QazGM.js +0 -143
  33. package/configurator/_app/immutable/chunks/D88z-8NL.js +0 -1
  34. package/configurator/_app/immutable/chunks/l4sPpI_i.js +0 -108
  35. package/configurator/_app/immutable/entry/start.fNYeeeTK.js +0 -1
package/index.js CHANGED
@@ -10331,6 +10331,152 @@ var coerce = {
10331
10331
  date: (arg) => ZodDate.create({ ...arg, coerce: true })
10332
10332
  };
10333
10333
  var NEVER = INVALID;
10334
+ // src/lib/client/schemas/search-reference-schema.ts
10335
+ var metadataValueSchema = exports_external.union([exports_external.string(), exports_external.number(), exports_external.boolean(), exports_external.array(exports_external.string()), exports_external.array(exports_external.number()), exports_external.array(exports_external.boolean())]);
10336
+ var referenceContentSchema = exports_external.object({
10337
+ title: exports_external.string(),
10338
+ description: exports_external.string().optional(),
10339
+ badge: exports_external.string().optional(),
10340
+ breadcrumbs: exports_external.array(exports_external.string()).optional(),
10341
+ previewImage: exports_external.string().optional(),
10342
+ date: exports_external.string().datetime().optional()
10343
+ });
10344
+ var searchReferenceSchema = exports_external.object({
10345
+ url: exports_external.string().url(),
10346
+ score: exports_external.number(),
10347
+ metadata: exports_external.record(exports_external.string(), metadataValueSchema),
10348
+ language: exports_external.string().optional()
10349
+ }).merge(referenceContentSchema);
10350
+
10351
+ // src/lib/config/schemas/chat-message-embed-schema.ts
10352
+ var buttonsComponentSchema = exports_external.object({
10353
+ componentName: exports_external.literal("buttons"),
10354
+ data: exports_external.object({
10355
+ caption: exports_external.string().optional(),
10356
+ buttons: exports_external.array(exports_external.object({
10357
+ label: exports_external.string(),
10358
+ href: exports_external.string().url().optional(),
10359
+ value: exports_external.string(),
10360
+ variant: exports_external.enum(["primary", "secondary", "tertiary"]).optional(),
10361
+ icon: exports_external.string().optional(),
10362
+ target: exports_external.string().optional()
10363
+ }))
10364
+ })
10365
+ });
10366
+ var comboboxComponentSchema = exports_external.object({
10367
+ componentName: exports_external.literal("combobox"),
10368
+ data: exports_external.object({
10369
+ caption: exports_external.string().optional(),
10370
+ placeholder: exports_external.string(),
10371
+ values: exports_external.array(exports_external.object({
10372
+ label: exports_external.string(),
10373
+ value: exports_external.string()
10374
+ }))
10375
+ })
10376
+ });
10377
+ var alvaInitComponentSchema = exports_external.object({
10378
+ componentName: exports_external.literal("alva-init"),
10379
+ data: exports_external.object({
10380
+ enable: exports_external.boolean()
10381
+ })
10382
+ });
10383
+ var alvaConfidenceComponentSchema = exports_external.object({
10384
+ componentName: exports_external.literal("alva-score-survey"),
10385
+ data: exports_external.object({
10386
+ enable: exports_external.boolean()
10387
+ })
10388
+ });
10389
+ var chatMessageEmbedBaseSchema = exports_external.object({
10390
+ type: exports_external.literal("component"),
10391
+ time: exports_external.string(),
10392
+ id: exports_external.string().optional(),
10393
+ hideAvatar: exports_external.boolean().optional()
10394
+ });
10395
+ var chatMessageEmbedSchema = exports_external.discriminatedUnion("componentName", [
10396
+ buttonsComponentSchema,
10397
+ comboboxComponentSchema,
10398
+ alvaInitComponentSchema,
10399
+ alvaConfidenceComponentSchema
10400
+ ]).and(chatMessageEmbedBaseSchema);
10401
+
10402
+ // src/lib/config/schemas/chat-message-schema.ts
10403
+ var pageStateSchema = exports_external.enum(["start", "chat"]);
10404
+ var routeSchema = exports_external.discriminatedUnion("name", [
10405
+ exports_external.object({
10406
+ name: exports_external.literal("start-page"),
10407
+ prefill: exports_external.string().optional()
10408
+ }),
10409
+ exports_external.object({
10410
+ name: exports_external.literal("consent-page")
10411
+ }),
10412
+ exports_external.object({
10413
+ name: exports_external.literal("chat-page"),
10414
+ query: exports_external.string()
10415
+ })
10416
+ ]);
10417
+ var chatMessageUserSchema = exports_external.object({
10418
+ type: exports_external.literal("user"),
10419
+ time: exports_external.string(),
10420
+ message: exports_external.string(),
10421
+ id: exports_external.string().optional()
10422
+ });
10423
+ var conversationStateSchema = exports_external.enum(["idle", "searching", "answering"]);
10424
+ var metadataValueSchema2 = exports_external.union([exports_external.string(), exports_external.number(), exports_external.boolean(), exports_external.array(exports_external.string()), exports_external.array(exports_external.number()), exports_external.array(exports_external.boolean())]);
10425
+ var chatReferenceSchema = exports_external.object({
10426
+ url: exports_external.string(),
10427
+ score: exports_external.number(),
10428
+ metadata: exports_external.record(exports_external.string(), metadataValueSchema2),
10429
+ considered: exports_external.boolean(),
10430
+ display: exports_external.object({
10431
+ card: referenceContentSchema,
10432
+ listItem: referenceContentSchema
10433
+ })
10434
+ });
10435
+ var chatReferenceWithIndexesSchema = chatReferenceSchema.extend({
10436
+ referenceIndex: exports_external.object({
10437
+ all: exports_external.number(),
10438
+ used: exports_external.number().optional()
10439
+ })
10440
+ });
10441
+ var chatReferencesSchema = exports_external.object({
10442
+ all: exports_external.array(chatReferenceWithIndexesSchema),
10443
+ used: exports_external.array(chatReferenceWithIndexesSchema),
10444
+ unused: exports_external.array(chatReferenceWithIndexesSchema)
10445
+ });
10446
+ var serverErrorSchema = exports_external.enum([
10447
+ "pii-detected",
10448
+ "blocked",
10449
+ "maintenance",
10450
+ "rate-limit",
10451
+ "server-error",
10452
+ "too-short",
10453
+ "too-long",
10454
+ "quota-reached",
10455
+ "aborted"
10456
+ ]);
10457
+ var chatErrorsSchema = exports_external.union([serverErrorSchema, exports_external.literal("sse-error"), exports_external.literal("client-error"), exports_external.literal("unexpected-call")]);
10458
+ var botMessageBaseSchema = exports_external.object({
10459
+ type: exports_external.literal("bot"),
10460
+ time: exports_external.string(),
10461
+ id: exports_external.string(),
10462
+ message: exports_external.object({
10463
+ markdown: exports_external.string(),
10464
+ html: exports_external.string(),
10465
+ text: exports_external.string()
10466
+ }),
10467
+ references: chatReferencesSchema,
10468
+ errors: exports_external.array(chatErrorsSchema),
10469
+ retrievalQuestion: exports_external.string().optional()
10470
+ });
10471
+ var chatMessageBotStreamingSchema = botMessageBaseSchema.extend({
10472
+ state: exports_external.enum(["streaming", "done"])
10473
+ });
10474
+ var chatMessageBotLoadingSchema = botMessageBaseSchema.extend({
10475
+ state: exports_external.literal("loading")
10476
+ });
10477
+ var chatContentSchema = exports_external.union([chatMessageBotLoadingSchema, chatMessageBotStreamingSchema]);
10478
+ var chatMessageSchema = exports_external.union([chatContentSchema, chatMessageUserSchema, chatMessageEmbedSchema]);
10479
+
10334
10480
  // src/lib/config/schemas/theme-schema.ts
10335
10481
  var sizeDefinitionClampSchema = exports_external.object({
10336
10482
  minRem: exports_external.number(),
@@ -10413,7 +10559,8 @@ var svgsSchema = exports_external.record(exports_external.enum([
10413
10559
  "model",
10414
10560
  "checkbox",
10415
10561
  "warning",
10416
- "headerLogo"
10562
+ "headerLogo",
10563
+ "embedAvatar"
10417
10564
  ]), exports_external.string());
10418
10565
  var tokensSchema = exports_external.object({
10419
10566
  font: fontSchema.optional(),
@@ -10727,6 +10874,15 @@ var chatSelectorConfigSchema = exports_external.object({
10727
10874
  values: exports_external.array(exports_external.string()),
10728
10875
  defaultValues: exports_external.array(exports_external.string()).optional()
10729
10876
  });
10877
+ var messageAdditionSchema = exports_external.object({
10878
+ before: exports_external.array(chatMessageSchema).optional(),
10879
+ after: exports_external.array(chatMessageSchema).optional()
10880
+ });
10881
+ var messageAdditionsSchema = exports_external.object({
10882
+ init: exports_external.array(chatMessageSchema).optional(),
10883
+ bot: messageAdditionSchema.optional(),
10884
+ user: messageAdditionSchema.optional()
10885
+ });
10730
10886
  var completeChatConfigSchema = exports_external.object({
10731
10887
  showPredefinedQuestions: exports_external.boolean(),
10732
10888
  showOverallFeedbackButton: exports_external.boolean(),
@@ -10756,7 +10912,9 @@ var completeChatConfigSchema = exports_external.object({
10756
10912
  questionLengthLimit: exports_external.number().optional(),
10757
10913
  forceConsent: exports_external.boolean().optional(),
10758
10914
  askQuestionAgain: exports_external.boolean(),
10759
- enableBackdrop: exports_external.boolean().optional()
10915
+ enableBackdrop: exports_external.boolean().optional(),
10916
+ messageAdditions: messageAdditionsSchema.optional(),
10917
+ contextVersion: exports_external.number().optional()
10760
10918
  });
10761
10919
  var chatConfigSchema = completeChatConfigSchema.partial();
10762
10920
  var chatConfigSchemaWithLegacyThemeName = chatConfigSchema.and(exports_external.object({
@@ -11256,23 +11414,6 @@ class RestClient {
11256
11414
  }
11257
11415
  }
11258
11416
 
11259
- // src/lib/client/schemas/search-reference-schema.ts
11260
- var metadataValueSchema = exports_external.union([exports_external.string(), exports_external.number(), exports_external.boolean(), exports_external.array(exports_external.string()), exports_external.array(exports_external.number()), exports_external.array(exports_external.boolean())]);
11261
- var referenceContentSchema = exports_external.object({
11262
- title: exports_external.string(),
11263
- description: exports_external.string().optional(),
11264
- badge: exports_external.string().optional(),
11265
- breadcrumbs: exports_external.array(exports_external.string()).optional(),
11266
- previewImage: exports_external.string().optional(),
11267
- date: exports_external.string().datetime().optional()
11268
- });
11269
- var searchReferenceSchema = exports_external.object({
11270
- url: exports_external.string().url(),
11271
- score: exports_external.number(),
11272
- metadata: exports_external.record(exports_external.string(), metadataValueSchema),
11273
- language: exports_external.string().optional()
11274
- }).merge(referenceContentSchema);
11275
-
11276
11417
  // src/lib/client/api/search-endpoint.ts
11277
11418
  var linkLegacySchema = exports_external.object({
11278
11419
  url: exports_external.string().url(),
@@ -11631,13 +11772,21 @@ class LiipGPTClient {
11631
11772
  }
11632
11773
  export {
11633
11774
  userDataResponseSchema,
11775
+ routeSchema,
11634
11776
  predefinedQuestionsResponseSchema,
11635
11777
  predefinedQuestionSchema,
11778
+ pageStateSchema,
11636
11779
  menuItemSchema,
11637
11780
  fullTranslations,
11781
+ conversationStateSchema,
11638
11782
  completeChatConfigSchema,
11639
11783
  classificationResponseSchema,
11640
11784
  classificationConfigSchema,
11785
+ chatMessageUserSchema,
11786
+ chatMessageSchema,
11787
+ chatMessageBotStreamingSchema,
11788
+ chatMessageBotLoadingSchema,
11789
+ chatContentSchema,
11641
11790
  chatConfigSchemaWithLegacyThemeName,
11642
11791
  chatConfigSchema,
11643
11792
  MarkdownRenderer,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liip/liipgpt",
3
- "version": "3.2.5",
3
+ "version": "3.3.0",
4
4
  "description": "LiipGPT Chat and Library",
5
5
  "type": "module",
6
6
  "exports": {
@@ -1,3 +0,0 @@
1
- import{o as Be,s as yt}from"./CjlIFGQR.js";import{F as me,aR as wt,P as T,G as x,T as P}from"./PaGpozZ3.js";const F=[];function Re(e,t=me){let n=null;const r=new Set;function a(o){if(wt(e,o)&&(e=o,n)){const c=!F.length;for(const l of r)l[1](),F.push(l,e);if(c){for(let l=0;l<F.length;l+=2)F[l][0](F[l+1]);F.length=0}}}function s(o){a(o(e))}function i(o,c=me){const l=[o,c];return r.add(l),r.size===1&&(n=t(a,s)||me),o(e),()=>{r.delete(l),r.size===0&&n&&(n(),n=null)}}return{set:a,update:s,subscribe:i}}class fe{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Ie{constructor(t,n){this.status=t,this.location=n}}class Ue extends Error{constructor(t,n,r){super(r),this.status=t,this.text=n}}new URL("sveltekit-internal://");function vt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function bt(e){return e.split("%25").map(decodeURI).join("%25")}function At(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function ye({href:e}){return e.split("#")[0]}function St(e,t,n,r=!1){const a=new URL(e);Object.defineProperty(a,"searchParams",{value:new Proxy(a.searchParams,{get(i,o){if(o==="get"||o==="getAll"||o==="has")return l=>(n(l),i[o](l));t();const c=Reflect.get(i,o);return typeof c=="function"?c.bind(i):c}}),enumerable:!0,configurable:!0});const s=["href","pathname","search","toString","toJSON"];r&&s.push("hash");for(const i of s)Object.defineProperty(a,i,{get(){return t(),e[i]},enumerable:!0,configurable:!0});return a}function kt(...e){let t=5381;for(const n of e)if(typeof n=="string"){let r=n.length;for(;r;)t=t*33^n.charCodeAt(--r)}else if(ArrayBuffer.isView(n)){const r=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let a=r.length;for(;a;)t=t*33^r[--a]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}function Et(e){const t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n.buffer}const Rt=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&H.delete(Le(e)),Rt(e,t));const H=new Map;function It(e,t){const n=Le(e,t),r=document.querySelector(n);if(r?.textContent){let{body:a,...s}=JSON.parse(r.textContent);const i=r.getAttribute("data-ttl");return i&&H.set(n,{body:a,init:s,ttl:1e3*Number(i)}),r.getAttribute("data-b64")!==null&&(a=Et(a)),Promise.resolve(new Response(a,s))}return window.fetch(e,t)}function Ut(e,t,n){if(H.size>0){const r=Le(e,n),a=H.get(r);if(a){if(performance.now()<a.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(a.body,a.init);H.delete(r)}}return window.fetch(t,n)}function Le(e,t){let r=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const a=[];t.headers&&a.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&a.push(t.body),r+=`[data-hash="${kt(...a)}"]`}return r}const Lt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Tt(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${Pt(e).map(r=>{const a=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(a)return t.push({name:a[1],matcher:a[2],optional:!1,rest:!0,chained:!0}),"(?:/(.*))?";const s=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(s)return t.push({name:s[1],matcher:s[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const i=r.split(/\[(.+?)\](?!\])/);return"/"+i.map((c,l)=>{if(l%2){if(c.startsWith("x+"))return we(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return we(String.fromCharCode(...c.slice(2).split("-").map(m=>parseInt(m,16))));const d=Lt.exec(c),[,h,u,f,p]=d;return t.push({name:f,matcher:p,optional:!!h,rest:!!u,chained:u?l===1&&i[0]==="":!1}),u?"(.*?)":h?"([^/]*)?":"([^/]+?)"}return we(c)}).join("")}).join("")}/?$`),params:t}}function xt(e){return!/^\([^)]+\)$/.test(e)}function Pt(e){return e.slice(1).split("/").filter(xt)}function Ct(e,t,n){const r={},a=e.slice(1),s=a.filter(o=>o!==void 0);let i=0;for(let o=0;o<t.length;o+=1){const c=t[o];let l=a[o-i];if(c.chained&&c.rest&&i&&(l=a.slice(o-i,o+1).filter(d=>d).join("/"),i=0),l===void 0){c.rest&&(r[c.name]="");continue}if(!c.matcher||n[c.matcher](l)){r[c.name]=l;const d=t[o+1],h=a[o+1];d&&!d.rest&&d.optional&&h&&c.chained&&(i=0),!d&&!h&&Object.keys(r).length===s.length&&(i=0);continue}if(c.optional&&c.chained){i++;continue}return}if(!i)return r}function we(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function Ot({nodes:e,server_loads:t,dictionary:n,matchers:r}){const a=new Set(t);return Object.entries(n).map(([o,[c,l,d]])=>{const{pattern:h,params:u}=Tt(o),f={id:o,exec:p=>{const m=h.exec(p);if(m)return Ct(m,u,r)},errors:[1,...d||[]].map(p=>e[p]),layouts:[0,...l||[]].map(i),leaf:s(c)};return f.errors.length=f.layouts.length=Math.max(f.errors.length,f.layouts.length),f});function s(o){const c=o<0;return c&&(o=~o),[c,e[o]]}function i(o){return o===void 0?o:[a.has(o),e[o]]}}function Je(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function Ve(e,t,n=JSON.stringify){const r=n(t);try{sessionStorage[e]=r}catch{}}const U=globalThis.__sveltekit_a4m6?.base??"/configurator",Nt=globalThis.__sveltekit_a4m6?.assets??U,jt="1770840499705",Xe="sveltekit:snapshot",Ze="sveltekit:scroll",Qe="sveltekit:states",$t="sveltekit:pageurl",V="sveltekit:history",z="sveltekit:navigation",j={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Q=location.origin;function Te(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function ue(){return{x:pageXOffset,y:pageYOffset}}function B(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const qe={...j,"":j.hover};function et(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function tt(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=et(e)}}function Ae(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";r.hash=`#${o}${r.hash}`}}catch{}const a=e instanceof SVGAElement?e.target.baseVal:e.target,s=!r||!!a||de(r,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),i=r?.origin===Q&&e.hasAttribute("download");return{url:r,external:s,target:a,download:i}}function ne(e){let t=null,n=null,r=null,a=null,s=null,i=null,o=e;for(;o&&o!==document.documentElement;)r===null&&(r=B(o,"preload-code")),a===null&&(a=B(o,"preload-data")),t===null&&(t=B(o,"keepfocus")),n===null&&(n=B(o,"noscroll")),s===null&&(s=B(o,"reload")),i===null&&(i=B(o,"replacestate")),o=et(o);function c(l){switch(l){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:qe[r??"off"],preload_data:qe[a??"off"],keepfocus:c(t),noscroll:c(n),reload:c(s),replace_state:c(i)}}function Ge(e){const t=Re(e);let n=!0;function r(){n=!0,t.update(i=>i)}function a(i){n=!1,t.set(i)}function s(i){let o;return t.subscribe(c=>{(o===void 0||n&&c!==o)&&i(o=c)})}return{notify:r,set:a,subscribe:s}}const nt={v:()=>{}};function Dt(){const{set:e,subscribe:t}=Re(!1);let n;async function r(){clearTimeout(n);try{const a=await fetch(`${Nt}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!a.ok)return!1;const i=(await a.json()).version!==jt;return i&&(e(!0),nt.v(),clearTimeout(n)),i}catch{return!1}}return{subscribe:t,check:r}}function de(e,t,n){return e.origin!==Q||!e.pathname.startsWith(t)?!0:n?!(e.pathname===t+"/"||e.pathname===t+"/index.html"||e.protocol==="file:"&&e.pathname.replace(/\/[^/]+\.html?$/,"")===t):!1}function Sn(e){}function Me(e){const t=Bt(e),n=new ArrayBuffer(t.length),r=new DataView(n);for(let a=0;a<n.byteLength;a++)r.setUint8(a,t.charCodeAt(a));return n}const Ft="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Bt(e){e.length%4===0&&(e=e.replace(/==?$/,""));let t="",n=0,r=0;for(let a=0;a<e.length;a++)n<<=6,n|=Ft.indexOf(e[a]),r+=6,r===24&&(t+=String.fromCharCode((n&16711680)>>16),t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255),n=r=0);return r===12?(n>>=4,t+=String.fromCharCode(n)):r===18&&(n>>=2,t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255)),t}const Vt=-1,qt=-2,Gt=-3,Mt=-4,Ht=-5,Kt=-6;function Wt(e,t){if(typeof e=="number")return a(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function a(s,i=!1){if(s===Vt)return;if(s===Gt)return NaN;if(s===Mt)return 1/0;if(s===Ht)return-1/0;if(s===Kt)return-0;if(i)throw new Error("Invalid input");if(s in r)return r[s];const o=n[s];if(!o||typeof o!="object")r[s]=o;else if(Array.isArray(o))if(typeof o[0]=="string"){const c=o[0],l=t?.[c];if(l)return r[s]=l(a(o[1]));switch(c){case"Date":r[s]=new Date(o[1]);break;case"Set":const d=new Set;r[s]=d;for(let f=1;f<o.length;f+=1)d.add(a(o[f]));break;case"Map":const h=new Map;r[s]=h;for(let f=1;f<o.length;f+=2)h.set(a(o[f]),a(o[f+1]));break;case"RegExp":r[s]=new RegExp(o[1],o[2]);break;case"Object":r[s]=Object(o[1]);break;case"BigInt":r[s]=BigInt(o[1]);break;case"null":const u=Object.create(null);r[s]=u;for(let f=1;f<o.length;f+=2)u[o[f]]=a(o[f+1]);break;case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":{const f=globalThis[c],p=o[1],m=Me(p),_=new f(m);r[s]=_;break}case"ArrayBuffer":{const f=o[1],p=Me(f);r[s]=p;break}default:throw new Error(`Unknown type ${c}`)}}else{const c=new Array(o.length);r[s]=c;for(let l=0;l<o.length;l+=1){const d=o[l];d!==qt&&(c[l]=a(d))}}else{const c={};r[s]=c;for(const l in o){const d=o[l];c[l]=a(d)}}return r[s]}return a(0)}const rt=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...rt];const Yt=new Set([...rt]);[...Yt];function zt(e){return e.filter(t=>t!=null)}const Jt="x-sveltekit-invalidated",Xt="x-sveltekit-trailing-slash";function re(e){return e instanceof fe||e instanceof Ue?e.status:500}function Zt(e){return e instanceof Ue?e.text:"Internal Error"}let k,J,ve;const Qt=Be.toString().includes("$$")||/function \w+\(\) \{\}/.test(Be.toString());Qt?(k={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL("https://example.com")},J={current:null},ve={current:!1}):(k=new class{#e=T({});get data(){return x(this.#e)}set data(t){P(this.#e,t)}#t=T(null);get form(){return x(this.#t)}set form(t){P(this.#t,t)}#n=T(null);get error(){return x(this.#n)}set error(t){P(this.#n,t)}#r=T({});get params(){return x(this.#r)}set params(t){P(this.#r,t)}#a=T({id:null});get route(){return x(this.#a)}set route(t){P(this.#a,t)}#o=T({});get state(){return x(this.#o)}set state(t){P(this.#o,t)}#s=T(-1);get status(){return x(this.#s)}set status(t){P(this.#s,t)}#i=T(new URL("https://example.com"));get url(){return x(this.#i)}set url(t){P(this.#i,t)}},J=new class{#e=T(null);get current(){return x(this.#e)}set current(t){P(this.#e,t)}},ve=new class{#e=T(!1);get current(){return x(this.#e)}set current(t){P(this.#e,t)}},nt.v=()=>ve.current=!0);function en(e){Object.assign(k,e)}const tn="/__data.json",nn=".html__data.json";function rn(e){return e.endsWith(".html")?e.replace(/\.html$/,nn):e.replace(/\/$/,"")+tn}const{tick:an}=yt,on=new Set(["icon","shortcut icon","apple-touch-icon"]),D=Je(Ze)??{},X=Je(Xe)??{},N={url:Ge({}),page:Ge({}),navigating:Re(null),updated:Dt()};function xe(e){D[e]=ue()}function sn(e,t){let n=e+1;for(;D[n];)delete D[n],n+=1;for(n=t+1;X[n];)delete X[n],n+=1}function G(e){return location.href=e.href,new Promise(()=>{})}async function at(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(U||"/");e&&await e.update()}}function He(){}let Pe,Se,ae,C,ke,v;const oe=[],se=[];let O=null;const te=new Map,ot=new Set,cn=new Set,K=new Set;let w={branch:[],error:null,url:null},Ce=!1,ie=!1,Ke=!0,Z=!1,M=!1,st=!1,Oe=!1,it,A,I,$;const W=new Set;async function In(e,t,n){document.URL!==location.href&&(location.href=location.href),v=e,await e.hooks.init?.(),Pe=Ot(e),C=document.documentElement,ke=t,Se=e.nodes[0],ae=e.nodes[1],Se(),ae(),A=history.state?.[V],I=history.state?.[z],A||(A=I=Date.now(),history.replaceState({...history.state,[V]:A,[z]:I},""));const r=D[A];function a(){r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y))}n?(a(),await yn(ke,n)):(await Y({type:"enter",url:Te(v.hash?vn(new URL(location.href)):location.href),replace_state:!0}),a()),mn()}function ln(){oe.length=0,Oe=!1}function ct(e){se.some(t=>t?.snapshot)&&(X[e]=se.map(t=>t?.snapshot?.capture()))}function lt(e){X[e]?.forEach((t,n)=>{se[n]?.snapshot?.restore(t)})}function We(){xe(A),Ve(Ze,D),ct(I),Ve(Xe,X)}async function Ne(e,t,n,r){return Y({type:"goto",url:Te(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{t.invalidateAll&&(Oe=!0),t.invalidate&&t.invalidate.forEach(_n)}})}async function fn(e){if(e.id!==O?.id){const t={};W.add(t),O={id:e.id,token:t,promise:dt({...e,preload:t}).then(n=>(W.delete(t),n.type==="loaded"&&n.state.error&&(O=null),n))}}return O.promise}async function be(e){const t=(await pe(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].map(n=>n?.[1]()))}function ft(e,t,n){w=e.state;const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Object.assign(k,e.props.page),it=new v.root({target:t,props:{...e.props,stores:N,components:se},hydrate:n,sync:!1}),lt(I),n){const a={from:null,to:{params:w.params,route:{id:w.route?.id??null},url:new URL(location.href)},willUnload:!1,type:"enter",complete:Promise.resolve()};K.forEach(s=>s(a))}ie=!0}function ce({url:e,params:t,branch:n,status:r,error:a,route:s,form:i}){let o="never";if(U&&(e.pathname===U||e.pathname===U+"/"))o="always";else for(const f of n)f?.slash!==void 0&&(o=f.slash);e.pathname=vt(e.pathname,o),e.search=e.search;const c={type:"loaded",state:{url:e,params:t,branch:n,error:a,route:s},props:{constructors:zt(n).map(f=>f.node.component),page:Fe(k)}};i!==void 0&&(c.props.form=i);let l={},d=!k,h=0;for(let f=0;f<Math.max(n.length,w.branch.length);f+=1){const p=n[f],m=w.branch[f];p?.data!==m?.data&&(d=!0),p&&(l={...l,...p.data},d&&(c.props[`data_${h}`]=l),h+=1)}return(!w.url||e.href!==w.url.href||w.error!==a||i!==void 0&&i!==k.form||d)&&(c.props.page={error:a,params:t,route:{id:s?.id??null},state:{},status:r,url:new URL(e),form:i??null,data:d?l:k.data}),c}async function je({loader:e,parent:t,url:n,params:r,route:a,server_data_node:s}){let i=null,o=!0;const c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){let d=function(...u){for(const f of u){const{href:p}=new URL(f,n);c.dependencies.add(p)}};const h={route:new Proxy(a,{get:(u,f)=>(o&&(c.route=!0),u[f])}),params:new Proxy(r,{get:(u,f)=>(o&&c.params.add(f),u[f])}),data:s?.data??null,url:St(n,()=>{o&&(c.url=!0)},u=>{o&&c.search_params.add(u)},v.hash),async fetch(u,f){u instanceof Request&&(f={body:u.method==="GET"||u.method==="HEAD"?void 0:await u.blob(),cache:u.cache,credentials:u.credentials,headers:[...u.headers].length>0?u?.headers:void 0,integrity:u.integrity,keepalive:u.keepalive,method:u.method,mode:u.mode,redirect:u.redirect,referrer:u.referrer,referrerPolicy:u.referrerPolicy,signal:u.signal,...f});const{resolved:p,promise:m}=ut(u,f,n);return o&&d(p.href),m},setHeaders:()=>{},depends:d,parent(){return o&&(c.parent=!0),t()},untrack(u){o=!1;try{return u()}finally{o=!0}}};i=await l.universal.load.call(null,h)??null}return{node:l,loader:e,server:s,universal:l.universal?.load?{type:"data",data:i,uses:c}:null,data:i??s?.data??null,slash:l.universal?.trailingSlash??s?.slash}}function ut(e,t,n){let r=e instanceof Request?e.url:e;const a=new URL(r,n);a.origin===n.origin&&(r=a.href.slice(n.origin.length));const s=ie?Ut(r,a.href,t):It(r,t);return{resolved:a,promise:s}}function Ye(e,t,n,r,a,s){if(Oe)return!0;if(!a)return!1;if(a.parent&&e||a.route&&t||a.url&&n)return!0;for(const i of a.search_params)if(r.has(i))return!0;for(const i of a.params)if(s[i]!==w.params[i])return!0;for(const i of a.dependencies)if(oe.some(o=>o(new URL(i))))return!0;return!1}function $e(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function un(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const r of n){const a=e.searchParams.getAll(r),s=t.searchParams.getAll(r);a.every(i=>s.includes(i))&&s.every(i=>a.includes(i))&&n.delete(r)}return n}function ze({error:e,url:t,route:n,params:r}){return{type:"loaded",state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Fe(k),constructors:[]}}}async function dt({id:e,invalidating:t,url:n,params:r,route:a,preload:s}){if(O?.id===e)return W.delete(O.token),O.promise;const{errors:i,layouts:o,leaf:c}=a,l=[...o,c];i.forEach(g=>g?.().catch(()=>{})),l.forEach(g=>g?.[1]().catch(()=>{}));let d=null;const h=w.url?e!==le(w.url):!1,u=w.route?a.id!==w.route.id:!1,f=un(w.url,n);let p=!1;const m=l.map((g,y)=>{const b=w.branch[y],S=!!g?.[0]&&(b?.loader!==g[1]||Ye(p,u,h,f,b.server?.uses,r));return S&&(p=!0),S});if(m.some(Boolean)){try{d=await gt(n,m)}catch(g){const y=await q(g,{url:n,params:r,route:{id:e}});return W.has(s)?ze({error:y,url:n,params:r,route:a}):he({status:re(g),error:y,url:n,route:a})}if(d.type==="redirect")return d}const _=d?.nodes;let R=!1;const E=l.map(async(g,y)=>{if(!g)return;const b=w.branch[y],S=_?.[y];if((!S||S.type==="skip")&&g[1]===b?.loader&&!Ye(R,u,h,f,b.universal?.uses,r))return b;if(R=!0,S?.type==="error")throw S;return je({loader:g[1],url:n,params:r,route:a,parent:async()=>{const ge={};for(let _e=0;_e<y;_e+=1)Object.assign(ge,(await E[_e])?.data);return ge},server_data_node:$e(S===void 0&&g[0]?{type:"skip"}:S??null,g[0]?b?.server:void 0)})});for(const g of E)g.catch(()=>{});const L=[];for(let g=0;g<l.length;g+=1)if(l[g])try{L.push(await E[g])}catch(y){if(y instanceof Ie)return{type:"redirect",location:y.location};if(W.has(s))return ze({error:await q(y,{params:r,url:n,route:{id:a.id}}),url:n,params:r,route:a});let b=re(y),S;if(_?.includes(y))b=y.status??b,S=y.error;else if(y instanceof fe)S=y.body;else{if(await N.updated.check())return await at(),await G(n);S=await q(y,{params:r,url:n,route:{id:a.id}})}const ee=await dn(g,L,i);return ee?ce({url:n,params:r,branch:L.slice(0,ee.idx).concat(ee.node),status:b,error:S,route:a}):await pt(n,{id:a.id},S,b)}else L.push(void 0);return ce({url:n,params:r,branch:L,status:200,error:null,route:a,form:t?void 0:null})}async function dn(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)r-=1;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function he({status:e,error:t,url:n,route:r}){const a={};let s=null;if(v.server_loads[0]===0)try{const o=await gt(n,[!0]);if(o.type!=="data"||o.nodes[0]&&o.nodes[0].type!=="data")throw 0;s=o.nodes[0]??null}catch{(n.origin!==Q||n.pathname!==location.pathname||Ce)&&await G(n)}try{const o=await je({loader:Se,url:n,params:a,route:r,parent:()=>Promise.resolve({}),server_data_node:$e(s)}),c={node:await ae(),loader:ae,universal:null,server:null,data:null};return ce({url:n,params:a,branch:[o,c],status:e,error:t,route:null})}catch(o){if(o instanceof Ie)return Ne(new URL(o.location,location.href),{},0);throw o}}async function hn(e){const t=e.href;if(te.has(t))return te.get(t);let n;try{const r=(async()=>{let a=await v.hooks.reroute({url:new URL(e),fetch:async(s,i)=>ut(s,i,e).promise})??e;if(typeof a=="string"){const s=new URL(e);v.hash?s.hash=a:s.pathname=a,a=s}return a})();te.set(t,r),n=await r}catch{te.delete(t);return}return n}async function pe(e,t){if(e&&!de(e,U,v.hash)){const n=await hn(e);if(!n)return;const r=pn(n);for(const a of Pe){const s=a.exec(r);if(s)return{id:le(e),invalidating:t,route:a,params:At(s),url:e}}}}function pn(e){return bt(v.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(U.length))||"/"}function le(e){return(v.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function ht({url:e,type:t,intent:n,delta:r}){let a=!1;const s=De(w,n,e,t);r!==void 0&&(s.navigation.delta=r);const i={...s.navigation,cancel:()=>{a=!0,s.reject(new Error("navigation cancelled"))}};return Z||ot.forEach(o=>o(i)),a?null:s}async function Y({type:e,url:t,popped:n,keepfocus:r,noscroll:a,replace_state:s,state:i={},redirect_count:o=0,nav_token:c={},accept:l=He,block:d=He}){const h=$;$=c;const u=await pe(t,!1),f=e==="enter"?De(w,u,t,e):ht({url:t,type:e,delta:n?.delta,intent:u});if(!f){d(),$===c&&($=h);return}const p=A,m=I;l(),Z=!0,ie&&f.navigation.type!=="enter"&&N.navigating.set(J.current=f.navigation);let _=u&&await dt(u);if(!_){if(de(t,U,v.hash))return await G(t);_=await pt(t,{id:null},await q(new Ue(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404)}if(t=u?.url||t,$!==c)return f.reject(new Error("navigation aborted")),!1;if(_.type==="redirect")if(o>=20)_=await he({status:500,error:await q(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}});else return await Ne(new URL(_.location,t).href,{},o+1,c),!1;else _.props.page.status>=400&&await N.updated.check()&&(await at(),await G(t));if(ln(),xe(p),ct(m),_.props.page.url.pathname!==t.pathname&&(t.pathname=_.props.page.url.pathname),i=n?n.state:i,!n){const g=s?0:1,y={[V]:A+=g,[z]:I+=g,[Qe]:i};(s?history.replaceState:history.pushState).call(history,y,"",t),s||sn(A,I)}if(O=null,_.props.page.state=i,ie){w=_.state,_.props.page&&(_.props.page.url=t);const g=(await Promise.all(Array.from(cn,y=>y(f.navigation)))).filter(y=>typeof y=="function");if(g.length>0){let y=function(){g.forEach(b=>{K.delete(b)})};g.push(y),g.forEach(b=>{K.add(b)})}it.$set(_.props),en(_.props.page),st=!0}else ft(_,ke,!1);const{activeElement:R}=document;await an();const E=n?n.scroll:a?ue():null;if(Ke){const g=t.hash&&document.getElementById(mt(t));E?scrollTo(E.x,E.y):g?g.scrollIntoView():scrollTo(0,0)}const L=document.activeElement!==R&&document.activeElement!==document.body;!r&&!L&&wn(t),Ke=!0,_.props.page&&Object.assign(k,_.props.page),Z=!1,e==="popstate"&&lt(I),f.fulfil(void 0),K.forEach(g=>g(f.navigation)),N.navigating.set(J.current=null)}async function pt(e,t,n,r){return e.origin===Q&&e.pathname===location.pathname&&!Ce?await he({status:r,error:n,url:e,route:t}):await G(e)}function gn(){let e,t,n;C.addEventListener("mousemove",o=>{const c=o.target;clearTimeout(e),e=setTimeout(()=>{s(c,j.hover)},20)});function r(o){o.defaultPrevented||s(o.composedPath()[0],j.tap)}C.addEventListener("mousedown",r),C.addEventListener("touchstart",r,{passive:!0});const a=new IntersectionObserver(o=>{for(const c of o)c.isIntersecting&&(be(new URL(c.target.href)),a.unobserve(c.target))},{threshold:0});async function s(o,c){const l=tt(o,C),d=l===t&&c>=n;if(!l||d)return;const{url:h,external:u,download:f}=Ae(l,U,v.hash);if(u||f)return;const p=ne(l),m=h&&le(w.url)===le(h);if(!(p.reload||m))if(c<=p.preload_data){t=l,n=j.tap;const _=await pe(h,!1);if(!_)return;fn(_)}else c<=p.preload_code&&(t=l,n=c,be(h))}function i(){a.disconnect();for(const o of C.querySelectorAll("a")){const{url:c,external:l,download:d}=Ae(o,U,v.hash);if(l||d)continue;const h=ne(o);h.reload||(h.preload_code===j.viewport&&a.observe(o),h.preload_code===j.eager&&be(c))}}K.add(i),i()}function q(e,t){if(e instanceof fe)return e.body;const n=re(e),r=Zt(e);return v.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Un(e,t={}){return e=new URL(Te(e)),e.origin!==Q?Promise.reject(new Error("goto: invalid URL")):Ne(e,t,0)}function _n(e){if(typeof e=="function")oe.push(e);else{const{href:t}=new URL(e,location.href);oe.push(n=>n.href===t)}}function mn(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let n=!1;if(We(),!Z){const r=De(w,void 0,null,"leave"),a={...r.navigation,cancel:()=>{n=!0,r.reject(new Error("navigation cancelled"))}};ot.forEach(s=>s(a))}n?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&We()}),navigator.connection?.saveData||gn(),C.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const n=tt(t.composedPath()[0],C);if(!n)return;const{url:r,external:a,target:s,download:i}=Ae(n,U,v.hash);if(!r)return;if(s==="_parent"||s==="_top"){if(window.parent!==window)return}else if(s&&s!=="_self")return;const o=ne(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||i)return;const[l,d]=(v.hash?r.hash.replace(/^#/,""):r.href).split("#"),h=l===ye(location);if(a||o.reload&&(!h||!d)){ht({url:r,type:"link"})?Z=!0:t.preventDefault();return}if(d!==void 0&&h){const[,u]=w.url.href.split("#");if(u===d){if(t.preventDefault(),d===""||d==="top"&&n.ownerDocument.getElementById("top")===null)window.scrollTo({top:0});else{const f=n.ownerDocument.getElementById(decodeURIComponent(d));f&&(f.scrollIntoView(),f.focus())}return}if(M=!0,xe(A),e(r),!o.replace_state)return;M=!1}t.preventDefault(),await new Promise(u=>{requestAnimationFrame(()=>{setTimeout(u,0)}),setTimeout(u,100)}),await Y({type:"link",url:r,keepfocus:o.keepfocus,noscroll:o.noscroll,replace_state:o.replace_state??r.href===location.href})}),C.addEventListener("submit",t=>{if(t.defaultPrevented)return;const n=HTMLFormElement.prototype.cloneNode.call(t.target),r=t.submitter;if((r?.formTarget||n.target)==="_blank"||(r?.formMethod||n.method)!=="get")return;const i=new URL(r?.hasAttribute("formaction")&&r?.formAction||n.action);if(de(i,U,!1))return;const o=t.target,c=ne(o);if(c.reload)return;t.preventDefault(),t.stopPropagation();const l=new FormData(o),d=r?.getAttribute("name");d&&l.append(d,r?.getAttribute("value")??""),i.search=new URLSearchParams(l).toString(),Y({type:"form",url:i,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??i.href===location.href})}),addEventListener("popstate",async t=>{if(!Ee){if(t.state?.[V]){const n=t.state[V];if($={},n===A)return;const r=D[n],a=t.state[Qe]??{},s=new URL(t.state[$t]??location.href),i=t.state[z],o=w.url?ye(location)===ye(w.url):!1;if(i===I&&(st||o)){a!==k.state&&(k.state=a),e(s),D[A]=ue(),r&&scrollTo(r.x,r.y),A=n;return}const l=n-A;await Y({type:"popstate",url:s,popped:{state:a,scroll:r,delta:l},accept:()=>{A=n,I=i},block:()=>{history.go(-l)},nav_token:$})}else if(!M){const n=new URL(location.href);e(n),v.hash&&location.reload()}}}),addEventListener("hashchange",()=>{M&&(M=!1,history.replaceState({...history.state,[V]:++A,[z]:I},"",location.href))});for(const t of document.querySelectorAll("link"))on.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&N.navigating.set(J.current=null)});function e(t){w.url=k.url=t,N.page.set(Fe(k)),N.page.notify()}}async function yn(e,{status:t=200,error:n,node_ids:r,params:a,route:s,server_route:i,data:o,form:c}){Ce=!0;const l=new URL(location.href);let d;({params:a={},route:s={id:null}}=await pe(l,!1)||{}),d=Pe.find(({id:f})=>f===s.id);let h,u=!0;try{const f=r.map(async(m,_)=>{const R=o[_];return R?.uses&&(R.uses=_t(R.uses)),je({loader:v.nodes[m],url:l,params:a,route:s,parent:async()=>{const E={};for(let L=0;L<_;L+=1)Object.assign(E,(await f[L]).data);return E},server_data_node:$e(R)})}),p=await Promise.all(f);if(d){const m=d.layouts;for(let _=0;_<m.length;_++)m[_]||p.splice(_,0,void 0)}h=ce({url:l,params:a,branch:p,status:t,error:n,form:c,route:d??null})}catch(f){if(f instanceof Ie){await G(new URL(f.location,location.href));return}h=await he({status:re(f),error:await q(f,{url:l,params:a,route:s}),url:l,route:s}),e.textContent="",u=!1}h.props.page&&(h.props.page.state={}),ft(h,e,u)}async function gt(e,t){const n=new URL(e);n.pathname=rn(e.pathname),e.pathname.endsWith("/")&&n.searchParams.append(Xt,"1"),n.searchParams.append(Jt,t.map(s=>s?"1":"0").join(""));const r=window.fetch,a=await r(n.href,{});if(!a.ok){let s;throw a.headers.get("content-type")?.includes("application/json")?s=await a.json():a.status===404?s="Not Found":a.status===500&&(s="Internal Error"),new fe(a.status,s)}return new Promise(async s=>{const i=new Map,o=a.body.getReader(),c=new TextDecoder;function l(h){return Wt(h,{...v.decoders,Promise:u=>new Promise((f,p)=>{i.set(u,{fulfil:f,reject:p})})})}let d="";for(;;){const{done:h,value:u}=await o.read();if(h&&!d)break;for(d+=!u&&d?`
2
- `:c.decode(u,{stream:!0});;){const f=d.indexOf(`
3
- `);if(f===-1)break;const p=JSON.parse(d.slice(0,f));if(d=d.slice(f+1),p.type==="redirect")return s(p);if(p.type==="data")p.nodes?.forEach(m=>{m?.type==="data"&&(m.uses=_t(m.uses),m.data=l(m.data))}),s(p);else if(p.type==="chunk"){const{id:m,data:_,error:R}=p,E=i.get(m);i.delete(m),R?E.reject(l(R)):E.fulfil(l(_))}}}})}function _t(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??[])}}let Ee=!1;function wn(e){const t=document.querySelector("[autofocus]");if(t)t.focus();else{const n=mt(e);if(n&&document.getElementById(n)){const{x:a,y:s}=ue();setTimeout(()=>{const i=history.state;Ee=!0,location.replace(`#${n}`),v.hash&&location.replace(e.hash),history.replaceState(i,"",e.hash),scrollTo(a,s),Ee=!1})}else{const a=document.body,s=a.getAttribute("tabindex");a.tabIndex=-1,a.focus({preventScroll:!0,focusVisible:!1}),s!==null?a.setAttribute("tabindex",s):a.removeAttribute("tabindex")}const r=getSelection();if(r&&r.type!=="None"){const a=[];for(let s=0;s<r.rangeCount;s+=1)a.push(r.getRangeAt(s));setTimeout(()=>{if(r.rangeCount===a.length){for(let s=0;s<r.rangeCount;s+=1){const i=a[s],o=r.getRangeAt(s);if(i.commonAncestorContainer!==o.commonAncestorContainer||i.startContainer!==o.startContainer||i.endContainer!==o.endContainer||i.startOffset!==o.startOffset||i.endOffset!==o.endOffset)return}r.removeAllRanges()}})}}}function De(e,t,n,r){let a,s;const i=new Promise((c,l)=>{a=c,s=l});return i.catch(()=>{}),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n},willUnload:!t,type:r,complete:i},fulfil:a,reject:s}}function Fe(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 vn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function mt(e){let t;if(v.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{In as a,Un as g,Sn as l,k as p,N as s,Re as w};