@liip/liipgpt 3.3.0 → 3.3.2

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 (32) hide show
  1. package/button/liipgpt-button.iife.js +16 -16
  2. package/chat/liipgpt-chat.iife.js +53 -54
  3. package/config/index.cjs +6 -8
  4. package/config/index.d.ts +256 -417
  5. package/config/index.js +6 -8
  6. package/configurator/_app/env.js +1 -1
  7. package/configurator/_app/immutable/chunks/{Br-58faA.js → BHyoBcMB.js} +1 -1
  8. package/configurator/_app/immutable/chunks/Bwlnp1Fv.js +3 -0
  9. package/configurator/_app/immutable/chunks/{03vg6Qp7.js → C8ORMuNm.js} +1 -1
  10. package/configurator/_app/immutable/chunks/DEfNJr1d.js +1 -0
  11. package/configurator/_app/immutable/chunks/DShclvIF.js +116 -0
  12. package/configurator/_app/immutable/chunks/{CROVZbk3.js → Dzs3iOAP.js} +1 -1
  13. package/configurator/_app/immutable/chunks/{DSyPh3A4.js → KwlzJn94.js} +1 -1
  14. package/configurator/_app/immutable/chunks/{DZwn2NPr.js → bzMFxNOM.js} +1 -1
  15. package/configurator/_app/immutable/chunks/{C6XdV3Lv.js → tg4KZpKp.js} +1 -1
  16. package/configurator/_app/immutable/entry/{app.DCKqR20T.js → app.wS03Lw9v.js} +2 -2
  17. package/configurator/_app/immutable/entry/start.DC6usZVj.js +1 -0
  18. package/configurator/_app/immutable/nodes/{0.bJp16ZWw.js → 0.B1_BHoHM.js} +5 -7
  19. package/configurator/_app/immutable/nodes/{1.MUQxcZbH.js → 1.Qf-3txMY.js} +1 -1
  20. package/configurator/_app/immutable/nodes/{2.BtbFsQ_S.js → 2.QF2vvVAB.js} +6 -6
  21. package/configurator/_app/immutable/nodes/{3.FvTTpqZ0.js → 3.y9o-F-NC.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 +28 -13
  26. package/index.d.ts +3794 -4311
  27. package/index.js +28 -13
  28. package/package.json +1 -1
  29. package/configurator/_app/immutable/chunks/BE9gm6hD.js +0 -3
  30. package/configurator/_app/immutable/chunks/DKF3ACGN.js +0 -117
  31. package/configurator/_app/immutable/chunks/DNlyCRHN.js +0 -1
  32. package/configurator/_app/immutable/entry/start.BVpSXwgq.js +0 -1
package/index.js CHANGED
@@ -3111,7 +3111,7 @@ var emptyChatReferences = deepFreeze({
3111
3111
  used: [],
3112
3112
  unused: []
3113
3113
  });
3114
- var getDomPurify = (window2) => {
3114
+ var getDomPurify = (window2, newTabSrText) => {
3115
3115
  const DOMPurify = purify(window2);
3116
3116
  DOMPurify.addHook("uponSanitizeElement", function(node, data) {
3117
3117
  const tagName = data.tagName || node.nodeName.toLowerCase();
@@ -3119,6 +3119,18 @@ var getDomPurify = (window2) => {
3119
3119
  data.allowedTags[tagName] = true;
3120
3120
  }
3121
3121
  });
3122
+ DOMPurify.addHook("afterSanitizeAttributes", function(node) {
3123
+ if (node.tagName !== "A" || !node.getAttribute("href")?.startsWith("http"))
3124
+ return;
3125
+ node.setAttribute("target", "_blank");
3126
+ node.setAttribute("rel", "noopener noreferrer");
3127
+ if (!newTabSrText || node.querySelector(".sr-only"))
3128
+ return;
3129
+ const srSpan = node.ownerDocument.createElement("span");
3130
+ srSpan.className = "sr-only";
3131
+ srSpan.textContent = ` ${newTabSrText}`;
3132
+ node.appendChild(srSpan);
3133
+ });
3122
3134
  return DOMPurify;
3123
3135
  };
3124
3136
 
@@ -3129,7 +3141,7 @@ class MarkdownRenderer {
3129
3141
  DomPurity;
3130
3142
  constructor(options2 = {}) {
3131
3143
  this.marked = new Marked({ async: false, breaks: true }).use(this.createFootnoteExtension(), ...options2.extensions ?? []);
3132
- this.DomPurity = getDomPurify(options2.window);
3144
+ this.DomPurity = getDomPurify(options2.window, options2.newTabSrText);
3133
3145
  }
3134
3146
  createFootnoteExtension = () => {
3135
3147
  const self = this;
@@ -3180,7 +3192,8 @@ class MarkdownRenderer {
3180
3192
  parse(markdown) {
3181
3193
  return this.DomPurity.sanitize(this.marked.parse(markdown), {
3182
3194
  USE_PROFILES: { html: true, svg: true, svgFilters: true, mathMl: true },
3183
- FORBID_TAGS: ["hr"]
3195
+ FORBID_TAGS: ["hr"],
3196
+ ADD_ATTR: ["target"]
3184
3197
  });
3185
3198
  }
3186
3199
  toHTML(markdown, references) {
@@ -10376,21 +10389,18 @@ var comboboxComponentSchema = exports_external.object({
10376
10389
  });
10377
10390
  var alvaInitComponentSchema = exports_external.object({
10378
10391
  componentName: exports_external.literal("alva-init"),
10379
- data: exports_external.object({
10380
- enable: exports_external.boolean()
10381
- })
10392
+ data: exports_external.object({})
10382
10393
  });
10383
10394
  var alvaConfidenceComponentSchema = exports_external.object({
10384
10395
  componentName: exports_external.literal("alva-score-survey"),
10385
- data: exports_external.object({
10386
- enable: exports_external.boolean()
10387
- })
10396
+ data: exports_external.object({})
10388
10397
  });
10389
10398
  var chatMessageEmbedBaseSchema = exports_external.object({
10390
10399
  type: exports_external.literal("component"),
10391
- time: exports_external.string(),
10392
10400
  id: exports_external.string().optional(),
10393
- hideAvatar: exports_external.boolean().optional()
10401
+ time: exports_external.string().optional(),
10402
+ hideAvatar: exports_external.boolean().optional(),
10403
+ noSectionPadding: exports_external.boolean().optional()
10394
10404
  });
10395
10405
  var chatMessageEmbedSchema = exports_external.discriminatedUnion("componentName", [
10396
10406
  buttonsComponentSchema,
@@ -10801,6 +10811,7 @@ var translationSchema = exports_external.object({
10801
10811
  ariaSettings: exports_external.string(),
10802
10812
  ariaSettingsRegion: exports_external.string(),
10803
10813
  ariaReferencesRegion: exports_external.string(),
10814
+ ariaOpensInNewTab: exports_external.string(),
10804
10815
  ariaFlyoutRegion: exports_external.string(),
10805
10816
  ariaSelected: exports_external.string(),
10806
10817
  ariaUnselected: exports_external.string(),
@@ -11513,6 +11524,7 @@ class LiipGPTClientPrimitive {
11513
11524
  internalData;
11514
11525
  renderers = new Map;
11515
11526
  markedExtensions = [];
11527
+ _newTabSrText;
11516
11528
  constructor(options2) {
11517
11529
  const restOptions = {
11518
11530
  apiUrl: options2.apiUrl,
@@ -11533,19 +11545,22 @@ class LiipGPTClientPrimitive {
11533
11545
  setMarkedExtensions(...extensions) {
11534
11546
  this.markedExtensions = extensions;
11535
11547
  }
11548
+ setNewTabSrText(text3) {
11549
+ this._newTabSrText = text3;
11550
+ }
11536
11551
  getMetadata() {
11537
11552
  return this.internalData.metadata;
11538
11553
  }
11539
11554
  createConversationId() {
11540
11555
  const conversationId = v4_default();
11541
- this.renderers.set(conversationId, new MarkdownRenderer({ extensions: this.markedExtensions }));
11556
+ this.renderers.set(conversationId, new MarkdownRenderer({ extensions: this.markedExtensions, newTabSrText: this._newTabSrText }));
11542
11557
  return conversationId;
11543
11558
  }
11544
11559
  chat(conversationId, question, options2 = {}) {
11545
11560
  const content = new FutureValue;
11546
11561
  const requestId = v4_default();
11547
11562
  const readyForFeedback = new Flag;
11548
- const markdownRenderer = this.renderers.get(conversationId) ?? new MarkdownRenderer({ extensions: this.markedExtensions });
11563
+ const markdownRenderer = this.renderers.get(conversationId) ?? new MarkdownRenderer({ extensions: this.markedExtensions, newTabSrText: this._newTabSrText });
11549
11564
  const chatResultBuilder = new ChatResultBuilder({
11550
11565
  id: requestId,
11551
11566
  onError: (error) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liip/liipgpt",
3
- "version": "3.3.0",
3
+ "version": "3.3.2",
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_12lyst3?.base??"/configurator",Nt=globalThis.__sveltekit_12lyst3?.assets??U,jt="1770972729982",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};