@pg-boss/dashboard 0.0.1
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.
- package/README.md +393 -0
- package/bin/cli.js +21 -0
- package/build/client/assets/MenuTrigger-SThQHnlb.js +1 -0
- package/build/client/assets/_index-Bcg_-XSd.js +1 -0
- package/build/client/assets/badge-Cd8v3tl3.js +1 -0
- package/build/client/assets/button-BaXUPm8v.js +1 -0
- package/build/client/assets/chevron-down-xu6Uceu-.js +1 -0
- package/build/client/assets/chunk-JZWAC4HX-DC8i-F7r.js +26 -0
- package/build/client/assets/createLucideIcon-BXGwbdrh.js +1 -0
- package/build/client/assets/db-link-CtPnIrIr.js +1 -0
- package/build/client/assets/dialog-Bl8T588f.js +1 -0
- package/build/client/assets/entry.client-COnaNoy-.js +13 -0
- package/build/client/assets/error-card-DmoxS3Ao.js +1 -0
- package/build/client/assets/filter-select-mMC79WOR.js +1 -0
- package/build/client/assets/index-DhMkYPMa.js +1 -0
- package/build/client/assets/jobs-DtmTCs8I.js +1 -0
- package/build/client/assets/manifest-25954681.js +1 -0
- package/build/client/assets/pagination-NfhvsUbp.js +1 -0
- package/build/client/assets/queues._index-Cw1B49mg.js +1 -0
- package/build/client/assets/queues._name-D0cG_qDX.js +1 -0
- package/build/client/assets/queues._name.jobs._jobId-uJ3dfM3J.js +1 -0
- package/build/client/assets/queues.create-BGXDhJ3m.js +1 -0
- package/build/client/assets/root-DJRlbyb5.css +1 -0
- package/build/client/assets/root-NWrBrGvr.js +35 -0
- package/build/client/assets/schedules-DzgBEayh.js +1 -0
- package/build/client/assets/schedules._name._key-i42S9kw2.js +1 -0
- package/build/client/assets/schedules.new-Dt78KptL.js +1 -0
- package/build/client/assets/send-0eWgiWNl.js +1 -0
- package/build/client/assets/table-CTo0I5HG.js +1 -0
- package/build/client/assets/useOpenInteractionType-C_L8nZ_l.js +12 -0
- package/build/client/assets/warnings-BhQM6lFV.js +1 -0
- package/build/server/assets/config.server-CARiqCUE.js +54 -0
- package/build/server/assets/node-DzjK5u9i.js +176 -0
- package/build/server/assets/server-build.js +9684 -0
- package/build/server/index.js +26 -0
- package/package.json +85 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
function Ja(e,t){for(var r=0;r<t.length;r++){const n=t[r];if(typeof n!="string"&&!Array.isArray(n)){for(const a in n)if(a!=="default"&&!(a in e)){const o=Object.getOwnPropertyDescriptor(n,a);o&&Object.defineProperty(e,a,o.get?o:{enumerable:!0,get:()=>n[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function Ga(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Kt={exports:{}},it={};var Kr;function Ka(){if(Kr)return it;Kr=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function r(n,a,o){var i=null;if(o!==void 0&&(i=""+o),a.key!==void 0&&(i=""+a.key),"key"in a){o={};for(var l in a)l!=="key"&&(o[l]=a[l])}else o=a;return a=o.ref,{$$typeof:e,type:n,key:i,ref:a!==void 0?a:null,props:o}}return it.Fragment=t,it.jsx=r,it.jsxs=r,it}var Xr;function Xa(){return Xr||(Xr=1,Kt.exports=Ka()),Kt.exports}var ds=Xa(),Xt={exports:{}},W={};var qr;function qa(){if(qr)return W;qr=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),i=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),s=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),c=Symbol.for("react.activity"),p=Symbol.iterator;function g(m){return m===null||typeof m!="object"?null:(m=p&&m[p]||m["@@iterator"],typeof m=="function"?m:null)}var b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,E={};function L(m,x,$){this.props=m,this.context=x,this.refs=E,this.updater=$||b}L.prototype.isReactComponent={},L.prototype.setState=function(m,x){if(typeof m!="object"&&typeof m!="function"&&m!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,m,x,"setState")},L.prototype.forceUpdate=function(m){this.updater.enqueueForceUpdate(this,m,"forceUpdate")};function R(){}R.prototype=L.prototype;function T(m,x,$){this.props=m,this.context=x,this.refs=E,this.updater=$||b}var D=T.prototype=new R;D.constructor=T,S(D,L.prototype),D.isPureReactComponent=!0;var M=Array.isArray;function _(){}var v={H:null,A:null,T:null,S:null},O=Object.prototype.hasOwnProperty;function z(m,x,$){var N=$.ref;return{$$typeof:e,type:m,key:x,ref:N!==void 0?N:null,props:$}}function K(m,x){return z(m.type,x,m.props)}function V(m){return typeof m=="object"&&m!==null&&m.$$typeof===e}function ae(m){var x={"=":"=0",":":"=2"};return"$"+m.replace(/[=:]/g,function($){return x[$]})}var se=/\/+/g;function ne(m,x){return typeof m=="object"&&m!==null&&m.key!=null?ae(""+m.key):x.toString(36)}function Z(m){switch(m.status){case"fulfilled":return m.value;case"rejected":throw m.reason;default:switch(typeof m.status=="string"?m.then(_,_):(m.status="pending",m.then(function(x){m.status==="pending"&&(m.status="fulfilled",m.value=x)},function(x){m.status==="pending"&&(m.status="rejected",m.reason=x)})),m.status){case"fulfilled":return m.value;case"rejected":throw m.reason}}throw m}function G(m,x,$,N,B){var J=typeof m;(J==="undefined"||J==="boolean")&&(m=null);var te=!1;if(m===null)te=!0;else switch(J){case"bigint":case"string":case"number":te=!0;break;case"object":switch(m.$$typeof){case e:case t:te=!0;break;case h:return te=m._init,G(te(m._payload),x,$,N,B)}}if(te)return B=B(m),te=N===""?"."+ne(m,0):N,M(B)?($="",te!=null&&($=te.replace(se,"$&/")+"/"),G(B,x,$,"",function(Wt){return Wt})):B!=null&&(V(B)&&(B=K(B,$+(B.key==null||m&&m.key===B.key?"":(""+B.key).replace(se,"$&/")+"/")+te)),x.push(B)),1;te=0;var he=N===""?".":N+":";if(M(m))for(var me=0;me<m.length;me++)N=m[me],J=he+ne(N,me),te+=G(N,x,$,J,B);else if(me=g(m),typeof me=="function")for(m=me.call(m),me=0;!(N=m.next()).done;)N=N.value,J=he+ne(N,me++),te+=G(N,x,$,J,B);else if(J==="object"){if(typeof m.then=="function")return G(Z(m),x,$,N,B);throw x=String(m),Error("Objects are not valid as a React child (found: "+(x==="[object Object]"?"object with keys {"+Object.keys(m).join(", ")+"}":x)+"). If you meant to render a collection of children, use an array instead.")}return te}function ce(m,x,$){if(m==null)return m;var N=[],B=0;return G(m,N,"","",function(J){return x.call($,J,B++)}),N}function ee(m){if(m._status===-1){var x=m._result;x=x(),x.then(function($){(m._status===0||m._status===-1)&&(m._status=1,m._result=$)},function($){(m._status===0||m._status===-1)&&(m._status=2,m._result=$)}),m._status===-1&&(m._status=0,m._result=x)}if(m._status===1)return m._result.default;throw m._result}var le=typeof reportError=="function"?reportError:function(m){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var x=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof m=="object"&&m!==null&&typeof m.message=="string"?String(m.message):String(m),error:m});if(!window.dispatchEvent(x))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",m);return}console.error(m)},fe={map:ce,forEach:function(m,x,$){ce(m,function(){x.apply(this,arguments)},$)},count:function(m){var x=0;return ce(m,function(){x++}),x},toArray:function(m){return ce(m,function(x){return x})||[]},only:function(m){if(!V(m))throw Error("React.Children.only expected to receive a single React element child.");return m}};return W.Activity=c,W.Children=fe,W.Component=L,W.Fragment=r,W.Profiler=a,W.PureComponent=T,W.StrictMode=n,W.Suspense=s,W.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=v,W.__COMPILER_RUNTIME={__proto__:null,c:function(m){return v.H.useMemoCache(m)}},W.cache=function(m){return function(){return m.apply(null,arguments)}},W.cacheSignal=function(){return null},W.cloneElement=function(m,x,$){if(m==null)throw Error("The argument must be a React element, but you passed "+m+".");var N=S({},m.props),B=m.key;if(x!=null)for(J in x.key!==void 0&&(B=""+x.key),x)!O.call(x,J)||J==="key"||J==="__self"||J==="__source"||J==="ref"&&x.ref===void 0||(N[J]=x[J]);var J=arguments.length-2;if(J===1)N.children=$;else if(1<J){for(var te=Array(J),he=0;he<J;he++)te[he]=arguments[he+2];N.children=te}return z(m.type,B,N)},W.createContext=function(m){return m={$$typeof:i,_currentValue:m,_currentValue2:m,_threadCount:0,Provider:null,Consumer:null},m.Provider=m,m.Consumer={$$typeof:o,_context:m},m},W.createElement=function(m,x,$){var N,B={},J=null;if(x!=null)for(N in x.key!==void 0&&(J=""+x.key),x)O.call(x,N)&&N!=="key"&&N!=="__self"&&N!=="__source"&&(B[N]=x[N]);var te=arguments.length-2;if(te===1)B.children=$;else if(1<te){for(var he=Array(te),me=0;me<te;me++)he[me]=arguments[me+2];B.children=he}if(m&&m.defaultProps)for(N in te=m.defaultProps,te)B[N]===void 0&&(B[N]=te[N]);return z(m,J,B)},W.createRef=function(){return{current:null}},W.forwardRef=function(m){return{$$typeof:l,render:m}},W.isValidElement=V,W.lazy=function(m){return{$$typeof:h,_payload:{_status:-1,_result:m},_init:ee}},W.memo=function(m,x){return{$$typeof:u,type:m,compare:x===void 0?null:x}},W.startTransition=function(m){var x=v.T,$={};v.T=$;try{var N=m(),B=v.S;B!==null&&B($,N),typeof N=="object"&&N!==null&&typeof N.then=="function"&&N.then(_,le)}catch(J){le(J)}finally{x!==null&&$.types!==null&&(x.types=$.types),v.T=x}},W.unstable_useCacheRefresh=function(){return v.H.useCacheRefresh()},W.use=function(m){return v.H.use(m)},W.useActionState=function(m,x,$){return v.H.useActionState(m,x,$)},W.useCallback=function(m,x){return v.H.useCallback(m,x)},W.useContext=function(m){return v.H.useContext(m)},W.useDebugValue=function(){},W.useDeferredValue=function(m,x){return v.H.useDeferredValue(m,x)},W.useEffect=function(m,x){return v.H.useEffect(m,x)},W.useEffectEvent=function(m){return v.H.useEffectEvent(m)},W.useId=function(){return v.H.useId()},W.useImperativeHandle=function(m,x,$){return v.H.useImperativeHandle(m,x,$)},W.useInsertionEffect=function(m,x){return v.H.useInsertionEffect(m,x)},W.useLayoutEffect=function(m,x){return v.H.useLayoutEffect(m,x)},W.useMemo=function(m,x){return v.H.useMemo(m,x)},W.useOptimistic=function(m,x){return v.H.useOptimistic(m,x)},W.useReducer=function(m,x,$){return v.H.useReducer(m,x,$)},W.useRef=function(m){return v.H.useRef(m)},W.useState=function(m){return v.H.useState(m)},W.useSyncExternalStore=function(m,x,$){return v.H.useSyncExternalStore(m,x,$)},W.useTransition=function(){return v.H.useTransition()},W.version="19.2.4",W}var Qr;function Qa(){return Qr||(Qr=1,Xt.exports=qa()),Xt.exports}var d=Qa();const Za=Ga(d),eo=Ja({__proto__:null,default:Za},[d]);var Dn=e=>{throw TypeError(e)},to=(e,t,r)=>t.has(e)||Dn("Cannot "+r),qt=(e,t,r)=>(to(e,t,"read from private field"),r?r.call(e):t.get(e)),ro=(e,t,r)=>t.has(e)?Dn("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Zr="popstate";function fs(e={}){function t(n,a){let{pathname:o,search:i,hash:l}=n.location;return ft("",{pathname:o,search:i,hash:l},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function r(n,a){return typeof a=="string"?a:Me(a)}return ao(t,r,null,e)}function Y(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function oe(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function no(){return Math.random().toString(36).substring(2,10)}function en(e,t){return{usr:e.state,key:e.key,idx:t}}function ft(e,t,r=null,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?$e(t):t,state:r,key:t&&t.key||n||no()}}function Me({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function $e(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substring(n),e=e.substring(0,n)),e&&(t.pathname=e)}return t}function ao(e,t,r,n={}){let{window:a=document.defaultView,v5Compat:o=!1}=n,i=a.history,l="POP",s=null,u=h();u==null&&(u=0,i.replaceState({...i.state,idx:u},""));function h(){return(i.state||{idx:null}).idx}function c(){l="POP";let E=h(),L=E==null?null:E-u;u=E,s&&s({action:l,location:S.location,delta:L})}function p(E,L){l="PUSH";let R=ft(S.location,E,L);u=h()+1;let T=en(R,u),D=S.createHref(R);try{i.pushState(T,"",D)}catch(M){if(M instanceof DOMException&&M.name==="DataCloneError")throw M;a.location.assign(D)}o&&s&&s({action:l,location:S.location,delta:1})}function g(E,L){l="REPLACE";let R=ft(S.location,E,L);u=h();let T=en(R,u),D=S.createHref(R);i.replaceState(T,"",D),o&&s&&s({action:l,location:S.location,delta:0})}function b(E){return _n(E)}let S={get action(){return l},get location(){return e(a,i)},listen(E){if(s)throw new Error("A history only accepts one active listener");return a.addEventListener(Zr,c),s=E,()=>{a.removeEventListener(Zr,c),s=null}},createHref(E){return t(a,E)},createURL:b,encodeLocation(E){let L=b(E);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:p,replace:g,go(E){return i.go(E)}};return S}function _n(e,t=!1){let r="http://localhost";typeof window<"u"&&(r=window.location.origin!=="null"?window.location.origin:window.location.href),Y(r,"No window.location.(origin|href) available to create URL");let n=typeof e=="string"?e:Me(e);return n=n.replace(/ $/,"%20"),!t&&n.startsWith("//")&&(n=r+n),new URL(n,r)}var ut,tn=class{constructor(e){if(ro(this,ut,new Map),e)for(let[t,r]of e)this.set(t,r)}get(e){if(qt(this,ut).has(e))return qt(this,ut).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw new Error("No value found for context")}set(e,t){qt(this,ut).set(e,t)}};ut=new WeakMap;var oo=new Set(["lazy","caseSensitive","path","id","index","children"]);function io(e){return oo.has(e)}var lo=new Set(["lazy","caseSensitive","path","id","index","middleware","children"]);function so(e){return lo.has(e)}function uo(e){return e.index===!0}function ht(e,t,r=[],n={},a=!1){return e.map((o,i)=>{let l=[...r,String(i)],s=typeof o.id=="string"?o.id:l.join("-");if(Y(o.index!==!0||!o.children,"Cannot specify children on an index route"),Y(a||!n[s],`Found a route id collision on id "${s}". Route id's must be globally unique within Data Router usages`),uo(o)){let u={...o,id:s};return n[s]=rn(u,t(u)),u}else{let u={...o,id:s,children:void 0};return n[s]=rn(u,t(u)),o.children&&(u.children=ht(o.children,t,l,n,a)),u}})}function rn(e,t){return Object.assign(e,{...t,...typeof t.lazy=="object"&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function Ae(e,t,r="/"){return ct(e,t,r,!1)}function ct(e,t,r,n){let a=typeof t=="string"?$e(t):t,o=Ee(a.pathname||"/",r);if(o==null)return null;let i=In(e);co(i);let l=null;for(let s=0;l==null&&s<i.length;++s){let u=Ro(o);l=Eo(i[s],u,n)}return l}function On(e,t){let{route:r,pathname:n,params:a}=e;return{id:r.id,pathname:n,params:a,data:t[r.id],loaderData:t[r.id],handle:r.handle}}function In(e,t=[],r=[],n="",a=!1){let o=(i,l,s=a,u)=>{let h={relativePath:u===void 0?i.path||"":u,caseSensitive:i.caseSensitive===!0,childrenIndex:l,route:i};if(h.relativePath.startsWith("/")){if(!h.relativePath.startsWith(n)&&s)return;Y(h.relativePath.startsWith(n),`Absolute route path "${h.relativePath}" nested under path "${n}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),h.relativePath=h.relativePath.slice(n.length)}let c=Te([n,h.relativePath]),p=r.concat(h);i.children&&i.children.length>0&&(Y(i.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${c}".`),In(i.children,t,p,c,s)),!(i.path==null&&!i.index)&&t.push({path:c,score:go(c,i.index),routesMeta:p})};return e.forEach((i,l)=>{if(i.path===""||!i.path?.includes("?"))o(i,l);else for(let s of An(i.path))o(i,l,!0,s)}),t}function An(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,a=r.endsWith("?"),o=r.replace(/\?$/,"");if(n.length===0)return a?[o,""]:[o];let i=An(n.join("/")),l=[];return l.push(...i.map(s=>s===""?o:[o,s].join("/"))),a&&l.push(...i),l.map(s=>e.startsWith("/")&&s===""?"/":s)}function co(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:wo(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}var fo=/^:[\w-]+$/,ho=3,mo=2,po=1,yo=10,vo=-2,nn=e=>e==="*";function go(e,t){let r=e.split("/"),n=r.length;return r.some(nn)&&(n+=vo),t&&(n+=mo),r.filter(a=>!nn(a)).reduce((a,o)=>a+(fo.test(o)?ho:o===""?po:yo),n)}function wo(e,t){return e.length===t.length&&e.slice(0,-1).every((n,a)=>n===t[a])?e[e.length-1]-t[t.length-1]:0}function Eo(e,t,r=!1){let{routesMeta:n}=e,a={},o="/",i=[];for(let l=0;l<n.length;++l){let s=n[l],u=l===n.length-1,h=o==="/"?t:t.slice(o.length)||"/",c=Nt({path:s.relativePath,caseSensitive:s.caseSensitive,end:u},h),p=s.route;if(!c&&u&&r&&!n[n.length-1].route.index&&(c=Nt({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},h)),!c)return null;Object.assign(a,c.params),i.push({params:a,pathname:Te([o,c.pathname]),pathnameBase:xo(Te([o,c.pathnameBase])),route:p}),c.pathnameBase!=="/"&&(o=Te([o,c.pathnameBase]))}return i}function Nt(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=Nn(e.path,e.caseSensitive,e.end),a=t.match(r);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:n.reduce((u,{paramName:h,isOptional:c},p)=>{if(h==="*"){let b=l[p]||"";i=o.slice(0,o.length-b.length).replace(/(.)\/+$/,"$1")}const g=l[p];return c&&!g?u[h]=void 0:u[h]=(g||"").replace(/%2F/g,"/"),u},{}),pathname:o,pathnameBase:i,pattern:e}}function Nn(e,t=!1,r=!0){oe(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 n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,l,s)=>(n.push({paramName:l,isOptional:s!=null}),s?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(n.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}function Ro(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return oe(!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 Ee(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&n!=="/"?null:e.slice(r)||"/"}function bo({basename:e,pathname:t}){return t==="/"?e:Te([e,t])}var kn=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,wr=e=>kn.test(e);function So(e,t="/"){let{pathname:r,search:n="",hash:a=""}=typeof e=="string"?$e(e):e,o;return r?(r=r.replace(/\/\/+/g,"/"),r.startsWith("/")?o=an(r.substring(1),"/"):o=an(r,t)):o=t,{pathname:o,search:Co(n),hash:Lo(a)}}function an(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function Qt(e,t,r,n){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(n)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Fn(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function Er(e){let t=Fn(e);return t.map((r,n)=>n===t.length-1?r.pathname:r.pathnameBase)}function Rr(e,t,r,n=!1){let a;typeof e=="string"?a=$e(e):(a={...e},Y(!a.pathname||!a.pathname.includes("?"),Qt("?","pathname","search",a)),Y(!a.pathname||!a.pathname.includes("#"),Qt("#","pathname","hash",a)),Y(!a.search||!a.search.includes("#"),Qt("#","search","hash",a)));let o=e===""||a.pathname==="",i=o?"/":a.pathname,l;if(i==null)l=r;else{let c=t.length-1;if(!n&&i.startsWith("..")){let p=i.split("/");for(;p[0]==="..";)p.shift(),c-=1;a.pathname=p.join("/")}l=c>=0?t[c]:"/"}let s=So(a,l),u=i&&i!=="/"&&i.endsWith("/"),h=(o||i===".")&&r.endsWith("/");return!s.pathname.endsWith("/")&&(u||h)&&(s.pathname+="/"),s}var Te=e=>e.join("/").replace(/\/\/+/g,"/"),xo=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Co=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Lo=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,Po=class{constructor(e,t){this.type="DataWithResponseInit",this.data=e,this.init=t||null}};function To(e,t){return new Po(e,typeof t=="number"?{status:t}:t)}var Mo=(e,t=302)=>{let r=t;typeof r=="number"?r={status:r}:typeof r.status>"u"&&(r.status=302);let n=new Headers(r.headers);return n.set("Location",e),new Response(null,{...r,headers:n})},je=class{constructor(e,t,r,n=!1){this.status=e,this.statusText=t||"",this.internal=n,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function Ve(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function pt(e){return e.map(t=>t.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var $n=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function jn(e,t){let r=e;if(typeof r!="string"||!kn.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let n=r,a=!1;if($n)try{let o=new URL(window.location.href),i=r.startsWith("//")?new URL(o.protocol+r):new URL(r),l=Ee(i.pathname,t);i.origin===o.origin&&l!=null?r=l+i.search+i.hash:a=!0}catch{oe(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:n,isExternal:a,to:r}}var Fe=Symbol("Uninstrumented");function Do(e,t){let r={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(a=>a({id:t.id,index:t.index,path:t.path,instrument(o){let i=Object.keys(r);for(let l of i)o[l]&&r[l].push(o[l])}}));let n={};if(typeof t.lazy=="function"&&r.lazy.length>0){let a=Ze(r.lazy,t.lazy,()=>{});a&&(n.lazy=a)}if(typeof t.lazy=="object"){let a=t.lazy;["middleware","loader","action"].forEach(o=>{let i=a[o],l=r[`lazy.${o}`];if(typeof i=="function"&&l.length>0){let s=Ze(l,i,()=>{});s&&(n.lazy=Object.assign(n.lazy||{},{[o]:s}))}})}return["loader","action"].forEach(a=>{let o=t[a];if(typeof o=="function"&&r[a].length>0){let i=o[Fe]??o,l=Ze(r[a],i,(...s)=>on(s[0]));l&&(a==="loader"&&i.hydrate===!0&&(l.hydrate=!0),l[Fe]=i,n[a]=l)}}),t.middleware&&t.middleware.length>0&&r.middleware.length>0&&(n.middleware=t.middleware.map(a=>{let o=a[Fe]??a,i=Ze(r.middleware,o,(...l)=>on(l[0]));return i?(i[Fe]=o,i):a})),n}function _o(e,t){let r={navigate:[],fetch:[]};if(t.forEach(n=>n({instrument(a){let o=Object.keys(a);for(let i of o)a[i]&&r[i].push(a[i])}})),r.navigate.length>0){let n=e.navigate[Fe]??e.navigate,a=Ze(r.navigate,n,(...o)=>{let[i,l]=o;return{to:typeof i=="number"||typeof i=="string"?i:i?Me(i):".",...ln(e,l??{})}});a&&(a[Fe]=n,e.navigate=a)}if(r.fetch.length>0){let n=e.fetch[Fe]??e.fetch,a=Ze(r.fetch,n,(...o)=>{let[i,,l,s]=o;return{href:l??".",fetcherKey:i,...ln(e,s??{})}});a&&(a[Fe]=n,e.fetch=a)}return e}function Ze(e,t,r){return e.length===0?null:async(...n)=>{let a=await Un(e,r(...n),()=>t(...n),e.length-1);if(a.type==="error")throw a.value;return a.value}}async function Un(e,t,r,n){let a=e[n],o;if(a){let i,l=async()=>(i?console.error("You cannot call instrumented handlers more than once"):i=Un(e,t,r,n-1),o=await i,Y(o,"Expected a result"),o.type==="error"&&o.value instanceof Error?{status:"error",error:o.value}:{status:"success",error:void 0});try{await a(l,t)}catch(s){console.error("An instrumentation function threw an error:",s)}i||await l(),await i}else try{o={type:"success",value:await r()}}catch(i){o={type:"error",value:i}}return o||{type:"error",value:new Error("No result assigned in instrumentation chain.")}}function on(e){let{request:t,context:r,params:n,unstable_pattern:a}=e;return{request:Oo(t),params:{...n},unstable_pattern:a,context:Io(r)}}function ln(e,t){return{currentUrl:Me(e.state.location),..."formMethod"in t?{formMethod:t.formMethod}:{},..."formEncType"in t?{formEncType:t.formEncType}:{},..."formData"in t?{formData:t.formData}:{},..."body"in t?{body:t.body}:{}}}function Oo(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function Io(e){if(No(e)){let t={...e};return Object.freeze(t),t}else return{get:t=>e.get(t)}}var Ao=Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function No(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join("\0")===Ao}var Hn=["POST","PUT","PATCH","DELETE"],ko=new Set(Hn),Fo=["GET",...Hn],$o=new Set(Fo),zn=new Set([301,302,303,307,308]),jo=new Set([307,308]),Zt={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Bn={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},qe={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},Uo=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),Wn="remix-router-transitions",Yn=Symbol("ResetLoaderData");function hs(e){const t=e.window?e.window:typeof window<"u"?window:void 0,r=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u";Y(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let n=e.hydrationRouteProperties||[],a=e.mapRouteProperties||Uo,o=a;if(e.unstable_instrumentations){let f=e.unstable_instrumentations;o=y=>({...a(y),...Do(f.map(w=>w.route).filter(Boolean),y)})}let i={},l=ht(e.routes,o,void 0,i),s,u=e.basename||"/";u.startsWith("/")||(u=`/${u}`);let h=e.dataStrategy||Yo,c={...e.future},p=null,g=new Set,b=null,S=null,E=null,L=e.hydrationData!=null,R=Ae(l,e.history.location,u),T=!1,D=null,M;if(R==null&&!e.patchRoutesOnNavigation){let f=xe(404,{pathname:e.history.location.pathname}),{matches:y,route:w}=Ct(l);M=!0,R=y,D={[w.id]:f}}else if(R&&!e.hydrationData&&Et(R,l,e.history.location.pathname).active&&(R=null),R)if(R.some(f=>f.route.lazy))M=!1;else if(!R.some(f=>br(f.route)))M=!0;else{let f=e.hydrationData?e.hydrationData.loaderData:null,y=e.hydrationData?e.hydrationData.errors:null;if(y){let w=R.findIndex(C=>y[C.route.id]!==void 0);M=R.slice(0,w+1).every(C=>!lr(C.route,f,y))}else M=R.every(w=>!lr(w.route,f,y))}else{M=!1,R=[];let f=Et(null,l,e.history.location.pathname);f.active&&f.matches&&(T=!0,R=f.matches)}let _,v={historyAction:e.history.action,location:e.history.location,matches:R,initialized:M,navigation:Zt,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||D,fetchers:new Map,blockers:new Map},O="POP",z=null,K=!1,V,ae=!1,se=new Map,ne=null,Z=!1,G=!1,ce=new Set,ee=new Map,le=0,fe=-1,m=new Map,x=new Set,$=new Map,N=new Map,B=new Set,J=new Map,te,he=null;function me(){if(p=e.history.listen(({action:f,location:y,delta:w})=>{if(te){te(),te=void 0;return}oe(J.size===0||w!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let C=Wr({currentLocation:v.location,nextLocation:y,historyAction:f});if(C&&w!=null){let P=new Promise(k=>{te=k});e.history.go(w*-1),wt(C,{state:"blocked",location:y,proceed(){wt(C,{state:"proceeding",proceed:void 0,reset:void 0,location:y}),P.then(()=>e.history.go(w))},reset(){let k=new Map(v.blockers);k.set(C,qe),pe({blockers:k})}}),z?.resolve(),z=null;return}return Ue(f,y)}),r){ui(t,se);let f=()=>ci(t,se);t.addEventListener("pagehide",f),ne=()=>t.removeEventListener("pagehide",f)}return v.initialized||Ue("POP",v.location,{initialHydration:!0}),_}function Wt(){p&&p(),ne&&ne(),g.clear(),V&&V.abort(),v.fetchers.forEach((f,y)=>Vt(y)),v.blockers.forEach((f,y)=>Br(y))}function _a(f){return g.add(f),()=>g.delete(f)}function pe(f,y={}){f.matches&&(f.matches=f.matches.map(P=>{let k=i[P.route.id],I=P.route;return I.element!==k.element||I.errorElement!==k.errorElement||I.hydrateFallbackElement!==k.hydrateFallbackElement?{...P,route:k}:P})),v={...v,...f};let w=[],C=[];v.fetchers.forEach((P,k)=>{P.state==="idle"&&(B.has(k)?w.push(k):C.push(k))}),B.forEach(P=>{!v.fetchers.has(P)&&!ee.has(P)&&w.push(P)}),[...g].forEach(P=>P(v,{deletedFetchers:w,newErrors:f.errors??null,viewTransitionOpts:y.viewTransitionOpts,flushSync:y.flushSync===!0})),w.forEach(P=>Vt(P)),C.forEach(P=>v.fetchers.delete(P))}function Ke(f,y,{flushSync:w}={}){let C=v.actionData!=null&&v.navigation.formMethod!=null&&ve(v.navigation.formMethod)&&v.navigation.state==="loading"&&f.state?._isRedirect!==!0,P;y.actionData?Object.keys(y.actionData).length>0?P=y.actionData:P=null:C?P=v.actionData:P=null;let k=y.loaderData?vn(v.loaderData,y.loaderData,y.matches||[],y.errors):v.loaderData,I=v.blockers;I.size>0&&(I=new Map(I),I.forEach((H,j)=>I.set(j,qe)));let A=Z?!1:Vr(f,y.matches||v.matches),F=K===!0||v.navigation.formMethod!=null&&ve(v.navigation.formMethod)&&f.state?._isRedirect!==!0;s&&(l=s,s=void 0),Z||O==="POP"||(O==="PUSH"?e.history.push(f,f.state):O==="REPLACE"&&e.history.replace(f,f.state));let U;if(O==="POP"){let H=se.get(v.location.pathname);H&&H.has(f.pathname)?U={currentLocation:v.location,nextLocation:f}:se.has(f.pathname)&&(U={currentLocation:f,nextLocation:v.location})}else if(ae){let H=se.get(v.location.pathname);H?H.add(f.pathname):(H=new Set([f.pathname]),se.set(v.location.pathname,H)),U={currentLocation:v.location,nextLocation:f}}pe({...y,actionData:P,loaderData:k,historyAction:O,location:f,initialized:!0,navigation:Zt,revalidation:"idle",restoreScrollPosition:A,preventScrollReset:F,blockers:I},{viewTransitionOpts:U,flushSync:w===!0}),O="POP",K=!1,ae=!1,Z=!1,G=!1,z?.resolve(),z=null,he?.resolve(),he=null}async function kr(f,y){if(z?.resolve(),z=null,typeof f=="number"){z||(z=En());let Q=z.promise;return e.history.go(f),Q}let w=ir(v.location,v.matches,u,f,y?.fromRouteId,y?.relative),{path:C,submission:P,error:k}=sn(!1,w,y),I=v.location,A=ft(v.location,C,y&&y.state);A={...A,...e.history.encodeLocation(A)};let F=y&&y.replace!=null?y.replace:void 0,U="PUSH";F===!0?U="REPLACE":F===!1||P!=null&&ve(P.formMethod)&&P.formAction===v.location.pathname+v.location.search&&(U="REPLACE");let H=y&&"preventScrollReset"in y?y.preventScrollReset===!0:void 0,j=(y&&y.flushSync)===!0,q=Wr({currentLocation:I,nextLocation:A,historyAction:U});if(q){wt(q,{state:"blocked",location:A,proceed(){wt(q,{state:"proceeding",proceed:void 0,reset:void 0,location:A}),kr(f,y)},reset(){let Q=new Map(v.blockers);Q.set(q,qe),pe({blockers:Q})}});return}await Ue(U,A,{submission:P,pendingError:k,preventScrollReset:H,replace:y&&y.replace,enableViewTransition:y&&y.viewTransition,flushSync:j,callSiteDefaultShouldRevalidate:y&&y.unstable_defaultShouldRevalidate})}function Oa(){he||(he=En()),Yt(),pe({revalidation:"loading"});let f=he.promise;return v.navigation.state==="submitting"?f:v.navigation.state==="idle"?(Ue(v.historyAction,v.location,{startUninterruptedRevalidation:!0}),f):(Ue(O||v.historyAction,v.navigation.location,{overrideNavigation:v.navigation,enableViewTransition:ae===!0}),f)}async function Ue(f,y,w){V&&V.abort(),V=null,O=f,Z=(w&&w.startUninterruptedRevalidation)===!0,Ba(v.location,v.matches),K=(w&&w.preventScrollReset)===!0,ae=(w&&w.enableViewTransition)===!0;let C=s||l,P=w&&w.overrideNavigation,k=w?.initialHydration&&v.matches&&v.matches.length>0&&!T?v.matches:Ae(C,y,u),I=(w&&w.flushSync)===!0;if(k&&v.initialized&&!G&&Zo(v.location,y)&&!(w&&w.submission&&ve(w.submission.formMethod))){Ke(y,{matches:k},{flushSync:I});return}let A=Et(k,C,y.pathname);if(A.active&&A.matches&&(k=A.matches),!k){let{error:ue,notFoundMatches:ge,route:re}=Jt(y.pathname);Ke(y,{matches:ge,loaderData:{},errors:{[re.id]:ue}},{flushSync:I});return}V=new AbortController;let F=Qe(e.history,y,V.signal,w&&w.submission),U=e.getContext?await e.getContext():new tn,H;if(w&&w.pendingError)H=[ke(k).route.id,{type:"error",error:w.pendingError}];else if(w&&w.submission&&ve(w.submission.formMethod)){let ue=await Ia(F,y,w.submission,k,U,A.active,w&&w.initialHydration===!0,{replace:w.replace,flushSync:I});if(ue.shortCircuited)return;if(ue.pendingActionResult){let[ge,re]=ue.pendingActionResult;if(be(re)&&Ve(re.error)&&re.error.status===404){V=null,Ke(y,{matches:ue.matches,loaderData:{},errors:{[ge]:re.error}});return}}k=ue.matches||k,H=ue.pendingActionResult,P=er(y,w.submission),I=!1,A.active=!1,F=Qe(e.history,F.url,F.signal)}let{shortCircuited:j,matches:q,loaderData:Q,errors:de}=await Aa(F,y,k,U,A.active,P,w&&w.submission,w&&w.fetcherSubmission,w&&w.replace,w&&w.initialHydration===!0,I,H,w&&w.callSiteDefaultShouldRevalidate);j||(V=null,Ke(y,{matches:q||k,...gn(H),loaderData:Q,errors:de}))}async function Ia(f,y,w,C,P,k,I,A={}){Yt();let F=li(y,w);if(pe({navigation:F},{flushSync:A.flushSync===!0}),k){let j=await Rt(C,y.pathname,f.signal);if(j.type==="aborted")return{shortCircuited:!0};if(j.type==="error"){if(j.partialMatches.length===0){let{matches:Q,route:de}=Ct(l);return{matches:Q,pendingActionResult:[de.id,{type:"error",error:j.error}]}}let q=ke(j.partialMatches).route.id;return{matches:j.partialMatches,pendingActionResult:[q,{type:"error",error:j.error}]}}else if(j.matches)C=j.matches;else{let{notFoundMatches:q,error:Q,route:de}=Jt(y.pathname);return{matches:q,pendingActionResult:[de.id,{type:"error",error:Q}]}}}let U,H=_t(C,y);if(!H.route.action&&!H.route.lazy)U={type:"error",error:xe(405,{method:f.method,pathname:y.pathname,routeId:H.route.id})};else{let j=et(o,i,f,C,H,I?[]:n,P),q=await nt(f,j,P,null);if(U=q[H.route.id],!U){for(let Q of C)if(q[Q.route.id]){U=q[Q.route.id];break}}if(f.signal.aborted)return{shortCircuited:!0}}if(Ye(U)){let j;return A&&A.replace!=null?j=A.replace:j=mn(U.response.headers.get("Location"),new URL(f.url),u,e.history)===v.location.pathname+v.location.search,await He(f,U,!0,{submission:w,replace:j}),{shortCircuited:!0}}if(be(U)){let j=ke(C,H.route.id);return(A&&A.replace)!==!0&&(O="PUSH"),{matches:C,pendingActionResult:[j.route.id,U,H.route.id]}}return{matches:C,pendingActionResult:[H.route.id,U]}}async function Aa(f,y,w,C,P,k,I,A,F,U,H,j,q){let Q=k||er(y,I),de=I||A||wn(Q),ue=!Z&&!U;if(P){if(ue){let ye=Fr(j);pe({navigation:Q,...ye!==void 0?{actionData:ye}:{}},{flushSync:H})}let X=await Rt(w,y.pathname,f.signal);if(X.type==="aborted")return{shortCircuited:!0};if(X.type==="error"){if(X.partialMatches.length===0){let{matches:Xe,route:We}=Ct(l);return{matches:Xe,loaderData:{},errors:{[We.id]:X.error}}}let ye=ke(X.partialMatches).route.id;return{matches:X.partialMatches,loaderData:{},errors:{[ye]:X.error}}}else if(X.matches)w=X.matches;else{let{error:ye,notFoundMatches:Xe,route:We}=Jt(y.pathname);return{matches:Xe,loaderData:{},errors:{[We.id]:ye}}}}let ge=s||l,{dsMatches:re,revalidatingFetchers:Se}=un(f,C,o,i,e.history,v,w,de,y,U?[]:n,U===!0,G,ce,B,$,x,ge,u,e.patchRoutesOnNavigation!=null,j,q);if(fe=++le,!e.dataStrategy&&!re.some(X=>X.shouldLoad)&&!re.some(X=>X.route.middleware&&X.route.middleware.length>0)&&Se.length===0){let X=Hr();return Ke(y,{matches:w,loaderData:{},errors:j&&be(j[1])?{[j[0]]:j[1].error}:null,...gn(j),...X?{fetchers:new Map(v.fetchers)}:{}},{flushSync:H}),{shortCircuited:!0}}if(ue){let X={};if(!P){X.navigation=Q;let ye=Fr(j);ye!==void 0&&(X.actionData=ye)}Se.length>0&&(X.fetchers=Na(Se)),pe(X,{flushSync:H})}Se.forEach(X=>{Oe(X.key),X.controller&&ee.set(X.key,X.controller)});let ze=()=>Se.forEach(X=>Oe(X.key));V&&V.signal.addEventListener("abort",ze);let{loaderResults:at,fetcherResults:Ne}=await $r(re,Se,f,C);if(f.signal.aborted)return{shortCircuited:!0};V&&V.signal.removeEventListener("abort",ze),Se.forEach(X=>ee.delete(X.key));let Pe=Lt(at);if(Pe)return await He(f,Pe.result,!0,{replace:F}),{shortCircuited:!0};if(Pe=Lt(Ne),Pe)return x.add(Pe.key),await He(f,Pe.result,!0,{replace:F}),{shortCircuited:!0};let{loaderData:Gt,errors:ot}=yn(v,w,at,j,Se,Ne);U&&v.errors&&(ot={...v.errors,...ot});let Be=Hr(),bt=zr(fe),St=Be||bt||Se.length>0;return{matches:w,loaderData:Gt,errors:ot,...St?{fetchers:new Map(v.fetchers)}:{}}}function Fr(f){if(f&&!be(f[1]))return{[f[0]]:f[1].data};if(v.actionData)return Object.keys(v.actionData).length===0?null:v.actionData}function Na(f){return f.forEach(y=>{let w=v.fetchers.get(y.key),C=lt(void 0,w?w.data:void 0);v.fetchers.set(y.key,C)}),new Map(v.fetchers)}async function ka(f,y,w,C){Oe(f);let P=(C&&C.flushSync)===!0,k=s||l,I=ir(v.location,v.matches,u,w,y,C?.relative),A=Ae(k,I,u),F=Et(A,k,I);if(F.active&&F.matches&&(A=F.matches),!A){_e(f,y,xe(404,{pathname:I}),{flushSync:P});return}let{path:U,submission:H,error:j}=sn(!0,I,C);if(j){_e(f,y,j,{flushSync:P});return}let q=e.getContext?await e.getContext():new tn,Q=(C&&C.preventScrollReset)===!0;if(H&&ve(H.formMethod)){await Fa(f,y,U,A,q,F.active,P,Q,H,C&&C.unstable_defaultShouldRevalidate);return}$.set(f,{routeId:y,path:U}),await $a(f,y,U,A,q,F.active,P,Q,H)}async function Fa(f,y,w,C,P,k,I,A,F,U){Yt(),$.delete(f);let H=v.fetchers.get(f);De(f,si(F,H),{flushSync:I});let j=new AbortController,q=Qe(e.history,w,j.signal,F);if(k){let ie=await Rt(C,new URL(q.url).pathname,q.signal,f);if(ie.type==="aborted")return;if(ie.type==="error"){_e(f,y,ie.error,{flushSync:I});return}else if(ie.matches)C=ie.matches;else{_e(f,y,xe(404,{pathname:w}),{flushSync:I});return}}let Q=_t(C,w);if(!Q.route.action&&!Q.route.lazy){let ie=xe(405,{method:F.formMethod,pathname:w,routeId:y});_e(f,y,ie,{flushSync:I});return}ee.set(f,j);let de=le,ue=et(o,i,q,C,Q,n,P),ge=await nt(q,ue,P,f),re=ge[Q.route.id];if(!re){for(let ie of ue)if(ge[ie.route.id]){re=ge[ie.route.id];break}}if(q.signal.aborted){ee.get(f)===j&&ee.delete(f);return}if(B.has(f)){if(Ye(re)||be(re)){De(f,Ie(void 0));return}}else{if(Ye(re))if(ee.delete(f),fe>de){De(f,Ie(void 0));return}else return x.add(f),De(f,lt(F)),He(q,re,!1,{fetcherSubmission:F,preventScrollReset:A});if(be(re)){_e(f,y,re.error);return}}let Se=v.navigation.location||v.location,ze=Qe(e.history,Se,j.signal),at=s||l,Ne=v.navigation.state!=="idle"?Ae(at,v.navigation.location,u):v.matches;Y(Ne,"Didn't find any matches after fetcher action");let Pe=++le;m.set(f,Pe);let Gt=lt(F,re.data);v.fetchers.set(f,Gt);let{dsMatches:ot,revalidatingFetchers:Be}=un(ze,P,o,i,e.history,v,Ne,F,Se,n,!1,G,ce,B,$,x,at,u,e.patchRoutesOnNavigation!=null,[Q.route.id,re],U);Be.filter(ie=>ie.key!==f).forEach(ie=>{let xt=ie.key,Gr=v.fetchers.get(xt),Va=lt(void 0,Gr?Gr.data:void 0);v.fetchers.set(xt,Va),Oe(xt),ie.controller&&ee.set(xt,ie.controller)}),pe({fetchers:new Map(v.fetchers)});let bt=()=>Be.forEach(ie=>Oe(ie.key));j.signal.addEventListener("abort",bt);let{loaderResults:St,fetcherResults:X}=await $r(ot,Be,ze,P);if(j.signal.aborted)return;if(j.signal.removeEventListener("abort",bt),m.delete(f),ee.delete(f),Be.forEach(ie=>ee.delete(ie.key)),v.fetchers.has(f)){let ie=Ie(re.data);v.fetchers.set(f,ie)}let ye=Lt(St);if(ye)return He(ze,ye.result,!1,{preventScrollReset:A});if(ye=Lt(X),ye)return x.add(ye.key),He(ze,ye.result,!1,{preventScrollReset:A});let{loaderData:Xe,errors:We}=yn(v,Ne,St,void 0,Be,X);zr(Pe),v.navigation.state==="loading"&&Pe>fe?(Y(O,"Expected pending action"),V&&V.abort(),Ke(v.navigation.location,{matches:Ne,loaderData:Xe,errors:We,fetchers:new Map(v.fetchers)})):(pe({errors:We,loaderData:vn(v.loaderData,Xe,Ne,We),fetchers:new Map(v.fetchers)}),G=!1)}async function $a(f,y,w,C,P,k,I,A,F){let U=v.fetchers.get(f);De(f,lt(F,U?U.data:void 0),{flushSync:I});let H=new AbortController,j=Qe(e.history,w,H.signal);if(k){let re=await Rt(C,new URL(j.url).pathname,j.signal,f);if(re.type==="aborted")return;if(re.type==="error"){_e(f,y,re.error,{flushSync:I});return}else if(re.matches)C=re.matches;else{_e(f,y,xe(404,{pathname:w}),{flushSync:I});return}}let q=_t(C,w);ee.set(f,H);let Q=le,de=et(o,i,j,C,q,n,P),ge=(await nt(j,de,P,f))[q.route.id];if(ee.get(f)===H&&ee.delete(f),!j.signal.aborted){if(B.has(f)){De(f,Ie(void 0));return}if(Ye(ge))if(fe>Q){De(f,Ie(void 0));return}else{x.add(f),await He(j,ge,!1,{preventScrollReset:A});return}if(be(ge)){_e(f,y,ge.error);return}De(f,Ie(ge.data))}}async function He(f,y,w,{submission:C,fetcherSubmission:P,preventScrollReset:k,replace:I}={}){w||(z?.resolve(),z=null),y.response.headers.has("X-Remix-Revalidate")&&(G=!0);let A=y.response.headers.get("Location");Y(A,"Expected a Location header on the redirect Response"),A=mn(A,new URL(f.url),u,e.history);let F=ft(v.location,A,{_isRedirect:!0});if(r){let de=!1;if(y.response.headers.has("X-Remix-Reload-Document"))de=!0;else if(wr(A)){const ue=_n(A,!0);de=ue.origin!==t.location.origin||Ee(ue.pathname,u)==null}if(de){I?t.location.replace(A):t.location.assign(A);return}}V=null;let U=I===!0||y.response.headers.has("X-Remix-Replace")?"REPLACE":"PUSH",{formMethod:H,formAction:j,formEncType:q}=v.navigation;!C&&!P&&H&&j&&q&&(C=wn(v.navigation));let Q=C||P;if(jo.has(y.response.status)&&Q&&ve(Q.formMethod))await Ue(U,F,{submission:{...Q,formAction:A},preventScrollReset:k||K,enableViewTransition:w?ae:void 0});else{let de=er(F,C);await Ue(U,F,{overrideNavigation:de,fetcherSubmission:P,preventScrollReset:k||K,enableViewTransition:w?ae:void 0})}}async function nt(f,y,w,C){let P,k={};try{P=await Jo(h,f,y,C,w,!1)}catch(I){return y.filter(A=>A.shouldLoad).forEach(A=>{k[A.route.id]={type:"error",error:I}}),k}if(f.signal.aborted)return k;if(!ve(f.method))for(let I of y){if(P[I.route.id]?.type==="error")break;!P.hasOwnProperty(I.route.id)&&!v.loaderData.hasOwnProperty(I.route.id)&&(!v.errors||!v.errors.hasOwnProperty(I.route.id))&&I.shouldCallHandler()&&(P[I.route.id]={type:"error",result:new Error(`No result returned from dataStrategy for route ${I.route.id}`)})}for(let[I,A]of Object.entries(P))if(ni(A)){let F=A.result;k[I]={type:"redirect",response:qo(F,f,I,y,u)}}else k[I]=await Xo(A);return k}async function $r(f,y,w,C){let P=nt(w,f,C,null),k=Promise.all(y.map(async F=>{if(F.matches&&F.match&&F.request&&F.controller){let H=(await nt(F.request,F.matches,C,F.key))[F.match.route.id];return{[F.key]:H}}else return Promise.resolve({[F.key]:{type:"error",error:xe(404,{pathname:F.path})}})})),I=await P,A=(await k).reduce((F,U)=>Object.assign(F,U),{});return{loaderResults:I,fetcherResults:A}}function Yt(){G=!0,$.forEach((f,y)=>{ee.has(y)&&ce.add(y),Oe(y)})}function De(f,y,w={}){v.fetchers.set(f,y),pe({fetchers:new Map(v.fetchers)},{flushSync:(w&&w.flushSync)===!0})}function _e(f,y,w,C={}){let P=ke(v.matches,y);Vt(f),pe({errors:{[P.route.id]:w},fetchers:new Map(v.fetchers)},{flushSync:(C&&C.flushSync)===!0})}function jr(f){return N.set(f,(N.get(f)||0)+1),B.has(f)&&B.delete(f),v.fetchers.get(f)||Bn}function ja(f,y){Oe(f,y?.reason),De(f,Ie(null))}function Vt(f){let y=v.fetchers.get(f);ee.has(f)&&!(y&&y.state==="loading"&&m.has(f))&&Oe(f),$.delete(f),m.delete(f),x.delete(f),B.delete(f),ce.delete(f),v.fetchers.delete(f)}function Ua(f){let y=(N.get(f)||0)-1;y<=0?(N.delete(f),B.add(f)):N.set(f,y),pe({fetchers:new Map(v.fetchers)})}function Oe(f,y){let w=ee.get(f);w&&(w.abort(y),ee.delete(f))}function Ur(f){for(let y of f){let w=jr(y),C=Ie(w.data);v.fetchers.set(y,C)}}function Hr(){let f=[],y=!1;for(let w of x){let C=v.fetchers.get(w);Y(C,`Expected fetcher: ${w}`),C.state==="loading"&&(x.delete(w),f.push(w),y=!0)}return Ur(f),y}function zr(f){let y=[];for(let[w,C]of m)if(C<f){let P=v.fetchers.get(w);Y(P,`Expected fetcher: ${w}`),P.state==="loading"&&(Oe(w),m.delete(w),y.push(w))}return Ur(y),y.length>0}function Ha(f,y){let w=v.blockers.get(f)||qe;return J.get(f)!==y&&J.set(f,y),w}function Br(f){v.blockers.delete(f),J.delete(f)}function wt(f,y){let w=v.blockers.get(f)||qe;Y(w.state==="unblocked"&&y.state==="blocked"||w.state==="blocked"&&y.state==="blocked"||w.state==="blocked"&&y.state==="proceeding"||w.state==="blocked"&&y.state==="unblocked"||w.state==="proceeding"&&y.state==="unblocked",`Invalid blocker state transition: ${w.state} -> ${y.state}`);let C=new Map(v.blockers);C.set(f,y),pe({blockers:C})}function Wr({currentLocation:f,nextLocation:y,historyAction:w}){if(J.size===0)return;J.size>1&&oe(!1,"A router only supports one blocker at a time");let C=Array.from(J.entries()),[P,k]=C[C.length-1],I=v.blockers.get(P);if(!(I&&I.state==="proceeding")&&k({currentLocation:f,nextLocation:y,historyAction:w}))return P}function Jt(f){let y=xe(404,{pathname:f}),w=s||l,{matches:C,route:P}=Ct(w);return{notFoundMatches:C,route:P,error:y}}function za(f,y,w){if(b=f,E=y,S=w||null,!L&&v.navigation===Zt){L=!0;let C=Vr(v.location,v.matches);C!=null&&pe({restoreScrollPosition:C})}return()=>{b=null,E=null,S=null}}function Yr(f,y){return S&&S(f,y.map(C=>On(C,v.loaderData)))||f.key}function Ba(f,y){if(b&&E){let w=Yr(f,y);b[w]=E()}}function Vr(f,y){if(b){let w=Yr(f,y),C=b[w];if(typeof C=="number")return C}return null}function Et(f,y,w){if(e.patchRoutesOnNavigation)if(f){if(Object.keys(f[0].params).length>0)return{active:!0,matches:ct(y,w,u,!0)}}else return{active:!0,matches:ct(y,w,u,!0)||[]};return{active:!1,matches:null}}async function Rt(f,y,w,C){if(!e.patchRoutesOnNavigation)return{type:"success",matches:f};let P=f;for(;;){let k=s==null,I=s||l,A=i;try{await e.patchRoutesOnNavigation({signal:w,path:y,matches:P,fetcherKey:C,patch:(H,j)=>{w.aborted||cn(H,j,I,A,o,!1)}})}catch(H){return{type:"error",error:H,partialMatches:P}}finally{k&&!w.aborted&&(l=[...l])}if(w.aborted)return{type:"aborted"};let F=Ae(I,y,u),U=null;if(F){if(Object.keys(F[0].params).length===0)return{type:"success",matches:F};if(U=ct(I,y,u,!0),!(U&&P.length<U.length&&Jr(P,U.slice(0,P.length))))return{type:"success",matches:F}}if(U||(U=ct(I,y,u,!0)),!U||Jr(P,U))return{type:"success",matches:null};P=U}}function Jr(f,y){return f.length===y.length&&f.every((w,C)=>w.route.id===y[C].route.id)}function Wa(f){i={},s=ht(f,o,void 0,i)}function Ya(f,y,w=!1){let C=s==null;cn(f,y,s||l,i,o,w),C&&(l=[...l],pe({}))}return _={get basename(){return u},get future(){return c},get state(){return v},get routes(){return l},get window(){return t},initialize:me,subscribe:_a,enableScrollRestoration:za,navigate:kr,fetch:ka,revalidate:Oa,createHref:f=>e.history.createHref(f),encodeLocation:f=>e.history.encodeLocation(f),getFetcher:jr,resetFetcher:ja,deleteFetcher:Ua,dispose:Wt,getBlocker:Ha,deleteBlocker:Br,patchRoutes:Ya,_internalFetchControllers:ee,_internalSetRoutes:Wa,_internalSetStateDoNotUseOrYouWillBreakYourApp(f){pe(f)}},e.unstable_instrumentations&&(_=_o(_,e.unstable_instrumentations.map(f=>f.router).filter(Boolean))),_}function Ho(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function ir(e,t,r,n,a,o){let i,l;if(a){i=[];for(let u of t)if(i.push(u),u.route.id===a){l=u;break}}else i=t,l=t[t.length-1];let s=Rr(n||".",Er(i),Ee(e.pathname,r)||e.pathname,o==="path");if(n==null&&(s.search=e.search,s.hash=e.hash),(n==null||n===""||n===".")&&l){let u=Sr(s.search);if(l.route.index&&!u)s.search=s.search?s.search.replace(/^\?/,"?index&"):"?index";else if(!l.route.index&&u){let h=new URLSearchParams(s.search),c=h.getAll("index");h.delete("index"),c.filter(g=>g).forEach(g=>h.append("index",g));let p=h.toString();s.search=p?`?${p}`:""}}return r!=="/"&&(s.pathname=bo({basename:r,pathname:s.pathname})),Me(s)}function sn(e,t,r){if(!r||!Ho(r))return{path:t};if(r.formMethod&&!ii(r.formMethod))return{path:t,error:xe(405,{method:r.formMethod})};let n=()=>({path:t,error:xe(400,{type:"invalid-body"})}),o=(r.formMethod||"get").toUpperCase(),i=qn(t);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!ve(o))return n();let c=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((p,[g,b])=>`${p}${g}=${b}
|
|
2
|
+
`,""):String(r.body);return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:void 0,text:c}}}else if(r.formEncType==="application/json"){if(!ve(o))return n();try{let c=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:c,text:void 0}}}catch{return n()}}}Y(typeof FormData=="function","FormData is not available in this environment");let l,s;if(r.formData)l=ur(r.formData),s=r.formData;else if(r.body instanceof FormData)l=ur(r.body),s=r.body;else if(r.body instanceof URLSearchParams)l=r.body,s=pn(l);else if(r.body==null)l=new URLSearchParams,s=new FormData;else try{l=new URLSearchParams(r.body),s=pn(l)}catch{return n()}let u={formMethod:o,formAction:i,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:s,json:void 0,text:void 0};if(ve(u.formMethod))return{path:t,submission:u};let h=$e(t);return e&&h.search&&Sr(h.search)&&l.append("index",""),h.search=`?${l}`,{path:Me(h),submission:u}}function un(e,t,r,n,a,o,i,l,s,u,h,c,p,g,b,S,E,L,R,T,D){let M=T?be(T[1])?T[1].error:T[1].data:void 0,_=a.createURL(o.location),v=a.createURL(s),O;if(h&&o.errors){let Z=Object.keys(o.errors)[0];O=i.findIndex(G=>G.route.id===Z)}else if(T&&be(T[1])){let Z=T[0];O=i.findIndex(G=>G.route.id===Z)-1}let z=T?T[1].statusCode:void 0,K=z&&z>=400,V={currentUrl:_,currentParams:o.matches[0]?.params||{},nextUrl:v,nextParams:i[0].params,...l,actionResult:M,actionStatus:z},ae=pt(i),se=i.map((Z,G)=>{let{route:ce}=Z,ee=null;if(O!=null&&G>O?ee=!1:ce.lazy?ee=!0:br(ce)?h?ee=lr(ce,o.loaderData,o.errors):zo(o.loaderData,o.matches[G],Z)&&(ee=!0):ee=!1,ee!==null)return sr(r,n,e,ae,Z,u,t,ee);let le=!1;typeof D=="boolean"?le=D:K?le=!1:(c||_.pathname+_.search===v.pathname+v.search||_.search!==v.search||Bo(o.matches[G],Z))&&(le=!0);let fe={...V,defaultShouldRevalidate:le},m=dt(Z,fe);return sr(r,n,e,ae,Z,u,t,m,fe,D)}),ne=[];return b.forEach((Z,G)=>{if(h||!i.some(N=>N.route.id===Z.routeId)||g.has(G))return;let ce=o.fetchers.get(G),ee=ce&&ce.state!=="idle"&&ce.data===void 0,le=Ae(E,Z.path,L);if(!le){if(R&&ee)return;ne.push({key:G,routeId:Z.routeId,path:Z.path,matches:null,match:null,request:null,controller:null});return}if(S.has(G))return;let fe=_t(le,Z.path),m=new AbortController,x=Qe(a,Z.path,m.signal),$=null;if(p.has(G))p.delete(G),$=et(r,n,x,le,fe,u,t);else if(ee)c&&($=et(r,n,x,le,fe,u,t));else{let N;typeof D=="boolean"?N=D:K?N=!1:N=c;let B={...V,defaultShouldRevalidate:N};dt(fe,B)&&($=et(r,n,x,le,fe,u,t,B))}$&&ne.push({key:G,routeId:Z.routeId,path:Z.path,matches:$,match:fe,request:x,controller:m})}),{dsMatches:se,revalidatingFetchers:ne}}function br(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function lr(e,t,r){if(e.lazy)return!0;if(!br(e))return!1;let n=t!=null&&e.id in t,a=r!=null&&r[e.id]!==void 0;return!n&&a?!1:typeof e.loader=="function"&&e.loader.hydrate===!0?!0:!n&&!a}function zo(e,t,r){let n=!t||r.route.id!==t.route.id,a=!e.hasOwnProperty(r.route.id);return n||a}function Bo(e,t){let r=e.route.path;return e.pathname!==t.pathname||r!=null&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function dt(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if(typeof r=="boolean")return r}return t.defaultShouldRevalidate}function cn(e,t,r,n,a,o){let i;if(e){let u=n[e];Y(u,`No route found to patch children into: routeId = ${e}`),u.children||(u.children=[]),i=u.children}else i=r;let l=[],s=[];if(t.forEach(u=>{let h=i.find(c=>Vn(u,c));h?s.push({existingRoute:h,newRoute:u}):l.push(u)}),l.length>0){let u=ht(l,a,[e||"_","patch",String(i?.length||"0")],n);i.push(...u)}if(o&&s.length>0)for(let u=0;u<s.length;u++){let{existingRoute:h,newRoute:c}=s[u],p=h,[g]=ht([c],a,[],{},!0);Object.assign(p,{element:g.element?g.element:p.element,errorElement:g.errorElement?g.errorElement:p.errorElement,hydrateFallbackElement:g.hydrateFallbackElement?g.hydrateFallbackElement:p.hydrateFallbackElement})}}function Vn(e,t){return"id"in e&&"id"in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children.every((r,n)=>t.children?.some(a=>Vn(r,a))):!1}var dn=new WeakMap,Jn=({key:e,route:t,manifest:r,mapRouteProperties:n})=>{let a=r[t.id];if(Y(a,"No route found in manifest"),!a.lazy||typeof a.lazy!="object")return;let o=a.lazy[e];if(!o)return;let i=dn.get(a);i||(i={},dn.set(a,i));let l=i[e];if(l)return l;let s=(async()=>{let u=io(e),c=a[e]!==void 0&&e!=="hasErrorBoundary";if(u)oe(!u,"Route property "+e+" is not a supported lazy route property. This property will be ignored."),i[e]=Promise.resolve();else if(c)oe(!1,`Route "${a.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let p=await o();p!=null&&(Object.assign(a,{[e]:p}),Object.assign(a,n(a)))}typeof a.lazy=="object"&&(a.lazy[e]=void 0,Object.values(a.lazy).every(p=>p===void 0)&&(a.lazy=void 0))})();return i[e]=s,s},fn=new WeakMap;function Wo(e,t,r,n,a){let o=r[e.id];if(Y(o,"No route found in manifest"),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy=="function"){let h=fn.get(o);if(h)return{lazyRoutePromise:h,lazyHandlerPromise:h};let c=(async()=>{Y(typeof e.lazy=="function","No lazy route function found");let p=await e.lazy(),g={};for(let b in p){let S=p[b];if(S===void 0)continue;let E=so(b),R=o[b]!==void 0&&b!=="hasErrorBoundary";E?oe(!E,"Route property "+b+" is not a supported property to be returned from a lazy route function. This property will be ignored."):R?oe(!R,`Route "${o.id}" has a static property "${b}" defined but its lazy function is also returning a value for this property. The lazy route property "${b}" will be ignored.`):g[b]=S}Object.assign(o,g),Object.assign(o,{...n(o),lazy:void 0})})();return fn.set(o,c),c.catch(()=>{}),{lazyRoutePromise:c,lazyHandlerPromise:c}}let i=Object.keys(e.lazy),l=[],s;for(let h of i){if(a&&a.includes(h))continue;let c=Jn({key:h,route:e,manifest:r,mapRouteProperties:n});c&&(l.push(c),h===t&&(s=c))}let u=l.length>0?Promise.all(l).then(()=>{}):void 0;return u?.catch(()=>{}),s?.catch(()=>{}),{lazyRoutePromise:u,lazyHandlerPromise:s}}async function hn(e){let t=e.matches.filter(a=>a.shouldLoad),r={};return(await Promise.all(t.map(a=>a.resolve()))).forEach((a,o)=>{r[t[o].route.id]=a}),r}async function Yo(e){return e.matches.some(t=>t.route.middleware)?Gn(e,()=>hn(e)):hn(e)}function Gn(e,t){return Vo(e,t,n=>{if(oi(n))throw n;return n},ti,r);function r(n,a,o){if(o)return Promise.resolve(Object.assign(o.value,{[a]:{type:"error",result:n}}));{let{matches:i}=e,l=Math.min(Math.max(i.findIndex(u=>u.route.id===a),0),Math.max(i.findIndex(u=>u.shouldCallHandler()),0)),s=ke(i,i[l].route.id).route.id;return Promise.resolve({[s]:{type:"error",result:n}})}}}async function Vo(e,t,r,n,a){let{matches:o,request:i,params:l,context:s,unstable_pattern:u}=e,h=o.flatMap(p=>p.route.middleware?p.route.middleware.map(g=>[p.route.id,g]):[]);return await Kn({request:i,params:l,context:s,unstable_pattern:u},h,t,r,n,a)}async function Kn(e,t,r,n,a,o,i=0){let{request:l}=e;if(l.signal.aborted)throw l.signal.reason??new Error(`Request aborted: ${l.method} ${l.url}`);let s=t[i];if(!s)return await r();let[u,h]=s,c,p=async()=>{if(c)throw new Error("You may only call `next()` once per middleware");try{return c={value:await Kn(e,t,r,n,a,o,i+1)},c.value}catch(g){return c={value:await o(g,u,c)},c.value}};try{let g=await h(e,p),b=g!=null?n(g):void 0;return a(b)?b:c?b??c.value:(c={value:await p()},c.value)}catch(g){return await o(g,u,c)}}function Xn(e,t,r,n,a){let o=Jn({key:"middleware",route:n.route,manifest:t,mapRouteProperties:e}),i=Wo(n.route,ve(r.method)?"action":"loader",t,e,a);return{middleware:o,route:i.lazyRoutePromise,handler:i.lazyHandlerPromise}}function sr(e,t,r,n,a,o,i,l,s=null,u){let h=!1,c=Xn(e,t,r,a,o);return{...a,_lazyPromises:c,shouldLoad:l,shouldRevalidateArgs:s,shouldCallHandler(p){return h=!0,s?typeof u=="boolean"?dt(a,{...s,defaultShouldRevalidate:u}):typeof p=="boolean"?dt(a,{...s,defaultShouldRevalidate:p}):dt(a,s):l},resolve(p){let{lazy:g,loader:b,middleware:S}=a.route,E=h||l||p&&!ve(r.method)&&(g||b),L=S&&S.length>0&&!b&&!g;return E&&(ve(r.method)||!L)?Go({request:r,unstable_pattern:n,match:a,lazyHandlerPromise:c?.handler,lazyRoutePromise:c?.route,handlerOverride:p,scopedContext:i}):Promise.resolve({type:"data",result:void 0})}}}function et(e,t,r,n,a,o,i,l=null){return n.map(s=>s.route.id!==a.route.id?{...s,shouldLoad:!1,shouldRevalidateArgs:l,shouldCallHandler:()=>!1,_lazyPromises:Xn(e,t,r,s,o),resolve:()=>Promise.resolve({type:"data",result:void 0})}:sr(e,t,r,pt(n),s,o,i,!0,l))}async function Jo(e,t,r,n,a,o){r.some(u=>u._lazyPromises?.middleware)&&await Promise.all(r.map(u=>u._lazyPromises?.middleware));let i={request:t,unstable_pattern:pt(r),params:r[0].params,context:a,matches:r},s=await e({...i,fetcherKey:n,runClientMiddleware:u=>{let h=i;return Gn(h,()=>u({...h,fetcherKey:n,runClientMiddleware:()=>{throw new Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))}});try{await Promise.all(r.flatMap(u=>[u._lazyPromises?.handler,u._lazyPromises?.route]))}catch{}return s}async function Go({request:e,unstable_pattern:t,match:r,lazyHandlerPromise:n,lazyRoutePromise:a,handlerOverride:o,scopedContext:i}){let l,s,u=ve(e.method),h=u?"action":"loader",c=p=>{let g,b=new Promise((L,R)=>g=R);s=()=>g(),e.signal.addEventListener("abort",s);let S=L=>typeof p!="function"?Promise.reject(new Error(`You cannot call the handler for a route which defines a boolean "${h}" [routeId: ${r.route.id}]`)):p({request:e,unstable_pattern:t,params:r.params,context:i},...L!==void 0?[L]:[]),E=(async()=>{try{return{type:"data",result:await(o?o(R=>S(R)):S())}}catch(L){return{type:"error",result:L}}})();return Promise.race([E,b])};try{let p=u?r.route.action:r.route.loader;if(n||a)if(p){let g,[b]=await Promise.all([c(p).catch(S=>{g=S}),n,a]);if(g!==void 0)throw g;l=b}else{await n;let g=u?r.route.action:r.route.loader;if(g)[l]=await Promise.all([c(g),a]);else if(h==="action"){let b=new URL(e.url),S=b.pathname+b.search;throw xe(405,{method:e.method,pathname:S,routeId:r.route.id})}else return{type:"data",result:void 0}}else if(p)l=await c(p);else{let g=new URL(e.url),b=g.pathname+g.search;throw xe(404,{pathname:b})}}catch(p){return{type:"error",result:p}}finally{s&&e.signal.removeEventListener("abort",s)}return l}async function Ko(e){let t=e.headers.get("Content-Type");return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Xo(e){let{result:t,type:r}=e;if($t(t)){let n;try{n=await Ko(t)}catch(a){return{type:"error",error:a}}return r==="error"?{type:"error",error:new je(t.status,t.statusText,n),statusCode:t.status,headers:t.headers}:{type:"data",data:n,statusCode:t.status,headers:t.headers}}return r==="error"?cr(t)?t.data instanceof Error?{type:"error",error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"error",error:ei(t),statusCode:Ve(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"error",error:t,statusCode:Ve(t)?t.status:void 0}:cr(t)?{type:"data",data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"data",data:t}}function qo(e,t,r,n,a){let o=e.headers.get("Location");if(Y(o,"Redirects returned/thrown from loaders/actions must have a Location header"),!wr(o)){let i=n.slice(0,n.findIndex(l=>l.route.id===r)+1);o=ir(new URL(t.url),i,a,o),e.headers.set("Location",o)}return e}function mn(e,t,r,n){let a=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];if(wr(e)){let o=e,i=o.startsWith("//")?new URL(t.protocol+o):new URL(o);if(a.includes(i.protocol))throw new Error("Invalid redirect location");let l=Ee(i.pathname,r)!=null;if(i.origin===t.origin&&l)return i.pathname+i.search+i.hash}try{let o=n.createURL(e);if(a.includes(o.protocol))throw new Error("Invalid redirect location")}catch{}return e}function Qe(e,t,r,n){let a=e.createURL(qn(t)).toString(),o={signal:r};if(n&&ve(n.formMethod)){let{formMethod:i,formEncType:l}=n;o.method=i.toUpperCase(),l==="application/json"?(o.headers=new Headers({"Content-Type":l}),o.body=JSON.stringify(n.json)):l==="text/plain"?o.body=n.text:l==="application/x-www-form-urlencoded"&&n.formData?o.body=ur(n.formData):o.body=n.formData}return new Request(a,o)}function ur(e){let t=new URLSearchParams;for(let[r,n]of e.entries())t.append(r,typeof n=="string"?n:n.name);return t}function pn(e){let t=new FormData;for(let[r,n]of e.entries())t.append(r,n);return t}function Qo(e,t,r,n=!1,a=!1){let o={},i=null,l,s=!1,u={},h=r&&be(r[1])?r[1].error:void 0;return e.forEach(c=>{if(!(c.route.id in t))return;let p=c.route.id,g=t[p];if(Y(!Ye(g),"Cannot handle redirect results in processLoaderData"),be(g)){let b=g.error;if(h!==void 0&&(b=h,h=void 0),i=i||{},a)i[p]=b;else{let S=ke(e,p);i[S.route.id]==null&&(i[S.route.id]=b)}n||(o[p]=Yn),s||(s=!0,l=Ve(g.error)?g.error.status:500),g.headers&&(u[p]=g.headers)}else o[p]=g.data,g.statusCode&&g.statusCode!==200&&!s&&(l=g.statusCode),g.headers&&(u[p]=g.headers)}),h!==void 0&&r&&(i={[r[0]]:h},r[2]&&(o[r[2]]=void 0)),{loaderData:o,errors:i,statusCode:l||200,loaderHeaders:u}}function yn(e,t,r,n,a,o){let{loaderData:i,errors:l}=Qo(t,r,n);return a.filter(s=>!s.matches||s.matches.some(u=>u.shouldLoad)).forEach(s=>{let{key:u,match:h,controller:c}=s;if(c&&c.signal.aborted)return;let p=o[u];if(Y(p,"Did not find corresponding fetcher result"),be(p)){let g=ke(e.matches,h?.route.id);l&&l[g.route.id]||(l={...l,[g.route.id]:p.error}),e.fetchers.delete(u)}else if(Ye(p))Y(!1,"Unhandled fetcher revalidation redirect");else{let g=Ie(p.data);e.fetchers.set(u,g)}}),{loaderData:i,errors:l}}function vn(e,t,r,n){let a=Object.entries(t).filter(([,o])=>o!==Yn).reduce((o,[i,l])=>(o[i]=l,o),{});for(let o of r){let i=o.route.id;if(!t.hasOwnProperty(i)&&e.hasOwnProperty(i)&&o.route.loader&&(a[i]=e[i]),n&&n.hasOwnProperty(i))break}return a}function gn(e){return e?be(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function ke(e,t){return(t?e.slice(0,e.findIndex(n=>n.route.id===t)+1):[...e]).reverse().find(n=>n.route.hasErrorBoundary===!0)||e[0]}function Ct(e){let t=e.length===1?e[0]:e.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function xe(e,{pathname:t,routeId:r,method:n,type:a,message:o}={}){let i="Unknown Server Error",l="Unknown @remix-run/router error";return e===400?(i="Bad Request",n&&t&&r?l=`You made a ${n} request to "${t}" but did not provide a \`loader\` for route "${r}", so there is no way to handle the request.`:a==="invalid-body"&&(l="Unable to encode submission body")):e===403?(i="Forbidden",l=`Route "${r}" does not match URL "${t}"`):e===404?(i="Not Found",l=`No route matches URL "${t}"`):e===405&&(i="Method Not Allowed",n&&t&&r?l=`You made a ${n.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${r}", so there is no way to handle the request.`:n&&(l=`Invalid request method "${n.toUpperCase()}"`)),new je(e||500,i,new Error(l),!0)}function Lt(e){let t=Object.entries(e);for(let r=t.length-1;r>=0;r--){let[n,a]=t[r];if(Ye(a))return{key:n,result:a}}}function qn(e){let t=typeof e=="string"?$e(e):e;return Me({...t,hash:""})}function Zo(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function ei(e){return new je(e.init?.status??500,e.init?.statusText??"Internal Server Error",e.data)}function ti(e){return e!=null&&typeof e=="object"&&Object.entries(e).every(([t,r])=>typeof t=="string"&&ri(r))}function ri(e){return e!=null&&typeof e=="object"&&"type"in e&&"result"in e&&(e.type==="data"||e.type==="error")}function ni(e){return $t(e.result)&&zn.has(e.result.status)}function be(e){return e.type==="error"}function Ye(e){return(e&&e.type)==="redirect"}function cr(e){return typeof e=="object"&&e!=null&&"type"in e&&"data"in e&&"init"in e&&e.type==="DataWithResponseInit"}function $t(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function ai(e){return zn.has(e)}function oi(e){return $t(e)&&ai(e.status)&&e.headers.has("Location")}function ii(e){return $o.has(e.toUpperCase())}function ve(e){return ko.has(e.toUpperCase())}function Sr(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function _t(e,t){let r=typeof t=="string"?$e(t).search:t.search;if(e[e.length-1].route.index&&Sr(r||""))return e[e.length-1];let n=Fn(e);return n[n.length-1]}function wn(e){let{formMethod:t,formAction:r,formEncType:n,text:a,formData:o,json:i}=e;if(!(!t||!r||!n)){if(a!=null)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:void 0,text:a};if(o!=null)return{formMethod:t,formAction:r,formEncType:n,formData:o,json:void 0,text:void 0};if(i!==void 0)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:i,text:void 0}}}function er(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function li(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function lt(e,t){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function si(e,t){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function Ie(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function ui(e,t){try{let r=e.sessionStorage.getItem(Wn);if(r){let n=JSON.parse(r);for(let[a,o]of Object.entries(n||{}))o&&Array.isArray(o)&&t.set(a,new Set(o||[]))}}catch{}}function ci(e,t){if(t.size>0){let r={};for(let[n,a]of t)r[n]=[...a];try{e.sessionStorage.setItem(Wn,JSON.stringify(r))}catch(n){oe(!1,`Failed to save applied view transitions in sessionStorage (${n}).`)}}}function En(){let e,t,r=new Promise((n,a)=>{e=async o=>{n(o);try{await r}catch{}},t=async o=>{a(o);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}var Je=d.createContext(null);Je.displayName="DataRouter";var tt=d.createContext(null);tt.displayName="DataRouterState";var Qn=d.createContext(!1);function Zn(){return d.useContext(Qn)}var xr=d.createContext({isTransitioning:!1});xr.displayName="ViewTransition";var Cr=d.createContext(new Map);Cr.displayName="Fetchers";var di=d.createContext(null);di.displayName="Await";var Re=d.createContext(null);Re.displayName="Navigation";var jt=d.createContext(null);jt.displayName="Location";var Ce=d.createContext({outlet:null,matches:[],isDataRoute:!1});Ce.displayName="Route";var Lr=d.createContext(null);Lr.displayName="RouteError";var ea="REACT_ROUTER_ERROR",fi="REDIRECT",hi="ROUTE_ERROR_RESPONSE";function mi(e){if(e.startsWith(`${ea}:${fi}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function pi(e){if(e.startsWith(`${ea}:${hi}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new je(t.status,t.statusText,t.data)}catch{}}function yi(e,{relative:t}={}){Y(yt(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:n}=d.useContext(Re),{hash:a,pathname:o,search:i}=vt(e,{relative:t}),l=o;return r!=="/"&&(l=o==="/"?r:Te([r,o])),n.createHref({pathname:l,search:i,hash:a})}function yt(){return d.useContext(jt)!=null}function Le(){return Y(yt(),"useLocation() may be used only in the context of a <Router> component."),d.useContext(jt).location}var ta="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ra(e){d.useContext(Re).static||d.useLayoutEffect(e)}function na(){let{isDataRoute:e}=d.useContext(Ce);return e?Di():vi()}function vi(){Y(yt(),"useNavigate() may be used only in the context of a <Router> component.");let e=d.useContext(Je),{basename:t,navigator:r}=d.useContext(Re),{matches:n}=d.useContext(Ce),{pathname:a}=Le(),o=JSON.stringify(Er(n)),i=d.useRef(!1);return ra(()=>{i.current=!0}),d.useCallback((s,u={})=>{if(oe(i.current,ta),!i.current)return;if(typeof s=="number"){r.go(s);return}let h=Rr(s,JSON.parse(o),a,u.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:Te([t,h.pathname])),(u.replace?r.replace:r.push)(h,u.state,u)},[t,r,o,a,e])}var gi=d.createContext(null);function wi(e){let t=d.useContext(Ce).outlet;return d.useMemo(()=>t&&d.createElement(gi.Provider,{value:e},t),[t,e])}function aa(){let{matches:e}=d.useContext(Ce),t=e[e.length-1];return t?t.params:{}}function vt(e,{relative:t}={}){let{matches:r}=d.useContext(Ce),{pathname:n}=Le(),a=JSON.stringify(Er(r));return d.useMemo(()=>Rr(e,JSON.parse(a),n,t==="path"),[e,a,n,t])}function Ei(e,t,r,n,a){Y(yt(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:o}=d.useContext(Re),{matches:i}=d.useContext(Ce),l=i[i.length-1],s=l?l.params:{},u=l?l.pathname:"/",h=l?l.pathnameBase:"/",c=l&&l.route;{let R=c&&c.path||"";ua(u,!c||R.endsWith("*")||R.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${u}" (under <Route path="${R}">) 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.
|
|
3
|
+
|
|
4
|
+
Please change the parent <Route path="${R}"> to <Route path="${R==="/"?"*":`${R}/*`}">.`)}let p=Le(),g;g=p;let b=g.pathname||"/",S=b;if(h!=="/"){let R=h.replace(/^\//,"").split("/");S="/"+b.replace(/^\//,"").split("/").slice(R.length).join("/")}let E=Ae(e,{pathname:S});return oe(c||E!=null,`No routes matched location "${g.pathname}${g.search}${g.hash}" `),oe(E==null||E[E.length-1].route.element!==void 0||E[E.length-1].route.Component!==void 0||E[E.length-1].route.lazy!==void 0,`Matched leaf route at location "${g.pathname}${g.search}${g.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.`),Ci(E&&E.map(R=>Object.assign({},R,{params:Object.assign({},s,R.params),pathname:Te([h,o.encodeLocation?o.encodeLocation(R.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:R.pathname]),pathnameBase:R.pathnameBase==="/"?h:Te([h,o.encodeLocation?o.encodeLocation(R.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:R.pathnameBase])})),i,r,n,a)}function Ri(){let e=Mr(),t=Ve(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:n},o={padding:"2px 4px",backgroundColor:n},i=null;return console.error("Error handled by React Router default ErrorBoundary:",e),i=d.createElement(d.Fragment,null,d.createElement("p",null,"💿 Hey developer 👋"),d.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",d.createElement("code",{style:o},"ErrorBoundary")," or"," ",d.createElement("code",{style:o},"errorElement")," prop on your route.")),d.createElement(d.Fragment,null,d.createElement("h2",null,"Unexpected Application Error!"),d.createElement("h3",{style:{fontStyle:"italic"}},t),r?d.createElement("pre",{style:a},r):null,i)}var bi=d.createElement(Ri,null),oa=class extends d.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||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?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&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const r=pi(e.digest);r&&(e=r)}let t=e!==void 0?d.createElement(Ce.Provider,{value:this.props.routeContext},d.createElement(Lr.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?d.createElement(Si,{error:e},t):t}};oa.contextType=Qn;var tr=new WeakMap;function Si({children:e,error:t}){let{basename:r}=d.useContext(Re);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let n=mi(t.digest);if(n){let a=tr.get(t);if(a)throw a;let o=jn(n.location,r);if($n&&!tr.get(t))if(o.isExternal||n.reloadDocument)window.location.href=o.absoluteURL||o.to;else{const i=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:n.replace}));throw tr.set(t,i),i}return d.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function xi({routeContext:e,match:t,children:r}){let n=d.useContext(Je);return n&&n.static&&n.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(n.staticContext._deepestRenderedBoundaryId=t.route.id),d.createElement(Ce.Provider,{value:e},r)}function Ci(e,t=[],r=null,n=null,a=null){if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let o=e,i=r?.errors;if(i!=null){let h=o.findIndex(c=>c.route.id&&i?.[c.route.id]!==void 0);Y(h>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(i).join(",")}`),o=o.slice(0,Math.min(o.length,h+1))}let l=!1,s=-1;if(r)for(let h=0;h<o.length;h++){let c=o[h];if((c.route.HydrateFallback||c.route.hydrateFallbackElement)&&(s=h),c.route.id){let{loaderData:p,errors:g}=r,b=c.route.loader&&!p.hasOwnProperty(c.route.id)&&(!g||g[c.route.id]===void 0);if(c.route.lazy||b){l=!0,s>=0?o=o.slice(0,s+1):o=[o[0]];break}}}let u=r&&n?(h,c)=>{n(h,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:pt(r.matches),errorInfo:c})}:void 0;return o.reduceRight((h,c,p)=>{let g,b=!1,S=null,E=null;r&&(g=i&&c.route.id?i[c.route.id]:void 0,S=c.route.errorElement||bi,l&&(s<0&&p===0?(ua("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),b=!0,E=null):s===p&&(b=!0,E=c.route.hydrateFallbackElement||null)));let L=t.concat(o.slice(0,p+1)),R=()=>{let T;return g?T=S:b?T=E:c.route.Component?T=d.createElement(c.route.Component,null):c.route.element?T=c.route.element:T=h,d.createElement(xi,{match:c,routeContext:{outlet:h,matches:L,isDataRoute:r!=null},children:T})};return r&&(c.route.ErrorBoundary||c.route.errorElement||p===0)?d.createElement(oa,{location:r.location,revalidation:r.revalidation,component:S,error:g,children:R(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:u}):R()},null)}function Pr(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function ia(e){let t=d.useContext(Je);return Y(t,Pr(e)),t}function Ge(e){let t=d.useContext(tt);return Y(t,Pr(e)),t}function Li(e){let t=d.useContext(Ce);return Y(t,Pr(e)),t}function gt(e){let t=Li(e),r=t.matches[t.matches.length-1];return Y(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}function Pi(){return gt("useRouteId")}function Ti(){return Ge("useNavigation").navigation}function Tr(){let{matches:e,loaderData:t}=Ge("useMatches");return d.useMemo(()=>e.map(r=>On(r,t)),[e,t])}function la(){let e=Ge("useLoaderData"),t=gt("useLoaderData");return e.loaderData[t]}function ms(e){return Ge("useRouteLoaderData").loaderData[e]}function sa(){let e=Ge("useActionData"),t=gt("useLoaderData");return e.actionData?e.actionData[t]:void 0}function Mr(){let e=d.useContext(Lr),t=Ge("useRouteError"),r=gt("useRouteError");return e!==void 0?e:t.errors?.[r]}var Mi=0;function ps(e){let{router:t,basename:r}=ia("useBlocker"),n=Ge("useBlocker"),[a,o]=d.useState(""),i=d.useCallback(l=>{if(typeof e!="function")return!!e;if(r==="/")return e(l);let{currentLocation:s,nextLocation:u,historyAction:h}=l;return e({currentLocation:{...s,pathname:Ee(s.pathname,r)||s.pathname},nextLocation:{...u,pathname:Ee(u.pathname,r)||u.pathname},historyAction:h})},[r,e]);return d.useEffect(()=>{let l=String(++Mi);return o(l),()=>t.deleteBlocker(l)},[t]),d.useEffect(()=>{a!==""&&t.getBlocker(a,i)},[t,a,i]),a&&n.blockers.has(a)?n.blockers.get(a):qe}function Di(){let{router:e}=ia("useNavigate"),t=gt("useNavigate"),r=d.useRef(!1);return ra(()=>{r.current=!0}),d.useCallback(async(a,o={})=>{oe(r.current,ta),r.current&&(typeof a=="number"?await e.navigate(a):await e.navigate(a,{fromRouteId:t,...o}))},[e,t])}var Rn={};function ua(e,t,r){!t&&!Rn[e]&&(Rn[e]=!0,oe(!1,r))}var bn={};function dr(e,t){!e&&!bn[t]&&(bn[t]=!0,console.warn(t))}var _i="useOptimistic",Sn=eo[_i],Oi=()=>{};function Ii(e){return Sn?Sn(e):[e,Oi]}function ys(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&oe(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:d.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&oe(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:d.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&oe(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:d.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var vs=["HydrateFallback","hydrateFallbackElement"],Ai=class{constructor(){this.status="pending",this.promise=new Promise((e,t)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",e(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",t(r))}})}};function gs({router:e,flushSync:t,onError:r,unstable_useTransitions:n}){n=Zn()||n;let[o,i]=d.useState(e.state),[l,s]=Ii(o),[u,h]=d.useState(),[c,p]=d.useState({isTransitioning:!1}),[g,b]=d.useState(),[S,E]=d.useState(),[L,R]=d.useState(),T=d.useRef(new Map),D=d.useCallback((O,{deletedFetchers:z,newErrors:K,flushSync:V,viewTransitionOpts:ae})=>{K&&r&&Object.values(K).forEach(ne=>r(ne,{location:O.location,params:O.matches[0]?.params??{},unstable_pattern:pt(O.matches)})),O.fetchers.forEach((ne,Z)=>{ne.data!==void 0&&T.current.set(Z,ne.data)}),z.forEach(ne=>T.current.delete(ne)),dr(V===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let se=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition=="function";if(dr(ae==null||se,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!ae||!se){t&&V?t(()=>i(O)):n===!1?i(O):d.startTransition(()=>{n===!0&&s(ne=>xn(ne,O)),i(O)});return}if(t&&V){t(()=>{S&&(g?.resolve(),S.skipTransition()),p({isTransitioning:!0,flushSync:!0,currentLocation:ae.currentLocation,nextLocation:ae.nextLocation})});let ne=e.window.document.startViewTransition(()=>{t(()=>i(O))});ne.finished.finally(()=>{t(()=>{b(void 0),E(void 0),h(void 0),p({isTransitioning:!1})})}),t(()=>E(ne));return}S?(g?.resolve(),S.skipTransition(),R({state:O,currentLocation:ae.currentLocation,nextLocation:ae.nextLocation})):(h(O),p({isTransitioning:!0,flushSync:!1,currentLocation:ae.currentLocation,nextLocation:ae.nextLocation}))},[e.window,t,S,g,n,s,r]);d.useLayoutEffect(()=>e.subscribe(D),[e,D]),d.useEffect(()=>{c.isTransitioning&&!c.flushSync&&b(new Ai)},[c]),d.useEffect(()=>{if(g&&u&&e.window){let O=u,z=g.promise,K=e.window.document.startViewTransition(async()=>{n===!1?i(O):d.startTransition(()=>{n===!0&&s(V=>xn(V,O)),i(O)}),await z});K.finished.finally(()=>{b(void 0),E(void 0),h(void 0),p({isTransitioning:!1})}),E(K)}},[u,g,e.window,n,s]),d.useEffect(()=>{g&&u&&l.location.key===u.location.key&&g.resolve()},[g,S,l.location,u]),d.useEffect(()=>{!c.isTransitioning&&L&&(h(L.state),p({isTransitioning:!0,flushSync:!1,currentLocation:L.currentLocation,nextLocation:L.nextLocation}),R(void 0))},[c.isTransitioning,L]);let M=d.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:O=>e.navigate(O),push:(O,z,K)=>e.navigate(O,{state:z,preventScrollReset:K?.preventScrollReset}),replace:(O,z,K)=>e.navigate(O,{replace:!0,state:z,preventScrollReset:K?.preventScrollReset})}),[e]),_=e.basename||"/",v=d.useMemo(()=>({router:e,navigator:M,static:!1,basename:_,onError:r}),[e,M,_,r]);return d.createElement(d.Fragment,null,d.createElement(Je.Provider,{value:v},d.createElement(tt.Provider,{value:l},d.createElement(Cr.Provider,{value:T.current},d.createElement(xr.Provider,{value:c},d.createElement(Fi,{basename:_,location:l.location,navigationType:l.historyAction,navigator:M,unstable_useTransitions:n},d.createElement(Ni,{routes:e.routes,future:e.future,state:l,onError:r})))))),null)}function xn(e,t){return{...e,navigation:t.navigation.state!=="idle"?t.navigation:e.navigation,revalidation:t.revalidation!=="idle"?t.revalidation:e.revalidation,actionData:t.navigation.state!=="submitting"?t.actionData:e.actionData,fetchers:t.fetchers}}var Ni=d.memo(ki);function ki({routes:e,future:t,state:r,onError:n}){return Ei(e,void 0,r,n,t)}function ws(e){return wi(e.context)}function Fi({basename:e="/",children:t=null,location:r,navigationType:n="POP",navigator:a,static:o=!1,unstable_useTransitions:i}){Y(!yt(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let l=e.replace(/^\/*/,"/"),s=d.useMemo(()=>({basename:l,navigator:a,static:o,unstable_useTransitions:i,future:{}}),[l,a,o,i]);typeof r=="string"&&(r=$e(r));let{pathname:u="/",search:h="",hash:c="",state:p=null,key:g="default"}=r,b=d.useMemo(()=>{let S=Ee(u,l);return S==null?null:{location:{pathname:S,search:h,hash:c,state:p,key:g},navigationType:n}},[l,u,h,c,p,g,n]);return oe(b!=null,`<Router basename="${l}"> is not able to match the URL "${u}${h}${c}" because it does not start with the basename, so the <Router> won't render anything.`),b==null?null:d.createElement(Re.Provider,{value:s},d.createElement(jt.Provider,{children:t,value:b}))}function $i(){return{params:aa(),loaderData:la(),actionData:sa(),matches:Tr()}}function Es(e){return function(){const r=$i();return d.createElement(e,r)}}function ji(){return{params:aa(),loaderData:la(),actionData:sa(),error:Mr()}}function Rs(e){return function(){const r=ji();return d.createElement(e,r)}}var Ot="get",It="application/x-www-form-urlencoded";function Ut(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function Ui(e){return Ut(e)&&e.tagName.toLowerCase()==="button"}function Hi(e){return Ut(e)&&e.tagName.toLowerCase()==="form"}function zi(e){return Ut(e)&&e.tagName.toLowerCase()==="input"}function Bi(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Wi(e,t){return e.button===0&&(!t||t==="_self")&&!Bi(e)}function fr(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map(a=>[r,a]):[[r,n]])},[]))}function Yi(e,t){let r=fr(e);return t&&t.forEach((n,a)=>{r.has(a)||t.getAll(a).forEach(o=>{r.append(a,o)})}),r}var Pt=null;function Vi(){if(Pt===null)try{new FormData(document.createElement("form"),0),Pt=!1}catch{Pt=!0}return Pt}var Ji=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function rr(e){return e!=null&&!Ji.has(e)?(oe(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${It}"`),null):e}function Gi(e,t){let r,n,a,o,i;if(Hi(e)){let l=e.getAttribute("action");n=l?Ee(l,t):null,r=e.getAttribute("method")||Ot,a=rr(e.getAttribute("enctype"))||It,o=new FormData(e)}else if(Ui(e)||zi(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||l.getAttribute("action");if(n=s?Ee(s,t):null,r=e.getAttribute("formmethod")||l.getAttribute("method")||Ot,a=rr(e.getAttribute("formenctype"))||rr(l.getAttribute("enctype"))||It,o=new FormData(l,e),!Vi()){let{name:u,type:h,value:c}=e;if(h==="image"){let p=u?`${u}.`:"";o.append(`${p}x`,"0"),o.append(`${p}y`,"0")}else u&&o.append(u,c)}}else{if(Ut(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=Ot,n=null,a=It,i=e}return o&&a==="text/plain"&&(i=o,o=void 0),{action:n,method:r.toLowerCase(),encType:a,formData:o,body:i}}var Ki=-1,Xi=-2,qi=-3,Qi=-4,Zi=-5,el=-6,tl=-7,rl="B",nl="D",ca="E",al="M",ol="N",da="P",il="R",ll="S",sl="Y",ul="U",cl="Z",fa=class{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}};function dl(){const e=new TextDecoder;let t="";return new TransformStream({transform(r,n){const a=e.decode(r,{stream:!0}),o=(t+a).split(`
|
|
5
|
+
`);t=o.pop()||"";for(const i of o)n.enqueue(i)},flush(r){t&&r.enqueue(t)}})}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var nr=typeof window<"u"?window:typeof globalThis<"u"?globalThis:void 0;function hr(e){const{hydrated:t,values:r}=this;if(typeof e=="number")return Cn.call(this,e);if(!Array.isArray(e)||!e.length)throw new SyntaxError;const n=r.length;for(const a of e)r.push(a);return t.length=r.length,Cn.call(this,n)}function Cn(e){const{hydrated:t,values:r,deferred:n,plugins:a}=this;let o;const i=[[e,s=>{o=s}]];let l=[];for(;i.length>0;){const[s,u]=i.pop();switch(s){case tl:u(void 0);continue;case Zi:u(null);continue;case Xi:u(NaN);continue;case el:u(1/0);continue;case qi:u(-1/0);continue;case Qi:u(-0);continue}if(t[s]){u(t[s]);continue}const h=r[s];if(!h||typeof h!="object"){t[s]=h,u(h);continue}if(Array.isArray(h))if(typeof h[0]=="string"){const[c,p,g]=h;switch(c){case nl:u(t[s]=new Date(p));continue;case ul:u(t[s]=new URL(p));continue;case rl:u(t[s]=BigInt(p));continue;case il:u(t[s]=new RegExp(p,g));continue;case sl:u(t[s]=Symbol.for(p));continue;case ll:const b=new Set;t[s]=b;for(let D=h.length-1;D>0;D--)i.push([h[D],M=>{b.add(M)}]);u(b);continue;case al:const S=new Map;t[s]=S;for(let D=h.length-2;D>0;D-=2){const M=[];i.push([h[D+1],_=>{M[1]=_}]),i.push([h[D],_=>{M[0]=_}]),l.push(()=>{S.set(M[0],M[1])})}u(S);continue;case ol:const E=Object.create(null);t[s]=E;for(const D of Object.keys(p).reverse()){const M=[];i.push([p[D],_=>{M[1]=_}]),i.push([Number(D.slice(1)),_=>{M[0]=_}]),l.push(()=>{E[M[0]]=M[1]})}u(E);continue;case da:if(t[p])u(t[s]=t[p]);else{const D=new fa;n[p]=D,u(t[s]=D.promise)}continue;case ca:const[,L,R]=h;let T=R&&nr&&nr[R]?new nr[R](L):new Error(L);t[s]=T,u(T);continue;case cl:u(t[s]=t[p]);continue;default:if(Array.isArray(a)){const D=[],M=h.slice(1);for(let _=0;_<M.length;_++){const v=M[_];i.push([v,O=>{D[_]=O}])}l.push(()=>{for(const _ of a){const v=_(h[0],...D);if(v){u(t[s]=v.value);return}}throw new SyntaxError});continue}throw new SyntaxError}}else{const c=[];t[s]=c;for(let p=0;p<h.length;p++){const g=h[p];g!==Ki&&i.push([g,b=>{c[p]=b}])}u(c);continue}else{const c={};t[s]=c;for(const p of Object.keys(h).reverse()){const g=[];i.push([h[p],b=>{g[1]=b}]),i.push([Number(p.slice(1)),b=>{g[0]=b}]),l.push(()=>{c[g[0]]=g[1]})}u(c);continue}}for(;l.length>0;)l.pop()();return o}async function fl(e,t){const{plugins:r}=t??{},n=new fa,a=e.pipeThrough(dl()).getReader(),o={values:[],hydrated:[],deferred:{},plugins:r},i=await hl.call(o,a);let l=n.promise;return i.done?n.resolve():l=ml.call(o,a).then(n.resolve).catch(s=>{for(const u of Object.values(o.deferred))u.reject(s);n.reject(s)}),{done:l.then(()=>a.closed),value:i.value}}async function hl(e){const t=await e.read();if(!t.value)throw new SyntaxError;let r;try{r=JSON.parse(t.value)}catch{throw new SyntaxError}return{done:t.done,value:hr.call(this,r)}}async function ml(e){let t=await e.read();for(;!t.done;){if(!t.value)continue;const r=t.value;switch(r[0]){case da:{const n=r.indexOf(":"),a=Number(r.slice(1,n)),o=this.deferred[a];if(!o)throw new Error(`Deferred ID ${a} not found in stream`);const i=r.slice(n+1);let l;try{l=JSON.parse(i)}catch{throw new SyntaxError}const s=hr.call(this,l);o.resolve(s);break}case ca:{const n=r.indexOf(":"),a=Number(r.slice(1,n)),o=this.deferred[a];if(!o)throw new Error(`Deferred ID ${a} not found in stream`);const i=r.slice(n+1);let l;try{l=JSON.parse(i)}catch{throw new SyntaxError}const s=hr.call(this,l);o.reject(s);break}default:throw new SyntaxError}t=await e.read()}}async function pl(e){let t={signal:e.signal};if(e.method!=="GET"){t.method=e.method;let r=e.headers.get("Content-Type");r&&/\bapplication\/json\b/.test(r)?(t.headers={"Content-Type":r},t.body=JSON.stringify(await e.json())):r&&/\btext\/plain\b/.test(r)?(t.headers={"Content-Type":r},t.body=await e.text()):r&&/\bapplication\/x-www-form-urlencoded\b/.test(r)?t.body=new URLSearchParams(await e.text()):t.body=await e.formData()}return t}var yl={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},vl=/[&><\u2028\u2029]/g;function mr(e){return e.replace(vl,t=>yl[t])}function we(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}var pr=Symbol("SingleFetchRedirect"),ha=class extends Error{},gl=202,wl=new Set([100,101,204,205]);function bs(e,t,r,n,a,o){let i=El(e,l=>{let s=t.routes[l.route.id];we(s,"Route not found in manifest");let u=r[l.route.id];return{hasLoader:s.hasLoader,hasClientLoader:s.hasClientLoader,hasShouldRevalidate:!!u?.shouldRevalidate}},Pl,n,a,o);return async l=>l.runClientMiddleware(i)}function El(e,t,r,n,a,o,i=()=>!0){return async l=>{let{request:s,matches:u,fetcherKey:h}=l,c=e();if(s.method!=="GET")return Rl(l,r,a,o);let p=u.some(g=>{let{hasLoader:b,hasClientLoader:S}=t(g);return g.shouldCallHandler()&&b&&!S});return!n&&!p?bl(l,t,r,a,o):h?Cl(l,r,a,o):Sl(l,c,t,r,n,a,o,i)}}async function Rl(e,t,r,n){let a=e.matches.find(l=>l.shouldCallHandler());we(a,"No action match found");let o,i=await a.resolve(async l=>await l(async()=>{let{data:u,status:h}=await t(e,r,n,[a.route.id]);return o=h,mt(u,a.route.id)}));return $t(i.result)||Ve(i.result)||cr(i.result)?{[a.route.id]:i}:{[a.route.id]:{type:i.type,result:To(i.result,o)}}}async function bl(e,t,r,n,a){let o=e.matches.filter(l=>l.shouldCallHandler()),i={};return await Promise.all(o.map(l=>l.resolve(async s=>{try{let{hasClientLoader:u}=t(l),h=l.route.id,c=u?await s(async()=>{let{data:p}=await r(e,n,a,[h]);return mt(p,h)}):await s();i[l.route.id]={type:"data",result:c}}catch(u){i[l.route.id]={type:"error",result:u}}}))),i}async function Sl(e,t,r,n,a,o,i,l=()=>!0){let s=new Set,u=!1,h=e.matches.map(()=>Ln()),c=Ln(),p={},g=Promise.all(e.matches.map(async(S,E)=>S.resolve(async L=>{h[E].resolve();let R=S.route.id,{hasLoader:T,hasClientLoader:D,hasShouldRevalidate:M}=r(S),_=!S.shouldRevalidateArgs||S.shouldRevalidateArgs.actionStatus==null||S.shouldRevalidateArgs.actionStatus<400;if(!S.shouldCallHandler(_)){u||(u=S.shouldRevalidateArgs!=null&&T&&M===!0);return}if(l(S)&&D){T&&(u=!0);try{let O=await L(async()=>{let{data:z}=await n(e,o,i,[R]);return mt(z,R)});p[R]={type:"data",result:O}}catch(O){p[R]={type:"error",result:O}}return}T&&s.add(R);try{let O=await L(async()=>{let z=await c.promise;return mt(z,R)});p[R]={type:"data",result:O}}catch(O){p[R]={type:"error",result:O}}})));if(await Promise.all(h.map(S=>S.promise)),(!t.state.initialized&&t.state.navigation.state==="idle"||s.size===0)&&!window.__reactRouterHdrActive)c.resolve({routes:{}});else{let S=a&&u&&s.size>0?[...s.keys()]:void 0;try{let E=await n(e,o,i,S);c.resolve(E.data)}catch(E){c.reject(E)}}return await g,await xl(c.promise,e.matches,s,p),p}async function xl(e,t,r,n){try{let a,o=await e;if("routes"in o){for(let i of t)if(i.route.id in o.routes){let l=o.routes[i.route.id];if("error"in l){a=l.error,n[i.route.id]?.result==null&&(n[i.route.id]={type:"error",result:a});break}}}a!==void 0&&Array.from(r.values()).forEach(i=>{n[i].result instanceof ha&&(n[i].result=a)})}catch{}}async function Cl(e,t,r,n){let a=e.matches.find(l=>l.shouldCallHandler());we(a,"No fetcher match found");let o=a.route.id,i=await a.resolve(async l=>l(async()=>{let{data:s}=await t(e,r,n,[o]);return mt(s,o)}));return{[a.route.id]:i}}function Ll(e){let t=e.searchParams.getAll("index");e.searchParams.delete("index");let r=[];for(let n of t)n&&r.push(n);for(let n of r)e.searchParams.append("index",n);return e}function ma(e,t,r,n){let a=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return r?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${n}`:a.pathname=`${a.pathname}.${n}`:a.pathname==="/"?a.pathname=`_root.${n}`:t&&Ee(a.pathname,t)==="/"?a.pathname=`${t.replace(/\/$/,"")}/_root.${n}`:a.pathname=`${a.pathname.replace(/\/$/,"")}.${n}`,a}async function Pl(e,t,r,n){let{request:a}=e,o=ma(a.url,t,r,"data");a.method==="GET"&&(o=Ll(o),n&&o.searchParams.set("_routes",n.join(",")));let i=await fetch(o,await pl(a));if(i.status>=400&&!i.headers.has("X-Remix-Response"))throw new je(i.status,i.statusText,await i.text());if(i.status===204&&i.headers.has("X-Remix-Redirect"))return{status:gl,data:{redirect:{redirect:i.headers.get("X-Remix-Redirect"),status:Number(i.headers.get("X-Remix-Status")||"302"),revalidate:i.headers.get("X-Remix-Revalidate")==="true",reload:i.headers.get("X-Remix-Reload-Document")==="true",replace:i.headers.get("X-Remix-Replace")==="true"}}};if(wl.has(i.status)){let l={};return n&&a.method!=="GET"&&(l[n[0]]={data:void 0}),{status:i.status,data:{routes:l}}}we(i.body,"No response body to decode");try{let l=await Tl(i.body,window),s;if(a.method==="GET"){let u=l.value;pr in u?s={redirect:u[pr]}:s={routes:u}}else{let u=l.value,h=n?.[0];we(h,"No routeId found for single fetch call decoding"),"redirect"in u?s={redirect:u}:s={routes:{[h]:u}}}return{status:i.status,data:s}}catch{throw new Error("Unable to decode turbo-stream response")}}function Tl(e,t){return fl(e,{plugins:[(r,...n)=>{if(r==="SanitizedError"){let[a,o,i]=n,l=Error;a&&a in t&&typeof t[a]=="function"&&(l=t[a]);let s=new l(o);return s.stack=i,{value:s}}if(r==="ErrorResponse"){let[a,o,i]=n;return{value:new je(o,i,a)}}if(r==="SingleFetchRedirect")return{value:{[pr]:n[0]}};if(r==="SingleFetchClassInstance")return{value:n[0]};if(r==="SingleFetchFallback")return{value:void 0}}]})}function mt(e,t){if("redirect"in e){let{redirect:n,revalidate:a,reload:o,replace:i,status:l}=e.redirect;throw Mo(n,{status:l,headers:{...a?{"X-Remix-Revalidate":"yes"}:null,...o?{"X-Remix-Reload-Document":"yes"}:null,...i?{"X-Remix-Replace":"yes"}:null}})}let r=e.routes[t];if(r==null)throw new ha(`No result found for routeId "${t}"`);if("error"in r)throw r.error;if("data"in r)return r.data;throw new Error(`Invalid response found for routeId "${t}"`)}function Ln(){let e,t,r=new Promise((n,a)=>{e=async o=>{n(o);try{await r}catch{}},t=async o=>{a(o);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}async function pa(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Ml(e,t,r){let n=e.map(o=>{let i=t[o.route.id],l=r.routes[o.route.id];return[l&&l.css?l.css.map(s=>({rel:"stylesheet",href:s})):[],i?.links?.()||[]]}).flat(2),a=_r(e,r);return wa(n,a)}function ya(e){return e.css?e.css.map(t=>({rel:"stylesheet",href:t})):[]}async function Dl(e){if(!e.css)return;let t=ya(e);await Promise.all(t.map(ga))}async function va(e,t){if(!e.css&&!t.links||!Nl())return;let r=[];if(e.css&&r.push(...ya(e)),t.links&&r.push(...t.links()),r.length===0)return;let n=[];for(let a of r)!Dr(a)&&a.rel==="stylesheet"&&n.push({...a,rel:"preload",as:"style"});await Promise.all(n.map(ga))}async function ga(e){return new Promise(t=>{if(e.media&&!window.matchMedia(e.media).matches||document.querySelector(`link[rel="stylesheet"][href="${e.href}"]`))return t();let r=document.createElement("link");Object.assign(r,e);function n(){document.head.contains(r)&&document.head.removeChild(r)}r.onload=()=>{n(),t()},r.onerror=()=>{n(),t()},document.head.appendChild(r)})}function Dr(e){return e!=null&&typeof e.page=="string"}function _l(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Ol(e,t,r){let n=await Promise.all(e.map(async a=>{let o=t.routes[a.route.id];if(o){let i=await pa(o,r);return i.links?i.links():[]}return[]}));return wa(n.flat(1).filter(_l).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function Pn(e,t,r,n,a,o){let i=(s,u)=>r[u]?s.route.id!==r[u].route.id:!0,l=(s,u)=>r[u].pathname!==s.pathname||r[u].route.path?.endsWith("*")&&r[u].params["*"]!==s.params["*"];return o==="assets"?t.filter((s,u)=>i(s,u)||l(s,u)):o==="data"?t.filter((s,u)=>{let h=n.routes[s.route.id];if(!h||!h.hasLoader)return!1;if(i(s,u)||l(s,u))return!0;if(s.route.shouldRevalidate){let c=s.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:s.params,defaultShouldRevalidate:!0});if(typeof c=="boolean")return c}return!0}):[]}function _r(e,t,{includeHydrateFallback:r}={}){return Il(e.map(n=>{let a=t.routes[n.route.id];if(!a)return[];let o=[a.module];return a.clientActionModule&&(o=o.concat(a.clientActionModule)),a.clientLoaderModule&&(o=o.concat(a.clientLoaderModule)),r&&a.hydrateFallbackModule&&(o=o.concat(a.hydrateFallbackModule)),a.imports&&(o=o.concat(a.imports)),o}).flat(1))}function Il(e){return[...new Set(e)]}function Al(e){let t={},r=Object.keys(e).sort();for(let n of r)t[n]=e[n];return t}function wa(e,t){let r=new Set,n=new Set(t);return e.reduce((a,o)=>{if(t&&!Dr(o)&&o.as==="script"&&o.href&&n.has(o.href))return a;let l=JSON.stringify(Al(o));return r.has(l)||(r.add(l),a.push({key:l,link:o})),a},[])}var Tt;function Nl(){if(Tt!==void 0)return Tt;let e=document.createElement("link");return Tt=e.relList.supports("preload"),e=null,Tt}function kl(){return d.createElement(yr,{title:"Loading...",renderScripts:!0},d.createElement("script",{dangerouslySetInnerHTML:{__html:`
|
|
6
|
+
console.log(
|
|
7
|
+
"💿 Hey developer 👋. You can provide a way better UX than this " +
|
|
8
|
+
"when your app is loading JS modules and/or running \`clientLoader\` " +
|
|
9
|
+
"functions. Check out https://reactrouter.com/start/framework/route-module#hydratefallback " +
|
|
10
|
+
"for more information."
|
|
11
|
+
);
|
|
12
|
+
`}}))}function Ea(e){let t={};return Object.values(e).forEach(r=>{if(r){let n=r.parentId||"";t[n]||(t[n]=[]),t[n].push(r)}}),t}function Fl(e,t,r){let n=Ra(t),a=t.HydrateFallback&&(!r||e.id==="root")?t.HydrateFallback:e.id==="root"?kl:void 0,o=t.ErrorBoundary?t.ErrorBoundary:e.id==="root"?()=>d.createElement(xa,{error:Mr()}):void 0;return e.id==="root"&&t.Layout?{...n?{element:d.createElement(t.Layout,null,d.createElement(n,null))}:{Component:n},...o?{errorElement:d.createElement(t.Layout,null,d.createElement(o,null))}:{ErrorBoundary:o},...a?{hydrateFallbackElement:d.createElement(t.Layout,null,d.createElement(a,null))}:{HydrateFallback:a}}:{Component:n,ErrorBoundary:o,HydrateFallback:a}}function Ss(e,t,r,n,a,o){return Or(t,r,n,a,o,"",Ea(t),e)}function Mt(e,t){if(e==="loader"&&!t.hasLoader||e==="action"&&!t.hasAction){let n=`You are trying to call ${e==="action"?"serverAction()":"serverLoader()"} on a route that does not have a server ${e} (routeId: "${t.id}")`;throw console.error(n),new je(400,"Bad Request",new Error(n),!0)}}function ar(e,t){let r=e==="clientAction"?"a":"an",n=`Route "${t}" does not have ${r} ${e}, but you are trying to submit to it. To fix this, please add ${r} \`${e}\` function to the route`;throw console.error(n),new je(405,"Method Not Allowed",new Error(n),!0)}function Or(e,t,r,n,a,o="",i=Ea(e),l){return(i[o]||[]).map(s=>{let u=t[s.id];function h(R){return we(typeof R=="function","No single fetch function available for route handler"),R()}function c(R){return s.hasLoader?h(R):Promise.resolve(null)}function p(R){if(!s.hasAction)throw ar("action",s.id);return h(R)}function g(R){import(R)}function b(R){R.clientActionModule&&g(R.clientActionModule),R.clientLoaderModule&&g(R.clientLoaderModule)}async function S(R){let T=t[s.id],D=T?va(s,T):Promise.resolve();try{return R()}finally{await D}}let E={id:s.id,index:s.index,path:s.path};if(u){Object.assign(E,{...E,...Fl(s,u,a),middleware:u.clientMiddleware,handle:u.handle,shouldRevalidate:Tn(E.path,u,s,n,l)});let R=r&&r.loaderData&&s.id in r.loaderData,T=R?r?.loaderData?.[s.id]:void 0,D=r&&r.errors&&s.id in r.errors,M=D?r?.errors?.[s.id]:void 0,_=l==null&&(u.clientLoader?.hydrate===!0||!s.hasLoader);E.loader=async({request:v,params:O,context:z,unstable_pattern:K},V)=>{try{return await S(async()=>(we(u,"No `routeModule` available for critical-route loader"),u.clientLoader?u.clientLoader({request:v,params:O,context:z,unstable_pattern:K,async serverLoader(){if(Mt("loader",s),_){if(R)return T;if(D)throw M}return c(V)}}):c(V)))}finally{_=!1}},E.loader.hydrate=Ul(s.id,u.clientLoader,s.hasLoader,a),E.action=({request:v,params:O,context:z,unstable_pattern:K},V)=>S(async()=>{if(we(u,"No `routeModule` available for critical-route action"),!u.clientAction){if(a)throw ar("clientAction",s.id);return p(V)}return u.clientAction({request:v,params:O,context:z,unstable_pattern:K,async serverAction(){return Mt("action",s),p(V)}})})}else{s.hasClientLoader||(E.loader=(D,M)=>S(()=>c(M))),s.hasClientAction||(E.action=(D,M)=>S(()=>{if(a)throw ar("clientAction",s.id);return p(M)}));let R;async function T(){return R?await R:(R=(async()=>{(s.clientLoaderModule||s.clientActionModule)&&await new Promise(M=>setTimeout(M,0));let D=jl(s,t);return b(s),await D})(),await R)}E.lazy={loader:s.hasClientLoader?async()=>{let{clientLoader:D}=s.clientLoaderModule?await import(s.clientLoaderModule):await T();return we(D,"No `clientLoader` export found"),(M,_)=>D({...M,async serverLoader(){return Mt("loader",s),c(_)}})}:void 0,action:s.hasClientAction?async()=>{let D=s.clientActionModule?import(s.clientActionModule):T();b(s);let{clientAction:M}=await D;return we(M,"No `clientAction` export found"),(_,v)=>M({..._,async serverAction(){return Mt("action",s),p(v)}})}:void 0,middleware:s.hasClientMiddleware?async()=>{let{clientMiddleware:D}=s.clientMiddlewareModule?await import(s.clientMiddlewareModule):await T();return we(D,"No `clientMiddleware` export found"),D}:void 0,shouldRevalidate:async()=>{let D=await T();return Tn(E.path,D,s,n,l)},handle:async()=>(await T()).handle,Component:async()=>(await T()).Component,ErrorBoundary:s.hasErrorBoundary?async()=>(await T()).ErrorBoundary:void 0}}let L=Or(e,t,r,n,a,s.id,i,l);return L.length>0&&(E.children=L),E})}function Tn(e,t,r,n,a){if(a)return $l(r.id,t.shouldRevalidate,a);if(!n&&r.hasLoader&&!r.hasClientLoader){let o=e?Nn(e)[1].map(l=>l.paramName):[];const i=l=>o.some(s=>l.currentParams[s]!==l.nextParams[s]);if(t.shouldRevalidate){let l=t.shouldRevalidate;return s=>l({...s,defaultShouldRevalidate:i(s)})}else return l=>i(l)}return t.shouldRevalidate}function $l(e,t,r){let n=!1;return a=>n?t?t(a):a.defaultShouldRevalidate:(n=!0,r.has(e))}async function jl(e,t){let r=pa(e,t),n=Dl(e),a=await r;return await Promise.all([n,va(e,a)]),{Component:Ra(a),ErrorBoundary:a.ErrorBoundary,clientMiddleware:a.clientMiddleware,clientAction:a.clientAction,clientLoader:a.clientLoader,handle:a.handle,links:a.links,meta:a.meta,shouldRevalidate:a.shouldRevalidate}}function Ra(e){if(e.default==null)return;if(!(typeof e.default=="object"&&Object.keys(e.default).length===0))return e.default}function Ul(e,t,r,n){return n&&e!=="root"||t!=null&&(t.hydrate===!0||r!==!0)}var At=new Set,Hl=1e3,kt=new Set,zl=7680;function Ir(e,t){return e.mode==="lazy"&&t===!0}function Bl({sri:e,...t},r){let n=new Set(r.state.matches.map(l=>l.route.id)),a=r.state.location.pathname.split("/").filter(Boolean),o=["/"];for(a.pop();a.length>0;)o.push(`/${a.join("/")}`),a.pop();o.forEach(l=>{let s=Ae(r.routes,l,r.basename);s&&s.forEach(u=>n.add(u.route.id))});let i=[...n].reduce((l,s)=>Object.assign(l,{[s]:t.routes[s]}),{});return{...t,routes:i,sri:e?!0:void 0}}function xs(e,t,r,n,a,o){if(Ir(n,r))return async({path:i,patch:l,signal:s,fetcherKey:u})=>{kt.has(i)||await ba([i],u?window.location.href:i,e,t,r,a,o,n.manifestPath,l,s)}}function Cs(e,t,r,n,a,o){d.useEffect(()=>{if(!Ir(a,n)||window.navigator?.connection?.saveData===!0)return;function i(h){let c=h.tagName==="FORM"?h.getAttribute("action"):h.getAttribute("href");if(!c)return;let p=h.tagName==="A"?h.pathname:new URL(c,window.location.origin).pathname;kt.has(p)||At.add(p)}async function l(){document.querySelectorAll("a[data-discover], form[data-discover]").forEach(i);let h=Array.from(At.keys()).filter(c=>kt.has(c)?(At.delete(c),!1):!0);if(h.length!==0)try{await ba(h,null,t,r,n,o,e.basename,a.manifestPath,e.patchRoutes)}catch(c){console.error("Failed to fetch manifest patches",c)}}let s=Vl(l,100);l();let u=new MutationObserver(()=>s());return u.observe(document.documentElement,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["data-discover","href","action"]}),()=>u.disconnect()},[n,o,t,r,e,a])}function Wl(e,t){let r=e||"/__manifest";return t==null?r:`${t}${r}`.replace(/\/+/g,"/")}var or="react-router-manifest-version";async function ba(e,t,r,n,a,o,i,l,s,u){const h=new URLSearchParams;h.set("paths",e.sort().join(",")),h.set("version",r.version);let c=new URL(Wl(l,i),window.location.origin);if(c.search=h.toString(),c.toString().length>zl){At.clear();return}let p;try{let E=await fetch(c,{signal:u});if(E.ok){if(E.status===204&&E.headers.has("X-Remix-Reload-Document")){if(!t){console.warn("Detected a manifest version mismatch during eager route discovery. The next navigation/fetch to an undiscovered route will result in a new document navigation to sync up with the latest manifest.");return}try{if(sessionStorage.getItem(or)===r.version){console.error("Unable to discover routes due to manifest version mismatch.");return}sessionStorage.setItem(or,r.version)}catch{}window.location.href=t,console.warn("Detected manifest version mismatch, reloading..."),await new Promise(()=>{})}else if(E.status>=400)throw new Error(await E.text())}else throw new Error(`${E.status} ${E.statusText}`);try{sessionStorage.removeItem(or)}catch{}p=await E.json()}catch(E){if(u?.aborted)return;throw E}let g=new Set(Object.keys(r.routes)),b=Object.values(p).reduce((E,L)=>(L&&!g.has(L.id)&&(E[L.id]=L),E),{});Object.assign(r.routes,b),e.forEach(E=>Yl(E,kt));let S=new Set;Object.values(b).forEach(E=>{E&&(!E.parentId||!b[E.parentId])&&S.add(E.parentId)}),S.forEach(E=>s(E||null,Or(b,n,null,a,o,E)))}function Yl(e,t){if(t.size>=Hl){let r=t.values().next().value;t.delete(r)}t.add(e)}function Vl(e,t){let r;return(...n)=>{window.clearTimeout(r),r=window.setTimeout(()=>e(...n),t)}}function Ar(){let e=d.useContext(Je);return we(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function Ht(){let e=d.useContext(tt);return we(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var zt=d.createContext(void 0);zt.displayName="FrameworkContext";function rt(){let e=d.useContext(zt);return we(e,"You must render this element inside a <HydratedRouter> element"),e}function Jl(e,t){let r=d.useContext(zt),[n,a]=d.useState(!1),[o,i]=d.useState(!1),{onFocus:l,onBlur:s,onMouseEnter:u,onMouseLeave:h,onTouchStart:c}=t,p=d.useRef(null);d.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let S=L=>{L.forEach(R=>{i(R.isIntersecting)})},E=new IntersectionObserver(S,{threshold:.5});return p.current&&E.observe(p.current),()=>{E.disconnect()}}},[e]),d.useEffect(()=>{if(n){let S=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(S)}}},[n]);let g=()=>{a(!0)},b=()=>{a(!1),i(!1)};return r?e!=="intent"?[o,p,{}]:[o,p,{onFocus:st(l,g),onBlur:st(s,b),onMouseEnter:st(u,g),onMouseLeave:st(h,b),onTouchStart:st(c,g)}]:[!1,p,{}]}function st(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function Nr(e,t,r){if(r&&!Ft)return[e[0]];if(t){let n=e.findIndex(a=>t[a.route.id]!==void 0);return e.slice(0,n+1)}return e}var Mn="data-react-router-critical-css";function Ls({nonce:e,crossOrigin:t}){let{isSpaMode:r,manifest:n,routeModules:a,criticalCss:o}=rt(),{errors:i,matches:l}=Ht(),s=Nr(l,i,r),u=d.useMemo(()=>Ml(s,a,n),[s,a,n]);return d.createElement(d.Fragment,null,typeof o=="string"?d.createElement("style",{[Mn]:"",nonce:e,dangerouslySetInnerHTML:{__html:o}}):null,typeof o=="object"?d.createElement("link",{[Mn]:"",rel:"stylesheet",href:o.href,nonce:e,crossOrigin:t}):null,u.map(({key:h,link:c})=>Dr(c)?d.createElement(Sa,{key:h,nonce:e,...c,crossOrigin:c.crossOrigin??t}):d.createElement("link",{key:h,nonce:e,...c,crossOrigin:c.crossOrigin??t})))}function Sa({page:e,...t}){let{router:r}=Ar(),n=d.useMemo(()=>Ae(r.routes,e,r.basename),[r.routes,e,r.basename]);return n?d.createElement(Kl,{page:e,matches:n,...t}):null}function Gl(e){let{manifest:t,routeModules:r}=rt(),[n,a]=d.useState([]);return d.useEffect(()=>{let o=!1;return Ol(e,t,r).then(i=>{o||a(i)}),()=>{o=!0}},[e,t,r]),n}function Kl({page:e,matches:t,...r}){let n=Le(),{future:a,manifest:o,routeModules:i}=rt(),{basename:l}=Ar(),{loaderData:s,matches:u}=Ht(),h=d.useMemo(()=>Pn(e,t,u,o,n,"data"),[e,t,u,o,n]),c=d.useMemo(()=>Pn(e,t,u,o,n,"assets"),[e,t,u,o,n]),p=d.useMemo(()=>{if(e===n.pathname+n.search+n.hash)return[];let S=new Set,E=!1;if(t.forEach(R=>{let T=o.routes[R.route.id];!T||!T.hasLoader||(!h.some(D=>D.route.id===R.route.id)&&R.route.id in s&&i[R.route.id]?.shouldRevalidate||T.hasClientLoader?E=!0:S.add(R.route.id))}),S.size===0)return[];let L=ma(e,l,a.unstable_trailingSlashAwareDataRequests,"data");return E&&S.size>0&&L.searchParams.set("_routes",t.filter(R=>S.has(R.route.id)).map(R=>R.route.id).join(",")),[L.pathname+L.search]},[l,a.unstable_trailingSlashAwareDataRequests,s,n,o,h,t,e,i]),g=d.useMemo(()=>_r(c,o),[c,o]),b=Gl(c);return d.createElement(d.Fragment,null,p.map(S=>d.createElement("link",{key:S,rel:"prefetch",as:"fetch",href:S,...r})),g.map(S=>d.createElement("link",{key:S,rel:"modulepreload",href:S,...r})),b.map(({key:S,link:E})=>d.createElement("link",{key:S,nonce:r.nonce,...E,crossOrigin:E.crossOrigin??r.crossOrigin})))}function Ps(){let{isSpaMode:e,routeModules:t}=rt(),{errors:r,matches:n,loaderData:a}=Ht(),o=Le(),i=Nr(n,r,e),l=null;r&&(l=r[i[i.length-1].route.id]);let s=[],u=null,h=[];for(let c=0;c<i.length;c++){let p=i[c],g=p.route.id,b=a[g],S=p.params,E=t[g],L=[],R={id:g,data:b,loaderData:b,meta:[],params:p.params,pathname:p.pathname,handle:p.route.handle,error:l};if(h[c]=R,E?.meta?L=typeof E.meta=="function"?E.meta({data:b,loaderData:b,params:S,location:o,matches:h,error:l}):Array.isArray(E.meta)?[...E.meta]:E.meta:u&&(L=[...u]),L=L||[],!Array.isArray(L))throw new Error("The route at "+p.route.path+` returns an invalid value. All route meta functions must return an array of meta objects.
|
|
13
|
+
|
|
14
|
+
To reference the meta function API, see https://remix.run/route/meta`);R.meta=L,h[c]=R,s=[...L],u=s}return d.createElement(d.Fragment,null,s.flat().map(c=>{if(!c)return null;if("tagName"in c){let{tagName:p,...g}=c;if(!Xl(p))return console.warn(`A meta object uses an invalid tagName: ${p}. Expected either 'link' or 'meta'`),null;let b=p;return d.createElement(b,{key:JSON.stringify(g),...g})}if("title"in c)return d.createElement("title",{key:"title"},String(c.title));if("charset"in c&&(c.charSet??(c.charSet=c.charset),delete c.charset),"charSet"in c&&c.charSet!=null)return typeof c.charSet=="string"?d.createElement("meta",{key:"charSet",charSet:c.charSet}):null;if("script:ld+json"in c)try{let p=JSON.stringify(c["script:ld+json"]);return d.createElement("script",{key:`script:ld+json:${p}`,type:"application/ld+json",dangerouslySetInnerHTML:{__html:mr(p)}})}catch{return null}return d.createElement("meta",{key:JSON.stringify(c),...c})}))}function Xl(e){return typeof e=="string"&&/^(meta|link)$/.test(e)}var Ft=!1;function ql(){Ft=!0}function Ql(e){let{manifest:t,serverHandoffString:r,isSpaMode:n,renderMeta:a,routeDiscovery:o,ssr:i}=rt(),{router:l,static:s,staticContext:u}=Ar(),{matches:h}=Ht(),c=Zn(),p=Ir(o,i);a&&(a.didRenderScripts=!0);let g=Nr(h,null,n);d.useEffect(()=>{ql()},[]);let b=d.useMemo(()=>{if(c)return null;let R=u?`window.__reactRouterContext = ${r};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());`:" ",T=s?`${t.hmr?.runtime?`import ${JSON.stringify(t.hmr.runtime)};`:""}${p?"":`import ${JSON.stringify(t.url)}`};
|
|
15
|
+
${g.map((D,M)=>{let _=`route${M}`,v=t.routes[D.route.id];we(v,`Route ${D.route.id} not found in manifest`);let{clientActionModule:O,clientLoaderModule:z,clientMiddlewareModule:K,hydrateFallbackModule:V,module:ae}=v,se=[...O?[{module:O,varName:`${_}_clientAction`}]:[],...z?[{module:z,varName:`${_}_clientLoader`}]:[],...K?[{module:K,varName:`${_}_clientMiddleware`}]:[],...V?[{module:V,varName:`${_}_HydrateFallback`}]:[],{module:ae,varName:`${_}_main`}];if(se.length===1)return`import * as ${_} from ${JSON.stringify(ae)};`;let ne=se.map(G=>`import * as ${G.varName} from "${G.module}";`).join(`
|
|
16
|
+
`),Z=`const ${_} = {${se.map(G=>`...${G.varName}`).join(",")}};`;return[ne,Z].join(`
|
|
17
|
+
`)}).join(`
|
|
18
|
+
`)}
|
|
19
|
+
${p?`window.__reactRouterManifest = ${JSON.stringify(Bl(t,l),null,2)};`:""}
|
|
20
|
+
window.__reactRouterRouteModules = {${g.map((D,M)=>`${JSON.stringify(D.route.id)}:route${M}`).join(",")}};
|
|
21
|
+
|
|
22
|
+
import(${JSON.stringify(t.entry.module)});`:" ";return d.createElement(d.Fragment,null,d.createElement("script",{...e,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:R},type:void 0}),d.createElement("script",{...e,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:T},type:"module",async:!0}))},[]),S=Ft||c?[]:Zl(t.entry.imports.concat(_r(g,t,{includeHydrateFallback:!0}))),E=typeof t.sri=="object"?t.sri:{};return dr(!c,"The <Scripts /> element is a no-op when using RSC and can be safely removed."),Ft||c?null:d.createElement(d.Fragment,null,typeof t.sri=="object"?d.createElement("script",{...e,"rr-importmap":"",type:"importmap",suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:JSON.stringify({integrity:E})}}):null,p?null:d.createElement("link",{rel:"modulepreload",href:t.url,crossOrigin:e.crossOrigin,integrity:E[t.url],suppressHydrationWarning:!0}),d.createElement("link",{rel:"modulepreload",href:t.entry.module,crossOrigin:e.crossOrigin,integrity:E[t.entry.module],suppressHydrationWarning:!0}),S.map(L=>d.createElement("link",{key:L,rel:"modulepreload",href:L,crossOrigin:e.crossOrigin,integrity:E[L],suppressHydrationWarning:!0})),b)}function Zl(e){return[...new Set(e)]}function es(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var Ts=class extends d.Component{constructor(e){super(e),this.state={error:e.error||null,location:e.location}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location?{error:e.error||null,location:e.location}:{error:e.error||t.error,location:t.location}}render(){return this.state.error?d.createElement(xa,{error:this.state.error,isOutsideRemixApp:!0}):this.props.children}};function xa({error:e,isOutsideRemixApp:t}){console.error(e);let r=d.createElement("script",{dangerouslySetInnerHTML:{__html:`
|
|
23
|
+
console.log(
|
|
24
|
+
"💿 Hey developer 👋. You can provide a way better UX than this when your app throws errors. Check out https://reactrouter.com/how-to/error-boundary for more information."
|
|
25
|
+
);
|
|
26
|
+
`}});if(Ve(e))return d.createElement(yr,{title:"Unhandled Thrown Response!"},d.createElement("h1",{style:{fontSize:"24px"}},e.status," ",e.statusText),r);let n;if(e instanceof Error)n=e;else{let a=e==null?"Unknown Error":typeof e=="object"&&"toString"in e?e.toString():JSON.stringify(e);n=new Error(a)}return d.createElement(yr,{title:"Application Error!",isOutsideRemixApp:t},d.createElement("h1",{style:{fontSize:"24px"}},"Application Error"),d.createElement("pre",{style:{padding:"2rem",background:"hsla(10, 50%, 50%, 0.1)",color:"red",overflow:"auto"}},n.stack),r)}function yr({title:e,renderScripts:t,isOutsideRemixApp:r,children:n}){let{routeModules:a}=rt();return a.root?.Layout&&!r?n:d.createElement("html",{lang:"en"},d.createElement("head",null,d.createElement("meta",{charSet:"utf-8"}),d.createElement("meta",{name:"viewport",content:"width=device-width,initial-scale=1,viewport-fit=cover"}),d.createElement("title",null,e)),d.createElement("body",null,d.createElement("main",{style:{fontFamily:"system-ui, sans-serif",padding:"2rem"}},n,t?d.createElement(Ql,null):null)))}var ts=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{ts&&(window.__reactRouterVersion="7.13.0")}catch{}var Ca=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,La=d.forwardRef(function({onClick:t,discover:r="render",prefetch:n="none",relative:a,reloadDocument:o,replace:i,state:l,target:s,to:u,preventScrollReset:h,viewTransition:c,unstable_defaultShouldRevalidate:p,...g},b){let{basename:S,unstable_useTransitions:E}=d.useContext(Re),L=typeof u=="string"&&Ca.test(u),R=jn(u,S);u=R.to;let T=yi(u,{relative:a}),[D,M,_]=Jl(n,g),v=as(u,{replace:i,state:l,target:s,preventScrollReset:h,relative:a,viewTransition:c,unstable_defaultShouldRevalidate:p,unstable_useTransitions:E});function O(K){t&&t(K),K.defaultPrevented||v(K)}let z=d.createElement("a",{...g,..._,href:R.absoluteURL||T,onClick:R.isExternal||o?t:O,ref:es(b,M),target:s,"data-discover":!L&&r==="render"?"true":void 0});return D&&!L?d.createElement(d.Fragment,null,z,d.createElement(Sa,{page:T})):z});La.displayName="Link";var rs=d.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:n="",end:a=!1,style:o,to:i,viewTransition:l,children:s,...u},h){let c=vt(i,{relative:u.relative}),p=Le(),g=d.useContext(tt),{navigator:b,basename:S}=d.useContext(Re),E=g!=null&&cs(c)&&l===!0,L=b.encodeLocation?b.encodeLocation(c).pathname:c.pathname,R=p.pathname,T=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;r||(R=R.toLowerCase(),T=T?T.toLowerCase():null,L=L.toLowerCase()),T&&S&&(T=Ee(T,S)||T);const D=L!=="/"&&L.endsWith("/")?L.length-1:L.length;let M=R===L||!a&&R.startsWith(L)&&R.charAt(D)==="/",_=T!=null&&(T===L||!a&&T.startsWith(L)&&T.charAt(L.length)==="/"),v={isActive:M,isPending:_,isTransitioning:E},O=M?t:void 0,z;typeof n=="function"?z=n(v):z=[n,M?"active":null,_?"pending":null,E?"transitioning":null].filter(Boolean).join(" ");let K=typeof o=="function"?o(v):o;return d.createElement(La,{...u,"aria-current":O,className:z,ref:h,style:K,to:i,viewTransition:l},typeof s=="function"?s(v):s)});rs.displayName="NavLink";var Pa=d.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:n,replace:a,state:o,method:i=Ot,action:l,onSubmit:s,relative:u,preventScrollReset:h,viewTransition:c,unstable_defaultShouldRevalidate:p,...g},b)=>{let{unstable_useTransitions:S}=d.useContext(Re),E=Da(),L=ls(l,{relative:u}),R=i.toLowerCase()==="get"?"get":"post",T=typeof l=="string"&&Ca.test(l),D=M=>{if(s&&s(M),M.defaultPrevented)return;M.preventDefault();let _=M.nativeEvent.submitter,v=_?.getAttribute("formmethod")||i,O=()=>E(_||M.currentTarget,{fetcherKey:t,method:v,navigate:r,replace:a,state:o,relative:u,preventScrollReset:h,viewTransition:c,unstable_defaultShouldRevalidate:p});S&&r!==!1?d.startTransition(()=>O()):O()};return d.createElement("form",{ref:b,method:R,action:L,onSubmit:n?s:D,...g,"data-discover":!T&&e==="render"?"true":void 0})});Pa.displayName="Form";function ns({getKey:e,storageKey:t,...r}){let n=d.useContext(zt),{basename:a}=d.useContext(Re),o=Le(),i=Tr();ss({getKey:e,storageKey:t});let l=d.useMemo(()=>{if(!n||!e)return null;let u=gr(o,i,a,e);return u!==o.key?u:null},[]);if(!n||n.isSpaMode)return null;let s=((u,h)=>{if(!window.history.state||!window.history.state.key){let c=Math.random().toString(32).slice(2);window.history.replaceState({key:c},"")}try{let p=JSON.parse(sessionStorage.getItem(u)||"{}")[h||window.history.state.key];typeof p=="number"&&window.scrollTo(0,p)}catch(c){console.error(c),sessionStorage.removeItem(u)}}).toString();return d.createElement("script",{...r,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${s})(${mr(JSON.stringify(t||vr))}, ${mr(JSON.stringify(l))})`}})}ns.displayName="ScrollRestoration";function Ta(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Bt(e){let t=d.useContext(Je);return Y(t,Ta(e)),t}function Ma(e){let t=d.useContext(tt);return Y(t,Ta(e)),t}function as(e,{target:t,replace:r,state:n,preventScrollReset:a,relative:o,viewTransition:i,unstable_defaultShouldRevalidate:l,unstable_useTransitions:s}={}){let u=na(),h=Le(),c=vt(e,{relative:o});return d.useCallback(p=>{if(Wi(p,t)){p.preventDefault();let g=r!==void 0?r:Me(h)===Me(c),b=()=>u(e,{replace:g,state:n,preventScrollReset:a,relative:o,viewTransition:i,unstable_defaultShouldRevalidate:l});s?d.startTransition(()=>b()):b()}},[h,u,c,r,n,t,e,a,o,i,l,s])}function Ms(e){oe(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=d.useRef(fr(e)),r=d.useRef(!1),n=Le(),a=d.useMemo(()=>Yi(n.search,r.current?null:t.current),[n.search]),o=na(),i=d.useCallback((l,s)=>{const u=fr(typeof l=="function"?l(new URLSearchParams(a)):l);r.current=!0,o("?"+u,s)},[o,a]);return[a,i]}var os=0,is=()=>`__${String(++os)}__`;function Da(){let{router:e}=Bt("useSubmit"),{basename:t}=d.useContext(Re),r=Pi(),n=e.fetch,a=e.navigate;return d.useCallback(async(o,i={})=>{let{action:l,method:s,encType:u,formData:h,body:c}=Gi(o,t);if(i.navigate===!1){let p=i.fetcherKey||is();await n(p,r,i.action||l,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:h,body:c,formMethod:i.method||s,formEncType:i.encType||u,flushSync:i.flushSync})}else await a(i.action||l,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:h,body:c,formMethod:i.method||s,formEncType:i.encType||u,replace:i.replace,state:i.state,fromRouteId:r,flushSync:i.flushSync,viewTransition:i.viewTransition})},[n,a,t,r])}function ls(e,{relative:t}={}){let{basename:r}=d.useContext(Re),n=d.useContext(Ce);Y(n,"useFormAction must be used inside a RouteContext");let[a]=n.matches.slice(-1),o={...vt(e||".",{relative:t})},i=Le();if(e==null){o.search=i.search;let l=new URLSearchParams(o.search),s=l.getAll("index");if(s.some(h=>h==="")){l.delete("index"),s.filter(c=>c).forEach(c=>l.append("index",c));let h=l.toString();o.search=h?`?${h}`:""}}return(!e||e===".")&&a.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:Te([r,o.pathname])),Me(o)}function Ds({key:e}={}){let{router:t}=Bt("useFetcher"),r=Ma("useFetcher"),n=d.useContext(Cr),a=d.useContext(Ce),o=a.matches[a.matches.length-1]?.route.id;Y(n,"useFetcher must be used inside a FetchersContext"),Y(a,"useFetcher must be used inside a RouteContext"),Y(o!=null,'useFetcher can only be used on routes that contain a unique "id"');let i=d.useId(),[l,s]=d.useState(e||i);e&&e!==l&&s(e);let{deleteFetcher:u,getFetcher:h,resetFetcher:c,fetch:p}=t;d.useEffect(()=>(h(l),()=>u(l)),[u,h,l]);let g=d.useCallback(async(M,_)=>{Y(o,"No routeId available for fetcher.load()"),await p(l,o,M,_)},[l,o,p]),b=Da(),S=d.useCallback(async(M,_)=>{await b(M,{..._,navigate:!1,fetcherKey:l})},[l,b]),E=d.useCallback(M=>c(l,M),[c,l]),L=d.useMemo(()=>{let M=d.forwardRef((_,v)=>d.createElement(Pa,{..._,navigate:!1,fetcherKey:l,ref:v}));return M.displayName="fetcher.Form",M},[l]),R=r.fetchers.get(l)||Bn,T=n.get(l);return d.useMemo(()=>({Form:L,submit:S,load:g,reset:E,...R,data:T}),[L,S,g,E,R,T])}var vr="react-router-scroll-positions",Dt={};function gr(e,t,r,n){let a=null;return n&&(r!=="/"?a=n({...e,pathname:Ee(e.pathname,r)||e.pathname},t):a=n(e,t)),a==null&&(a=e.key),a}function ss({getKey:e,storageKey:t}={}){let{router:r}=Bt("useScrollRestoration"),{restoreScrollPosition:n,preventScrollReset:a}=Ma("useScrollRestoration"),{basename:o}=d.useContext(Re),i=Le(),l=Tr(),s=Ti();d.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),us(d.useCallback(()=>{if(s.state==="idle"){let u=gr(i,l,o,e);Dt[u]=window.scrollY}try{sessionStorage.setItem(t||vr,JSON.stringify(Dt))}catch(u){oe(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${u}).`)}window.history.scrollRestoration="auto"},[s.state,e,o,i,l,t])),typeof document<"u"&&(d.useLayoutEffect(()=>{try{let u=sessionStorage.getItem(t||vr);u&&(Dt=JSON.parse(u))}catch{}},[t]),d.useLayoutEffect(()=>{let u=r?.enableScrollRestoration(Dt,()=>window.scrollY,e?(h,c)=>gr(h,c,o,e):void 0);return()=>u&&u()},[r,o,e]),d.useLayoutEffect(()=>{if(n!==!1){if(typeof n=="number"){window.scrollTo(0,n);return}try{if(i.hash){let u=document.getElementById(decodeURIComponent(i.hash.slice(1)));if(u){u.scrollIntoView();return}}}catch{oe(!1,`"${i.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}a!==!0&&window.scrollTo(0,0)}},[i,n,a]))}function us(e,t){let{capture:r}={};d.useEffect(()=>{let n=r!=null?{capture:r}:void 0;return window.addEventListener("pagehide",e,n),()=>{window.removeEventListener("pagehide",e,n)}},[e,r])}function cs(e,{relative:t}={}){let r=d.useContext(xr);Y(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:n}=Bt("useViewTransitionState"),a=vt(e,{relative:t});if(!r.isTransitioning)return!1;let o=Ee(r.currentLocation.pathname,n)||r.currentLocation.pathname,i=Ee(r.nextLocation.pathname,n)||r.nextLocation.pathname;return Nt(a.pathname,i)!=null||Nt(a.pathname,o)!=null}export{Es as A,Rs as B,Ql as C,sa as D,je as E,zt as F,ps as G,Ds as H,eo as I,La as J,Ls as L,Ps as M,wl as N,ws as O,Za as R,ns as S,d as a,Y as b,Ts as c,gs as d,Tl as e,Or as f,hs as g,xs as h,Ve as i,bs as j,fs as k,Ss as l,Ae as m,ys as n,vs as o,ds as p,ms as q,Qa as r,Ul as s,Ms as t,Cs as u,na as v,rs as w,Ti as x,Tr as y,Le as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as s}from"./chunk-JZWAC4HX-DC8i-F7r.js";const l=(...t)=>t.filter((e,r,o)=>!!e&&e.trim()!==""&&o.indexOf(e)===r).join(" ").trim();const C=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const f=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,o)=>o?o.toUpperCase():r.toLowerCase());const i=t=>{const e=f(t);return e.charAt(0).toUpperCase()+e.slice(1)};var w={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const h=t=>{for(const e in t)if(e.startsWith("aria-")||e==="role"||e==="title")return!0;return!1};const g=s.forwardRef(({color:t="currentColor",size:e=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:u,...c},p)=>s.createElement("svg",{ref:p,...w,width:e,height:e,stroke:t,strokeWidth:o?Number(r)*24/Number(e):r,className:l("lucide",n),...!a&&!h(c)&&{"aria-hidden":"true"},...c},[...u.map(([m,d])=>s.createElement(m,d)),...Array.isArray(a)?a:[a]]));const b=(t,e)=>{const r=s.forwardRef(({className:o,...n},a)=>s.createElement(g,{ref:a,iconNode:e,className:l(`lucide-${C(i(t))}`,`lucide-${t}`,o),...n}));return r.displayName=i(t),r};export{b as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as O,t as Je,p as Qe,J as Xe}from"./chunk-JZWAC4HX-DC8i-F7r.js";function Ke(e,...t){const r=new URL("https://base-ui.com/production-error");return r.searchParams.set("code",e.toString()),t.forEach(o=>r.searchParams.append("args[]",o)),`Base UI error #${e}; visit ${r} for the full message.`}const ke={};function Ie(e,t){const r=O.useRef(ke);return r.current===ke&&(r.current=e(t)),r}function we(e,t,r,o){const n=Ie(Re).current;return He(n,e,t,r,o)&&Te(n,[e,t,r,o]),n.callback}function Ze(e){const t=Ie(Re).current;return et(t,e)&&Te(t,e),t.callback}function Re(){return{callback:null,cleanup:null,refs:[]}}function He(e,t,r,o,n){return e.refs[0]!==t||e.refs[1]!==r||e.refs[2]!==o||e.refs[3]!==n}function et(e,t){return e.refs.length!==t.length||e.refs.some((r,o)=>r!==t[o])}function Te(e,t){if(e.refs=t,t.every(r=>r==null)){e.callback=null;return}e.callback=r=>{if(e.cleanup&&(e.cleanup(),e.cleanup=null),r!=null){const o=Array(t.length).fill(null);for(let n=0;n<t.length;n+=1){const s=t[n];if(s!=null)switch(typeof s){case"function":{const a=s(r);typeof a=="function"&&(o[n]=a);break}case"object":{s.current=r;break}}}e.cleanup=()=>{for(let n=0;n<t.length;n+=1){const s=t[n];if(s!=null)switch(typeof s){case"function":{const a=o[n];typeof a=="function"?a():s(null);break}case"object":{s.current=null;break}}}}}}}const tt=parseInt(O.version,10);function rt(e){return tt>=e}function xe(e){if(!O.isValidElement(e))return null;const t=e,r=t.props;return(rt(19)?r?.ref:t.ref)??null}function ie(e,t){if(e&&!t)return e;if(!e&&t)return t;if(e||t)return{...e,...t}}function ot(e,t){const r={};for(const o in e){const n=e[o];if(t?.hasOwnProperty(o)){const s=t[o](n);s!=null&&Object.assign(r,s);continue}n===!0?r[`data-${o.toLowerCase()}`]="":n&&(r[`data-${o.toLowerCase()}`]=n.toString())}return r}function nt(e,t){return typeof e=="function"?e(t):e}function st(e,t){return typeof e=="function"?e(t):e}const D={};function at(e,t,r,o,n){let s={...le(e,D)};return t&&(s=ee(s,t)),r&&(s=ee(s,r)),o&&(s=ee(s,o)),s}function it(e){if(e.length===0)return D;if(e.length===1)return le(e[0],D);let t={...le(e[0],D)};for(let r=1;r<e.length;r+=1)t=ee(t,e[r]);return t}function ee(e,t){return Ne(t)?t(e):lt(e,t)}function lt(e,t){if(!t)return e;for(const r in t){const o=t[r];switch(r){case"style":{e[r]=ie(e.style,o);break}case"className":{e[r]=Me(e.className,o);break}default:ct(r,o)?e[r]=dt(e[r],o):e[r]=o}}return e}function ct(e,t){const r=e.charCodeAt(0),o=e.charCodeAt(1),n=e.charCodeAt(2);return r===111&&o===110&&n>=65&&n<=90&&(typeof t=="function"||typeof t>"u")}function Ne(e){return typeof e=="function"}function le(e,t){return Ne(e)?e(t):e??D}function dt(e,t){return t?e?r=>{if(mt(r)){const n=r;ut(n);const s=t(n);return n.baseUIHandlerPrevented||e?.(n),s}const o=t(r);return e?.(r),o}:t:e}function ut(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function Me(e,t){return t?e?t+" "+e:t:e}function mt(e){return e!=null&&typeof e=="object"&&"nativeEvent"in e}function mr(){}const fr=Object.freeze([]),V=Object.freeze({});function ft(e,t,r={}){const o=t.render,n=pt(t,r);if(r.enabled===!1)return null;const s=r.state??V;return gt(e,o,n,s)}function pt(e,t={}){const{className:r,style:o,render:n}=e,{state:s=V,ref:a,props:u,stateAttributesMapping:c,enabled:m=!0}=t,g=m?nt(r,s):void 0,b=m?st(o,s):void 0,h=m?ot(s,c):V,y=m?ie(h,Array.isArray(u)?it(u):u)??V:V;return typeof document<"u"&&(m?Array.isArray(a)?y.ref=Ze([y.ref,xe(n),...a]):y.ref=we(y.ref,xe(n),a):we(null,null)),m?(g!==void 0&&(y.className=Me(y.className,g)),b!==void 0&&(y.style=ie(y.style,b)),y):V}function gt(e,t,r,o){if(t){if(typeof t=="function")return t(r,o);const n=at(r,t.props);return n.ref=r.ref,O.cloneElement(t,n)}if(e&&typeof e=="string")return bt(e,r);throw new Error(Ke(8))}function bt(e,t){return e==="button"?O.createElement("button",{type:"button",...t,key:t.key}):e==="img"?O.createElement("img",{alt:"",...t,key:t.key}):O.createElement(e,t)}function Oe(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=Oe(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function _e(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Oe(e))&&(o&&(o+=" "),o+=t);return o}const ht=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},yt=(e,t)=>({classGroupId:e,validator:t}),je=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),te="-",ve=[],kt="arbitrary..",wt=e=>{const t=vt(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return xt(a);const u=a.split(te),c=u[0]===""&&u.length>1?1:0;return Le(u,c,t)},getConflictingClassGroupIds:(a,u)=>{if(u){const c=o[a],m=r[a];return c?m?ht(m,c):c:m||ve}return r[a]||ve}}},Le=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],s=r.nextPart.get(n);if(s){const m=Le(e,t+1,s);if(m)return m}const a=r.validators;if(a===null)return;const u=t===0?e.join(te):e.slice(t).join(te),c=a.length;for(let m=0;m<c;m++){const g=a[m];if(g.validator(u))return g.classGroupId}},xt=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?kt+o:void 0})(),vt=e=>{const{theme:t,classGroups:r}=e;return At(r,t)},At=(e,t)=>{const r=je();for(const o in e){const n=e[o];de(n,r,o,t)}return r},de=(e,t,r,o)=>{const n=e.length;for(let s=0;s<n;s++){const a=e[s];St(a,t,r,o)}},St=(e,t,r,o)=>{if(typeof e=="string"){Ct(e,t,r);return}if(typeof e=="function"){zt(e,t,r,o);return}Pt(e,t,r,o)},Ct=(e,t,r)=>{const o=e===""?t:Ge(t,e);o.classGroupId=r},zt=(e,t,r,o)=>{if(Et(e)){de(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(yt(r,e))},Pt=(e,t,r,o)=>{const n=Object.entries(e),s=n.length;for(let a=0;a<s;a++){const[u,c]=n[a];de(c,Ge(t,u),r,o)}},Ge=(e,t)=>{let r=e;const o=t.split(te),n=o.length;for(let s=0;s<n;s++){const a=o[s];let u=r.nextPart.get(a);u||(u=je(),r.nextPart.set(a,u)),r=u}return r},Et=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,It=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const n=(s,a)=>{r[s]=a,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(s){let a=r[s];if(a!==void 0)return a;if((a=o[s])!==void 0)return n(s,a),a},set(s,a){s in r?r[s]=a:n(s,a)}}},ce="!",Ae=":",Rt=[],Se=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),Tt=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const s=[];let a=0,u=0,c=0,m;const g=n.length;for(let A=0;A<g;A++){const x=n[A];if(a===0&&u===0){if(x===Ae){s.push(n.slice(c,A)),c=A+1;continue}if(x==="/"){m=A;continue}}x==="["?a++:x==="]"?a--:x==="("?u++:x===")"&&u--}const b=s.length===0?n:n.slice(c);let h=b,y=!1;b.endsWith(ce)?(h=b.slice(0,-1),y=!0):b.startsWith(ce)&&(h=b.slice(1),y=!0);const C=m&&m>c?m-c:void 0;return Se(s,y,h,C)};if(t){const n=t+Ae,s=o;o=a=>a.startsWith(n)?s(a.slice(n.length)):Se(Rt,!1,a,void 0,!0)}if(r){const n=o;o=s=>r({className:s,parseClassName:n})}return o},Nt=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let n=[];for(let s=0;s<r.length;s++){const a=r[s],u=a[0]==="[",c=t.has(a);u||c?(n.length>0&&(n.sort(),o.push(...n),n=[]),o.push(a)):n.push(a)}return n.length>0&&(n.sort(),o.push(...n)),o}},Mt=e=>({cache:It(e.cacheSize),parseClassName:Tt(e),sortModifiers:Nt(e),...wt(e)}),Ot=/\s+/,_t=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:s}=t,a=[],u=e.trim().split(Ot);let c="";for(let m=u.length-1;m>=0;m-=1){const g=u[m],{isExternal:b,modifiers:h,hasImportantModifier:y,baseClassName:C,maybePostfixModifierPosition:A}=r(g);if(b){c=g+(c.length>0?" "+c:c);continue}let x=!!A,R=o(x?C.substring(0,A):C);if(!R){if(!x){c=g+(c.length>0?" "+c:c);continue}if(R=o(C),!R){c=g+(c.length>0?" "+c:c);continue}x=!1}const q=h.length===0?"":h.length===1?h[0]:s(h).join(":"),B=y?q+ce:q,_=B+R;if(a.indexOf(_)>-1)continue;a.push(_);const j=n(R,x);for(let T=0;T<j.length;++T){const F=j[T];a.push(B+F)}c=g+(c.length>0?" "+c:c)}return c},jt=(...e)=>{let t=0,r,o,n="";for(;t<e.length;)(r=e[t++])&&(o=Ve(r))&&(n&&(n+=" "),n+=o);return n},Ve=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=Ve(e[o]))&&(r&&(r+=" "),r+=t);return r},Lt=(e,...t)=>{let r,o,n,s;const a=c=>{const m=t.reduce((g,b)=>b(g),e());return r=Mt(m),o=r.cache.get,n=r.cache.set,s=u,u(c)},u=c=>{const m=o(c);if(m)return m;const g=_t(c,r);return n(c,g),g};return s=a,(...c)=>s(jt(...c))},Gt=[],k=e=>{const t=r=>r[e]||Gt;return t.isThemeGetter=!0,t},We=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,$e=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Vt=/^\d+\/\d+$/,Wt=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,$t=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Bt=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ft=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ut=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,G=e=>Vt.test(e),p=e=>!!e&&!Number.isNaN(Number(e)),I=e=>!!e&&Number.isInteger(Number(e)),se=e=>e.endsWith("%")&&p(e.slice(0,-1)),E=e=>Wt.test(e),Dt=()=>!0,qt=e=>$t.test(e)&&!Bt.test(e),Be=()=>!1,Yt=e=>Ft.test(e),Jt=e=>Ut.test(e),Qt=e=>!i(e)&&!l(e),Xt=e=>W(e,De,Be),i=e=>We.test(e),M=e=>W(e,qe,qt),ae=e=>W(e,tr,p),Ce=e=>W(e,Fe,Be),Kt=e=>W(e,Ue,Jt),Z=e=>W(e,Ye,Yt),l=e=>$e.test(e),U=e=>$(e,qe),Zt=e=>$(e,rr),ze=e=>$(e,Fe),Ht=e=>$(e,De),er=e=>$(e,Ue),H=e=>$(e,Ye,!0),W=(e,t,r)=>{const o=We.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},$=(e,t,r=!1)=>{const o=$e.exec(e);return o?o[1]?t(o[1]):r:!1},Fe=e=>e==="position"||e==="percentage",Ue=e=>e==="image"||e==="url",De=e=>e==="length"||e==="size"||e==="bg-size",qe=e=>e==="length",tr=e=>e==="number",rr=e=>e==="family-name",Ye=e=>e==="shadow",or=()=>{const e=k("color"),t=k("font"),r=k("text"),o=k("font-weight"),n=k("tracking"),s=k("leading"),a=k("breakpoint"),u=k("container"),c=k("spacing"),m=k("radius"),g=k("shadow"),b=k("inset-shadow"),h=k("text-shadow"),y=k("drop-shadow"),C=k("blur"),A=k("perspective"),x=k("aspect"),R=k("ease"),q=k("animate"),B=()=>["auto","avoid","all","avoid-page","page","left","right","column"],_=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],j=()=>[..._(),l,i],T=()=>["auto","hidden","clip","visible","scroll"],F=()=>["auto","contain","none"],f=()=>[l,i,c],z=()=>[G,"full","auto",...f()],ue=()=>[I,"none","subgrid",l,i],me=()=>["auto",{span:["full",I,l,i]},I,l,i],Y=()=>[I,"auto",l,i],fe=()=>["auto","min","max","fr",l,i],re=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],L=()=>["start","end","center","stretch","center-safe","end-safe"],P=()=>["auto",...f()],N=()=>[G,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...f()],d=()=>[e,l,i],pe=()=>[..._(),ze,Ce,{position:[l,i]}],ge=()=>["no-repeat",{repeat:["","x","y","space","round"]}],be=()=>["auto","cover","contain",Ht,Xt,{size:[l,i]}],oe=()=>[se,U,M],v=()=>["","none","full",m,l,i],S=()=>["",p,U,M],J=()=>["solid","dashed","dotted","double"],he=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],w=()=>[p,se,ze,Ce],ye=()=>["","none",C,l,i],Q=()=>["none",p,l,i],X=()=>["none",p,l,i],ne=()=>[p,l,i],K=()=>[G,"full",...f()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[E],breakpoint:[E],color:[Dt],container:[E],"drop-shadow":[E],ease:["in","out","in-out"],font:[Qt],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[E],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[E],shadow:[E],spacing:["px",p],text:[E],"text-shadow":[E],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",G,i,l,x]}],container:["container"],columns:[{columns:[p,i,l,u]}],"break-after":[{"break-after":B()}],"break-before":[{"break-before":B()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:j()}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:F()}],"overscroll-x":[{"overscroll-x":F()}],"overscroll-y":[{"overscroll-y":F()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{start:z()}],end:[{end:z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[I,"auto",l,i]}],basis:[{basis:[G,"full","auto",u,...f()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[p,G,"auto","initial","none",i]}],grow:[{grow:["",p,l,i]}],shrink:[{shrink:["",p,l,i]}],order:[{order:[I,"first","last","none",l,i]}],"grid-cols":[{"grid-cols":ue()}],"col-start-end":[{col:me()}],"col-start":[{"col-start":Y()}],"col-end":[{"col-end":Y()}],"grid-rows":[{"grid-rows":ue()}],"row-start-end":[{row:me()}],"row-start":[{"row-start":Y()}],"row-end":[{"row-end":Y()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":fe()}],"auto-rows":[{"auto-rows":fe()}],gap:[{gap:f()}],"gap-x":[{"gap-x":f()}],"gap-y":[{"gap-y":f()}],"justify-content":[{justify:[...re(),"normal"]}],"justify-items":[{"justify-items":[...L(),"normal"]}],"justify-self":[{"justify-self":["auto",...L()]}],"align-content":[{content:["normal",...re()]}],"align-items":[{items:[...L(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...L(),{baseline:["","last"]}]}],"place-content":[{"place-content":re()}],"place-items":[{"place-items":[...L(),"baseline"]}],"place-self":[{"place-self":["auto",...L()]}],p:[{p:f()}],px:[{px:f()}],py:[{py:f()}],ps:[{ps:f()}],pe:[{pe:f()}],pt:[{pt:f()}],pr:[{pr:f()}],pb:[{pb:f()}],pl:[{pl:f()}],m:[{m:P()}],mx:[{mx:P()}],my:[{my:P()}],ms:[{ms:P()}],me:[{me:P()}],mt:[{mt:P()}],mr:[{mr:P()}],mb:[{mb:P()}],ml:[{ml:P()}],"space-x":[{"space-x":f()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":f()}],"space-y-reverse":["space-y-reverse"],size:[{size:N()}],w:[{w:[u,"screen",...N()]}],"min-w":[{"min-w":[u,"screen","none",...N()]}],"max-w":[{"max-w":[u,"screen","none","prose",{screen:[a]},...N()]}],h:[{h:["screen","lh",...N()]}],"min-h":[{"min-h":["screen","lh","none",...N()]}],"max-h":[{"max-h":["screen","lh",...N()]}],"font-size":[{text:["base",r,U,M]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,l,ae]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",se,i]}],"font-family":[{font:[Zt,i,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,l,i]}],"line-clamp":[{"line-clamp":[p,"none",l,ae]}],leading:[{leading:[s,...f()]}],"list-image":[{"list-image":["none",l,i]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",l,i]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:d()}],"text-color":[{text:d()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...J(),"wavy"]}],"text-decoration-thickness":[{decoration:[p,"from-font","auto",l,M]}],"text-decoration-color":[{decoration:d()}],"underline-offset":[{"underline-offset":[p,"auto",l,i]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:f()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",l,i]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",l,i]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:pe()}],"bg-repeat":[{bg:ge()}],"bg-size":[{bg:be()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},I,l,i],radial:["",l,i],conic:[I,l,i]},er,Kt]}],"bg-color":[{bg:d()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:d()}],"gradient-via":[{via:d()}],"gradient-to":[{to:d()}],rounded:[{rounded:v()}],"rounded-s":[{"rounded-s":v()}],"rounded-e":[{"rounded-e":v()}],"rounded-t":[{"rounded-t":v()}],"rounded-r":[{"rounded-r":v()}],"rounded-b":[{"rounded-b":v()}],"rounded-l":[{"rounded-l":v()}],"rounded-ss":[{"rounded-ss":v()}],"rounded-se":[{"rounded-se":v()}],"rounded-ee":[{"rounded-ee":v()}],"rounded-es":[{"rounded-es":v()}],"rounded-tl":[{"rounded-tl":v()}],"rounded-tr":[{"rounded-tr":v()}],"rounded-br":[{"rounded-br":v()}],"rounded-bl":[{"rounded-bl":v()}],"border-w":[{border:S()}],"border-w-x":[{"border-x":S()}],"border-w-y":[{"border-y":S()}],"border-w-s":[{"border-s":S()}],"border-w-e":[{"border-e":S()}],"border-w-t":[{"border-t":S()}],"border-w-r":[{"border-r":S()}],"border-w-b":[{"border-b":S()}],"border-w-l":[{"border-l":S()}],"divide-x":[{"divide-x":S()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":S()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...J(),"hidden","none"]}],"divide-style":[{divide:[...J(),"hidden","none"]}],"border-color":[{border:d()}],"border-color-x":[{"border-x":d()}],"border-color-y":[{"border-y":d()}],"border-color-s":[{"border-s":d()}],"border-color-e":[{"border-e":d()}],"border-color-t":[{"border-t":d()}],"border-color-r":[{"border-r":d()}],"border-color-b":[{"border-b":d()}],"border-color-l":[{"border-l":d()}],"divide-color":[{divide:d()}],"outline-style":[{outline:[...J(),"none","hidden"]}],"outline-offset":[{"outline-offset":[p,l,i]}],"outline-w":[{outline:["",p,U,M]}],"outline-color":[{outline:d()}],shadow:[{shadow:["","none",g,H,Z]}],"shadow-color":[{shadow:d()}],"inset-shadow":[{"inset-shadow":["none",b,H,Z]}],"inset-shadow-color":[{"inset-shadow":d()}],"ring-w":[{ring:S()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:d()}],"ring-offset-w":[{"ring-offset":[p,M]}],"ring-offset-color":[{"ring-offset":d()}],"inset-ring-w":[{"inset-ring":S()}],"inset-ring-color":[{"inset-ring":d()}],"text-shadow":[{"text-shadow":["none",h,H,Z]}],"text-shadow-color":[{"text-shadow":d()}],opacity:[{opacity:[p,l,i]}],"mix-blend":[{"mix-blend":[...he(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":he()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[p]}],"mask-image-linear-from-pos":[{"mask-linear-from":w()}],"mask-image-linear-to-pos":[{"mask-linear-to":w()}],"mask-image-linear-from-color":[{"mask-linear-from":d()}],"mask-image-linear-to-color":[{"mask-linear-to":d()}],"mask-image-t-from-pos":[{"mask-t-from":w()}],"mask-image-t-to-pos":[{"mask-t-to":w()}],"mask-image-t-from-color":[{"mask-t-from":d()}],"mask-image-t-to-color":[{"mask-t-to":d()}],"mask-image-r-from-pos":[{"mask-r-from":w()}],"mask-image-r-to-pos":[{"mask-r-to":w()}],"mask-image-r-from-color":[{"mask-r-from":d()}],"mask-image-r-to-color":[{"mask-r-to":d()}],"mask-image-b-from-pos":[{"mask-b-from":w()}],"mask-image-b-to-pos":[{"mask-b-to":w()}],"mask-image-b-from-color":[{"mask-b-from":d()}],"mask-image-b-to-color":[{"mask-b-to":d()}],"mask-image-l-from-pos":[{"mask-l-from":w()}],"mask-image-l-to-pos":[{"mask-l-to":w()}],"mask-image-l-from-color":[{"mask-l-from":d()}],"mask-image-l-to-color":[{"mask-l-to":d()}],"mask-image-x-from-pos":[{"mask-x-from":w()}],"mask-image-x-to-pos":[{"mask-x-to":w()}],"mask-image-x-from-color":[{"mask-x-from":d()}],"mask-image-x-to-color":[{"mask-x-to":d()}],"mask-image-y-from-pos":[{"mask-y-from":w()}],"mask-image-y-to-pos":[{"mask-y-to":w()}],"mask-image-y-from-color":[{"mask-y-from":d()}],"mask-image-y-to-color":[{"mask-y-to":d()}],"mask-image-radial":[{"mask-radial":[l,i]}],"mask-image-radial-from-pos":[{"mask-radial-from":w()}],"mask-image-radial-to-pos":[{"mask-radial-to":w()}],"mask-image-radial-from-color":[{"mask-radial-from":d()}],"mask-image-radial-to-color":[{"mask-radial-to":d()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[p]}],"mask-image-conic-from-pos":[{"mask-conic-from":w()}],"mask-image-conic-to-pos":[{"mask-conic-to":w()}],"mask-image-conic-from-color":[{"mask-conic-from":d()}],"mask-image-conic-to-color":[{"mask-conic-to":d()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:pe()}],"mask-repeat":[{mask:ge()}],"mask-size":[{mask:be()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",l,i]}],filter:[{filter:["","none",l,i]}],blur:[{blur:ye()}],brightness:[{brightness:[p,l,i]}],contrast:[{contrast:[p,l,i]}],"drop-shadow":[{"drop-shadow":["","none",y,H,Z]}],"drop-shadow-color":[{"drop-shadow":d()}],grayscale:[{grayscale:["",p,l,i]}],"hue-rotate":[{"hue-rotate":[p,l,i]}],invert:[{invert:["",p,l,i]}],saturate:[{saturate:[p,l,i]}],sepia:[{sepia:["",p,l,i]}],"backdrop-filter":[{"backdrop-filter":["","none",l,i]}],"backdrop-blur":[{"backdrop-blur":ye()}],"backdrop-brightness":[{"backdrop-brightness":[p,l,i]}],"backdrop-contrast":[{"backdrop-contrast":[p,l,i]}],"backdrop-grayscale":[{"backdrop-grayscale":["",p,l,i]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[p,l,i]}],"backdrop-invert":[{"backdrop-invert":["",p,l,i]}],"backdrop-opacity":[{"backdrop-opacity":[p,l,i]}],"backdrop-saturate":[{"backdrop-saturate":[p,l,i]}],"backdrop-sepia":[{"backdrop-sepia":["",p,l,i]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":f()}],"border-spacing-x":[{"border-spacing-x":f()}],"border-spacing-y":[{"border-spacing-y":f()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",l,i]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[p,"initial",l,i]}],ease:[{ease:["linear","initial",R,l,i]}],delay:[{delay:[p,l,i]}],animate:[{animate:["none",q,l,i]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[A,l,i]}],"perspective-origin":[{"perspective-origin":j()}],rotate:[{rotate:Q()}],"rotate-x":[{"rotate-x":Q()}],"rotate-y":[{"rotate-y":Q()}],"rotate-z":[{"rotate-z":Q()}],scale:[{scale:X()}],"scale-x":[{"scale-x":X()}],"scale-y":[{"scale-y":X()}],"scale-z":[{"scale-z":X()}],"scale-3d":["scale-3d"],skew:[{skew:ne()}],"skew-x":[{"skew-x":ne()}],"skew-y":[{"skew-y":ne()}],transform:[{transform:[l,i,"","none","gpu","cpu"]}],"transform-origin":[{origin:j()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:K()}],"translate-x":[{"translate-x":K()}],"translate-y":[{"translate-y":K()}],"translate-z":[{"translate-z":K()}],"translate-none":["translate-none"],accent:[{accent:d()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:d()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",l,i]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":f()}],"scroll-mx":[{"scroll-mx":f()}],"scroll-my":[{"scroll-my":f()}],"scroll-ms":[{"scroll-ms":f()}],"scroll-me":[{"scroll-me":f()}],"scroll-mt":[{"scroll-mt":f()}],"scroll-mr":[{"scroll-mr":f()}],"scroll-mb":[{"scroll-mb":f()}],"scroll-ml":[{"scroll-ml":f()}],"scroll-p":[{"scroll-p":f()}],"scroll-px":[{"scroll-px":f()}],"scroll-py":[{"scroll-py":f()}],"scroll-ps":[{"scroll-ps":f()}],"scroll-pe":[{"scroll-pe":f()}],"scroll-pt":[{"scroll-pt":f()}],"scroll-pr":[{"scroll-pr":f()}],"scroll-pb":[{"scroll-pb":f()}],"scroll-pl":[{"scroll-pl":f()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",l,i]}],fill:[{fill:["none",...d()]}],"stroke-w":[{stroke:[p,U,M,ae]}],stroke:[{stroke:["none",...d()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},nr=Lt(or);function sr(...e){return nr(_e(e))}function pr(e){const t=Math.floor((Date.now()-e.getTime())/1e3);return t<60?"just now":t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}function gr(e){return e.toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function br(e){return e.toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",second:"2-digit"})}const ar=["created","retry","active","completed","cancelled","failed"],ir="pending",lr="all",hr={created:"gray",retry:"warning",active:"primary",completed:"success",cancelled:"gray",failed:"error"},yr=[{value:lr,label:"All States"},{value:ir,label:"Pending"},...ar.map(e=>({value:e,label:e.charAt(0).toUpperCase()+e.slice(1)}))],cr=["slow_query","queue_backlog","clock_skew"],kr={slow_query:"warning",queue_backlog:"error",clock_skew:"gray"},dr={slow_query:"Slow Query",queue_backlog:"Queue Backlog",clock_skew:"Clock Skew"},wr=[{value:null,label:"All Types"},...cr.map(e=>({value:e,label:dr[e]}))];function xr(e){if(!e)return"-";if(typeof e=="string")return e;try{const t=e,r=[];return t.elapsed&&r.push(`${t.elapsed.toFixed(2)}s`),t.name&&r.push(`queue: ${t.name}`),t.queuedCount&&r.push(`queued: ${t.queuedCount}`),t.seconds&&r.push(`skew: ${t.seconds.toFixed(1)}s`),t.direction&&r.push(`(${t.direction})`),r.length>0?r.join(", "):JSON.stringify(e)}catch{return String(e)}}const Pe=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Ee=_e,vr=(e,t)=>r=>{var o;if(t?.variants==null)return Ee(e,r?.class,r?.className);const{variants:n,defaultVariants:s}=t,a=Object.keys(n).map(m=>{const g=r?.[m],b=s?.[m];if(g===null)return null;const h=Pe(g)||Pe(b);return n[m][h]}),u=r&&Object.entries(r).reduce((m,g)=>{let[b,h]=g;return h===void 0||(m[b]=h),m},{}),c=t==null||(o=t.compoundVariants)===null||o===void 0?void 0:o.reduce((m,g)=>{let{class:b,className:h,...y}=g;return Object.entries(y).every(C=>{let[A,x]=C;return Array.isArray(x)?x.includes({...s,...u}[A]):{...s,...u}[A]===x})?[...m,b,h]:m},[]);return Ee(e,a,c,r?.class,r?.className)};function Ar(e){return ft(e.defaultTagName??"div",e,e)}function Sr({to:e,children:t,className:r,...o}){const[n]=Je(),s=n.get("db");let a;if(typeof e=="string"){const u=new URL(e,"http://localhost");s&&!u.searchParams.has("db")&&u.searchParams.set("db",s),a=u.pathname+u.search}else if(typeof e=="object"&&e!==null){const u=e.pathname||"",c=e.search||"",m=e.hash||"",g=new URLSearchParams(c.replace(/^\?/,""));s&&!g.has("db")&&g.set("db",s);const b=g.toString();a=u+(b?`?${b}`:"")+m}else a=String(e);return Qe.jsx(Xe,{to:a,className:sr("cursor-pointer",r),...o,children:t})}export{Sr as D,V as E,yr as J,mr as N,dr as W,vr as a,kr as b,sr as c,hr as d,gr as e,pr as f,Ke as g,we as h,ft as i,Ie as j,fr as k,ut as l,at as m,rt as n,wr as o,xr as p,br as q,Ar as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as s,p as u}from"./chunk-JZWAC4HX-DC8i-F7r.js";import{g as B,i as O,j as _,c as v}from"./db-link-CtPnIrIr.js";import{c as L}from"./createLucideIcon-BXGwbdrh.js";import{as as X,at as q,au as Q,X as Y,k as U,aw as A,ax as G,az as J,ay as Z,av as ee,aA as te,Q as oe,N as ne,am as se,P as ae,an as re,aq as ie,ao as y,ab as V,ac as $,u as le,aN as de,b as z,aO as w,a8 as ce,ad as ue,aa as pe,ae as ge,ai as fe,aj as me}from"./useOpenInteractionType-C_L8nZ_l.js";const xe=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ce=L("x",xe);function he(t){const{store:e,parentContext:o,actionsRef:c}=t,r=e.useState("open"),a=e.useState("disablePointerDismissal"),l=e.useState("modal"),i=e.useState("popupElement"),{openMethod:n,triggerProps:p,reset:f}=X(r);q(e);const{forceUnmount:g}=Q(r,e,()=>{f()}),m=Y(x=>{const S=U(x);return S.preventUnmountOnClose=()=>{e.set("preventUnmountingOnClose",!0)},S}),C=s.useCallback(()=>{e.setOpen(!1,m(A))},[e,m]);s.useImperativeHandle(c,()=>({unmount:g,close:C}),[g,C]);const d=G({popupStore:e,onOpenChange:e.setOpen,treatPopupAsFloatingElement:!0,noEmit:!0}),[h,R]=s.useState(0),D=h===0,T=J(d),M=Z(d,{outsidePressEvent(){return e.context.internalBackdropRef.current||e.context.backdropRef.current?"intentional":{mouse:l==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(x){if("button"in x&&x.button!==0||"touches"in x&&x.touches.length!==1)return!1;const S=oe(x);if(D&&!a){const N=S;return l&&(e.context.internalBackdropRef.current||e.context.backdropRef.current)?e.context.internalBackdropRef.current===N||e.context.backdropRef.current===N||ne(N,i)&&!N?.hasAttribute("data-base-ui-portal"):!0}return!1},escapeKey:D});ee(r&&l===!0,i);const{getReferenceProps:k,getFloatingProps:E,getTriggerProps:I}=te([T,M]);e.useContextCallback("onNestedDialogOpen",x=>{R(x+1)}),e.useContextCallback("onNestedDialogClose",()=>{R(0)}),s.useEffect(()=>(o?.onNestedDialogOpen&&r&&o.onNestedDialogOpen(h),o?.onNestedDialogClose&&!r&&o.onNestedDialogClose(),()=>{o?.onNestedDialogClose&&r&&o.onNestedDialogClose()}),[r,o,h]);const j=s.useMemo(()=>k(p),[k,p]),P=s.useMemo(()=>I(p),[I,p]),F=s.useMemo(()=>E(),[E]);e.useSyncedValues({openMethod:n,activeTriggerProps:j,inactiveTriggerProps:P,popupProps:F,floatingRootContext:d,nestedOpenDialogCount:h})}const W=s.createContext(void 0);function b(t){const e=s.useContext(W);if(t===!1&&e===void 0)throw new Error(B(27));return e}const Se={...re,modal:y(t=>t.modal),nested:y(t=>t.nested),nestedOpenDialogCount:y(t=>t.nestedOpenDialogCount),disablePointerDismissal:y(t=>t.disablePointerDismissal),openMethod:y(t=>t.openMethod),descriptionElementId:y(t=>t.descriptionElementId),titleElementId:y(t=>t.titleElementId),viewportElement:y(t=>t.viewportElement),role:y(t=>t.role)};class ye extends se{constructor(e){super(Re(e),{popupRef:s.createRef(),backdropRef:s.createRef(),internalBackdropRef:s.createRef(),triggerElements:new ae,onOpenChange:void 0,onOpenChangeComplete:void 0},Se)}setOpen=(e,o)=>{if(o.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!e&&o.trigger==null&&this.state.activeTriggerId!=null&&(o.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,o),o.isCanceled)return;const c={open:e,nativeEvent:o.event,reason:o.reason,nested:this.state.nested};this.state.floatingRootContext.context.events?.emit("openchange",c);const r={open:e},a=o.trigger?.id??null;(a||e)&&(r.activeTriggerId=a,r.activeTriggerElement=o.trigger??null),this.update(r)}}function Re(t={}){return{...ie(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,role:"dialog",...t}}const De={...V,...$},be=s.forwardRef(function(e,o){const{render:c,className:r,forceRender:a=!1,...l}=e,{store:i}=b(),n=i.useState("open"),p=i.useState("nested"),f=i.useState("mounted"),g=i.useState("transitionStatus"),m=s.useMemo(()=>({open:n,transitionStatus:g}),[n,g]);return O("div",e,{state:m,ref:[i.context.backdropRef,o],stateAttributesMapping:De,props:[{role:"presentation",hidden:!f,style:{userSelect:"none",WebkitUserSelect:"none"}},l],enabled:a||!p})}),ve=s.forwardRef(function(e,o){const{render:c,className:r,disabled:a=!1,nativeButton:l=!0,...i}=e,{store:n}=b(),p=n.useState("open");function f(d){p&&n.setOpen(!1,U(de,d.nativeEvent))}const{getButtonProps:g,buttonRef:m}=le({disabled:a,native:l}),C=s.useMemo(()=>({disabled:a}),[a]);return O("button",e,{state:C,ref:[o,m],props:[{onClick:f},i,g]})}),ke=s.forwardRef(function(e,o){const{render:c,className:r,id:a,...l}=e,{store:i}=b(),n=z(a);return i.useSyncedValueWithCleanup("descriptionElementId",n),O("p",e,{ref:o,props:[{id:n},l]})});let Oe=(function(t){return t.nestedDialogs="--nested-dialogs",t})({}),Ee=(function(t){return t[t.open=w.open]="open",t[t.closed=w.closed]="closed",t[t.startingStyle=w.startingStyle]="startingStyle",t[t.endingStyle=w.endingStyle]="endingStyle",t.nested="data-nested",t.nestedDialogOpen="data-nested-dialog-open",t})({});const H=s.createContext(void 0);function Ie(){const t=s.useContext(H);if(t===void 0)throw new Error(B(26));return t}const Pe={...V,...$,nestedDialogOpen(t){return t?{[Ee.nestedDialogOpen]:""}:null}},Ne=s.forwardRef(function(e,o){const{className:c,finalFocus:r,initialFocus:a,render:l,...i}=e,{store:n}=b(),p=n.useState("descriptionElementId"),f=n.useState("disablePointerDismissal"),g=n.useState("floatingRootContext"),m=n.useState("popupProps"),C=n.useState("modal"),d=n.useState("mounted"),h=n.useState("nested"),R=n.useState("nestedOpenDialogCount"),D=n.useState("open"),T=n.useState("openMethod"),M=n.useState("titleElementId"),k=n.useState("transitionStatus"),E=n.useState("role");Ie(),ce({open:D,ref:n.context.popupRef,onComplete(){D&&n.context.onOpenChangeComplete?.(!0)}});function I(S){return S==="touch"?n.context.popupRef.current:!0}const j=a===void 0?I:a,P=R>0,F=s.useMemo(()=>({open:D,nested:h,transitionStatus:k,nestedDialogOpen:P}),[D,h,k,P]),x=O("div",e,{state:F,props:[m,{"aria-labelledby":M??void 0,"aria-describedby":p??void 0,role:E,tabIndex:-1,hidden:!d,onKeyDown(S){ue.has(S.key)&&S.stopPropagation()},style:{[Oe.nestedDialogs]:R}},i],ref:[o,n.context.popupRef,n.useStateSetter("popupElement")],stateAttributesMapping:Pe});return u.jsx(pe,{context:g,openInteractionType:T,disabled:!d,closeOnFocusOut:!f,initialFocus:j,returnFocus:r,modal:C!==!1,restoreFocus:"popup",children:x})}),we=s.forwardRef(function(e,o){const{keepMounted:c=!1,...r}=e,{store:a}=b(),l=a.useState("mounted"),i=a.useState("modal"),n=a.useState("open");return l||c?u.jsx(H.Provider,{value:c,children:u.jsxs(ge,{ref:o,...r,children:[l&&i===!0&&u.jsx(fe,{ref:a.context.internalBackdropRef,inert:me(!n)}),e.children]})}):null}),Te=s.forwardRef(function(e,o){const{render:c,className:r,id:a,...l}=e,{store:i}=b(),n=z(a);return i.useSyncedValueWithCleanup("titleElementId",n),O("h2",e,{ref:o,props:[{id:n},l]})});function Me(t){const{children:e,open:o,defaultOpen:c=!1,onOpenChange:r,onOpenChangeComplete:a,disablePointerDismissal:l=!1,modal:i=!0,actionsRef:n,handle:p,triggerId:f,defaultTriggerId:g=null}=t,m=b(!0),C=!!m,d=_(()=>p?.store??new ye({open:o??c,activeTriggerId:f!==void 0?f:g,modal:i,disablePointerDismissal:l,nested:C})).current;d.useControlledProp("open",o,c),d.useControlledProp("activeTriggerId",f,g),d.useSyncedValues({disablePointerDismissal:l,nested:C,modal:i}),d.useContextCallback("onOpenChange",r),d.useContextCallback("onOpenChangeComplete",a);const h=d.useState("payload");he({store:d,actionsRef:n,parentContext:m?.store.context});const R=s.useMemo(()=>({store:d}),[d]);return u.jsx(W.Provider,{value:R,children:typeof e=="function"?e({payload:h}):e})}const _e=Me,je=we,K=s.forwardRef(({className:t,...e},o)=>u.jsx(be,{ref:o,className:v("fixed inset-0 z-50 bg-gray-900/50 data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0",t),...e}));K.displayName="DialogBackdrop";const Fe=s.forwardRef(({className:t,children:e,hideCloseButton:o=!1,...c},r)=>u.jsxs(je,{children:[u.jsx(K,{}),u.jsxs(Ne,{ref:r,className:v("fixed left-[50%] top-[50%] z-50 w-full max-w-lg translate-x-[-50%] translate-y-[-50%]","bg-white rounded-lg shadow-xl p-6","dark:bg-gray-900 dark:border dark:border-gray-800","data-open:animate-in data-closed:animate-out","data-closed:fade-out-0 data-open:fade-in-0","data-closed:zoom-out-95 data-open:zoom-in-95","data-closed:slide-out-to-left-1/2 data-closed:slide-out-to-top-[48%]","data-open:slide-in-from-left-1/2 data-open:slide-in-from-top-[48%]",t),...c,children:[e,!o&&u.jsxs(ve,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-white transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 disabled:pointer-events-none dark:ring-offset-gray-900 dark:text-gray-400 dark:hover:text-gray-100",children:[u.jsx(Ce,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Fe.displayName="DialogContent";const Be=({className:t,...e})=>u.jsx("div",{className:v("flex flex-col space-y-1.5 text-center sm:text-left",t),...e});Be.displayName="DialogHeader";const Ue=({className:t,...e})=>u.jsx("div",{className:v("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...e});Ue.displayName="DialogFooter";const Ve=s.forwardRef(({className:t,...e},o)=>u.jsx(Te,{ref:o,className:v("text-lg font-semibold text-gray-900 dark:text-gray-100",t),...e}));Ve.displayName="DialogTitle";const $e=s.forwardRef(({className:t,...e},o)=>u.jsx(ke,{ref:o,className:v("text-sm text-gray-600 dark:text-gray-400",t),...e}));$e.displayName="DialogDescription";export{_e as D,Fe as a,Be as b,Ve as c,$e as d,Ue as e};
|