@qratilabs/qrati-connect 2.5.4 → 2.5.6

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 (44) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/element/{B59V0Mhr.js → B28y50Bi.js} +1 -1
  3. package/element/{DLz0G_z2.js → BWU1Eb1i.js} +1 -1
  4. package/element/{kdp9oLRU.js → CAt6yWea.js} +1 -1
  5. package/element/{D_N6wPLS.js → CH2f_afH.js} +1 -1
  6. package/element/{D43BQzpf.js → CUOOhGTj.js} +1 -1
  7. package/element/{BwemkCCJ.js → Cf1QDu0i.js} +1 -1
  8. package/element/{OucaMSbY.js → CvA0vfrf.js} +1 -1
  9. package/element/{DhfeoyBz.js → D4xTzxjA.js} +1 -1
  10. package/element/{J72K45YE.js → DODG2TX4.js} +1 -1
  11. package/element/{CPPs7pi-.js → DPOkh0eJ.js} +1 -1
  12. package/element/{DhcdFi7M.js → DiiWe_SG.js} +2 -2
  13. package/element/{BrMlCiWh.js → wHbQZdly.js} +1 -1
  14. package/element/web.es.js +3 -3
  15. package/package.json +1 -1
  16. package/react/{DXg0jviV.js → BAbwOJvT.js} +1 -1
  17. package/react/{DVhoieUG.js → BXiO9Rt2.js} +1 -1
  18. package/react/{B-MiXFkt.js → BaT1o9UO.js} +1 -1
  19. package/react/{q8ln6Sqn.js → BexGhdGA.js} +2 -2
  20. package/react/{CYK5EdMk.js → C4TTO8j2.js} +1 -1
  21. package/react/{DQq5P5kz.js → CNAEfadS.js} +1 -1
  22. package/react/{yjP1jdU0.js → CT_Cvh8-.js} +1 -1
  23. package/react/{DQRcftrx.js → Cs3wia2w.js} +1 -1
  24. package/react/{BBNhso7S.js → Czrz88CD.js} +1 -1
  25. package/react/{Rx2eXHSy.js → Czw0BHMZ.js} +1 -1
  26. package/react/{BaqVlxbd.js → D3jlv133.js} +1 -1
  27. package/react/{HzUDi5NE.js → D4BACpJw.js} +1 -1
  28. package/react/{Bh_3jcgw.js → D6cMN4OJ.js} +1 -1
  29. package/react/{B9vdeEQv.js → D7c4q3kj.js} +1 -1
  30. package/react/{t-ii7Ss0.js → DEIcfk-y.js} +1 -1
  31. package/react/{-k-ffFwP.js → DGIVHiX4.js} +1 -1
  32. package/react/{DMqKxwcb.js → DOw70z3P.js} +1 -1
  33. package/react/DV6DJ1Br.js +1 -0
  34. package/react/{r0vUVZIh.js → Dljj3ToS.js} +1 -1
  35. package/react/QPXxc9eb.js +1 -0
  36. package/react/{BQ7Q_1WB.js → Sb4c6EUR.js} +1 -1
  37. package/react/{Fhq5zLvg.js → aragUG-J.js} +1 -1
  38. package/react/{BRLq62Uv.js → e8YBtYhk.js} +1 -1
  39. package/react/index.cjs +1 -1
  40. package/react/index.mjs +3 -3
  41. package/react/{BTW-b-Wo.js → pIx9IeV5.js} +1 -1
  42. package/umd/web.umd.js +1 -1
  43. package/react/BJBX47Jb.js +0 -1
  44. package/react/C9yNmSQ8.js +0 -1
