1(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`b3586cea-658b-435f-b2bf-26a71ed56241`,e._sentryDebugIdIdentifier=`sentry-dbid-b3586cea-658b-435f-b2bf-26a71ed56241`)}catch{}})();import{$ as e,A as t,J as n,K as r,N as i,O as a,X as o,Z as s,b as c,d as l,et as u,f as d,g as f,h as p,it as m,j as h,k as g,m as _,nt as v,q as y,r as b,st as x,tt as S,v as C,w,x as T,y as E}from"./components-CLmTExWJ.js";import{a as D,c as O,g as k,n as A,s as j}from"./errorBoundaries-B4mgF-gq.js";var M=`application/x-www-form-urlencoded`;function N(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function P(e){return N(e)&&e.tagName.toLowerCase()===`button`}function F(e){return N(e)&&e.tagName.toLowerCase()===`form`}function I(e){return N(e)&&e.tagName.toLowerCase()===`input`}function L(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function R(e,t){return e.button===0&&(!t||t===`_self`)&&!L(e)}function z(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function B(e,t){let n=z(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}var V=null;function H(){if(V===null)try{new FormData(document.createElement(`form`),0),V=!1}catch{V=!0}return V}var U=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function W(e){return e!=null&&!U.has(e)?(S(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${M}"`),null):e}function ee(e,t){let n,r,i,a,o;if(F(e)){let o=e.getAttribute(`action`);r=o?s(o,t):null,n=e.getAttribute(`method`)||`get`,i=W(e.getAttribute(`enctype`))||M,a=new FormData(e)}else if(P(e)||I(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let c=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=c?s(c,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||`get`,i=W(e.getAttribute(`formenctype`))||W(o.getAttribute(`enctype`))||M,a=new FormData(o,e),!H()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(N(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=`get`,r=null,i=M,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}var G=x(m(),1),te=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{te&&(window.__reactRouterVersion=`8`)}catch{}function ne({basename:e,children:t,history:n,useTransitions:r}){let[i,a]=G.useState({action:n.action,location:n.location}),o=G.useCallback(e=>{r===!1?a(e):G.startTransition(()=>a(e))},[r]);return G.useLayoutEffect(()=>n.listen(o),[n,o]),G.createElement(b,{basename:e,children:t,location:i.location,navigationType:i.action,navigator:n,useTransitions:r})}ne.displayName=`unstable_HistoryRouter`;var K=G.forwardRef(function({onClick:e,discover:t=`render`,prefetch:i=`none`,relative:a,reloadDocument:s,replace:c,mask:l,state:u,target:d,to:p,preventScrollReset:m,viewTransition:h,defaultShouldRevalidate:_,...y},b){let{basename:x,navigator:S,useTransitions:w}=G.useContext(g),T=typeof p==`string`&&v.test(p),E=n(p,x);p=E.to;let k=f(p,{relative:a}),A=C(),M=null;if(l){let e=o(l,[],A.mask?A.mask.pathname:`/`,!0);x!==`/`&&(e.pathname=e.pathname===`/`?x:r([x,e.pathname])),M=S.createHref(e)}let[N,P,F]=O(i,y),I=re(p,{replace:c,mask:l,state:u,target:d,preventScrollReset:m,relative:a,viewTransition:h,defaultShouldRevalidate:_,useTransitions:w});function L(t){e&&e(t),t.defaultPrevented||I(t)}let R=!(E.isExternal||s),z=G.createElement(`a`,{...y,...F,href:(R?M:void 0)||E.absoluteURL||k,onClick:R?L:e,ref:j(b,P),target:d,"data-discover":!T&&t===`render`?`true`:void 0});return N&&!T?G.createElement(G.Fragment,null,z,G.createElement(D,{page:k})):z});K.displayName=`Link`;var q=G.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:o,viewTransition:c,children:l,...u},d){let f=w(o,{relative:u.relative}),p=C(),m=G.useContext(a),{navigator:h,basename:_}=G.useContext(g),v=m!=null&&fe(f)&&c===!0,y=h.encodeLocation?h.encodeLocation(f).pathname:f.pathname,b=p.pathname,x=m?.navigation.location?m.navigation.location.pathname:null;t||(b=b.toLowerCase(),x=x?x.toLowerCase():null,y=y.toLowerCase()),x&&_&&(x=s(x,_)||x);let S=y!==`/`&&y.endsWith(`/`)?y.length-1:y.length,T=b===y||!r&&b.startsWith(y)&&b.charAt(S)===`/`,E=x!=null&&(x===y||!r&&x.startsWith(y)&&x.charAt(S)===`/`),D={isActive:T,isPending:E,isTransitioning:v},O=T?e:void 0,k;k=typeof n==`function`?n(D):[n,T?`active`:null,E?`pending`:null,v?`transitioning`:null].filter(
1Boolean).join(` `);let A=typeof i==`function`?i(D):i;return G.createElement(K,{...u,"aria-current":O,className:k,ref:d,style:A,to:o,viewTransition:c},typeof l==`function`?l(D):l)});q.displayName=`NavLink`;var J=G.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=`get`,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=G.useContext(g),_=X(),y=se(s,{relative:l}),b=o.toLowerCase()===`get`?`get`:`post`,x=typeof s==`string`&&v.test(s);return G.createElement(`form`,{ref:m,method:b,action:y,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>_(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?G.startTransition(()=>p()):p()},...p,"data-discover":!x&&e===`render`?`true`:void 0})});J.displayName=`Form`;function Y({getKey:e,storageKey:t,...n}){let r=G.useContext(A),{basename:i}=G.useContext(g),a=C(),o=E();le({getKey:e,storageKey:t});let s=G.useMemo(()=>{if(!r||!e)return null;let t=$(a,o,i,e);return t===a.key?null:t},[]);if(!r||r.isSpaMode)return null;let c=((e,t)=>{if(!window.history.state||!window.history.state.key){let e=Math.random().toString(32).slice(2);window.history.replaceState({key:e},``)}try{let n=JSON.parse(sessionStorage.getItem(e)||`{}`)[t||window.history.state.key];
1typeof n==`number`&&window.scrollTo(0,n)}catch(t){console.error(t),sessionStorage.removeItem(e)}}).toString();return n.nonce==null&&r?.nonce&&(n.nonce=r.nonce),G.createElement(`script`,{...n,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${c})(${k(JSON.stringify(t||Z))}, ${k(JSON.stringify(s))})`}})}Y.displayName=`ScrollRestoration`;function re(t,{target:n,replace:r,mask:i,state:a,preventScrollReset:o,relative:s,viewTransition:l,defaultShouldRevalidate:u,useTransitions:d}={}){let f=c(),p=C(),m=w(t,{relative:s});return G.useCallback(c=>{if(R(c,n)){c.preventDefault();let n=r===void 0?e(p)===e(m):r,h=()=>f(t,{replace:n,mask:i,state:a,preventScrollReset:o,relative:s,viewTransition:l,defaultShouldRevalidate:u});d?G.startTransition(()=>h()):h()}},[p,f,m,r,i,a,n,t,o,s,l,u,d])}function ie(e){S(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=G.useRef(z(e)),n=G.useRef(!1),r=C(),i=G.useMemo(()=>B(r.search,n.current?null:t.current),[r.search]),a=c();return[i,G.useCallback((e,t)=>{let r=z(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}var ae=0,oe=()=>`__${String(++ae)}__`;function X(){let{router:e}=d(`useSubmit`),{basename:t}=G.useContext(g),n=l(`useSubmit`),r=e.fetch,i=e.navigate;return G.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=ee(e,t);a.navigate===!1?await r(a.fetcherKey||oe(),n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,relative:a.relative,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync}):await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,relative:a.relative,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function se(n,{relative:i}={}){let{basename:a}=G.useContext(g),o=G.useContext(t);u(o,`useFormAction must be used inside a RouteContext`);let[s]=o.matches.slice(-1),c={...w(n||`.`,{relative:i})},l=C();if(n==null){c.search=l.search;let e=new URLSearchParams(c.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();c.search=n?`?${n}`:``}}return(!n||n===`.`)&&s.route.index&&(c.search=c.search?c.search.replace(/^\?/,`?index&`):`?index`),a!==`/`&&(c.pathname=c.pathname===`/`?a:r([a,c.pathname])),e(c)}function ce({key:e}={}){let{router:t}=d(`useFetcher`),n=_(`useFetcher`),r=l(`useFetcher`),a=G.useId(),[o,s]=G.useState(e||a);e&&e!==o&&s(e);let{deleteFetcher:c,getFetcher:f,resetFetcher:p,fetch:m}=t;G.useEffect(()=>(f(o),()=>c(o)),[c,f,o]);let h=G.useCallback(async(e,t)=>{u(r,`No routeId available for fetcher.load()`),await m(o,r,e,t)},[o,r,m]),g=X(),v=G.useCallback(async(e,t)=>{await g(e,{...t,navigate:!1,fetcherKey:o})},[o,g]),y=G.useCallback(e=>p(o,e),[p,o]),b=G.useMemo(()=>{let e=G.forwardRef((e,t)=>G.createElement(J,{...e,navigate:!1,fetcherKey:o,ref:t}));return e.displayName=`fetcher.Form`,e},[o]),x=n.fetchers.get(o)||i,S=n.fetcherData.get(o);return G.useMemo(()=>({Form:b,submit:v,load:h,reset:y,...x,data:S}),[b,v,h,y,x,S])}var Z=`react-router-scroll-positions`,Q={};function $(e,t,n,r){let i=null;return r&&(i=r(n===`/`?e:{...e,pathname:s(e.pathname,n)||e.pathname},t)),i??=e.key,i}function le({getKey:e,storageKey:t}={}){let{router:n}=d(`useScrollRestoration`),{restoreScrollPosition:r,preventScrollReset:i}=p(`useScrollRestoration`),{basename:a}=G.useContext(g),o=C(),s=E(),c=T();G.useEffect(()=>(window.history.scrollRestoration=`manual`,()=>{window.history.scrollRestoration=`auto`}),[]),de(G.useCallback(e=>{e.persisted&&(window.history.scrollRestoration=`manual`)},[])),ue(G.useCallback(()=>{if(c.state===`idle`){let t=$(o,s,a,e);Q[t]=window.scrollY}try{sessionStorage.setItem(t||Z,JSON.stringify(Q))}catch(e){S(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${e}).`)}window.history.scrollRestoration=`auto`},[c.state,e,a,o,s,t])),typeof document<`u`&&(G.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(t||Z);e&&(Q=JSON.parse(e))}catch{}},[t]),G.useLayoutEffect(()=>{let t=n?.enableScrollRestoration(Q,()=>window.scrollY,e?(t,n)=>$(t,n,a,e):void 0);return()=>t&&t()},[n,a,e]),G.useLayoutEffect(()=>{if(r!==!1){if(typeof r==`number`){window.scrollTo(0,r);return}try{if(o.hash){let e=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(e){e.scrollIntoView();return}}}catch{S(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}i!==!0&&window.scrollTo(0,0)}},[o,r,i]))}function ue(e,t){let{capture:n}=t||{};G.useEffect(()=>{let t=n==null?void 0:{capture:n};return window.addEventListener(`pagehide`,e,t),()=>{window.removeEventListener(`pagehide`,e,t)}},[e,n])}function de(e,t){let{capture:n}=t||{};G.useEffect(()=>{let t=n==null?void 0:{capture:n};return window.addEventListener(`pageshow`,e,t),()=>{window.removeEventListener(`pageshow`,e,t)}},[e,n])}function fe(e,{relative:t}={}){let n=G.useContext(h);u(n!=null,"`useViewTransitionState` must be used within `react-router/dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=d(`useViewTransitionState`),i=w(e,{relative:t});if(!n.isTransitioning)return!1;let a=s(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=s(n.nextLocation.pathname,r)||n.nextLocation.pathname;return y(i.pathname,o)!=null||y(i.pathname,a)!=null}export{ce as a,Y as i,K as n,ie as o,q as r,X as s,J as t}; 2//# sourceMappingURL=lib-CItPgmc4.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.