@@ -1 +1 @@
1
- const e=require("./D4geS7mP.js"),t=require("./C9yNmSQ8.js"),r=require("./B-MiXFkt.js"),n=require("./DQRcftrx.js"),o=require("./r0vUVZIh.js");var i=new r.QueryClient,s=(e,r)=>{t.J(t.u(t.QueryClientProvider,{client:i,children:t.u(n.MemoryRouter,{children:t.u(o.EventMapPopup,{event:e})})}),r)};exports.default=({events:r,apiKey:n,is3D:o})=>{const i=t.A(null),a=t.A(null),l=t.A(o);return t.y(()=>{if(!i.current||a.current)return;let t;return(async()=>{const o=(await Promise.resolve().then(()=>e.__toESM(require("./bYucjLbl.js").default,1))).default;if(await Promise.resolve().then(()=>require("./RS9CP5m-.js")),!i.current)return;const u=new o.Map({container:i.current,style:`https://api.maptiler.com/maps/streets-v2/style.json?key=${n}`,center:[0,20],zoom:2,pitch:0,bearing:0,projection:l.current?{type:"globe"}:{type:"mercator"},canvasContextAttributes:{antialias:!0}});a.current=u,u.on("load",()=>{const e=u.getStyle()?.layers??[];let t,n;for(const r of e){const e=r;"symbol"===e.type&&e.layout?.["text-field"]&&!t&&(t=r.id),"building"!==e["source-layer"]||n||(n=e.source)}n&&!u.getLayer("3d-buildings")&&u.addLayer({id:"3d-buildings",source:n,"source-layer":"building",filter:["has","render_height"],type:"fill-extrusion",minzoom:14,paint:{"fill-extrusion-color":["interpolate",["linear"],["get","render_height"],0,"lightgray",200,"royalblue",400,"lightblue"],"fill-extrusion-height":["interpolate",["linear"],["zoom"],14,0,15,["get","render_height"]],"fill-extrusion-base":["case",["has","render_min_height"],["get","render_min_height"],0],"fill-extrusion-opacity":.6}},t);const i=r.filter(e=>"number"==typeof e.location?.x&&"number"==typeof e.location?.y);if(0===i.length)return;const a=new o.LngLatBounds;for(const r of i){const e=r.location.x,t=r.location.y;a.extend([e,t]);const n=document.createElement("div");n.className="qrati-map-marker",n.style.cssText="\n width: 32px; height: 32px; cursor: pointer;\n background: var(--color-primary, #6366f1);\n border-radius: 50% 50% 50% 0;\n transform: rotate(-45deg);\n border: 2px solid white;\n box-shadow: 0 2px 8px rgba(0,0,0,0.3);\n ";const i=document.createElement("div");s(r,i);const l=new o.Popup({closeButton:!0,closeOnClick:!1,maxWidth:"none",offset:[0,-34]}).setDOMContent(i);new o.Marker({element:n}).setLngLat([e,t]).setPopup(l).addTo(u)}a.isEmpty()||u.fitBounds(a,{padding:{top:60,bottom:60,left:60,right:60},maxZoom:14,animate:!0,duration:1200})}),t=()=>{u.remove(),a.current=null}})(),()=>{t?.()}},[n]),t.y(()=>{a.current&&(l.current=o,a.current.setProjection(o?{type:"globe"}:{type:"mercator"}),a.current.easeTo({pitch:0,bearing:0,duration:600}))},[o]),t.u("div",{ref:i,class:"size-full"})};
1
+ const e=require("./D4geS7mP.js"),t=require("./DV6DJ1Br.js"),r=require("./BaT1o9UO.js"),n=require("./Cs3wia2w.js"),o=require("./Dljj3ToS.js");var i=new r.QueryClient,s=(e,r)=>{t.J(t.u(t.QueryClientProvider,{client:i,children:t.u(n.MemoryRouter,{children:t.u(o.EventMapPopup,{event:e})})}),r)};exports.default=({events:r,apiKey:n,is3D:o})=>{const i=t.A(null),a=t.A(null),l=t.A(o);return t.y(()=>{if(!i.current||a.current)return;let t;return(async()=>{const o=(await Promise.resolve().then(()=>e.__toESM(require("./bYucjLbl.js").default,1))).default;if(await Promise.resolve().then(()=>require("./RS9CP5m-.js")),!i.current)return;const u=new o.Map({container:i.current,style:`https://api.maptiler.com/maps/streets-v2/style.json?key=${n}`,center:[0,20],zoom:2,pitch:0,bearing:0,projection:l.current?{type:"globe"}:{type:"mercator"},canvasContextAttributes:{antialias:!0}});a.current=u,u.on("load",()=>{const e=u.getStyle()?.layers??[];let t,n;for(const r of e){const e=r;"symbol"===e.type&&e.layout?.["text-field"]&&!t&&(t=r.id),"building"!==e["source-layer"]||n||(n=e.source)}n&&!u.getLayer("3d-buildings")&&u.addLayer({id:"3d-buildings",source:n,"source-layer":"building",filter:["has","render_height"],type:"fill-extrusion",minzoom:14,paint:{"fill-extrusion-color":["interpolate",["linear"],["get","render_height"],0,"lightgray",200,"royalblue",400,"lightblue"],"fill-extrusion-height":["interpolate",["linear"],["zoom"],14,0,15,["get","render_height"]],"fill-extrusion-base":["case",["has","render_min_height"],["get","render_min_height"],0],"fill-extrusion-opacity":.6}},t);const i=r.filter(e=>"number"==typeof e.location?.x&&"number"==typeof e.location?.y);if(0===i.length)return;const a=new o.LngLatBounds;for(const r of i){const e=r.location.x,t=r.location.y;a.extend([e,t]);const n=document.createElement("div");n.className="qrati-map-marker",n.style.cssText="\n width: 32px; height: 32px; cursor: pointer;\n background: var(--color-primary, #6366f1);\n border-radius: 50% 50% 50% 0;\n transform: rotate(-45deg);\n border: 2px solid white;\n box-shadow: 0 2px 8px rgba(0,0,0,0.3);\n ";const i=document.createElement("div");s(r,i);const l=new o.Popup({closeButton:!0,closeOnClick:!1,maxWidth:"none",offset:[0,-34]}).setDOMContent(i);new o.Marker({element:n}).setLngLat([e,t]).setPopup(l).addTo(u)}a.isEmpty()||u.fitBounds(a,{padding:{top:60,bottom:60,left:60,right:60},maxZoom:14,animate:!0,duration:1200})}),t=()=>{u.remove(),a.current=null}})(),()=>{t?.()}},[n]),t.y(()=>{a.current&&(l.current=o,a.current.setProjection(o?{type:"globe"}:{type:"mercator"}),a.current.easeTo({pitch:0,bearing:0,duration:600}))},[o]),t.u("div",{ref:i,class:"size-full"})};
@@ -1,4 +1,4 @@
1
- import{_t as e,a as t,pt as n,t as r,ut as a}from"./BJBX47Jb.js";import*as o from"react";var i="popstate";function l(e){return"object"==typeof e&&null!=e&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function s(e,t){if(!1===e||null==e)throw new Error(t)}function u(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function c(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function h(e,t,n=null,r,a){return{pathname:"string"==typeof e?e:e.pathname,search:"",hash:"",..."string"==typeof t?d(t):t,state:n,key:t&&t.key||r||Math.random().toString(36).substring(2,10),unstable_mask:a}}function p({pathname:e="/",search:t="",hash:n=""}){return t&&"?"!==t&&(e+="?"===t.charAt(0)?t:"?"+t),n&&"#"!==n&&(e+="#"===n.charAt(0)?n:"#"+n),e}function d(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function m(e,t,n="/"){return function(e,t,n){let r=T(("string"==typeof t?d(t):t).pathname||"/",n);if(null==r)return null;let a=f(e);!function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))}(a);let o=null;for(let i=0;null==o&&i<a.length;++i){let e=k(r);o=S(a[i],e,false)}return o}(e,t,n)}function f(e,t=[],n=[],r="",a=!1){let o=(e,o,i=a,l)=>{let u={relativePath:void 0===l?e.path||"":l,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};if(u.relativePath.startsWith("/")){if(!u.relativePath.startsWith(r)&&i)return;s(u.relativePath.startsWith(r),`Absolute route path "${u.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),u.relativePath=u.relativePath.slice(r.length)}let c=N([r,u.relativePath]),h=n.concat(u);e.children&&e.children.length>0&&(s(!0!==e.index,`Index routes must not have child routes. Please remove all child routes from route path "${c}".`),f(e.children,t,h,c,i)),(null!=e.path||e.index)&&t.push({path:c,score:C(c,e.index),routesMeta:h})};return e.forEach((e,t)=>{if(""!==e.path&&e.path?.includes("?"))for(let n of g(e.path))o(e,t,!0,n);else o(e,t)}),t}function g(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(0===r.length)return a?[o,""]:[o];let i=g(r.join("/")),l=[];return l.push(...i.map(e=>""===e?o:[o,e].join("/"))),a&&l.push(...i),l.map(t=>e.startsWith("/")&&""===t?"/":t)}var v=/^:[\w-]+$/,y=3,b=2,w=1,E=10,R=-2,x=e=>"*"===e;function C(e,t){let n=e.split("/"),r=n.length;return n.some(x)&&(r+=R),t&&(r+=b),n.filter(e=>!x(e)).reduce((e,t)=>e+(v.test(t)?y:""===t?w:E),r)}function S(e,t,n=!1){let{routesMeta:r}=e,a={},o="/",i=[];for(let l=0;l<r.length;++l){let e=r[l],s=l===r.length-1,u="/"===o?t:t.slice(o.length)||"/",c=$({path:e.relativePath,caseSensitive:e.caseSensitive,end:s},u),h=e.route;if(!c&&s&&n&&!r[r.length-1].route.index&&(c=$({path:e.relativePath,caseSensitive:e.caseSensitive,end:!1},u)),!c)return null;Object.assign(a,c.params),i.push({params:a,pathname:N([o,c.pathname]),pathnameBase:j(N([o,c.pathnameBase])),route:h}),"/"!==c.pathnameBase&&(o=N([o,c.pathnameBase]))}return i}function $(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=function(e,t=!1,n=!0){u("*"===e||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,n,a,o)=>{if(r.push({paramName:t,isOptional:null!=n}),n){let t=o.charAt(a+e.length);return t&&"/"!==t?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(r.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if("*"===t){let e=l[r]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const a=l[r];return e[t]=n&&!a?void 0:(a||"").replace(/%2F/g,"/"),e},{}),pathname:o,pathnameBase:i,pattern:e}}function k(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(t){return u(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function T(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}var P=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function L(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)}),n.length>1?n.join("/"):"/"}function O(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function M(e){let t=function(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function _(e,t,n,r=!1){let a;"string"==typeof e?a=d(e):(a={...e},s(!a.pathname||!a.pathname.includes("?"),O("?","pathname","search",a)),s(!a.pathname||!a.pathname.includes("#"),O("#","pathname","hash",a)),s(!a.search||!a.search.includes("#"),O("#","search","hash",a)));let o,i=""===e||""===a.pathname,l=i?"/":a.pathname;if(null==l)o=n;else{let e=t.length-1;if(!r&&l.startsWith("..")){let t=l.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}o=e>=0?t[e]:"/"}let u=function(e,t="/"){let n,{pathname:r,search:a="",hash:o=""}="string"==typeof e?d(e):e;return r?(r=r.replace(/\/\/+/g,"/"),n=r.startsWith("/")?L(r.substring(1),"/"):L(r,t)):n=t,{pathname:n,search:A(a),hash:D(o)}}(a,o),c=l&&"/"!==l&&l.endsWith("/"),h=(i||"."===l)&&n.endsWith("/");return u.pathname.endsWith("/")||!c&&!h||(u.pathname+="/"),u}var N=e=>e.join("/").replace(/\/\/+/g,"/"),j=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),A=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",D=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",U=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function F(e){return e.map(e=>e.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var W="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function B(e,t){let n=e;if("string"!=typeof n||!P.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,a=!1;if(W)try{let e=new URL(window.location.href),r=n.startsWith("//")?new URL(e.protocol+n):new URL(n),o=T(r.pathname,t);r.origin===e.origin&&null!=o?n=o+r.search+r.hash:a=!0}catch(o){u(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:a,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var I=["POST","PUT","PATCH","DELETE"],H=(new Set(I),["GET",...I]),z=(new Set(H),o.createContext(null));z.displayName="DataRouter";var J=o.createContext(null);J.displayName="DataRouterState";var Y=o.createContext(!1),V=o.createContext({isTransitioning:!1});V.displayName="ViewTransition",o.createContext(/* @__PURE__ */new Map).displayName="Fetchers",o.createContext(null).displayName="Await";var K=o.createContext(null);K.displayName="Navigation";var X=o.createContext(null);X.displayName="Location";var q=o.createContext({outlet:null,matches:[],isDataRoute:!1});q.displayName="Route";var G=o.createContext(null);G.displayName="RouteError";var Q="REACT_ROUTER_ERROR";function Z(){return null!=o.useContext(X)}function ee(){return s(Z(),"useLocation() may be used only in the context of a <Router> component."),o.useContext(X).location}var te="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ne(e){o.useContext(K).static||o.useLayoutEffect(e)}function re(){let{isDataRoute:e}=o.useContext(q);return e?function(){let{router:e}=function(){let e=o.useContext(z);return s(e,me("useNavigate")),e}(),t=fe("useNavigate"),n=o.useRef(!1);return ne(()=>{n.current=!0}),o.useCallback(async(r,a={})=>{u(n.current,te),n.current&&("number"==typeof r?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...a}))},[e,t])}():function(){s(Z(),"useNavigate() may be used only in the context of a <Router> component.");let e=o.useContext(z),{basename:t,navigator:n}=o.useContext(K),{matches:r}=o.useContext(q),{pathname:a}=ee(),i=JSON.stringify(M(r)),l=o.useRef(!1);return ne(()=>{l.current=!0}),o.useCallback((r,o={})=>{if(u(l.current,te),!l.current)return;if("number"==typeof r)return void n.go(r);let s=_(r,JSON.parse(i),a,"path"===o.relative);null==e&&"/"!==t&&(s.pathname="/"===s.pathname?t:N([t,s.pathname])),(o.replace?n.replace:n.push)(s,o.state,o)},[t,n,i,a,e])}()}var ae=o.createContext(null);function oe(){let{matches:e}=o.useContext(q),t=e[e.length-1];return t?t.params:{}}function ie(e,{relative:t}={}){let{matches:n}=o.useContext(q),{pathname:r}=ee(),a=JSON.stringify(M(n));return o.useMemo(()=>_(e,JSON.parse(a),r,"path"===t),[e,a,r,t])}function le(e,t,n){s(Z(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:r}=o.useContext(K),{matches:a}=o.useContext(q),i=a[a.length-1],l=i?i.params:{},c=i?i.pathname:"/",h=i?i.pathnameBase:"/",p=i&&i.route;{let e=p&&p.path||"";ve(c,!p||e.endsWith("*")||e.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.\n\nPlease change the parent <Route path="${e}"> to <Route path="${"/"===e?"*":`${e}/*`}">.`)}let f,g=ee();if(t){let e="string"==typeof t?d(t):t;s("/"===h||e.pathname?.startsWith(h),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${h}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=g;let v=f.pathname||"/",y=v;if("/"!==h){let e=h.replace(/^\//,"").split("/");y="/"+v.replace(/^\//,"").split("/").slice(e.length).join("/")}let b=m(e,{pathname:y});u(p||null!=b,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),u(null==b||void 0!==b[b.length-1].route.element||void 0!==b[b.length-1].route.Component||void 0!==b[b.length-1].route.lazy,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let w=function(e,t=[],n){let r=n?.state;if(null==e){if(!r)return null;if(r.errors)e=r.matches;else{if(0!==t.length||r.initialized||!(r.matches.length>0))return null;e=r.matches}}let a=e,i=r?.errors;if(null!=i){let e=a.findIndex(e=>e.route.id&&void 0!==i?.[e.route.id]);s(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(i).join(",")}`),a=a.slice(0,Math.min(a.length,e+1))}let l=!1,u=-1;if(n&&r){l=r.renderFallback;for(let e=0;e<a.length;e++){let t=a[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(u=e),t.route.id){let{loaderData:e,errors:o}=r,i=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!o||void 0===o[t.route.id]);if(t.route.lazy||i){n.isStatic&&(l=!0),a=u>=0?a.slice(0,u+1):[a[0]];break}}}}let c=n?.onError,h=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:F(r.matches),errorInfo:t})}:void 0;return a.reduceRight((e,n,s)=>{let c,p=!1,d=null,m=null;r&&(c=i&&n.route.id?i[n.route.id]:void 0,d=n.route.errorElement||ue,l&&(u<0&&0===s?(ve("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),p=!0,m=null):u===s&&(p=!0,m=n.route.hydrateFallbackElement||null)));let f=t.concat(a.slice(0,s+1)),g=()=>{let t;return t=c?d:p?m:n.route.Component?/* @__PURE__ */o.createElement(n.route.Component,null):n.route.element?n.route.element:e,/* @__PURE__ */o.createElement(de,{match:n,routeContext:{outlet:e,matches:f,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===s)?/* @__PURE__ */o.createElement(ce,{location:r.location,revalidation:r.revalidation,component:d,error:c,children:g(),routeContext:{outlet:null,matches:f,isDataRoute:!0},onError:h}):g()},null)}(b&&b.map(e=>Object.assign({},e,{params:Object.assign({},l,e.params),pathname:N([h,r.encodeLocation?r.encodeLocation(e.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?h:N([h,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathnameBase])})),a,n);return t&&w?/* @__PURE__ */o.createElement(X.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...f},navigationType:"POP"}},w):w}function se(){let e=function(){let e=o.useContext(G),t=function(e){let t=o.useContext(J);return s(t,me(e)),t}("useRouteError"),n=fe("useRouteError");return void 0!==e?e:t.errors?.[n]}(),t=function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},i={padding:"2px 4px",backgroundColor:r},l=null;return console.error("Error handled by React Router default ErrorBoundary:",e),l=/* @__PURE__ */o.createElement(o.Fragment,null,/* @__PURE__ */o.createElement("p",null,"💿 Hey developer 👋"),/* @__PURE__ */o.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",/* @__PURE__ */o.createElement("code",{style:i},"ErrorBoundary")," or"," ",/* @__PURE__ */o.createElement("code",{style:i},"errorElement")," prop on your route.")),/* @__PURE__ */o.createElement(o.Fragment,null,/* @__PURE__ */o.createElement("h2",null,"Unexpected Application Error!"),/* @__PURE__ */o.createElement("h3",{style:{fontStyle:"italic"}},t),n?/* @__PURE__ */o.createElement("pre",{style:a},n):null,l)}var ue=/* @__PURE__ */o.createElement(se,null),ce=class extends o.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&"object"==typeof e&&e&&"digest"in e&&"string"==typeof e.digest){const t=function(e){if(e.startsWith(`${Q}:ROUTE_ERROR_RESPONSE:{`))try{let t=JSON.parse(e.slice(40));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText)return new U(t.status,t.statusText,t.data)}catch{}}(e.digest);t&&(e=t)}let t=void 0!==e?/* @__PURE__ */o.createElement(q.Provider,{value:this.props.routeContext},/* @__PURE__ */o.createElement(G.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?/* @__PURE__ */o.createElement(pe,{error:e},t):t}};ce.contextType=Y;var he=/* @__PURE__ */new WeakMap;function pe({children:e,error:t}){let{basename:n}=o.useContext(K);if("object"==typeof t&&t&&"digest"in t&&"string"==typeof t.digest){let e=function(e){if(e.startsWith(`${Q}:REDIRECT:{`))try{let t=JSON.parse(e.slice(28));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText&&"string"==typeof t.location&&"boolean"==typeof t.reloadDocument&&"boolean"==typeof t.replace)return t}catch{}}(t.digest);if(e){let r=he.get(t);if(r)throw r;let a=B(e.location,n);if(W&&!he.get(t)){if(!a.isExternal&&!e.reloadDocument){const n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw he.set(t,n),n}window.location.href=a.absoluteURL||a.to}/* @__PURE__ */
1
+ import{_t as e,a as t,pt as n,t as r,ut as a}from"./QPXxc9eb.js";import*as o from"react";var i="popstate";function l(e){return"object"==typeof e&&null!=e&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function s(e,t){if(!1===e||null==e)throw new Error(t)}function u(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function c(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function h(e,t,n=null,r,a){return{pathname:"string"==typeof e?e:e.pathname,search:"",hash:"",..."string"==typeof t?d(t):t,state:n,key:t&&t.key||r||Math.random().toString(36).substring(2,10),unstable_mask:a}}function p({pathname:e="/",search:t="",hash:n=""}){return t&&"?"!==t&&(e+="?"===t.charAt(0)?t:"?"+t),n&&"#"!==n&&(e+="#"===n.charAt(0)?n:"#"+n),e}function d(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function m(e,t,n="/"){return function(e,t,n){let r=T(("string"==typeof t?d(t):t).pathname||"/",n);if(null==r)return null;let a=f(e);!function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))}(a);let o=null;for(let i=0;null==o&&i<a.length;++i){let e=k(r);o=S(a[i],e,false)}return o}(e,t,n)}function f(e,t=[],n=[],r="",a=!1){let o=(e,o,i=a,l)=>{let u={relativePath:void 0===l?e.path||"":l,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};if(u.relativePath.startsWith("/")){if(!u.relativePath.startsWith(r)&&i)return;s(u.relativePath.startsWith(r),`Absolute route path "${u.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),u.relativePath=u.relativePath.slice(r.length)}let c=N([r,u.relativePath]),h=n.concat(u);e.children&&e.children.length>0&&(s(!0!==e.index,`Index routes must not have child routes. Please remove all child routes from route path "${c}".`),f(e.children,t,h,c,i)),(null!=e.path||e.index)&&t.push({path:c,score:C(c,e.index),routesMeta:h})};return e.forEach((e,t)=>{if(""!==e.path&&e.path?.includes("?"))for(let n of g(e.path))o(e,t,!0,n);else o(e,t)}),t}function g(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(0===r.length)return a?[o,""]:[o];let i=g(r.join("/")),l=[];return l.push(...i.map(e=>""===e?o:[o,e].join("/"))),a&&l.push(...i),l.map(t=>e.startsWith("/")&&""===t?"/":t)}var v=/^:[\w-]+$/,y=3,b=2,w=1,E=10,R=-2,x=e=>"*"===e;function C(e,t){let n=e.split("/"),r=n.length;return n.some(x)&&(r+=R),t&&(r+=b),n.filter(e=>!x(e)).reduce((e,t)=>e+(v.test(t)?y:""===t?w:E),r)}function S(e,t,n=!1){let{routesMeta:r}=e,a={},o="/",i=[];for(let l=0;l<r.length;++l){let e=r[l],s=l===r.length-1,u="/"===o?t:t.slice(o.length)||"/",c=$({path:e.relativePath,caseSensitive:e.caseSensitive,end:s},u),h=e.route;if(!c&&s&&n&&!r[r.length-1].route.index&&(c=$({path:e.relativePath,caseSensitive:e.caseSensitive,end:!1},u)),!c)return null;Object.assign(a,c.params),i.push({params:a,pathname:N([o,c.pathname]),pathnameBase:j(N([o,c.pathnameBase])),route:h}),"/"!==c.pathnameBase&&(o=N([o,c.pathnameBase]))}return i}function $(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=function(e,t=!1,n=!0){u("*"===e||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,n,a,o)=>{if(r.push({paramName:t,isOptional:null!=n}),n){let t=o.charAt(a+e.length);return t&&"/"!==t?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(r.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if("*"===t){let e=l[r]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const a=l[r];return e[t]=n&&!a?void 0:(a||"").replace(/%2F/g,"/"),e},{}),pathname:o,pathnameBase:i,pattern:e}}function k(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(t){return u(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function T(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}var P=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function L(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)}),n.length>1?n.join("/"):"/"}function O(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function M(e){let t=function(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function _(e,t,n,r=!1){let a;"string"==typeof e?a=d(e):(a={...e},s(!a.pathname||!a.pathname.includes("?"),O("?","pathname","search",a)),s(!a.pathname||!a.pathname.includes("#"),O("#","pathname","hash",a)),s(!a.search||!a.search.includes("#"),O("#","search","hash",a)));let o,i=""===e||""===a.pathname,l=i?"/":a.pathname;if(null==l)o=n;else{let e=t.length-1;if(!r&&l.startsWith("..")){let t=l.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}o=e>=0?t[e]:"/"}let u=function(e,t="/"){let n,{pathname:r,search:a="",hash:o=""}="string"==typeof e?d(e):e;return r?(r=r.replace(/\/\/+/g,"/"),n=r.startsWith("/")?L(r.substring(1),"/"):L(r,t)):n=t,{pathname:n,search:A(a),hash:D(o)}}(a,o),c=l&&"/"!==l&&l.endsWith("/"),h=(i||"."===l)&&n.endsWith("/");return u.pathname.endsWith("/")||!c&&!h||(u.pathname+="/"),u}var N=e=>e.join("/").replace(/\/\/+/g,"/"),j=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),A=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",D=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",U=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function F(e){return e.map(e=>e.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var W="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function B(e,t){let n=e;if("string"!=typeof n||!P.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,a=!1;if(W)try{let e=new URL(window.location.href),r=n.startsWith("//")?new URL(e.protocol+n):new URL(n),o=T(r.pathname,t);r.origin===e.origin&&null!=o?n=o+r.search+r.hash:a=!0}catch(o){u(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:a,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var I=["POST","PUT","PATCH","DELETE"],H=(new Set(I),["GET",...I]),z=(new Set(H),o.createContext(null));z.displayName="DataRouter";var J=o.createContext(null);J.displayName="DataRouterState";var Y=o.createContext(!1),V=o.createContext({isTransitioning:!1});V.displayName="ViewTransition",o.createContext(/* @__PURE__ */new Map).displayName="Fetchers",o.createContext(null).displayName="Await";var K=o.createContext(null);K.displayName="Navigation";var X=o.createContext(null);X.displayName="Location";var q=o.createContext({outlet:null,matches:[],isDataRoute:!1});q.displayName="Route";var G=o.createContext(null);G.displayName="RouteError";var Q="REACT_ROUTER_ERROR";function Z(){return null!=o.useContext(X)}function ee(){return s(Z(),"useLocation() may be used only in the context of a <Router> component."),o.useContext(X).location}var te="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ne(e){o.useContext(K).static||o.useLayoutEffect(e)}function re(){let{isDataRoute:e}=o.useContext(q);return e?function(){let{router:e}=function(){let e=o.useContext(z);return s(e,me("useNavigate")),e}(),t=fe("useNavigate"),n=o.useRef(!1);return ne(()=>{n.current=!0}),o.useCallback(async(r,a={})=>{u(n.current,te),n.current&&("number"==typeof r?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...a}))},[e,t])}():function(){s(Z(),"useNavigate() may be used only in the context of a <Router> component.");let e=o.useContext(z),{basename:t,navigator:n}=o.useContext(K),{matches:r}=o.useContext(q),{pathname:a}=ee(),i=JSON.stringify(M(r)),l=o.useRef(!1);return ne(()=>{l.current=!0}),o.useCallback((r,o={})=>{if(u(l.current,te),!l.current)return;if("number"==typeof r)return void n.go(r);let s=_(r,JSON.parse(i),a,"path"===o.relative);null==e&&"/"!==t&&(s.pathname="/"===s.pathname?t:N([t,s.pathname])),(o.replace?n.replace:n.push)(s,o.state,o)},[t,n,i,a,e])}()}var ae=o.createContext(null);function oe(){let{matches:e}=o.useContext(q),t=e[e.length-1];return t?t.params:{}}function ie(e,{relative:t}={}){let{matches:n}=o.useContext(q),{pathname:r}=ee(),a=JSON.stringify(M(n));return o.useMemo(()=>_(e,JSON.parse(a),r,"path"===t),[e,a,r,t])}function le(e,t,n){s(Z(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:r}=o.useContext(K),{matches:a}=o.useContext(q),i=a[a.length-1],l=i?i.params:{},c=i?i.pathname:"/",h=i?i.pathnameBase:"/",p=i&&i.route;{let e=p&&p.path||"";ve(c,!p||e.endsWith("*")||e.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.\n\nPlease change the parent <Route path="${e}"> to <Route path="${"/"===e?"*":`${e}/*`}">.`)}let f,g=ee();if(t){let e="string"==typeof t?d(t):t;s("/"===h||e.pathname?.startsWith(h),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${h}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=g;let v=f.pathname||"/",y=v;if("/"!==h){let e=h.replace(/^\//,"").split("/");y="/"+v.replace(/^\//,"").split("/").slice(e.length).join("/")}let b=m(e,{pathname:y});u(p||null!=b,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),u(null==b||void 0!==b[b.length-1].route.element||void 0!==b[b.length-1].route.Component||void 0!==b[b.length-1].route.lazy,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let w=function(e,t=[],n){let r=n?.state;if(null==e){if(!r)return null;if(r.errors)e=r.matches;else{if(0!==t.length||r.initialized||!(r.matches.length>0))return null;e=r.matches}}let a=e,i=r?.errors;if(null!=i){let e=a.findIndex(e=>e.route.id&&void 0!==i?.[e.route.id]);s(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(i).join(",")}`),a=a.slice(0,Math.min(a.length,e+1))}let l=!1,u=-1;if(n&&r){l=r.renderFallback;for(let e=0;e<a.length;e++){let t=a[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(u=e),t.route.id){let{loaderData:e,errors:o}=r,i=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!o||void 0===o[t.route.id]);if(t.route.lazy||i){n.isStatic&&(l=!0),a=u>=0?a.slice(0,u+1):[a[0]];break}}}}let c=n?.onError,h=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:F(r.matches),errorInfo:t})}:void 0;return a.reduceRight((e,n,s)=>{let c,p=!1,d=null,m=null;r&&(c=i&&n.route.id?i[n.route.id]:void 0,d=n.route.errorElement||ue,l&&(u<0&&0===s?(ve("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),p=!0,m=null):u===s&&(p=!0,m=n.route.hydrateFallbackElement||null)));let f=t.concat(a.slice(0,s+1)),g=()=>{let t;return t=c?d:p?m:n.route.Component?/* @__PURE__ */o.createElement(n.route.Component,null):n.route.element?n.route.element:e,/* @__PURE__ */o.createElement(de,{match:n,routeContext:{outlet:e,matches:f,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===s)?/* @__PURE__ */o.createElement(ce,{location:r.location,revalidation:r.revalidation,component:d,error:c,children:g(),routeContext:{outlet:null,matches:f,isDataRoute:!0},onError:h}):g()},null)}(b&&b.map(e=>Object.assign({},e,{params:Object.assign({},l,e.params),pathname:N([h,r.encodeLocation?r.encodeLocation(e.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?h:N([h,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathnameBase])})),a,n);return t&&w?/* @__PURE__ */o.createElement(X.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...f},navigationType:"POP"}},w):w}function se(){let e=function(){let e=o.useContext(G),t=function(e){let t=o.useContext(J);return s(t,me(e)),t}("useRouteError"),n=fe("useRouteError");return void 0!==e?e:t.errors?.[n]}(),t=function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},i={padding:"2px 4px",backgroundColor:r},l=null;return console.error("Error handled by React Router default ErrorBoundary:",e),l=/* @__PURE__ */o.createElement(o.Fragment,null,/* @__PURE__ */o.createElement("p",null,"💿 Hey developer 👋"),/* @__PURE__ */o.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",/* @__PURE__ */o.createElement("code",{style:i},"ErrorBoundary")," or"," ",/* @__PURE__ */o.createElement("code",{style:i},"errorElement")," prop on your route.")),/* @__PURE__ */o.createElement(o.Fragment,null,/* @__PURE__ */o.createElement("h2",null,"Unexpected Application Error!"),/* @__PURE__ */o.createElement("h3",{style:{fontStyle:"italic"}},t),n?/* @__PURE__ */o.createElement("pre",{style:a},n):null,l)}var ue=/* @__PURE__ */o.createElement(se,null),ce=class extends o.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&"object"==typeof e&&e&&"digest"in e&&"string"==typeof e.digest){const t=function(e){if(e.startsWith(`${Q}:ROUTE_ERROR_RESPONSE:{`))try{let t=JSON.parse(e.slice(40));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText)return new U(t.status,t.statusText,t.data)}catch{}}(e.digest);t&&(e=t)}let t=void 0!==e?/* @__PURE__ */o.createElement(q.Provider,{value:this.props.routeContext},/* @__PURE__ */o.createElement(G.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?/* @__PURE__ */o.createElement(pe,{error:e},t):t}};ce.contextType=Y;var he=/* @__PURE__ */new WeakMap;function pe({children:e,error:t}){let{basename:n}=o.useContext(K);if("object"==typeof t&&t&&"digest"in t&&"string"==typeof t.digest){let e=function(e){if(e.startsWith(`${Q}:REDIRECT:{`))try{let t=JSON.parse(e.slice(28));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText&&"string"==typeof t.location&&"boolean"==typeof t.reloadDocument&&"boolean"==typeof t.replace)return t}catch{}}(t.digest);if(e){let r=he.get(t);if(r)throw r;let a=B(e.location,n);if(W&&!he.get(t)){if(!a.isExternal&&!e.reloadDocument){const n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw he.set(t,n),n}window.location.href=a.absoluteURL||a.to}/* @__PURE__ */
2
2
  return o.createElement("meta",{httpEquiv:"refresh",content:`0;url=${a.absoluteURL||a.to}`})}}return e}function de({routeContext:e,match:t,children:n}){let r=o.useContext(z);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),/* @__PURE__ */o.createElement(q.Provider,{value:e},n)}function me(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function fe(e){let t=function(e){let t=o.useContext(q);return s(t,me(e)),t}(e),n=t.matches[t.matches.length-1];return s(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}var ge={};function ve(e,t,n){t||ge[e]||(ge[e]=!0,u(!1,n))}function ye({basename:e,children:t,initialEntries:n,initialIndex:r,unstable_useTransitions:a}){let i=o.useRef();null==i.current&&(i.current=function(e={}){let t,{initialEntries:n=["/"],initialIndex:r,v5Compat:a=!1}=e;t=n.map((e,t)=>f(e,"string"==typeof e?null:e.state,0===t?"default":void 0,"string"==typeof e?void 0:e.unstable_mask));let o=c(null==r?t.length-1:r),i="POP",s=null;function c(e){return Math.min(Math.max(e,0),t.length-1)}function m(){return t[o]}function f(e,n=null,r,a){let o=h(t?m().pathname:"/",e,n,r,a);return u("/"===o.pathname.charAt(0),`relative pathnames are not supported in memory history: ${JSON.stringify(e)}`),o}function g(e){return"string"==typeof e?e:p(e)}return{get index(){return o},get action(){return i},get location(){return m()},createHref:g,createURL:e=>new URL(g(e),"http://localhost"),encodeLocation(e){let t="string"==typeof e?d(e):e;return{pathname:t.pathname||"",search:t.search||"",hash:t.hash||""}},push(e,n){i="PUSH";let r=l(e)?e:f(e,n);o+=1,t.splice(o,t.length,r),a&&s&&s({action:i,location:r,delta:1})},replace(e,n){i="REPLACE";let r=l(e)?e:f(e,n);t[o]=r,a&&s&&s({action:i,location:r,delta:0})},go(e){i="POP";let n=c(o+e),r=t[n];o=n,s&&s({action:i,location:r,delta:e})},listen:e=>(s=e,()=>{s=null})}}({initialEntries:n,initialIndex:r,v5Compat:!0}));let s=i.current,[c,m]=o.useState({action:s.action,location:s.location}),f=o.useCallback(e=>{!1===a?m(e):o.startTransition(()=>m(e))},[a]);return o.useLayoutEffect(()=>s.listen(f),[s,f]),/* @__PURE__ */o.createElement(Re,{basename:e,children:t,location:c.location,navigationType:c.action,navigator:s,unstable_useTransitions:a})}function be({to:e,replace:t,state:n,relative:r}){s(Z(),"<Navigate> may be used only in the context of a <Router> component.");let{static:a}=o.useContext(K);u(!a,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:i}=o.useContext(q),{pathname:l}=ee(),c=re(),h=_(e,M(i),l,"path"===r),p=JSON.stringify(h);return o.useEffect(()=>{c(JSON.parse(p),{replace:t,state:n,relative:r})},[c,p,r,t,n]),null}function we(e){return function(e){let t=o.useContext(q).outlet;return o.useMemo(()=>t&&/* @__PURE__ */o.createElement(ae.Provider,{value:e},t),[t,e])}(e.context)}function Ee(e){s(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function Re({basename:e="/",children:t=null,location:n,navigationType:r="POP",navigator:a,static:i=!1,unstable_useTransitions:l}){s(!Z(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let c=e.replace(/^\/*/,"/"),h=o.useMemo(()=>({basename:c,navigator:a,static:i,unstable_useTransitions:l,future:{}}),[c,a,i,l]);"string"==typeof n&&(n=d(n));let{pathname:p="/",search:m="",hash:f="",state:g=null,key:v="default",unstable_mask:y}=n,b=o.useMemo(()=>{let e=T(p,c);return null==e?null:{location:{pathname:e,search:m,hash:f,state:g,key:v,unstable_mask:y},navigationType:r}},[c,p,m,f,g,v,r,y]);return u(null!=b,`<Router basename="${c}"> is not able to match the URL "${p}${m}${f}" because it does not start with the basename, so the <Router> won't render anything.`),null==b?null:/* @__PURE__ */o.createElement(K.Provider,{value:h},/* @__PURE__ */o.createElement(X.Provider,{children:t,value:b}))}function xe({children:e,location:t}){return le(Ce(e),t)}function Ce(e,t=[]){let n=[];return o.Children.forEach(e,(e,r)=>{if(!o.isValidElement(e))return;let a=[...t,r];if(e.type===o.Fragment)return void n.push.apply(n,Ce(e.props.children,a));s(e.type===Ee,`[${"string"==typeof e.type?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),s(!e.props.index||!e.props.children,"An index route cannot have child routes.");let i={id:e.props.id||a.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:!0===e.props.hasErrorBoundary||null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(i.children=Ce(e.props.children,a)),n.push(i)}),n}o.useOptimistic,o.memo(function({routes:e,future:t,state:n,isStatic:r,onError:a}){return le(e,void 0,{state:n,isStatic:r,onError:a,future:t})});var Se="get",$e="application/x-www-form-urlencoded";function ke(e){return"undefined"!=typeof HTMLElement&&e instanceof HTMLElement}var Te=null,Pe=/* @__PURE__ */new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Le(e){return null==e||Pe.has(e)?e:(u(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${$e}"`),null)}function Oe(e,t){if(!1===e||null==e)throw new Error(t)}function Me(e){return null!=e&&(null==e.href?"preload"===e.rel&&"string"==typeof e.imageSrcSet&&"string"==typeof e.imageSizes:"string"==typeof e.rel&&"string"==typeof e.href)}function _e(e,t,n,r,a,o){let i=(e,t)=>!n[t]||e.route.id!==n[t].route.id,l=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith("*")&&n[t].params["*"]!==e.params["*"];return"assets"===o?t.filter((e,t)=>i(e,t)||l(e,t)):"data"===o?t.filter((t,o)=>{let s=r.routes[t.route.id];if(!s||!s.hasLoader)return!1;if(i(t,o)||l(t,o))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if("boolean"==typeof r)return r}return!0}):[]}function Ne(){let e=o.useContext(z);return Oe(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var je=o.createContext(void 0);function Ae(){let e=o.useContext(je);return Oe(e,"You must render this element inside a <HydratedRouter> element"),e}function De(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function Ue({page:e,...t}){let{router:n}=Ne(),r=o.useMemo(()=>m(n.routes,e,n.basename),[n.routes,e,n.basename]);return r?/* @__PURE__ */o.createElement(Fe,{page:e,matches:r,...t}):null}function Fe({page:e,matches:t,...n}){let r=ee(),{future:a,manifest:i,routeModules:l}=Ae(),{basename:s}=Ne(),{loaderData:u,matches:c}=function(){let e=o.useContext(J);return Oe(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}(),h=o.useMemo(()=>_e(e,t,c,i,r,"data"),[e,t,c,i,r]),p=o.useMemo(()=>_e(e,t,c,i,r,"assets"),[e,t,c,i,r]),d=o.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=/* @__PURE__ */new Set,o=!1;if(t.forEach(e=>{let t=i.routes[e.route.id];t&&t.hasLoader&&(!h.some(t=>t.route.id===e.route.id)&&e.route.id in u&&l[e.route.id]?.shouldRevalidate||t.hasClientLoader?o=!0:n.add(e.route.id))}),0===n.size)return[];let c=function(e,t,n,r){let a="string"==typeof e?new URL(e,"undefined"==typeof window?"server://singlefetch/":window.location.origin):e;return n?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${r}`:a.pathname=`${a.pathname}.${r}`:"/"===a.pathname?a.pathname=`_root.${r}`:t&&"/"===T(a.pathname,t)?a.pathname=`${t.replace(/\/$/,"")}/_root.${r}`:a.pathname=`${a.pathname.replace(/\/$/,"")}.${r}`,a}(e,s,a.unstable_trailingSlashAwareDataRequests,"data");return o&&n.size>0&&c.searchParams.set("_routes",t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(",")),[c.pathname+c.search]},[s,a.unstable_trailingSlashAwareDataRequests,u,r,i,h,t,e,l]),m=o.useMemo(()=>function(e,t,{includeHydrateFallback:n}={}){return r=e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let a=[r.module];return r.clientActionModule&&(a=a.concat(r.clientActionModule)),r.clientLoaderModule&&(a=a.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(a=a.concat(r.hydrateFallbackModule)),r.imports&&(a=a.concat(r.imports)),a}).flat(1),[...new Set(r)];var r}(p,i),[p,i]),f=function(e){let{manifest:t,routeModules:n}=Ae(),[r,a]=o.useState([]);return o.useEffect(()=>{let r=!1;return async function(e,t,n){return function(e,t){let n=/* @__PURE__ */new Set;return new Set(t),e.reduce((e,t)=>{let r=JSON.stringify(function(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}(t));return n.has(r)||(n.add(r),e.push({key:r,link:t})),e},[])}((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await async function(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(n){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(n),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(Me).filter(e=>"stylesheet"===e.rel||"preload"===e.rel).map(e=>"stylesheet"===e.rel?{...e,rel:"prefetch",as:"style"}:{...e,rel:"prefetch"}))}(e,t,n).then(e=>{r||a(e)}),()=>{r=!0}},[e,t,n]),r}(p);/* @__PURE__ */
3
3
  return o.createElement(o.Fragment,null,d.map(e=>/* @__PURE__ */o.createElement("link",{key:e,rel:"prefetch",as:"fetch",href:e,...n})),m.map(e=>/* @__PURE__ */o.createElement("link",{key:e,rel:"modulepreload",href:e,...n})),f.map(({key:e,link:t})=>/* @__PURE__ */o.createElement("link",{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function We(...e){return t=>{e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}}je.displayName="FrameworkContext";var Be="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;try{Be&&(window.__reactRouterVersion="7.13.1")}catch(Et){}function Ie({basename:e,children:t,unstable_useTransitions:n,window:r}){let a=o.useRef();null==a.current&&(a.current=function(e={}){return function(e,t,n,r={}){let{window:a=document.defaultView,v5Compat:o=!1}=r,u=a.history,d="POP",m=null,f=g();function g(){return(u.state||{idx:null}).idx}function v(){d="POP";let e=g(),t=null==e?null:e-f;f=e,m&&m({action:d,location:b.location,delta:t})}function y(e){return function(e,t=!1){let n="http://localhost";"undefined"!=typeof window&&(n="null"!==window.location.origin?window.location.origin:window.location.href),s(n,"No window.location.(origin|href) available to create URL");let r="string"==typeof e?e:p(e);return r=r.replace(/ $/,"%20"),!t&&r.startsWith("//")&&(r=n+r),new URL(r,n)}(e)}null==f&&(f=0,u.replaceState({...u.state,idx:f},""));let b={get action(){return d},get location(){return e(a,u)},listen(e){if(m)throw new Error("A history only accepts one active listener");return a.addEventListener(i,v),m=e,()=>{a.removeEventListener(i,v),m=null}},createHref:e=>t(a,e),createURL:y,encodeLocation(e){let t=y(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){d="PUSH";let r=l(e)?e:h(b.location,e,t);n&&n(r,e),f=g()+1;let i=c(r,f),s=b.createHref(r.unstable_mask||r);try{u.pushState(i,"",s)}catch(p){if(p instanceof DOMException&&"DataCloneError"===p.name)throw p;a.location.assign(s)}o&&m&&m({action:d,location:b.location,delta:1})},replace:function(e,t){d="REPLACE";let r=l(e)?e:h(b.location,e,t);n&&n(r,e),f=g();let a=c(r,f),i=b.createHref(r.unstable_mask||r);u.replaceState(a,"",i),o&&m&&m({action:d,location:b.location,delta:0})},go:e=>u.go(e)};return b}(function(e,t){let{pathname:n="/",search:r="",hash:a=""}=d(e.location.hash.substring(1));return n.startsWith("/")||n.startsWith(".")||(n="/"+n),h("",{pathname:n,search:r,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let n=e.document.querySelector("base"),r="";if(n&&n.getAttribute("href")){let t=e.location.href,n=t.indexOf("#");r=-1===n?t:t.slice(0,n)}return r+"#"+("string"==typeof t?t:p(t))},function(e,t){u("/"===e.pathname.charAt(0),`relative pathnames are not supported in hash history.push(${JSON.stringify(t)})`)},e)}({window:r,v5Compat:!0}));let m=a.current,[f,g]=o.useState({action:m.action,location:m.location}),v=o.useCallback(e=>{!1===n?g(e):o.startTransition(()=>g(e))},[n]);return o.useLayoutEffect(()=>m.listen(v),[m,v]),/* @__PURE__ */o.createElement(Re,{basename:e,children:t,location:f.location,navigationType:f.action,navigator:m,unstable_useTransitions:n})}var He=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ze=o.forwardRef(function({onClick:e,discover:t="render",prefetch:n="none",relative:r,reloadDocument:a,replace:i,unstable_mask:l,state:u,target:c,to:h,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v){let{basename:y,navigator:b,unstable_useTransitions:w}=o.useContext(K),E="string"==typeof h&&He.test(h),R=B(h,y),x=function(e,{relative:t}={}){s(Z(),"useHref() may be used only in the context of a <Router> component.");let{basename:n,navigator:r}=o.useContext(K),{hash:a,pathname:i,search:l}=ie(e,{relative:t}),u=i;return"/"!==n&&(u="/"===i?n:N([n,i])),r.createHref({pathname:u,search:l,hash:a})}(h=R.to,{relative:r}),C=ee(),S=null;if(l){let e=_(l,[],C.unstable_mask?C.unstable_mask.pathname:"/",!0);"/"!==y&&(e.pathname="/"===e.pathname?y:N([y,e.pathname])),S=b.createHref(e)}let[$,k,T]=function(e,t){let n=o.useContext(je),[r,a]=o.useState(!1),[i,l]=o.useState(!1),{onFocus:s,onBlur:u,onMouseEnter:c,onMouseLeave:h,onTouchStart:p}=t,d=o.useRef(null);o.useEffect(()=>{if("render"===e&&l(!0),"viewport"===e){let e=new IntersectionObserver(e=>{e.forEach(e=>{l(e.isIntersecting)})},{threshold:.5});return d.current&&e.observe(d.current),()=>{e.disconnect()}}},[e]),o.useEffect(()=>{if(r){let e=setTimeout(()=>{l(!0)},100);return()=>{clearTimeout(e)}}},[r]);let m=()=>{a(!0)},f=()=>{a(!1),l(!1)};return n?"intent"!==e?[i,d,{}]:[i,d,{onFocus:De(s,m),onBlur:De(u,f),onMouseEnter:De(c,m),onMouseLeave:De(h,f),onTouchStart:De(p,m)}]:[!1,d,{}]}(n,g),P=function(e,{target:t,replace:n,unstable_mask:r,state:a,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:u,unstable_useTransitions:c}={}){let h=re(),d=ee(),m=ie(e,{relative:l});return o.useCallback(f=>{if(function(e,t){return!(0!==e.button||t&&"_self"!==t||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(f,t)){f.preventDefault();let t=void 0!==n?n:p(d)===p(m),g=()=>h(e,{replace:t,unstable_mask:r,state:a,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:u});c?o.startTransition(()=>g()):g()}},[d,h,m,n,r,a,t,e,i,l,s,u,c])}(h,{replace:i,unstable_mask:l,state:u,target:c,preventScrollReset:d,relative:r,viewTransition:m,unstable_defaultShouldRevalidate:f,unstable_useTransitions:w}),L=!(R.isExternal||a),O=/* @__PURE__ */o.createElement("a",{...g,...T,href:(L?S:void 0)||R.absoluteURL||x,onClick:L?function(t){e&&e(t),t.defaultPrevented||P(t)}:e,ref:We(v,k),target:c,"data-discover":E||"render"!==t?void 0:"true"});return $&&!E?/* @__PURE__ */o.createElement(o.Fragment,null,O,/* @__PURE__ */o.createElement(Ue,{page:x})):O});ze.displayName="Link";var Je=o.forwardRef(function({"aria-current":e="page",caseSensitive:t=!1,className:n="",end:r=!1,style:a,to:i,viewTransition:l,children:u,...c},h){let p=ie(i,{relative:c.relative}),d=ee(),m=o.useContext(J),{navigator:f,basename:g}=o.useContext(K),v=null!=m&&function(e,{relative:t}={}){let n=o.useContext(V);s(null!=n,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Ve("useViewTransitionState"),a=ie(e,{relative:t});if(!n.isTransitioning)return!1;let i=T(n.currentLocation.pathname,r)||n.currentLocation.pathname,l=T(n.nextLocation.pathname,r)||n.nextLocation.pathname;return null!=$(a.pathname,l)||null!=$(a.pathname,i)}(p)&&!0===l,y=f.encodeLocation?f.encodeLocation(p).pathname:p.pathname,b=d.pathname,w=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;t||(b=b.toLowerCase(),w=w?w.toLowerCase():null,y=y.toLowerCase()),w&&g&&(w=T(w,g)||w);const E="/"!==y&&y.endsWith("/")?y.length-1:y.length;let R,x=b===y||!r&&b.startsWith(y)&&"/"===b.charAt(E),C=null!=w&&(w===y||!r&&w.startsWith(y)&&"/"===w.charAt(y.length)),S={isActive:x,isPending:C,isTransitioning:v},k=x?e:void 0;R="function"==typeof n?n(S):[n,x?"active":null,C?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let P="function"==typeof a?a(S):a;/* @__PURE__ */
4
4
  return o.createElement(ze,{...c,"aria-current":k,className:R,ref:h,style:P,to:i,viewTransition:l},"function"==typeof u?u(S):u)});Je.displayName="NavLink";var Ye=o.forwardRef(({discover:e="render",fetcherKey:t,navigate:n,reloadDocument:r,replace:a,state:i,method:l=Se,action:u,onSubmit:c,relative:h,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v)=>{let{unstable_useTransitions:y}=o.useContext(K),b=function(){let{router:e}=Ve("useSubmit"),{basename:t}=o.useContext(K),n=fe("useRouteId"),r=e.fetch,a=e.navigate;return o.useCallback(async(e,o={})=>{let{action:i,method:l,encType:s,formData:u,body:c}=function(e,t){let n,r,a,o,i;if(ke(l=e)&&"form"===l.tagName.toLowerCase()){let i=e.getAttribute("action");r=i?T(i,t):null,n=e.getAttribute("method")||Se,a=Le(e.getAttribute("enctype"))||$e,o=new FormData(e)}else if(function(e){return ke(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return ke(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let l=e.getAttribute("formaction")||i.getAttribute("action");if(r=l?T(l,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Se,a=Le(e.getAttribute("formenctype"))||Le(i.getAttribute("enctype"))||$e,o=new FormData(i,e),!function(){if(null===Te)try{new FormData(document.createElement("form"),0),Te=!1}catch(Et){Te=!0}return Te}()){let{name:t,type:n,value:r}=e;if("image"===n){let e=t?`${t}.`:"";o.append(`${e}x`,"0"),o.append(`${e}y`,"0")}else t&&o.append(t,r)}}else{if(ke(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Se,r=null,a=$e,i=e}var l;return o&&"text/plain"===a&&(i=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:i}}(e,t);!1===o.navigate?await r(o.fetcherKey||Xe(),n,o.action||i,{unstable_defaultShouldRevalidate:o.unstable_defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,formData:u,body:c,formMethod:o.method||l,formEncType:o.encType||s,flushSync:o.flushSync}):await a(o.action||i,{unstable_defaultShouldRevalidate:o.unstable_defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,formData:u,body:c,formMethod:o.method||l,formEncType:o.encType||s,replace:o.replace,state:o.state,fromRouteId:n,flushSync:o.flushSync,viewTransition:o.viewTransition})},[r,a,t,n])}(),w=function(e,{relative:t}={}){let{basename:n}=o.useContext(K),r=o.useContext(q);s(r,"useFormAction must be used inside a RouteContext");let[a]=r.matches.slice(-1),i={...ie(e||".",{relative:t})},l=ee();if(null==e){i.search=l.search;let e=new URLSearchParams(i.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();i.search=n?`?${n}`:""}}return e&&"."!==e||!a.route.index||(i.search=i.search?i.search.replace(/^\?/,"?index&"):"?index"),"/"!==n&&(i.pathname="/"===i.pathname?n:N([n,i.pathname])),p(i)}(u,{relative:h}),E="get"===l.toLowerCase()?"get":"post",R="string"==typeof u&&He.test(u);/* @__PURE__ */
@@ -1,3 +1,3 @@
1
- import{E as e,_t as l,a as t,pt as r,ut as n}from"./BJBX47Jb.js";import{p as a,t as s}from"./DQq5P5kz.js";var i=({event:i})=>{const o=a(),[c,u]=r(0),d=n(null),h=(i.contents??[]).filter(e=>e.thumbnailUrl||e.url);return l(()=>{if(!(h.length<=1))return d.current=setInterval(()=>{u(e=>(e+1)%h.length)},3e3),()=>{d.current&&clearInterval(d.current)}},[h.length]),/* @__PURE__ */t("div",{class:"w-44 overflow-hidden",children:[h.length>0?/* @__PURE__ */t("div",{class:"relative h-28 w-full overflow-hidden",children:[/* @__PURE__ */t(s,{src:h[c]?.thumbnailUrl||h[c]?.url,blurhash:h[c]?.blurHash,containerClassName:"size-full",imgClassName:"rounded-none"}),h.length>1&&/* @__PURE__ */t("div",{class:"absolute right-0 bottom-1.5 left-0 flex justify-center gap-1",children:h.map((e,l)=>/* @__PURE__ */t("button",{onClick:()=>u(l),class:"size-1.5 rounded-full transition-all "+(l===c?"bg-white":"bg-white/50"),"aria-label":`Go to image ${l+1}`},l))})]}):/* @__PURE__ */t("div",{class:"bg-muted flex h-28 w-full items-center justify-center",children:/* @__PURE__ */t("svg",{xmlns:"http://www.w3.org/2000/svg",class:"text-muted-foreground size-10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",children:/* @__PURE__ */t("path",{d:"M2.25 15.75l5.159-5.159a2.25 2.25 0 013.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 013.182 0l2.909 2.909M9 12.75a2.25 2.25 0 100-4.5 2.25 2.25 0 000 4.5z"})})}),/* @__PURE__ */t("div",{class:"",children:[
1
+ import{E as e,_t as l,a as t,pt as r,ut as n}from"./QPXxc9eb.js";import{p as a,t as s}from"./CNAEfadS.js";var i=({event:i})=>{const o=a(),[c,u]=r(0),d=n(null),h=(i.contents??[]).filter(e=>e.thumbnailUrl||e.url);return l(()=>{if(!(h.length<=1))return d.current=setInterval(()=>{u(e=>(e+1)%h.length)},3e3),()=>{d.current&&clearInterval(d.current)}},[h.length]),/* @__PURE__ */t("div",{class:"w-44 overflow-hidden",children:[h.length>0?/* @__PURE__ */t("div",{class:"relative h-28 w-full overflow-hidden",children:[/* @__PURE__ */t(s,{src:h[c]?.thumbnailUrl||h[c]?.url,blurhash:h[c]?.blurHash,containerClassName:"size-full",imgClassName:"rounded-none"}),h.length>1&&/* @__PURE__ */t("div",{class:"absolute right-0 bottom-1.5 left-0 flex justify-center gap-1",children:h.map((e,l)=>/* @__PURE__ */t("button",{onClick:()=>u(l),class:"size-1.5 rounded-full transition-all "+(l===c?"bg-white":"bg-white/50"),"aria-label":`Go to image ${l+1}`},l))})]}):/* @__PURE__ */t("div",{class:"bg-muted flex h-28 w-full items-center justify-center",children:/* @__PURE__ */t("svg",{xmlns:"http://www.w3.org/2000/svg",class:"text-muted-foreground size-10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",children:/* @__PURE__ */t("path",{d:"M2.25 15.75l5.159-5.159a2.25 2.25 0 013.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 013.182 0l2.909 2.909M9 12.75a2.25 2.25 0 100-4.5 2.25 2.25 0 000 4.5z"})})}),/* @__PURE__ */t("div",{class:"",children:[
2
2
  /* @__PURE__ */t("p",{class:"line-clamp-2 text-sm leading-tight font-medium",children:i.name}),i.location?.label&&/* @__PURE__ */t("p",{class:"text-foreground line-clamp-1 text-xs",children:i.location.label}),
3
3
  /* @__PURE__ */t("button",{onClick:()=>{o(e.GALLERY(i.slug))},class:"bg-background text-foreground mt-2 w-full rounded py-1 text-xs font-medium transition-opacity hover:opacity-90",children:"Explore"})]})]})};export{i as t};
@@ -1 +1 @@
1
- const e=require("./D4geS7mP.js"),t=require("./C9yNmSQ8.js");let n=require("react");n=e.__toESM(n);var r="popstate";function a(e){return"object"==typeof e&&null!=e&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function o(e,t){if(!1===e||null==e)throw new Error(t)}function i(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function l(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function s(e,t,n=null,r,a){return{pathname:"string"==typeof e?e:e.pathname,search:"",hash:"",..."string"==typeof t?c(t):t,state:n,key:t&&t.key||r||Math.random().toString(36).substring(2,10),unstable_mask:a}}function u({pathname:e="/",search:t="",hash:n=""}){return t&&"?"!==t&&(e+="?"===t.charAt(0)?t:"?"+t),n&&"#"!==n&&(e+="#"===n.charAt(0)?n:"#"+n),e}function c(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function h(e,t,n="/"){return function(e,t,n){let r=S(("string"==typeof t?c(t):t).pathname||"/",n);if(null==r)return null;let a=p(e);!function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))}(a);let o=null;for(let i=0;null==o&&i<a.length;++i){let e=C(r);o=E(a[i],e,false)}return o}(e,t,n)}function p(e,t=[],n=[],r="",a=!1){let i=(e,i,l=a,s)=>{let u={relativePath:void 0===s?e.path||"":s,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};if(u.relativePath.startsWith("/")){if(!u.relativePath.startsWith(r)&&l)return;o(u.relativePath.startsWith(r),`Absolute route path "${u.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),u.relativePath=u.relativePath.slice(r.length)}let c=L([r,u.relativePath]),h=n.concat(u);e.children&&e.children.length>0&&(o(!0!==e.index,`Index routes must not have child routes. Please remove all child routes from route path "${c}".`),p(e.children,t,h,c,l)),(null!=e.path||e.index)&&t.push({path:c,score:x(c,e.index),routesMeta:h})};return e.forEach((e,t)=>{if(""!==e.path&&e.path?.includes("?"))for(let n of d(e.path))i(e,t,!0,n);else i(e,t)}),t}function d(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(0===r.length)return a?[o,""]:[o];let i=d(r.join("/")),l=[];return l.push(...i.map(e=>""===e?o:[o,e].join("/"))),a&&l.push(...i),l.map(t=>e.startsWith("/")&&""===t?"/":t)}var m=/^:[\w-]+$/,f=3,g=2,v=1,y=10,b=-2,w=e=>"*"===e;function x(e,t){let n=e.split("/"),r=n.length;return n.some(w)&&(r+=b),t&&(r+=g),n.filter(e=>!w(e)).reduce((e,t)=>e+(m.test(t)?f:""===t?v:y),r)}function E(e,t,n=!1){let{routesMeta:r}=e,a={},o="/",i=[];for(let l=0;l<r.length;++l){let e=r[l],s=l===r.length-1,u="/"===o?t:t.slice(o.length)||"/",c=R({path:e.relativePath,caseSensitive:e.caseSensitive,end:s},u),h=e.route;if(!c&&s&&n&&!r[r.length-1].route.index&&(c=R({path:e.relativePath,caseSensitive:e.caseSensitive,end:!1},u)),!c)return null;Object.assign(a,c.params),i.push({params:a,pathname:L([o,c.pathname]),pathnameBase:M(L([o,c.pathnameBase])),route:h}),"/"!==c.pathnameBase&&(o=L([o,c.pathnameBase]))}return i}function R(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=function(e,t=!1,n=!0){i("*"===e||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,n,a,o)=>{if(r.push({paramName:t,isOptional:null!=n}),n){let t=o.charAt(a+e.length);return t&&"/"!==t?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(r.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),s=a.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if("*"===t){let e=s[r]||"";l=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const a=s[r];return e[t]=n&&!a?void 0:(a||"").replace(/%2F/g,"/"),e},{}),pathname:o,pathnameBase:l,pattern:e}}function C(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(t){return i(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function S(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}var P=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function $(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)}),n.length>1?n.join("/"):"/"}function k(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function O(e){let t=function(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function T(e,t,n,r=!1){let a;"string"==typeof e?a=c(e):(a={...e},o(!a.pathname||!a.pathname.includes("?"),k("?","pathname","search",a)),o(!a.pathname||!a.pathname.includes("#"),k("#","pathname","hash",a)),o(!a.search||!a.search.includes("#"),k("#","search","hash",a)));let i,l=""===e||""===a.pathname,s=l?"/":a.pathname;if(null==s)i=n;else{let e=t.length-1;if(!r&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}i=e>=0?t[e]:"/"}let u=function(e,t="/"){let n,{pathname:r,search:a="",hash:o=""}="string"==typeof e?c(e):e;return r?(r=r.replace(/\/\/+/g,"/"),n=r.startsWith("/")?$(r.substring(1),"/"):$(r,t)):n=t,{pathname:n,search:_(a),hash:N(o)}}(a,i),h=s&&"/"!==s&&s.endsWith("/"),p=(l||"."===s)&&n.endsWith("/");return u.pathname.endsWith("/")||!h&&!p||(u.pathname+="/"),u}var L=e=>e.join("/").replace(/\/\/+/g,"/"),M=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),_=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",N=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",j=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function A(e){return e.map(e=>e.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var D="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function U(e,t){let n=e;if("string"!=typeof n||!P.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,a=!1;if(D)try{let e=new URL(window.location.href),r=n.startsWith("//")?new URL(e.protocol+n):new URL(n),o=S(r.pathname,t);r.origin===e.origin&&null!=o?n=o+r.search+r.hash:a=!0}catch(o){i(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:a,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var F=["POST","PUT","PATCH","DELETE"],W=(new Set(F),["GET",...F]),I=(new Set(W),n.createContext(null));I.displayName="DataRouter";var B=n.createContext(null);B.displayName="DataRouterState";var H=n.createContext(!1),z=n.createContext({isTransitioning:!1});z.displayName="ViewTransition",n.createContext(new Map).displayName="Fetchers",n.createContext(null).displayName="Await";var J=n.createContext(null);J.displayName="Navigation";var Y=n.createContext(null);Y.displayName="Location";var V=n.createContext({outlet:null,matches:[],isDataRoute:!1});V.displayName="Route";var q=n.createContext(null);q.displayName="RouteError";var K="REACT_ROUTER_ERROR";function X(){return null!=n.useContext(Y)}function G(){return o(X(),"useLocation() may be used only in the context of a <Router> component."),n.useContext(Y).location}var Q="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Z(e){n.useContext(J).static||n.useLayoutEffect(e)}function ee(){let{isDataRoute:e}=n.useContext(V);return e?function(){let{router:e}=function(){let e=n.useContext(I);return o(e,he("useNavigate")),e}(),t=pe("useNavigate"),r=n.useRef(!1);return Z(()=>{r.current=!0}),n.useCallback(async(n,a={})=>{i(r.current,Q),r.current&&("number"==typeof n?await e.navigate(n):await e.navigate(n,{fromRouteId:t,...a}))},[e,t])}():function(){o(X(),"useNavigate() may be used only in the context of a <Router> component.");let e=n.useContext(I),{basename:t,navigator:r}=n.useContext(J),{matches:a}=n.useContext(V),{pathname:l}=G(),s=JSON.stringify(O(a)),u=n.useRef(!1);return Z(()=>{u.current=!0}),n.useCallback((n,a={})=>{if(i(u.current,Q),!u.current)return;if("number"==typeof n)return void r.go(n);let o=T(n,JSON.parse(s),l,"path"===a.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:L([t,o.pathname])),(a.replace?r.replace:r.push)(o,a.state,a)},[t,r,s,l,e])}()}var te=n.createContext(null);function ne(){let{matches:e}=n.useContext(V),t=e[e.length-1];return t?t.params:{}}function re(e,{relative:t}={}){let{matches:r}=n.useContext(V),{pathname:a}=G(),o=JSON.stringify(O(r));return n.useMemo(()=>T(e,JSON.parse(o),a,"path"===t),[e,o,a,t])}function ae(e,t,r){o(X(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=n.useContext(J),{matches:l}=n.useContext(V),s=l[l.length-1],u=s?s.params:{},p=s?s.pathname:"/",d=s?s.pathnameBase:"/",m=s&&s.route;{let e=m&&m.path||"";me(p,!m||e.endsWith("*")||e.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${p}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.\n\nPlease change the parent <Route path="${e}"> to <Route path="${"/"===e?"*":`${e}/*`}">.`)}let f,g=G();if(t){let e="string"==typeof t?c(t):t;o("/"===d||e.pathname?.startsWith(d),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${d}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=g;let v=f.pathname||"/",y=v;if("/"!==d){let e=d.replace(/^\//,"").split("/");y="/"+v.replace(/^\//,"").split("/").slice(e.length).join("/")}let b=h(e,{pathname:y});i(m||null!=b,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),i(null==b||void 0!==b[b.length-1].route.element||void 0!==b[b.length-1].route.Component||void 0!==b[b.length-1].route.lazy,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let w=function(e,t=[],r){let a=r?.state;if(null==e){if(!a)return null;if(a.errors)e=a.matches;else{if(0!==t.length||a.initialized||!(a.matches.length>0))return null;e=a.matches}}let i=e,l=a?.errors;if(null!=l){let e=i.findIndex(e=>e.route.id&&void 0!==l?.[e.route.id]);o(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(l).join(",")}`),i=i.slice(0,Math.min(i.length,e+1))}let s=!1,u=-1;if(r&&a){s=a.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(u=e),t.route.id){let{loaderData:e,errors:n}=a,o=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!n||void 0===n[t.route.id]);if(t.route.lazy||o){r.isStatic&&(s=!0),i=u>=0?i.slice(0,u+1):[i[0]];break}}}}let c=r?.onError,h=a&&c?(e,t)=>{c(e,{location:a.location,params:a.matches?.[0]?.params??{},unstable_pattern:A(a.matches),errorInfo:t})}:void 0;return i.reduceRight((e,r,o)=>{let c,p=!1,d=null,m=null;a&&(c=l&&r.route.id?l[r.route.id]:void 0,d=r.route.errorElement||ie,s&&(u<0&&0===o?(me("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),p=!0,m=null):u===o&&(p=!0,m=r.route.hydrateFallbackElement||null)));let f=t.concat(i.slice(0,o+1)),g=()=>{let t;return t=c?d:p?m:r.route.Component?n.createElement(r.route.Component,null):r.route.element?r.route.element:e,n.createElement(ce,{match:r,routeContext:{outlet:e,matches:f,isDataRoute:null!=a},children:t})};return a&&(r.route.ErrorBoundary||r.route.errorElement||0===o)?n.createElement(le,{location:a.location,revalidation:a.revalidation,component:d,error:c,children:g(),routeContext:{outlet:null,matches:f,isDataRoute:!0},onError:h}):g()},null)}(b&&b.map(e=>Object.assign({},e,{params:Object.assign({},u,e.params),pathname:L([d,a.encodeLocation?a.encodeLocation(e.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?d:L([d,a.encodeLocation?a.encodeLocation(e.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathnameBase])})),l,r);return t&&w?n.createElement(Y.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...f},navigationType:"POP"}},w):w}function oe(){let e=function(){let e=n.useContext(q),t=function(e){let t=n.useContext(B);return o(t,he(e)),t}("useRouteError"),r=pe("useRouteError");return void 0!==e?e:t.errors?.[r]}(),t=function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,a="rgba(200,200,200, 0.5)",i={padding:"0.5rem",backgroundColor:a},l={padding:"2px 4px",backgroundColor:a},s=null;return console.error("Error handled by React Router default ErrorBoundary:",e),s=n.createElement(n.Fragment,null,n.createElement("p",null,"💿 Hey developer 👋"),n.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",n.createElement("code",{style:l},"ErrorBoundary")," or"," ",n.createElement("code",{style:l},"errorElement")," prop on your route.")),n.createElement(n.Fragment,null,n.createElement("h2",null,"Unexpected Application Error!"),n.createElement("h3",{style:{fontStyle:"italic"}},t),r?n.createElement("pre",{style:i},r):null,s)}var ie=n.createElement(oe,null),le=class extends n.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&"object"==typeof e&&e&&"digest"in e&&"string"==typeof e.digest){const t=function(e){if(e.startsWith(`${K}:ROUTE_ERROR_RESPONSE:{`))try{let t=JSON.parse(e.slice(40));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText)return new j(t.status,t.statusText,t.data)}catch{}}(e.digest);t&&(e=t)}let t=void 0!==e?n.createElement(V.Provider,{value:this.props.routeContext},n.createElement(q.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?n.createElement(ue,{error:e},t):t}};le.contextType=H;var se=new WeakMap;function ue({children:e,error:t}){let{basename:r}=n.useContext(J);if("object"==typeof t&&t&&"digest"in t&&"string"==typeof t.digest){let e=function(e){if(e.startsWith(`${K}:REDIRECT:{`))try{let t=JSON.parse(e.slice(28));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText&&"string"==typeof t.location&&"boolean"==typeof t.reloadDocument&&"boolean"==typeof t.replace)return t}catch{}}(t.digest);if(e){let a=se.get(t);if(a)throw a;let o=U(e.location,r);if(D&&!se.get(t)){if(!o.isExternal&&!e.reloadDocument){const n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:e.replace}));throw se.set(t,n),n}window.location.href=o.absoluteURL||o.to}return n.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function ce({routeContext:e,match:t,children:r}){let a=n.useContext(I);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),n.createElement(V.Provider,{value:e},r)}function he(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function pe(e){let t=function(e){let t=n.useContext(V);return o(t,he(e)),t}(e),r=t.matches[t.matches.length-1];return o(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}var de={};function me(e,t,n){t||de[e]||(de[e]=!0,i(!1,n))}function fe({basename:e,children:t,initialEntries:r,initialIndex:o,unstable_useTransitions:l}){let h=n.useRef();null==h.current&&(h.current=function(e={}){let t,{initialEntries:n=["/"],initialIndex:r,v5Compat:o=!1}=e;t=n.map((e,t)=>f(e,"string"==typeof e?null:e.state,0===t?"default":void 0,"string"==typeof e?void 0:e.unstable_mask));let l=d(null==r?t.length-1:r),h="POP",p=null;function d(e){return Math.min(Math.max(e,0),t.length-1)}function m(){return t[l]}function f(e,n=null,r,a){let o=s(t?m().pathname:"/",e,n,r,a);return i("/"===o.pathname.charAt(0),`relative pathnames are not supported in memory history: ${JSON.stringify(e)}`),o}function g(e){return"string"==typeof e?e:u(e)}return{get index(){return l},get action(){return h},get location(){return m()},createHref:g,createURL:e=>new URL(g(e),"http://localhost"),encodeLocation(e){let t="string"==typeof e?c(e):e;return{pathname:t.pathname||"",search:t.search||"",hash:t.hash||""}},push(e,n){h="PUSH";let r=a(e)?e:f(e,n);l+=1,t.splice(l,t.length,r),o&&p&&p({action:h,location:r,delta:1})},replace(e,n){h="REPLACE";let r=a(e)?e:f(e,n);t[l]=r,o&&p&&p({action:h,location:r,delta:0})},go(e){h="POP";let n=d(l+e),r=t[n];l=n,p&&p({action:h,location:r,delta:e})},listen:e=>(p=e,()=>{p=null})}}({initialEntries:r,initialIndex:o,v5Compat:!0}));let p=h.current,[d,m]=n.useState({action:p.action,location:p.location}),f=n.useCallback(e=>{!1===l?m(e):n.startTransition(()=>m(e))},[l]);return n.useLayoutEffect(()=>p.listen(f),[p,f]),n.createElement(be,{basename:e,children:t,location:d.location,navigationType:d.action,navigator:p,unstable_useTransitions:l})}function ge({to:e,replace:t,state:r,relative:a}){o(X(),"<Navigate> may be used only in the context of a <Router> component.");let{static:l}=n.useContext(J);i(!l,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:s}=n.useContext(V),{pathname:u}=G(),c=ee(),h=T(e,O(s),u,"path"===a),p=JSON.stringify(h);return n.useEffect(()=>{c(JSON.parse(p),{replace:t,state:r,relative:a})},[c,p,a,t,r]),null}function ve(e){return function(e){let t=n.useContext(V).outlet;return n.useMemo(()=>t&&n.createElement(te.Provider,{value:e},t),[t,e])}(e.context)}function ye(e){o(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function be({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:l,static:s=!1,unstable_useTransitions:u}){o(!X(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let h=e.replace(/^\/*/,"/"),p=n.useMemo(()=>({basename:h,navigator:l,static:s,unstable_useTransitions:u,future:{}}),[h,l,s,u]);"string"==typeof r&&(r=c(r));let{pathname:d="/",search:m="",hash:f="",state:g=null,key:v="default",unstable_mask:y}=r,b=n.useMemo(()=>{let e=S(d,h);return null==e?null:{location:{pathname:e,search:m,hash:f,state:g,key:v,unstable_mask:y},navigationType:a}},[h,d,m,f,g,v,a,y]);return i(null!=b,`<Router basename="${h}"> is not able to match the URL "${d}${m}${f}" because it does not start with the basename, so the <Router> won't render anything.`),null==b?null:n.createElement(J.Provider,{value:p},n.createElement(Y.Provider,{children:t,value:b}))}function we({children:e,location:t}){return ae(xe(e),t)}function xe(e,t=[]){let r=[];return n.Children.forEach(e,(e,a)=>{if(!n.isValidElement(e))return;let i=[...t,a];if(e.type===n.Fragment)return void r.push.apply(r,xe(e.props.children,i));o(e.type===ye,`[${"string"==typeof e.type?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),o(!e.props.index||!e.props.children,"An index route cannot have child routes.");let l={id:e.props.id||i.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:!0===e.props.hasErrorBoundary||null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(l.children=xe(e.props.children,i)),r.push(l)}),r}n.useOptimistic,n.memo(function({routes:e,future:t,state:n,isStatic:r,onError:a}){return ae(e,void 0,{state:n,isStatic:r,onError:a,future:t})});var Ee="get",Re="application/x-www-form-urlencoded";function Ce(e){return"undefined"!=typeof HTMLElement&&e instanceof HTMLElement}var Se=null,Pe=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function $e(e){return null==e||Pe.has(e)?e:(i(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Re}"`),null)}function ke(e,t){if(!1===e||null==e)throw new Error(t)}function Oe(e){return null!=e&&(null==e.href?"preload"===e.rel&&"string"==typeof e.imageSrcSet&&"string"==typeof e.imageSizes:"string"==typeof e.rel&&"string"==typeof e.href)}function Te(e,t,n,r,a,o){let i=(e,t)=>!n[t]||e.route.id!==n[t].route.id,l=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith("*")&&n[t].params["*"]!==e.params["*"];return"assets"===o?t.filter((e,t)=>i(e,t)||l(e,t)):"data"===o?t.filter((t,o)=>{let s=r.routes[t.route.id];if(!s||!s.hasLoader)return!1;if(i(t,o)||l(t,o))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if("boolean"==typeof r)return r}return!0}):[]}function Le(){let e=n.useContext(I);return ke(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Me=n.createContext(void 0);function _e(){let e=n.useContext(Me);return ke(e,"You must render this element inside a <HydratedRouter> element"),e}function Ne(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function je({page:e,...t}){let{router:r}=Le(),a=n.useMemo(()=>h(r.routes,e,r.basename),[r.routes,e,r.basename]);return a?n.createElement(Ae,{page:e,matches:a,...t}):null}function Ae({page:e,matches:t,...r}){let a=G(),{future:o,manifest:i,routeModules:l}=_e(),{basename:s}=Le(),{loaderData:u,matches:c}=function(){let e=n.useContext(B);return ke(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}(),h=n.useMemo(()=>Te(e,t,c,i,a,"data"),[e,t,c,i,a]),p=n.useMemo(()=>Te(e,t,c,i,a,"assets"),[e,t,c,i,a]),d=n.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let n=new Set,r=!1;if(t.forEach(e=>{let t=i.routes[e.route.id];t&&t.hasLoader&&(!h.some(t=>t.route.id===e.route.id)&&e.route.id in u&&l[e.route.id]?.shouldRevalidate||t.hasClientLoader?r=!0:n.add(e.route.id))}),0===n.size)return[];let c=function(e,t,n,r){let a="string"==typeof e?new URL(e,"undefined"==typeof window?"server://singlefetch/":window.location.origin):e;return n?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${r}`:a.pathname=`${a.pathname}.${r}`:"/"===a.pathname?a.pathname=`_root.${r}`:t&&"/"===S(a.pathname,t)?a.pathname=`${t.replace(/\/$/,"")}/_root.${r}`:a.pathname=`${a.pathname.replace(/\/$/,"")}.${r}`,a}(e,s,o.unstable_trailingSlashAwareDataRequests,"data");return r&&n.size>0&&c.searchParams.set("_routes",t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(",")),[c.pathname+c.search]},[s,o.unstable_trailingSlashAwareDataRequests,u,a,i,h,t,e,l]),m=n.useMemo(()=>function(e,t,{includeHydrateFallback:n}={}){return r=e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let a=[r.module];return r.clientActionModule&&(a=a.concat(r.clientActionModule)),r.clientLoaderModule&&(a=a.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(a=a.concat(r.hydrateFallbackModule)),r.imports&&(a=a.concat(r.imports)),a}).flat(1),[...new Set(r)];var r}(p,i),[p,i]),f=function(e){let{manifest:t,routeModules:r}=_e(),[a,o]=n.useState([]);return n.useEffect(()=>{let n=!1;return async function(e,t,n){return function(e,t){let n=new Set;return new Set(t),e.reduce((e,t)=>{let r=JSON.stringify(function(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}(t));return n.has(r)||(n.add(r),e.push({key:r,link:t})),e},[])}((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await async function(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(n){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(n),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(Oe).filter(e=>"stylesheet"===e.rel||"preload"===e.rel).map(e=>"stylesheet"===e.rel?{...e,rel:"prefetch",as:"style"}:{...e,rel:"prefetch"}))}(e,t,r).then(e=>{n||o(e)}),()=>{n=!0}},[e,t,r]),a}(p);return n.createElement(n.Fragment,null,d.map(e=>n.createElement("link",{key:e,rel:"prefetch",as:"fetch",href:e,...r})),m.map(e=>n.createElement("link",{key:e,rel:"modulepreload",href:e,...r})),f.map(({key:e,link:t})=>n.createElement("link",{key:e,nonce:r.nonce,...t,crossOrigin:t.crossOrigin??r.crossOrigin})))}function De(...e){return t=>{e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}}Me.displayName="FrameworkContext";var Ue="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;try{Ue&&(window.__reactRouterVersion="7.13.1")}catch(yt){}function Fe({basename:e,children:t,unstable_useTransitions:h,window:p}){let d=n.useRef();null==d.current&&(d.current=function(e={}){return function(e,t,n,i={}){let{window:c=document.defaultView,v5Compat:h=!1}=i,p=c.history,d="POP",m=null,f=g();function g(){return(p.state||{idx:null}).idx}function v(){d="POP";let e=g(),t=null==e?null:e-f;f=e,m&&m({action:d,location:b.location,delta:t})}function y(e){return function(e,t=!1){let n="http://localhost";"undefined"!=typeof window&&(n="null"!==window.location.origin?window.location.origin:window.location.href),o(n,"No window.location.(origin|href) available to create URL");let r="string"==typeof e?e:u(e);return r=r.replace(/ $/,"%20"),!t&&r.startsWith("//")&&(r=n+r),new URL(r,n)}(e)}null==f&&(f=0,p.replaceState({...p.state,idx:f},""));let b={get action(){return d},get location(){return e(c,p)},listen(e){if(m)throw new Error("A history only accepts one active listener");return c.addEventListener(r,v),m=e,()=>{c.removeEventListener(r,v),m=null}},createHref:e=>t(c,e),createURL:y,encodeLocation(e){let t=y(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){d="PUSH";let r=a(e)?e:s(b.location,e,t);n&&n(r,e),f=g()+1;let o=l(r,f),i=b.createHref(r.unstable_mask||r);try{p.pushState(o,"",i)}catch(u){if(u instanceof DOMException&&"DataCloneError"===u.name)throw u;c.location.assign(i)}h&&m&&m({action:d,location:b.location,delta:1})},replace:function(e,t){d="REPLACE";let r=a(e)?e:s(b.location,e,t);n&&n(r,e),f=g();let o=l(r,f),i=b.createHref(r.unstable_mask||r);p.replaceState(o,"",i),h&&m&&m({action:d,location:b.location,delta:0})},go:e=>p.go(e)};return b}(function(e,t){let{pathname:n="/",search:r="",hash:a=""}=c(e.location.hash.substring(1));return n.startsWith("/")||n.startsWith(".")||(n="/"+n),s("",{pathname:n,search:r,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let n=e.document.querySelector("base"),r="";if(n&&n.getAttribute("href")){let t=e.location.href,n=t.indexOf("#");r=-1===n?t:t.slice(0,n)}return r+"#"+("string"==typeof t?t:u(t))},function(e,t){i("/"===e.pathname.charAt(0),`relative pathnames are not supported in hash history.push(${JSON.stringify(t)})`)},e)}({window:p,v5Compat:!0}));let m=d.current,[f,g]=n.useState({action:m.action,location:m.location}),v=n.useCallback(e=>{!1===h?g(e):n.startTransition(()=>g(e))},[h]);return n.useLayoutEffect(()=>m.listen(v),[m,v]),n.createElement(be,{basename:e,children:t,location:f.location,navigationType:f.action,navigator:m,unstable_useTransitions:h})}var We=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ie=n.forwardRef(function({onClick:e,discover:t="render",prefetch:r="none",relative:a,reloadDocument:i,replace:l,unstable_mask:s,state:c,target:h,to:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v){let{basename:y,navigator:b,unstable_useTransitions:w}=n.useContext(J),x="string"==typeof p&&We.test(p),E=U(p,y),R=function(e,{relative:t}={}){o(X(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=n.useContext(J),{hash:i,pathname:l,search:s}=re(e,{relative:t}),u=l;return"/"!==r&&(u="/"===l?r:L([r,l])),a.createHref({pathname:u,search:s,hash:i})}(p=E.to,{relative:a}),C=G(),S=null;if(s){let e=T(s,[],C.unstable_mask?C.unstable_mask.pathname:"/",!0);"/"!==y&&(e.pathname="/"===e.pathname?y:L([y,e.pathname])),S=b.createHref(e)}let[P,$,k]=function(e,t){let r=n.useContext(Me),[a,o]=n.useState(!1),[i,l]=n.useState(!1),{onFocus:s,onBlur:u,onMouseEnter:c,onMouseLeave:h,onTouchStart:p}=t,d=n.useRef(null);n.useEffect(()=>{if("render"===e&&l(!0),"viewport"===e){let e=new IntersectionObserver(e=>{e.forEach(e=>{l(e.isIntersecting)})},{threshold:.5});return d.current&&e.observe(d.current),()=>{e.disconnect()}}},[e]),n.useEffect(()=>{if(a){let e=setTimeout(()=>{l(!0)},100);return()=>{clearTimeout(e)}}},[a]);let m=()=>{o(!0)},f=()=>{o(!1),l(!1)};return r?"intent"!==e?[i,d,{}]:[i,d,{onFocus:Ne(s,m),onBlur:Ne(u,f),onMouseEnter:Ne(c,m),onMouseLeave:Ne(h,f),onTouchStart:Ne(p,m)}]:[!1,d,{}]}(r,g),O=function(e,{target:t,replace:r,unstable_mask:a,state:o,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:c,unstable_useTransitions:h}={}){let p=ee(),d=G(),m=re(e,{relative:l});return n.useCallback(f=>{if(function(e,t){return!(0!==e.button||t&&"_self"!==t||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(f,t)){f.preventDefault();let t=void 0!==r?r:u(d)===u(m),g=()=>p(e,{replace:t,unstable_mask:a,state:o,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:c});h?n.startTransition(()=>g()):g()}},[d,p,m,r,a,o,t,e,i,l,s,c,h])}(p,{replace:l,unstable_mask:s,state:c,target:h,preventScrollReset:d,relative:a,viewTransition:m,unstable_defaultShouldRevalidate:f,unstable_useTransitions:w}),M=!(E.isExternal||i),_=n.createElement("a",{...g,...k,href:(M?S:void 0)||E.absoluteURL||R,onClick:M?function(t){e&&e(t),t.defaultPrevented||O(t)}:e,ref:De(v,$),target:h,"data-discover":x||"render"!==t?void 0:"true"});return P&&!x?n.createElement(n.Fragment,null,_,n.createElement(je,{page:R})):_});Ie.displayName="Link";var Be=n.forwardRef(function({"aria-current":e="page",caseSensitive:t=!1,className:r="",end:a=!1,style:i,to:l,viewTransition:s,children:u,...c},h){let p=re(l,{relative:c.relative}),d=G(),m=n.useContext(B),{navigator:f,basename:g}=n.useContext(J),v=null!=m&&function(e,{relative:t}={}){let r=n.useContext(z);o(null!=r,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=ze("useViewTransitionState"),i=re(e,{relative:t});if(!r.isTransitioning)return!1;let l=S(r.currentLocation.pathname,a)||r.currentLocation.pathname,s=S(r.nextLocation.pathname,a)||r.nextLocation.pathname;return null!=R(i.pathname,s)||null!=R(i.pathname,l)}(p)&&!0===s,y=f.encodeLocation?f.encodeLocation(p).pathname:p.pathname,b=d.pathname,w=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;t||(b=b.toLowerCase(),w=w?w.toLowerCase():null,y=y.toLowerCase()),w&&g&&(w=S(w,g)||w);const x="/"!==y&&y.endsWith("/")?y.length-1:y.length;let E,C=b===y||!a&&b.startsWith(y)&&"/"===b.charAt(x),P=null!=w&&(w===y||!a&&w.startsWith(y)&&"/"===w.charAt(y.length)),$={isActive:C,isPending:P,isTransitioning:v},k=C?e:void 0;E="function"==typeof r?r($):[r,C?"active":null,P?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let O="function"==typeof i?i($):i;return n.createElement(Ie,{...c,"aria-current":k,className:E,ref:h,style:O,to:l,viewTransition:s},"function"==typeof u?u($):u)});Be.displayName="NavLink";var He=n.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:i,state:l,method:s=Ee,action:c,onSubmit:h,relative:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v)=>{let{unstable_useTransitions:y}=n.useContext(J),b=function(){let{router:e}=ze("useSubmit"),{basename:t}=n.useContext(J),r=pe("useRouteId"),a=e.fetch,o=e.navigate;return n.useCallback(async(e,n={})=>{let{action:i,method:l,encType:s,formData:u,body:c}=function(e,t){let n,r,a,o,i;if(Ce(l=e)&&"form"===l.tagName.toLowerCase()){let i=e.getAttribute("action");r=i?S(i,t):null,n=e.getAttribute("method")||Ee,a=$e(e.getAttribute("enctype"))||Re,o=new FormData(e)}else if(function(e){return Ce(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return Ce(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let l=e.getAttribute("formaction")||i.getAttribute("action");if(r=l?S(l,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Ee,a=$e(e.getAttribute("formenctype"))||$e(i.getAttribute("enctype"))||Re,o=new FormData(i,e),!function(){if(null===Se)try{new FormData(document.createElement("form"),0),Se=!1}catch(yt){Se=!0}return Se}()){let{name:t,type:n,value:r}=e;if("image"===n){let e=t?`${t}.`:"";o.append(`${e}x`,"0"),o.append(`${e}y`,"0")}else t&&o.append(t,r)}}else{if(Ce(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Ee,r=null,a=Re,i=e}var l;return o&&"text/plain"===a&&(i=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:i}}(e,t);!1===n.navigate?await a(n.fetcherKey||Ye(),r,n.action||i,{unstable_defaultShouldRevalidate:n.unstable_defaultShouldRevalidate,preventScrollReset:n.preventScrollReset,formData:u,body:c,formMethod:n.method||l,formEncType:n.encType||s,flushSync:n.flushSync}):await o(n.action||i,{unstable_defaultShouldRevalidate:n.unstable_defaultShouldRevalidate,preventScrollReset:n.preventScrollReset,formData:u,body:c,formMethod:n.method||l,formEncType:n.encType||s,replace:n.replace,state:n.state,fromRouteId:r,flushSync:n.flushSync,viewTransition:n.viewTransition})},[a,o,t,r])}(),w=function(e,{relative:t}={}){let{basename:r}=n.useContext(J),a=n.useContext(V);o(a,"useFormAction must be used inside a RouteContext");let[i]=a.matches.slice(-1),l={...re(e||".",{relative:t})},s=G();if(null==e){l.search=s.search;let e=new URLSearchParams(l.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();l.search=n?`?${n}`:""}}return e&&"."!==e||!i.route.index||(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),"/"!==r&&(l.pathname="/"===l.pathname?r:L([r,l.pathname])),u(l)}(c,{relative:p}),x="get"===s.toLowerCase()?"get":"post",E="string"==typeof c&&We.test(c);return n.createElement("form",{ref:v,method:x,action:w,onSubmit:a?h:e=>{if(h&&h(e),e.defaultPrevented)return;e.preventDefault();let a=e.nativeEvent.submitter,o=a?.getAttribute("formmethod")||s,u=()=>b(a||e.currentTarget,{fetcherKey:t,method:o,navigate:r,replace:i,state:l,relative:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f});y&&!1!==r?n.startTransition(()=>u()):u()},...g,"data-discover":E||"render"!==e?void 0:"true"})});function ze(e){let t=n.useContext(I);return o(t,function(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}(e)),t}He.displayName="Form";var Je=0,Ye=()=>`__${String(++Je)}__`,Ve=({as:e="div",className:n,threshold:r=.5,rootMargin:a="0px",triggerOnce:o,onChange:i,onClick:l,children:s})=>{const u=t.A(null),c=t.A(!1);return t.y(()=>{const e=u.current;if(!e)return;const t=new IntersectionObserver(e=>{e.forEach(e=>{o&&c.current||(e.isIntersecting&&(c.current=!0),i?.(e.isIntersecting))})},{threshold:r,rootMargin:a});return t.observe(e),()=>t.disconnect()},[r,a,i,o]),t.u(e,{ref:u,className:n,onClick:l,children:s})},qe=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","#","$","%","*","+",",","-",".",":",";","=","?","@","[","]","^","_","{","|","}","~"],Ke=e=>{let t=0;for(let n=0;n<e.length;n++){let r=e[n];t=83*t+qe.indexOf(r)}return t},Xe=e=>{let t=e/255;return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},Ge=e=>{let t=Math.max(0,Math.min(1,e));return t<=.0031308?Math.trunc(12.92*t*255+.5):Math.trunc(255*(1.055*Math.pow(t,.4166666666666667)-.055)+.5)},Qe=(e,t)=>(e=>e<0?-1:1)(e)*Math.pow(Math.abs(e),t),Ze=class extends Error{constructor(e){super(e),this.name="ValidationError",this.message=e}},et=e=>{let t=e>>8&255,n=255&e;return[Xe(e>>16),Xe(t),Xe(n)]},tt=(e,t)=>{let n=Math.floor(e/361),r=Math.floor(e/19)%19,a=e%19;return[Qe((n-9)/9,2)*t,Qe((r-9)/9,2)*t,Qe((a-9)/9,2)*t]},nt=(e,t,n,r)=>{(e=>{if(!e||e.length<6)throw new Ze("The blurhash string must be at least 6 characters");let t=Ke(e[0]),n=Math.floor(t/9)+1,r=t%9+1;if(e.length!==4+2*r*n)throw new Ze(`blurhash length mismatch: length is ${e.length} but it should be ${4+2*r*n}`)})(e),r|=1;let a=Ke(e[0]),o=Math.floor(a/9)+1,i=a%9+1,l=(Ke(e[1])+1)/166,s=new Array(i*o);for(let h=0;h<s.length;h++)s[h]=0===h?et(Ke(e.substring(2,6))):tt(Ke(e.substring(4+2*h,6+2*h)),l*r);let u=4*t,c=new Uint8ClampedArray(u*n);for(let h=0;h<n;h++)for(let e=0;e<t;e++){let r=0,a=0,l=0;for(let u=0;u<o;u++)for(let o=0;o<i;o++){let c=Math.cos(Math.PI*e*o/t)*Math.cos(Math.PI*h*u/n),p=s[o+u*i];r+=p[0]*c,a+=p[1]*c,l+=p[2]*c}let p=Ge(r),d=Ge(a),m=Ge(l);c[4*e+0+h*u]=p,c[4*e+1+h*u]=d,c[4*e+2+h*u]=m,c[4*e+3+h*u]=255}return c},rt=Object.defineProperty,at=Object.defineProperties,ot=Object.getOwnPropertyDescriptors,it=Object.getOwnPropertySymbols,lt=Object.prototype.hasOwnProperty,st=Object.prototype.propertyIsEnumerable,ut=(e,t,n)=>t in e?rt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ct=(e,t)=>{for(var n in t||(t={}))lt.call(t,n)&&ut(e,n,t[n]);if(it)for(var n of it(t))st.call(t,n)&&ut(e,n,t[n]);return e},ht=(e,t)=>at(e,ot(t)),pt=(e,t)=>{var n={};for(var r in e)lt.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&it)for(var r of it(e))t.indexOf(r)<0&&st.call(e,r)&&(n[r]=e[r]);return n},dt=class extends n.PureComponent{constructor(){super(...arguments),this.canvas=null,this.handleRef=e=>{this.canvas=e,this.draw()},this.draw=()=>{let{hash:e,height:t,punch:n,width:r}=this.props;if(this.canvas){let a=nt(e,r,t,n),o=this.canvas.getContext("2d"),i=o.createImageData(r,t);i.data.set(a),o.putImageData(i,0,0)}}}componentDidUpdate(){this.draw()}render(){let e=this.props,{hash:t,height:r,width:a}=e,o=pt(e,["hash","height","width"]);return n.createElement("canvas",ht(ct({},o),{height:r,width:a,ref:this.handleRef}))}};dt.defaultProps={height:128,width:128};var mt={position:"absolute",top:0,bottom:0,left:0,right:0,width:"100%",height:"100%"},ft=class extends n.PureComponent{componentDidUpdate(){if(this.props.resolutionX<=0)throw new Error("resolutionX must be larger than zero");if(this.props.resolutionY<=0)throw new Error("resolutionY must be larger than zero")}render(){let e=this.props,{hash:t,height:r,width:a,punch:o,resolutionX:i,resolutionY:l,style:s}=e,u=pt(e,["hash","height","width","punch","resolutionX","resolutionY","style"]);return n.createElement("div",ht(ct({},u),{style:ht(ct({display:"inline-block",height:r,width:a},s),{position:"relative"})}),n.createElement(dt,{hash:t,height:l,width:i,punch:o,style:mt}))}};ft.defaultProps={height:128,width:128,resolutionX:32,resolutionY:32};var gt=dt,vt=({src:e,alt:n,threshold:r=.1,rootMargin:a="200px 0px",blurhash:o,containerClassName:i="size-full",wrapperClassName:l,imgClassName:s="",sizeMode:u="cover",position:c="center",delayMs:h=100,delayTime:p,onClick:d})=>{const m=o&&o.length>=6?o:"LEHV6nWB2yk8pyo0adR*.7kCMdnj",[f,g]=t.d(!1),[v,y]=t.d(!1),[b,w]=t.d(!1),x=t.A(null),E="number"==typeof p?p:h,R=l??i;t.y(()=>{if(!f)return b?x.current=window.setTimeout(()=>{y(!0)},E):x.current&&(clearTimeout(x.current),x.current=null),()=>{x.current&&clearTimeout(x.current)}},[b,f,E]);const C=v&&b||f;return t.u(Ve,{as:"div",className:t.cn(R,"relative overflow-hidden"),threshold:r,rootMargin:a,onChange:e=>w(e),children:[!f&&t.u(gt,{className:"size-full blur-2xl",hash:m}),C&&e&&t.u("img",{alt:n,src:e,onLoad:()=>g(!0),className:t.cn("absolute top-0 left-0 size-full object-center transition-all duration-300",f?"scale-100 opacity-100":"scale-95 opacity-0","contain"===u?"object-contain":"object-cover","top"===c?"object-top":"bottom"===c?"object-bottom":"object-center",s),onClick:e=>d?.(e)})]})};Object.defineProperty(exports,"HashRouter",{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,"InView",{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,"LazyLoadImage",{enumerable:!0,get:function(){return vt}}),Object.defineProperty(exports,"Link",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"MemoryRouter",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"NavLink",{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,"Navigate",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"Outlet",{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,"Route",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"Routes",{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,"useLocation",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"useNavigate",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,"useParams",{enumerable:!0,get:function(){return ne}});
1
+ const e=require("./D4geS7mP.js"),t=require("./DV6DJ1Br.js");let n=require("react");n=e.__toESM(n);var r="popstate";function a(e){return"object"==typeof e&&null!=e&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function o(e,t){if(!1===e||null==e)throw new Error(t)}function i(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function l(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function s(e,t,n=null,r,a){return{pathname:"string"==typeof e?e:e.pathname,search:"",hash:"",..."string"==typeof t?c(t):t,state:n,key:t&&t.key||r||Math.random().toString(36).substring(2,10),unstable_mask:a}}function u({pathname:e="/",search:t="",hash:n=""}){return t&&"?"!==t&&(e+="?"===t.charAt(0)?t:"?"+t),n&&"#"!==n&&(e+="#"===n.charAt(0)?n:"#"+n),e}function c(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function h(e,t,n="/"){return function(e,t,n){let r=S(("string"==typeof t?c(t):t).pathname||"/",n);if(null==r)return null;let a=p(e);!function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))}(a);let o=null;for(let i=0;null==o&&i<a.length;++i){let e=C(r);o=E(a[i],e,false)}return o}(e,t,n)}function p(e,t=[],n=[],r="",a=!1){let i=(e,i,l=a,s)=>{let u={relativePath:void 0===s?e.path||"":s,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};if(u.relativePath.startsWith("/")){if(!u.relativePath.startsWith(r)&&l)return;o(u.relativePath.startsWith(r),`Absolute route path "${u.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),u.relativePath=u.relativePath.slice(r.length)}let c=L([r,u.relativePath]),h=n.concat(u);e.children&&e.children.length>0&&(o(!0!==e.index,`Index routes must not have child routes. Please remove all child routes from route path "${c}".`),p(e.children,t,h,c,l)),(null!=e.path||e.index)&&t.push({path:c,score:x(c,e.index),routesMeta:h})};return e.forEach((e,t)=>{if(""!==e.path&&e.path?.includes("?"))for(let n of d(e.path))i(e,t,!0,n);else i(e,t)}),t}function d(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(0===r.length)return a?[o,""]:[o];let i=d(r.join("/")),l=[];return l.push(...i.map(e=>""===e?o:[o,e].join("/"))),a&&l.push(...i),l.map(t=>e.startsWith("/")&&""===t?"/":t)}var m=/^:[\w-]+$/,f=3,g=2,v=1,y=10,b=-2,w=e=>"*"===e;function x(e,t){let n=e.split("/"),r=n.length;return n.some(w)&&(r+=b),t&&(r+=g),n.filter(e=>!w(e)).reduce((e,t)=>e+(m.test(t)?f:""===t?v:y),r)}function E(e,t,n=!1){let{routesMeta:r}=e,a={},o="/",i=[];for(let l=0;l<r.length;++l){let e=r[l],s=l===r.length-1,u="/"===o?t:t.slice(o.length)||"/",c=R({path:e.relativePath,caseSensitive:e.caseSensitive,end:s},u),h=e.route;if(!c&&s&&n&&!r[r.length-1].route.index&&(c=R({path:e.relativePath,caseSensitive:e.caseSensitive,end:!1},u)),!c)return null;Object.assign(a,c.params),i.push({params:a,pathname:L([o,c.pathname]),pathnameBase:M(L([o,c.pathnameBase])),route:h}),"/"!==c.pathnameBase&&(o=L([o,c.pathnameBase]))}return i}function R(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=function(e,t=!1,n=!0){i("*"===e||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,n,a,o)=>{if(r.push({paramName:t,isOptional:null!=n}),n){let t=o.charAt(a+e.length);return t&&"/"!==t?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(r.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),s=a.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if("*"===t){let e=s[r]||"";l=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const a=s[r];return e[t]=n&&!a?void 0:(a||"").replace(/%2F/g,"/"),e},{}),pathname:o,pathnameBase:l,pattern:e}}function C(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(t){return i(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function S(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}var P=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function $(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)}),n.length>1?n.join("/"):"/"}function k(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function O(e){let t=function(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function T(e,t,n,r=!1){let a;"string"==typeof e?a=c(e):(a={...e},o(!a.pathname||!a.pathname.includes("?"),k("?","pathname","search",a)),o(!a.pathname||!a.pathname.includes("#"),k("#","pathname","hash",a)),o(!a.search||!a.search.includes("#"),k("#","search","hash",a)));let i,l=""===e||""===a.pathname,s=l?"/":a.pathname;if(null==s)i=n;else{let e=t.length-1;if(!r&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}i=e>=0?t[e]:"/"}let u=function(e,t="/"){let n,{pathname:r,search:a="",hash:o=""}="string"==typeof e?c(e):e;return r?(r=r.replace(/\/\/+/g,"/"),n=r.startsWith("/")?$(r.substring(1),"/"):$(r,t)):n=t,{pathname:n,search:_(a),hash:N(o)}}(a,i),h=s&&"/"!==s&&s.endsWith("/"),p=(l||"."===s)&&n.endsWith("/");return u.pathname.endsWith("/")||!h&&!p||(u.pathname+="/"),u}var L=e=>e.join("/").replace(/\/\/+/g,"/"),M=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),_=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",N=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",j=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function A(e){return e.map(e=>e.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var D="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function U(e,t){let n=e;if("string"!=typeof n||!P.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,a=!1;if(D)try{let e=new URL(window.location.href),r=n.startsWith("//")?new URL(e.protocol+n):new URL(n),o=S(r.pathname,t);r.origin===e.origin&&null!=o?n=o+r.search+r.hash:a=!0}catch(o){i(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:a,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var F=["POST","PUT","PATCH","DELETE"],W=(new Set(F),["GET",...F]),I=(new Set(W),n.createContext(null));I.displayName="DataRouter";var B=n.createContext(null);B.displayName="DataRouterState";var H=n.createContext(!1),z=n.createContext({isTransitioning:!1});z.displayName="ViewTransition",n.createContext(new Map).displayName="Fetchers",n.createContext(null).displayName="Await";var J=n.createContext(null);J.displayName="Navigation";var Y=n.createContext(null);Y.displayName="Location";var V=n.createContext({outlet:null,matches:[],isDataRoute:!1});V.displayName="Route";var q=n.createContext(null);q.displayName="RouteError";var K="REACT_ROUTER_ERROR";function X(){return null!=n.useContext(Y)}function G(){return o(X(),"useLocation() may be used only in the context of a <Router> component."),n.useContext(Y).location}var Q="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Z(e){n.useContext(J).static||n.useLayoutEffect(e)}function ee(){let{isDataRoute:e}=n.useContext(V);return e?function(){let{router:e}=function(){let e=n.useContext(I);return o(e,he("useNavigate")),e}(),t=pe("useNavigate"),r=n.useRef(!1);return Z(()=>{r.current=!0}),n.useCallback(async(n,a={})=>{i(r.current,Q),r.current&&("number"==typeof n?await e.navigate(n):await e.navigate(n,{fromRouteId:t,...a}))},[e,t])}():function(){o(X(),"useNavigate() may be used only in the context of a <Router> component.");let e=n.useContext(I),{basename:t,navigator:r}=n.useContext(J),{matches:a}=n.useContext(V),{pathname:l}=G(),s=JSON.stringify(O(a)),u=n.useRef(!1);return Z(()=>{u.current=!0}),n.useCallback((n,a={})=>{if(i(u.current,Q),!u.current)return;if("number"==typeof n)return void r.go(n);let o=T(n,JSON.parse(s),l,"path"===a.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:L([t,o.pathname])),(a.replace?r.replace:r.push)(o,a.state,a)},[t,r,s,l,e])}()}var te=n.createContext(null);function ne(){let{matches:e}=n.useContext(V),t=e[e.length-1];return t?t.params:{}}function re(e,{relative:t}={}){let{matches:r}=n.useContext(V),{pathname:a}=G(),o=JSON.stringify(O(r));return n.useMemo(()=>T(e,JSON.parse(o),a,"path"===t),[e,o,a,t])}function ae(e,t,r){o(X(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=n.useContext(J),{matches:l}=n.useContext(V),s=l[l.length-1],u=s?s.params:{},p=s?s.pathname:"/",d=s?s.pathnameBase:"/",m=s&&s.route;{let e=m&&m.path||"";me(p,!m||e.endsWith("*")||e.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${p}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.\n\nPlease change the parent <Route path="${e}"> to <Route path="${"/"===e?"*":`${e}/*`}">.`)}let f,g=G();if(t){let e="string"==typeof t?c(t):t;o("/"===d||e.pathname?.startsWith(d),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${d}" but pathname "${e.pathname}" was given in the \`location\` prop.`),f=e}else f=g;let v=f.pathname||"/",y=v;if("/"!==d){let e=d.replace(/^\//,"").split("/");y="/"+v.replace(/^\//,"").split("/").slice(e.length).join("/")}let b=h(e,{pathname:y});i(m||null!=b,`No routes matched location "${f.pathname}${f.search}${f.hash}" `),i(null==b||void 0!==b[b.length-1].route.element||void 0!==b[b.length-1].route.Component||void 0!==b[b.length-1].route.lazy,`Matched leaf route at location "${f.pathname}${f.search}${f.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let w=function(e,t=[],r){let a=r?.state;if(null==e){if(!a)return null;if(a.errors)e=a.matches;else{if(0!==t.length||a.initialized||!(a.matches.length>0))return null;e=a.matches}}let i=e,l=a?.errors;if(null!=l){let e=i.findIndex(e=>e.route.id&&void 0!==l?.[e.route.id]);o(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(l).join(",")}`),i=i.slice(0,Math.min(i.length,e+1))}let s=!1,u=-1;if(r&&a){s=a.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(u=e),t.route.id){let{loaderData:e,errors:n}=a,o=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!n||void 0===n[t.route.id]);if(t.route.lazy||o){r.isStatic&&(s=!0),i=u>=0?i.slice(0,u+1):[i[0]];break}}}}let c=r?.onError,h=a&&c?(e,t)=>{c(e,{location:a.location,params:a.matches?.[0]?.params??{},unstable_pattern:A(a.matches),errorInfo:t})}:void 0;return i.reduceRight((e,r,o)=>{let c,p=!1,d=null,m=null;a&&(c=l&&r.route.id?l[r.route.id]:void 0,d=r.route.errorElement||ie,s&&(u<0&&0===o?(me("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),p=!0,m=null):u===o&&(p=!0,m=r.route.hydrateFallbackElement||null)));let f=t.concat(i.slice(0,o+1)),g=()=>{let t;return t=c?d:p?m:r.route.Component?n.createElement(r.route.Component,null):r.route.element?r.route.element:e,n.createElement(ce,{match:r,routeContext:{outlet:e,matches:f,isDataRoute:null!=a},children:t})};return a&&(r.route.ErrorBoundary||r.route.errorElement||0===o)?n.createElement(le,{location:a.location,revalidation:a.revalidation,component:d,error:c,children:g(),routeContext:{outlet:null,matches:f,isDataRoute:!0},onError:h}):g()},null)}(b&&b.map(e=>Object.assign({},e,{params:Object.assign({},u,e.params),pathname:L([d,a.encodeLocation?a.encodeLocation(e.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?d:L([d,a.encodeLocation?a.encodeLocation(e.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:e.pathnameBase])})),l,r);return t&&w?n.createElement(Y.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...f},navigationType:"POP"}},w):w}function oe(){let e=function(){let e=n.useContext(q),t=function(e){let t=n.useContext(B);return o(t,he(e)),t}("useRouteError"),r=pe("useRouteError");return void 0!==e?e:t.errors?.[r]}(),t=function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,a="rgba(200,200,200, 0.5)",i={padding:"0.5rem",backgroundColor:a},l={padding:"2px 4px",backgroundColor:a},s=null;return console.error("Error handled by React Router default ErrorBoundary:",e),s=n.createElement(n.Fragment,null,n.createElement("p",null,"💿 Hey developer 👋"),n.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",n.createElement("code",{style:l},"ErrorBoundary")," or"," ",n.createElement("code",{style:l},"errorElement")," prop on your route.")),n.createElement(n.Fragment,null,n.createElement("h2",null,"Unexpected Application Error!"),n.createElement("h3",{style:{fontStyle:"italic"}},t),r?n.createElement("pre",{style:i},r):null,s)}var ie=n.createElement(oe,null),le=class extends n.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&"object"==typeof e&&e&&"digest"in e&&"string"==typeof e.digest){const t=function(e){if(e.startsWith(`${K}:ROUTE_ERROR_RESPONSE:{`))try{let t=JSON.parse(e.slice(40));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText)return new j(t.status,t.statusText,t.data)}catch{}}(e.digest);t&&(e=t)}let t=void 0!==e?n.createElement(V.Provider,{value:this.props.routeContext},n.createElement(q.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?n.createElement(ue,{error:e},t):t}};le.contextType=H;var se=new WeakMap;function ue({children:e,error:t}){let{basename:r}=n.useContext(J);if("object"==typeof t&&t&&"digest"in t&&"string"==typeof t.digest){let e=function(e){if(e.startsWith(`${K}:REDIRECT:{`))try{let t=JSON.parse(e.slice(28));if("object"==typeof t&&t&&"number"==typeof t.status&&"string"==typeof t.statusText&&"string"==typeof t.location&&"boolean"==typeof t.reloadDocument&&"boolean"==typeof t.replace)return t}catch{}}(t.digest);if(e){let a=se.get(t);if(a)throw a;let o=U(e.location,r);if(D&&!se.get(t)){if(!o.isExternal&&!e.reloadDocument){const n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:e.replace}));throw se.set(t,n),n}window.location.href=o.absoluteURL||o.to}return n.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function ce({routeContext:e,match:t,children:r}){let a=n.useContext(I);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),n.createElement(V.Provider,{value:e},r)}function he(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function pe(e){let t=function(e){let t=n.useContext(V);return o(t,he(e)),t}(e),r=t.matches[t.matches.length-1];return o(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}var de={};function me(e,t,n){t||de[e]||(de[e]=!0,i(!1,n))}function fe({basename:e,children:t,initialEntries:r,initialIndex:o,unstable_useTransitions:l}){let h=n.useRef();null==h.current&&(h.current=function(e={}){let t,{initialEntries:n=["/"],initialIndex:r,v5Compat:o=!1}=e;t=n.map((e,t)=>f(e,"string"==typeof e?null:e.state,0===t?"default":void 0,"string"==typeof e?void 0:e.unstable_mask));let l=d(null==r?t.length-1:r),h="POP",p=null;function d(e){return Math.min(Math.max(e,0),t.length-1)}function m(){return t[l]}function f(e,n=null,r,a){let o=s(t?m().pathname:"/",e,n,r,a);return i("/"===o.pathname.charAt(0),`relative pathnames are not supported in memory history: ${JSON.stringify(e)}`),o}function g(e){return"string"==typeof e?e:u(e)}return{get index(){return l},get action(){return h},get location(){return m()},createHref:g,createURL:e=>new URL(g(e),"http://localhost"),encodeLocation(e){let t="string"==typeof e?c(e):e;return{pathname:t.pathname||"",search:t.search||"",hash:t.hash||""}},push(e,n){h="PUSH";let r=a(e)?e:f(e,n);l+=1,t.splice(l,t.length,r),o&&p&&p({action:h,location:r,delta:1})},replace(e,n){h="REPLACE";let r=a(e)?e:f(e,n);t[l]=r,o&&p&&p({action:h,location:r,delta:0})},go(e){h="POP";let n=d(l+e),r=t[n];l=n,p&&p({action:h,location:r,delta:e})},listen:e=>(p=e,()=>{p=null})}}({initialEntries:r,initialIndex:o,v5Compat:!0}));let p=h.current,[d,m]=n.useState({action:p.action,location:p.location}),f=n.useCallback(e=>{!1===l?m(e):n.startTransition(()=>m(e))},[l]);return n.useLayoutEffect(()=>p.listen(f),[p,f]),n.createElement(be,{basename:e,children:t,location:d.location,navigationType:d.action,navigator:p,unstable_useTransitions:l})}function ge({to:e,replace:t,state:r,relative:a}){o(X(),"<Navigate> may be used only in the context of a <Router> component.");let{static:l}=n.useContext(J);i(!l,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:s}=n.useContext(V),{pathname:u}=G(),c=ee(),h=T(e,O(s),u,"path"===a),p=JSON.stringify(h);return n.useEffect(()=>{c(JSON.parse(p),{replace:t,state:r,relative:a})},[c,p,a,t,r]),null}function ve(e){return function(e){let t=n.useContext(V).outlet;return n.useMemo(()=>t&&n.createElement(te.Provider,{value:e},t),[t,e])}(e.context)}function ye(e){o(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function be({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:l,static:s=!1,unstable_useTransitions:u}){o(!X(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let h=e.replace(/^\/*/,"/"),p=n.useMemo(()=>({basename:h,navigator:l,static:s,unstable_useTransitions:u,future:{}}),[h,l,s,u]);"string"==typeof r&&(r=c(r));let{pathname:d="/",search:m="",hash:f="",state:g=null,key:v="default",unstable_mask:y}=r,b=n.useMemo(()=>{let e=S(d,h);return null==e?null:{location:{pathname:e,search:m,hash:f,state:g,key:v,unstable_mask:y},navigationType:a}},[h,d,m,f,g,v,a,y]);return i(null!=b,`<Router basename="${h}"> is not able to match the URL "${d}${m}${f}" because it does not start with the basename, so the <Router> won't render anything.`),null==b?null:n.createElement(J.Provider,{value:p},n.createElement(Y.Provider,{children:t,value:b}))}function we({children:e,location:t}){return ae(xe(e),t)}function xe(e,t=[]){let r=[];return n.Children.forEach(e,(e,a)=>{if(!n.isValidElement(e))return;let i=[...t,a];if(e.type===n.Fragment)return void r.push.apply(r,xe(e.props.children,i));o(e.type===ye,`[${"string"==typeof e.type?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),o(!e.props.index||!e.props.children,"An index route cannot have child routes.");let l={id:e.props.id||i.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:!0===e.props.hasErrorBoundary||null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(l.children=xe(e.props.children,i)),r.push(l)}),r}n.useOptimistic,n.memo(function({routes:e,future:t,state:n,isStatic:r,onError:a}){return ae(e,void 0,{state:n,isStatic:r,onError:a,future:t})});var Ee="get",Re="application/x-www-form-urlencoded";function Ce(e){return"undefined"!=typeof HTMLElement&&e instanceof HTMLElement}var Se=null,Pe=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function $e(e){return null==e||Pe.has(e)?e:(i(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Re}"`),null)}function ke(e,t){if(!1===e||null==e)throw new Error(t)}function Oe(e){return null!=e&&(null==e.href?"preload"===e.rel&&"string"==typeof e.imageSrcSet&&"string"==typeof e.imageSizes:"string"==typeof e.rel&&"string"==typeof e.href)}function Te(e,t,n,r,a,o){let i=(e,t)=>!n[t]||e.route.id!==n[t].route.id,l=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith("*")&&n[t].params["*"]!==e.params["*"];return"assets"===o?t.filter((e,t)=>i(e,t)||l(e,t)):"data"===o?t.filter((t,o)=>{let s=r.routes[t.route.id];if(!s||!s.hasLoader)return!1;if(i(t,o)||l(t,o))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if("boolean"==typeof r)return r}return!0}):[]}function Le(){let e=n.useContext(I);return ke(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Me=n.createContext(void 0);function _e(){let e=n.useContext(Me);return ke(e,"You must render this element inside a <HydratedRouter> element"),e}function Ne(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function je({page:e,...t}){let{router:r}=Le(),a=n.useMemo(()=>h(r.routes,e,r.basename),[r.routes,e,r.basename]);return a?n.createElement(Ae,{page:e,matches:a,...t}):null}function Ae({page:e,matches:t,...r}){let a=G(),{future:o,manifest:i,routeModules:l}=_e(),{basename:s}=Le(),{loaderData:u,matches:c}=function(){let e=n.useContext(B);return ke(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}(),h=n.useMemo(()=>Te(e,t,c,i,a,"data"),[e,t,c,i,a]),p=n.useMemo(()=>Te(e,t,c,i,a,"assets"),[e,t,c,i,a]),d=n.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let n=new Set,r=!1;if(t.forEach(e=>{let t=i.routes[e.route.id];t&&t.hasLoader&&(!h.some(t=>t.route.id===e.route.id)&&e.route.id in u&&l[e.route.id]?.shouldRevalidate||t.hasClientLoader?r=!0:n.add(e.route.id))}),0===n.size)return[];let c=function(e,t,n,r){let a="string"==typeof e?new URL(e,"undefined"==typeof window?"server://singlefetch/":window.location.origin):e;return n?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${r}`:a.pathname=`${a.pathname}.${r}`:"/"===a.pathname?a.pathname=`_root.${r}`:t&&"/"===S(a.pathname,t)?a.pathname=`${t.replace(/\/$/,"")}/_root.${r}`:a.pathname=`${a.pathname.replace(/\/$/,"")}.${r}`,a}(e,s,o.unstable_trailingSlashAwareDataRequests,"data");return r&&n.size>0&&c.searchParams.set("_routes",t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(",")),[c.pathname+c.search]},[s,o.unstable_trailingSlashAwareDataRequests,u,a,i,h,t,e,l]),m=n.useMemo(()=>function(e,t,{includeHydrateFallback:n}={}){return r=e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let a=[r.module];return r.clientActionModule&&(a=a.concat(r.clientActionModule)),r.clientLoaderModule&&(a=a.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(a=a.concat(r.hydrateFallbackModule)),r.imports&&(a=a.concat(r.imports)),a}).flat(1),[...new Set(r)];var r}(p,i),[p,i]),f=function(e){let{manifest:t,routeModules:r}=_e(),[a,o]=n.useState([]);return n.useEffect(()=>{let n=!1;return async function(e,t,n){return function(e,t){let n=new Set;return new Set(t),e.reduce((e,t)=>{let r=JSON.stringify(function(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}(t));return n.has(r)||(n.add(r),e.push({key:r,link:t})),e},[])}((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await async function(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(n){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(n),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(Oe).filter(e=>"stylesheet"===e.rel||"preload"===e.rel).map(e=>"stylesheet"===e.rel?{...e,rel:"prefetch",as:"style"}:{...e,rel:"prefetch"}))}(e,t,r).then(e=>{n||o(e)}),()=>{n=!0}},[e,t,r]),a}(p);return n.createElement(n.Fragment,null,d.map(e=>n.createElement("link",{key:e,rel:"prefetch",as:"fetch",href:e,...r})),m.map(e=>n.createElement("link",{key:e,rel:"modulepreload",href:e,...r})),f.map(({key:e,link:t})=>n.createElement("link",{key:e,nonce:r.nonce,...t,crossOrigin:t.crossOrigin??r.crossOrigin})))}function De(...e){return t=>{e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}}Me.displayName="FrameworkContext";var Ue="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;try{Ue&&(window.__reactRouterVersion="7.13.1")}catch(yt){}function Fe({basename:e,children:t,unstable_useTransitions:h,window:p}){let d=n.useRef();null==d.current&&(d.current=function(e={}){return function(e,t,n,i={}){let{window:c=document.defaultView,v5Compat:h=!1}=i,p=c.history,d="POP",m=null,f=g();function g(){return(p.state||{idx:null}).idx}function v(){d="POP";let e=g(),t=null==e?null:e-f;f=e,m&&m({action:d,location:b.location,delta:t})}function y(e){return function(e,t=!1){let n="http://localhost";"undefined"!=typeof window&&(n="null"!==window.location.origin?window.location.origin:window.location.href),o(n,"No window.location.(origin|href) available to create URL");let r="string"==typeof e?e:u(e);return r=r.replace(/ $/,"%20"),!t&&r.startsWith("//")&&(r=n+r),new URL(r,n)}(e)}null==f&&(f=0,p.replaceState({...p.state,idx:f},""));let b={get action(){return d},get location(){return e(c,p)},listen(e){if(m)throw new Error("A history only accepts one active listener");return c.addEventListener(r,v),m=e,()=>{c.removeEventListener(r,v),m=null}},createHref:e=>t(c,e),createURL:y,encodeLocation(e){let t=y(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){d="PUSH";let r=a(e)?e:s(b.location,e,t);n&&n(r,e),f=g()+1;let o=l(r,f),i=b.createHref(r.unstable_mask||r);try{p.pushState(o,"",i)}catch(u){if(u instanceof DOMException&&"DataCloneError"===u.name)throw u;c.location.assign(i)}h&&m&&m({action:d,location:b.location,delta:1})},replace:function(e,t){d="REPLACE";let r=a(e)?e:s(b.location,e,t);n&&n(r,e),f=g();let o=l(r,f),i=b.createHref(r.unstable_mask||r);p.replaceState(o,"",i),h&&m&&m({action:d,location:b.location,delta:0})},go:e=>p.go(e)};return b}(function(e,t){let{pathname:n="/",search:r="",hash:a=""}=c(e.location.hash.substring(1));return n.startsWith("/")||n.startsWith(".")||(n="/"+n),s("",{pathname:n,search:r,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let n=e.document.querySelector("base"),r="";if(n&&n.getAttribute("href")){let t=e.location.href,n=t.indexOf("#");r=-1===n?t:t.slice(0,n)}return r+"#"+("string"==typeof t?t:u(t))},function(e,t){i("/"===e.pathname.charAt(0),`relative pathnames are not supported in hash history.push(${JSON.stringify(t)})`)},e)}({window:p,v5Compat:!0}));let m=d.current,[f,g]=n.useState({action:m.action,location:m.location}),v=n.useCallback(e=>{!1===h?g(e):n.startTransition(()=>g(e))},[h]);return n.useLayoutEffect(()=>m.listen(v),[m,v]),n.createElement(be,{basename:e,children:t,location:f.location,navigationType:f.action,navigator:m,unstable_useTransitions:h})}var We=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ie=n.forwardRef(function({onClick:e,discover:t="render",prefetch:r="none",relative:a,reloadDocument:i,replace:l,unstable_mask:s,state:c,target:h,to:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v){let{basename:y,navigator:b,unstable_useTransitions:w}=n.useContext(J),x="string"==typeof p&&We.test(p),E=U(p,y),R=function(e,{relative:t}={}){o(X(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=n.useContext(J),{hash:i,pathname:l,search:s}=re(e,{relative:t}),u=l;return"/"!==r&&(u="/"===l?r:L([r,l])),a.createHref({pathname:u,search:s,hash:i})}(p=E.to,{relative:a}),C=G(),S=null;if(s){let e=T(s,[],C.unstable_mask?C.unstable_mask.pathname:"/",!0);"/"!==y&&(e.pathname="/"===e.pathname?y:L([y,e.pathname])),S=b.createHref(e)}let[P,$,k]=function(e,t){let r=n.useContext(Me),[a,o]=n.useState(!1),[i,l]=n.useState(!1),{onFocus:s,onBlur:u,onMouseEnter:c,onMouseLeave:h,onTouchStart:p}=t,d=n.useRef(null);n.useEffect(()=>{if("render"===e&&l(!0),"viewport"===e){let e=new IntersectionObserver(e=>{e.forEach(e=>{l(e.isIntersecting)})},{threshold:.5});return d.current&&e.observe(d.current),()=>{e.disconnect()}}},[e]),n.useEffect(()=>{if(a){let e=setTimeout(()=>{l(!0)},100);return()=>{clearTimeout(e)}}},[a]);let m=()=>{o(!0)},f=()=>{o(!1),l(!1)};return r?"intent"!==e?[i,d,{}]:[i,d,{onFocus:Ne(s,m),onBlur:Ne(u,f),onMouseEnter:Ne(c,m),onMouseLeave:Ne(h,f),onTouchStart:Ne(p,m)}]:[!1,d,{}]}(r,g),O=function(e,{target:t,replace:r,unstable_mask:a,state:o,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:c,unstable_useTransitions:h}={}){let p=ee(),d=G(),m=re(e,{relative:l});return n.useCallback(f=>{if(function(e,t){return!(0!==e.button||t&&"_self"!==t||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(f,t)){f.preventDefault();let t=void 0!==r?r:u(d)===u(m),g=()=>p(e,{replace:t,unstable_mask:a,state:o,preventScrollReset:i,relative:l,viewTransition:s,unstable_defaultShouldRevalidate:c});h?n.startTransition(()=>g()):g()}},[d,p,m,r,a,o,t,e,i,l,s,c,h])}(p,{replace:l,unstable_mask:s,state:c,target:h,preventScrollReset:d,relative:a,viewTransition:m,unstable_defaultShouldRevalidate:f,unstable_useTransitions:w}),M=!(E.isExternal||i),_=n.createElement("a",{...g,...k,href:(M?S:void 0)||E.absoluteURL||R,onClick:M?function(t){e&&e(t),t.defaultPrevented||O(t)}:e,ref:De(v,$),target:h,"data-discover":x||"render"!==t?void 0:"true"});return P&&!x?n.createElement(n.Fragment,null,_,n.createElement(je,{page:R})):_});Ie.displayName="Link";var Be=n.forwardRef(function({"aria-current":e="page",caseSensitive:t=!1,className:r="",end:a=!1,style:i,to:l,viewTransition:s,children:u,...c},h){let p=re(l,{relative:c.relative}),d=G(),m=n.useContext(B),{navigator:f,basename:g}=n.useContext(J),v=null!=m&&function(e,{relative:t}={}){let r=n.useContext(z);o(null!=r,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=ze("useViewTransitionState"),i=re(e,{relative:t});if(!r.isTransitioning)return!1;let l=S(r.currentLocation.pathname,a)||r.currentLocation.pathname,s=S(r.nextLocation.pathname,a)||r.nextLocation.pathname;return null!=R(i.pathname,s)||null!=R(i.pathname,l)}(p)&&!0===s,y=f.encodeLocation?f.encodeLocation(p).pathname:p.pathname,b=d.pathname,w=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;t||(b=b.toLowerCase(),w=w?w.toLowerCase():null,y=y.toLowerCase()),w&&g&&(w=S(w,g)||w);const x="/"!==y&&y.endsWith("/")?y.length-1:y.length;let E,C=b===y||!a&&b.startsWith(y)&&"/"===b.charAt(x),P=null!=w&&(w===y||!a&&w.startsWith(y)&&"/"===w.charAt(y.length)),$={isActive:C,isPending:P,isTransitioning:v},k=C?e:void 0;E="function"==typeof r?r($):[r,C?"active":null,P?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let O="function"==typeof i?i($):i;return n.createElement(Ie,{...c,"aria-current":k,className:E,ref:h,style:O,to:l,viewTransition:s},"function"==typeof u?u($):u)});Be.displayName="NavLink";var He=n.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:i,state:l,method:s=Ee,action:c,onSubmit:h,relative:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f,...g},v)=>{let{unstable_useTransitions:y}=n.useContext(J),b=function(){let{router:e}=ze("useSubmit"),{basename:t}=n.useContext(J),r=pe("useRouteId"),a=e.fetch,o=e.navigate;return n.useCallback(async(e,n={})=>{let{action:i,method:l,encType:s,formData:u,body:c}=function(e,t){let n,r,a,o,i;if(Ce(l=e)&&"form"===l.tagName.toLowerCase()){let i=e.getAttribute("action");r=i?S(i,t):null,n=e.getAttribute("method")||Ee,a=$e(e.getAttribute("enctype"))||Re,o=new FormData(e)}else if(function(e){return Ce(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return Ce(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let l=e.getAttribute("formaction")||i.getAttribute("action");if(r=l?S(l,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Ee,a=$e(e.getAttribute("formenctype"))||$e(i.getAttribute("enctype"))||Re,o=new FormData(i,e),!function(){if(null===Se)try{new FormData(document.createElement("form"),0),Se=!1}catch(yt){Se=!0}return Se}()){let{name:t,type:n,value:r}=e;if("image"===n){let e=t?`${t}.`:"";o.append(`${e}x`,"0"),o.append(`${e}y`,"0")}else t&&o.append(t,r)}}else{if(Ce(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Ee,r=null,a=Re,i=e}var l;return o&&"text/plain"===a&&(i=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:i}}(e,t);!1===n.navigate?await a(n.fetcherKey||Ye(),r,n.action||i,{unstable_defaultShouldRevalidate:n.unstable_defaultShouldRevalidate,preventScrollReset:n.preventScrollReset,formData:u,body:c,formMethod:n.method||l,formEncType:n.encType||s,flushSync:n.flushSync}):await o(n.action||i,{unstable_defaultShouldRevalidate:n.unstable_defaultShouldRevalidate,preventScrollReset:n.preventScrollReset,formData:u,body:c,formMethod:n.method||l,formEncType:n.encType||s,replace:n.replace,state:n.state,fromRouteId:r,flushSync:n.flushSync,viewTransition:n.viewTransition})},[a,o,t,r])}(),w=function(e,{relative:t}={}){let{basename:r}=n.useContext(J),a=n.useContext(V);o(a,"useFormAction must be used inside a RouteContext");let[i]=a.matches.slice(-1),l={...re(e||".",{relative:t})},s=G();if(null==e){l.search=s.search;let e=new URLSearchParams(l.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();l.search=n?`?${n}`:""}}return e&&"."!==e||!i.route.index||(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),"/"!==r&&(l.pathname="/"===l.pathname?r:L([r,l.pathname])),u(l)}(c,{relative:p}),x="get"===s.toLowerCase()?"get":"post",E="string"==typeof c&&We.test(c);return n.createElement("form",{ref:v,method:x,action:w,onSubmit:a?h:e=>{if(h&&h(e),e.defaultPrevented)return;e.preventDefault();let a=e.nativeEvent.submitter,o=a?.getAttribute("formmethod")||s,u=()=>b(a||e.currentTarget,{fetcherKey:t,method:o,navigate:r,replace:i,state:l,relative:p,preventScrollReset:d,viewTransition:m,unstable_defaultShouldRevalidate:f});y&&!1!==r?n.startTransition(()=>u()):u()},...g,"data-discover":E||"render"!==e?void 0:"true"})});function ze(e){let t=n.useContext(I);return o(t,function(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}(e)),t}He.displayName="Form";var Je=0,Ye=()=>`__${String(++Je)}__`,Ve=({as:e="div",className:n,threshold:r=.5,rootMargin:a="0px",triggerOnce:o,onChange:i,onClick:l,children:s})=>{const u=t.A(null),c=t.A(!1);return t.y(()=>{const e=u.current;if(!e)return;const t=new IntersectionObserver(e=>{e.forEach(e=>{o&&c.current||(e.isIntersecting&&(c.current=!0),i?.(e.isIntersecting))})},{threshold:r,rootMargin:a});return t.observe(e),()=>t.disconnect()},[r,a,i,o]),t.u(e,{ref:u,className:n,onClick:l,children:s})},qe=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","#","$","%","*","+",",","-",".",":",";","=","?","@","[","]","^","_","{","|","}","~"],Ke=e=>{let t=0;for(let n=0;n<e.length;n++){let r=e[n];t=83*t+qe.indexOf(r)}return t},Xe=e=>{let t=e/255;return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},Ge=e=>{let t=Math.max(0,Math.min(1,e));return t<=.0031308?Math.trunc(12.92*t*255+.5):Math.trunc(255*(1.055*Math.pow(t,.4166666666666667)-.055)+.5)},Qe=(e,t)=>(e=>e<0?-1:1)(e)*Math.pow(Math.abs(e),t),Ze=class extends Error{constructor(e){super(e),this.name="ValidationError",this.message=e}},et=e=>{let t=e>>8&255,n=255&e;return[Xe(e>>16),Xe(t),Xe(n)]},tt=(e,t)=>{let n=Math.floor(e/361),r=Math.floor(e/19)%19,a=e%19;return[Qe((n-9)/9,2)*t,Qe((r-9)/9,2)*t,Qe((a-9)/9,2)*t]},nt=(e,t,n,r)=>{(e=>{if(!e||e.length<6)throw new Ze("The blurhash string must be at least 6 characters");let t=Ke(e[0]),n=Math.floor(t/9)+1,r=t%9+1;if(e.length!==4+2*r*n)throw new Ze(`blurhash length mismatch: length is ${e.length} but it should be ${4+2*r*n}`)})(e),r|=1;let a=Ke(e[0]),o=Math.floor(a/9)+1,i=a%9+1,l=(Ke(e[1])+1)/166,s=new Array(i*o);for(let h=0;h<s.length;h++)s[h]=0===h?et(Ke(e.substring(2,6))):tt(Ke(e.substring(4+2*h,6+2*h)),l*r);let u=4*t,c=new Uint8ClampedArray(u*n);for(let h=0;h<n;h++)for(let e=0;e<t;e++){let r=0,a=0,l=0;for(let u=0;u<o;u++)for(let o=0;o<i;o++){let c=Math.cos(Math.PI*e*o/t)*Math.cos(Math.PI*h*u/n),p=s[o+u*i];r+=p[0]*c,a+=p[1]*c,l+=p[2]*c}let p=Ge(r),d=Ge(a),m=Ge(l);c[4*e+0+h*u]=p,c[4*e+1+h*u]=d,c[4*e+2+h*u]=m,c[4*e+3+h*u]=255}return c},rt=Object.defineProperty,at=Object.defineProperties,ot=Object.getOwnPropertyDescriptors,it=Object.getOwnPropertySymbols,lt=Object.prototype.hasOwnProperty,st=Object.prototype.propertyIsEnumerable,ut=(e,t,n)=>t in e?rt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ct=(e,t)=>{for(var n in t||(t={}))lt.call(t,n)&&ut(e,n,t[n]);if(it)for(var n of it(t))st.call(t,n)&&ut(e,n,t[n]);return e},ht=(e,t)=>at(e,ot(t)),pt=(e,t)=>{var n={};for(var r in e)lt.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&it)for(var r of it(e))t.indexOf(r)<0&&st.call(e,r)&&(n[r]=e[r]);return n},dt=class extends n.PureComponent{constructor(){super(...arguments),this.canvas=null,this.handleRef=e=>{this.canvas=e,this.draw()},this.draw=()=>{let{hash:e,height:t,punch:n,width:r}=this.props;if(this.canvas){let a=nt(e,r,t,n),o=this.canvas.getContext("2d"),i=o.createImageData(r,t);i.data.set(a),o.putImageData(i,0,0)}}}componentDidUpdate(){this.draw()}render(){let e=this.props,{hash:t,height:r,width:a}=e,o=pt(e,["hash","height","width"]);return n.createElement("canvas",ht(ct({},o),{height:r,width:a,ref:this.handleRef}))}};dt.defaultProps={height:128,width:128};var mt={position:"absolute",top:0,bottom:0,left:0,right:0,width:"100%",height:"100%"},ft=class extends n.PureComponent{componentDidUpdate(){if(this.props.resolutionX<=0)throw new Error("resolutionX must be larger than zero");if(this.props.resolutionY<=0)throw new Error("resolutionY must be larger than zero")}render(){let e=this.props,{hash:t,height:r,width:a,punch:o,resolutionX:i,resolutionY:l,style:s}=e,u=pt(e,["hash","height","width","punch","resolutionX","resolutionY","style"]);return n.createElement("div",ht(ct({},u),{style:ht(ct({display:"inline-block",height:r,width:a},s),{position:"relative"})}),n.createElement(dt,{hash:t,height:l,width:i,punch:o,style:mt}))}};ft.defaultProps={height:128,width:128,resolutionX:32,resolutionY:32};var gt=dt,vt=({src:e,alt:n,threshold:r=.1,rootMargin:a="200px 0px",blurhash:o,containerClassName:i="size-full",wrapperClassName:l,imgClassName:s="",sizeMode:u="cover",position:c="center",delayMs:h=100,delayTime:p,onClick:d})=>{const m=o&&o.length>=6?o:"LEHV6nWB2yk8pyo0adR*.7kCMdnj",[f,g]=t.d(!1),[v,y]=t.d(!1),[b,w]=t.d(!1),x=t.A(null),E="number"==typeof p?p:h,R=l??i;t.y(()=>{if(!f)return b?x.current=window.setTimeout(()=>{y(!0)},E):x.current&&(clearTimeout(x.current),x.current=null),()=>{x.current&&clearTimeout(x.current)}},[b,f,E]);const C=v&&b||f;return t.u(Ve,{as:"div",className:t.cn(R,"relative overflow-hidden"),threshold:r,rootMargin:a,onChange:e=>w(e),children:[!f&&t.u(gt,{className:"size-full blur-2xl",hash:m}),C&&e&&t.u("img",{alt:n,src:e,onLoad:()=>g(!0),className:t.cn("absolute top-0 left-0 size-full object-center transition-all duration-300",f?"scale-100 opacity-100":"scale-95 opacity-0","contain"===u?"object-contain":"object-cover","top"===c?"object-top":"bottom"===c?"object-bottom":"object-center",s),onClick:e=>d?.(e)})]})};Object.defineProperty(exports,"HashRouter",{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,"InView",{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,"LazyLoadImage",{enumerable:!0,get:function(){return vt}}),Object.defineProperty(exports,"Link",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"MemoryRouter",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"NavLink",{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,"Navigate",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"Outlet",{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,"Route",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"Routes",{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,"useLocation",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"useNavigate",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,"useParams",{enumerable:!0,get:function(){return ne}});
@@ -1 +1 @@
1
- const e=require("./C9yNmSQ8.js"),n=require("./B-MiXFkt.js"),r=require("./DQRcftrx.js"),t=require("./r0vUVZIh.js");var o=new n.QueryClient,i=(n,i)=>{e.J(e.u(e.QueryClientProvider,{client:o,children:e.u(r.MemoryRouter,{children:e.u(t.EventMapPopup,{event:n})})}),i)};exports.default=({events:n,apiKey:r})=>{const t=e.A(null),o=e.A(null);return e.y(()=>{if(t.current&&!o.current)return(async()=>{const{setOptions:e,importLibrary:a}=await Promise.resolve().then(()=>require("./Bqe_56Ho.js"));e({key:r,v:"weekly"}),await Promise.all([a("maps"),a("marker")]);const s=window.google.maps;if(!t.current)return;const l=new s.Map(t.current,{mapId:"DEMO_MAP_ID",renderingType:"VECTOR",mapTypeId:"roadmap",center:{lat:20,lng:0},zoom:2,mapTypeControl:!1,streetViewControl:!1});s.event.addListenerOnce(l,"idle",()=>{l.getRenderingType?.()!==s.RenderingType?.VECTOR&&console.warn("Google Maps fell back to raster rendering; globe view is unavailable in raster mode.")}),o.current=l;const c=n.filter(e=>"number"==typeof e.location?.x&&"number"==typeof e.location?.y);if(0===c.length)return;const d=new s.LatLngBounds,u=new s.InfoWindow({maxWidth:200});for(const n of c){const e=n.location.x,r={lat:n.location.y,lng:e};d.extend(r);const t=document.createElement("div");t.style.cssText="\n width: 28px; height: 28px; cursor: pointer;\n background: var(--color-primary, #6366f1);\n border-radius: 50% 50% 50% 0;\n transform: rotate(-45deg);\n border: 2px solid white;\n box-shadow: 0 2px 8px rgba(0,0,0,0.3);\n ";const o=new s.marker.AdvancedMarkerElement({map:l,position:r,content:t});o.addEventListener("gmp-click",()=>{const e=document.createElement("div");i(n,e),u.setContent(e),u.open({anchor:o,map:l})})}l.fitBounds(d)})(),()=>{o.current=null}},[r]),e.u("div",{ref:t,class:"size-full"})};
1
+ const e=require("./DV6DJ1Br.js"),n=require("./BaT1o9UO.js"),r=require("./Cs3wia2w.js"),t=require("./Dljj3ToS.js");var o=new n.QueryClient,i=(n,i)=>{e.J(e.u(e.QueryClientProvider,{client:o,children:e.u(r.MemoryRouter,{children:e.u(t.EventMapPopup,{event:n})})}),i)};exports.default=({events:n,apiKey:r})=>{const t=e.A(null),o=e.A(null);return e.y(()=>{if(t.current&&!o.current)return(async()=>{const{setOptions:e,importLibrary:a}=await Promise.resolve().then(()=>require("./Bqe_56Ho.js"));e({key:r,v:"weekly"}),await Promise.all([a("maps"),a("marker")]);const s=window.google.maps;if(!t.current)return;const l=new s.Map(t.current,{mapId:"DEMO_MAP_ID",renderingType:"VECTOR",mapTypeId:"roadmap",center:{lat:20,lng:0},zoom:2,mapTypeControl:!1,streetViewControl:!1});s.event.addListenerOnce(l,"idle",()=>{l.getRenderingType?.()!==s.RenderingType?.VECTOR&&console.warn("Google Maps fell back to raster rendering; globe view is unavailable in raster mode.")}),o.current=l;const c=n.filter(e=>"number"==typeof e.location?.x&&"number"==typeof e.location?.y);if(0===c.length)return;const d=new s.LatLngBounds,u=new s.InfoWindow({maxWidth:200});for(const n of c){const e=n.location.x,r={lat:n.location.y,lng:e};d.extend(r);const t=document.createElement("div");t.style.cssText="\n width: 28px; height: 28px; cursor: pointer;\n background: var(--color-primary, #6366f1);\n border-radius: 50% 50% 50% 0;\n transform: rotate(-45deg);\n border: 2px solid white;\n box-shadow: 0 2px 8px rgba(0,0,0,0.3);\n ";const o=new s.marker.AdvancedMarkerElement({map:l,position:r,content:t});o.addEventListener("gmp-click",()=>{const e=document.createElement("div");i(n,e),u.setContent(e),u.open({anchor:o,map:l})})}l.fitBounds(d)})(),()=>{o.current=null}},[r]),e.u("div",{ref:t,class:"size-full"})};