🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

@inertiajs/react

Package Overview
Dependencies
Maintainers
6
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@inertiajs/react - npm Package Compare versions

Comparing version

to
2.0.13

2

dist/index.esm.js

@@ -1,2 +0,2 @@

import{router as dt}from"@inertiajs/core";import{router as Ae,setupProgress as we}from"@inertiajs/core";import{createElement as Oe}from"react";import{createHeadManager as De,router as ue}from"@inertiajs/core";import{createElement as O,useEffect as Ie,useMemo as Ee,useState as ke}from"react";import{createContext as Re}from"react";var ie=Re(void 0);ie.displayName="InertiaHeadContext";var K=ie;import{createContext as xe}from"react";var pe=xe(void 0);pe.displayName="InertiaPageContext";var B=pe;function _({children:s,initialPage:t,initialComponent:a,resolveComponent:p,titleCallback:i,onHeadUpdate:g}){let[u,f]=ke({component:a||null,page:t,key:null}),c=Ee(()=>De(typeof window>"u",i||(l=>l),g||(()=>{})),[]);if(Ie(()=>{ue.init({initialPage:t,resolveComponent:p,swapComponent:async({component:l,page:e,preserveState:d})=>{f(r=>({component:l,page:e,key:d?r.key:Date.now()}))}}),ue.on("navigate",()=>c.forceUpdate())},[]),!u.component)return O(K.Provider,{value:c},O(B.Provider,{value:u.page},null));let m=s||(({Component:l,props:e,key:d})=>{let r=O(l,{key:d,...e});return typeof l.layout=="function"?l.layout(r):Array.isArray(l.layout)?l.layout.concat(r).reverse().reduce((h,F)=>O(F,{children:h,...e})):r});return O(K.Provider,{value:c},O(B.Provider,{value:u.page},m({Component:u.component,key:u.key,props:u.page.props})))}_.displayName="Inertia";async function ce({id:s="app",resolve:t,setup:a,title:p,progress:i={},page:g,render:u}){let f=typeof window>"u",c=f?null:document.getElementById(s),m=g||JSON.parse(c.dataset.page),l=r=>Promise.resolve(t(r)).then(h=>h.default||h),e=[],d=await Promise.all([l(m.component),Ae.decryptHistory().catch(()=>{})]).then(([r])=>a({el:c,App:_,props:{initialPage:m,initialComponent:r,resolveComponent:l,titleCallback:p,onHeadUpdate:f?h=>e=h:null}}));if(!f&&i&&we(i),f){let r=await u(Oe("div",{id:s,"data-page":JSON.stringify(m)},d));return{head:e,body:r}}}import{useEffect as le,useMemo as Le,useState as He}from"react";import{useContext as Me}from"react";function q(){let s=Me(B);if(!s)throw new Error("usePage must be used within the Inertia component");return s}var de=s=>(s=new URL(s.href),s.hash="",s),Ke=(s,t)=>de(s).href===de(t).href,fe=({children:s,data:t,fallback:a})=>{if(!t)throw new Error("`<Deferred>` requires a `data` prop to be a string or array of strings");let[p,i]=He(!1),g=q().props,u=Le(()=>Array.isArray(t)?t:[t],[t]);return le(()=>{let f=me.on("start",c=>{let m=c.detail.visit.only.length>0||c.detail.visit.except.length>0,l=c.detail.visit.only.find(e=>u.includes(e));Ke(c.detail.visit.url,window.location)&&(!m||l)&&i(!1)});return()=>{f()}},[]),le(()=>{i(u.every(f=>g[f]!==void 0))},[g,u]),p?s:a};fe.displayName="InertiaDeferred";var Be=fe;import ge,{useContext as Ve,useEffect as Ue,useMemo as Ne}from"react";var je=function({children:s,title:t}){let a=Ve(K),p=Ne(()=>a.createProvider(),[a]);Ue(()=>()=>{p.disconnect()},[p]);function i(e){return["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].indexOf(e.type)>-1}function g(e){let d=Object.keys(e.props).reduce((r,h)=>{if(["head-key","children","dangerouslySetInnerHTML"].includes(h))return r;let F=e.props[h];return F===""?r+` ${h}`:r+` ${h}="${F}"`},"");return`<${e.type}${d}>`}function u(e){return typeof e.props.children=="string"?e.props.children:e.props.children.reduce((d,r)=>d+f(r),"")}function f(e){let d=g(e);return e.props.children&&(d+=u(e)),e.props.dangerouslySetInnerHTML&&(d+=e.props.dangerouslySetInnerHTML.__html),i(e)||(d+=`</${e.type}>`),d}function c(e){return ge.cloneElement(e,{inertia:e.props["head-key"]!==void 0?e.props["head-key"]:""})}function m(e){return f(c(e))}function l(e){let d=ge.Children.toArray(e).filter(r=>r).map(r=>m(r));return t&&!d.find(r=>r.startsWith("<title"))&&d.push(`<title inertia>${t}</title>`),d}return p.update(l(s)),null},$e=je;import{mergeDataIntoQueryString as We,router as re,shouldIntercept as oe}from"@inertiajs/core";import{createElement as _e,forwardRef as qe,useEffect as Pe,useMemo as ye,useRef as Je,useState as Qe}from"react";var x=()=>{},he=qe(({children:s,as:t="a",data:a={},href:p,method:i="get",preserveScroll:g=!1,preserveState:u=null,replace:f=!1,only:c=[],except:m=[],headers:l={},queryStringArrayFormat:e="brackets",async:d=!1,onClick:r=x,onCancelToken:h=x,onBefore:F=x,onStart:I=x,onProgress:E=x,onFinish:Y=x,onCancel:N=x,onSuccess:z=x,onError:M=x,prefetch:v=!1,cacheFor:b=0,...G},X)=>{let[Z,j]=Qe(0),L=Je(null);t=t.toLowerCase(),i=typeof p=="object"?p.method:i.toLowerCase();let[k,ee]=We(i,typeof p=="object"?p.url:p||"",a,e),A=k;a=ee;let $={data:a,method:i,preserveScroll:g,preserveState:u??i!=="get",replace:f,only:c,except:m,headers:l,async:d},W={...$,onCancelToken:h,onBefore:F,onStart(o){j(w=>w+1),I(o)},onProgress:E,onFinish(o){j(w=>w-1),Y(o)},onCancel:N,onSuccess:z,onError:M},H=()=>{re.prefetch(A,$,{cacheFor:te})},R=ye(()=>v===!0?["hover"]:v===!1?[]:Array.isArray(v)?v:[v],Array.isArray(v)?v:[v]),te=ye(()=>b!==0?b:R.length===1&&R[0]==="click"?0:3e4,[b,R]);Pe(()=>()=>{clearTimeout(L.current)},[]),Pe(()=>{R.includes("mount")&&setTimeout(()=>H())},R);let n={onClick:o=>{r(o),oe(o)&&(o.preventDefault(),re.visit(A,W))}},y={onMouseEnter:()=>{L.current=window.setTimeout(()=>{H()},75)},onMouseLeave:()=>{clearTimeout(L.current)},onClick:n.onClick},P={onMouseDown:o=>{oe(o)&&(o.preventDefault(),H())},onMouseUp:o=>{o.preventDefault(),re.visit(A,W)},onClick:o=>{r(o),oe(o)&&o.preventDefault()}};return i!=="get"&&(t="button"),_e(t,{...G,...{a:{href:A},button:{type:"button"}}[t]||{},ref:X,...R.includes("hover")?y:R.includes("click")?P:n,"data-loading":Z>0?"":void 0},s)});he.displayName="InertiaLink";var Ye=he;import{router as Se}from"@inertiajs/core";import{cloneDeep as J,isEqual as Xe}from"es-toolkit";import{get as Ze,has as et,set as ne}from"es-toolkit/compat";import{useCallback as T,useEffect as tt,useRef as Q,useState as D}from"react";import{router as Fe}from"@inertiajs/core";import{useEffect as ze,useState as Ge}from"react";function V(s,t){let[a,p]=Ge(()=>{let i=Fe.restore(t);return i!==void 0?i:s});return ze(()=>{Fe.remember(a,t)},[a,t]),[a,p]}function ve(s,t){let a=Q(null),p=typeof s=="string"?s:null,[i,g]=D((typeof s=="string"?t:s)||{}),u=Q(null),f=Q(null),[c,m]=p?V(i,`${p}:data`):D(i),[l,e]=p?V({},`${p}:errors`):D({}),[d,r]=D(!1),[h,F]=D(!1),[I,E]=D(null),[Y,N]=D(!1),[z,M]=D(!1),v=Q(n=>n);tt(()=>(a.current=!0,()=>{a.current=!1}),[]);let b=T((...n)=>{let y=typeof n[0]=="object",P=y?n[0].method:n[0],C=y?n[0].url:n[1],o=(y?n[1]:n[2])??{},w={...o,onCancelToken:S=>{if(u.current=S,o.onCancelToken)return o.onCancelToken(S)},onBefore:S=>{if(N(!1),M(!1),clearTimeout(f.current),o.onBefore)return o.onBefore(S)},onStart:S=>{if(F(!0),o.onStart)return o.onStart(S)},onProgress:S=>{if(E(S),o.onProgress)return o.onProgress(S)},onSuccess:S=>{if(a.current&&(F(!1),E(null),e({}),r(!1),N(!0),M(!0),g(J(c)),f.current=setTimeout(()=>{a.current&&M(!1)},2e3)),o.onSuccess)return o.onSuccess(S)},onError:S=>{if(a.current&&(F(!1),E(null),e(S),r(!0)),o.onError)return o.onError(S)},onCancel:()=>{if(a.current&&(F(!1),E(null)),o.onCancel)return o.onCancel()},onFinish:S=>{if(a.current&&(F(!1),E(null)),u.current=null,o.onFinish)return o.onFinish(S)}};P==="delete"?Se.delete(C,{...w,data:v.current(c)}):Se[P](C,v.current(c),w)},[c,e,v]),G=T((n,y)=>{m(typeof n=="string"?P=>ne(J(P),n,y):typeof n=="function"?P=>n(P):n)},[m]),X=T((n,y)=>{g(typeof n>"u"?()=>c:P=>typeof n=="string"?ne(J(P),n,y):Object.assign(J(P),n))},[c,g]),Z=T((...n)=>{n.length===0?m(i):m(y=>n.filter(P=>et(i,P)).reduce((P,C)=>ne(P,C,Ze(i,C)),{...y}))},[m,i]),j=T((n,y)=>{e(P=>{let C={...P,...typeof n=="string"?{[n]:y}:n};return r(Object.keys(C).length>0),C})},[e,r]),L=T((...n)=>{e(y=>{let P=Object.keys(y).reduce((C,o)=>({...C,...n.length>0&&!n.includes(o)?{[o]:y[o]}:{}}),{});return r(Object.keys(P).length>0),P})},[e,r]),k=n=>(y,P)=>{b(n,y,P)},ee=T(k("get"),[b]),A=T(k("post"),[b]),$=T(k("put"),[b]),W=T(k("patch"),[b]),H=T(k("delete"),[b]),R=T(()=>{u.current&&u.current.cancel()},[]),te=T(n=>{v.current=n},[]);return{data:c,setData:G,isDirty:!Xe(c,i),errors:l,hasErrors:d,processing:h,progress:I,wasSuccessful:Y,recentlySuccessful:z,transform:te,setDefaults:X,reset:Z,setError:j,clearErrors:L,submit:b,get:ee,post:A,put:$,patch:W,delete:H,cancel:R}}import{router as rt}from"@inertiajs/core";import{useEffect as ot,useRef as nt}from"react";function Te(s,t={},a={keepAlive:!1,autoStart:!0}){let p=nt(rt.poll(s,t,{...a,autoStart:!1}));return ot(()=>((a.autoStart??!0)&&p.current.start(),()=>p.current.stop()),[]),{stop:p.current.stop,start:p.current.start}}import{router as U}from"@inertiajs/core";import{useEffect as st,useState as se}from"react";function be(s={}){let t=typeof window>"u"?null:U.getCached(window.location.pathname,s),a=typeof window>"u"?null:U.getPrefetching(window.location.pathname,s),[p,i]=se(t?.staleTimestamp||null),[g,u]=se(a!==null),[f,c]=se(t!==null);return st(()=>{let m=U.on("prefetching",e=>{e.detail.visit.url.pathname===window.location.pathname&&u(!0)}),l=U.on("prefetched",e=>{e.detail.visit.url.pathname===window.location.pathname&&(u(!1),c(!0),i(e.detail.fetchedAt))});return()=>{l(),m()}},[]),{lastUpdatedAt:p,isPrefetching:g,isPrefetched:f,flush:()=>U.flush(window.location.pathname,s)}}import{router as at}from"@inertiajs/core";import{createElement as it,useCallback as pt,useEffect as ut,useRef as ae,useState as ct}from"react";var Ce=({children:s,data:t,params:a,buffer:p,as:i,always:g,fallback:u})=>{g=g??!1,i=i??"div",u=u??null;let[f,c]=ct(!1),m=ae(!1),l=ae(!1),e=ae(null),d=pt(()=>{if(t)return{only:Array.isArray(t)?t:[t]};if(!a)throw new Error("You must provide either a `data` or `params` prop.");return a},[a,t]);return ut(()=>{if(!e.current)return;let r=new IntersectionObserver(h=>{if(!h[0].isIntersecting||(!g&&m.current&&r.disconnect(),l.current))return;m.current=!0,l.current=!0;let F=d();at.reload({...F,onStart:I=>{l.current=!0,F.onStart?.(I)},onFinish:I=>{c(!0),l.current=!1,F.onFinish?.(I),g||r.disconnect()}})},{rootMargin:`${p||0}px`});return r.observe(e.current),()=>{r.disconnect()}},[e,d,p]),g||!f?it(i,{props:null,ref:e},f?s:u):f?s:null};Ce.displayName="InertiaWhenVisible";var lt=Ce;var me=dt;export{Be as Deferred,$e as Head,Ye as Link,lt as WhenVisible,ce as createInertiaApp,me as router,ve as useForm,q as usePage,Te as usePoll,be as usePrefetch,V as useRemember};
import{router as St}from"@inertiajs/core";import{router as Ke,setupProgress as Be}from"@inertiajs/core";import{createElement as Ve}from"react";import{createHeadManager as Oe,router as fe}from"@inertiajs/core";import{createElement as O,useEffect as Me,useMemo as Le,useState as He}from"react";import{createContext as ke}from"react";var le=ke(void 0);le.displayName="InertiaHeadContext";var B=le;import{createContext as we}from"react";var de=we(void 0);de.displayName="InertiaPageContext";var V=de;var ne=!0,me=!1,ge=async()=>{ne=!1};function q({children:o,initialPage:t,initialComponent:a,resolveComponent:i,titleCallback:s,onHeadUpdate:f}){let[l,m]=He({component:a||null,page:t,key:null}),u=Le(()=>Oe(typeof window>"u",s||(c=>c),f||(()=>{})),[]);if(me||(fe.init({initialPage:t,resolveComponent:i,swapComponent:async c=>ge(c)}),me=!0),Me(()=>{ge=async({component:c,page:e,preserveState:d})=>{if(ne){ne=!1;return}m(r=>({component:c,page:e,key:d?r.key:Date.now()}))},fe.on("navigate",()=>u.forceUpdate())},[]),!l.component)return O(B.Provider,{value:u},O(V.Provider,{value:l.page},null));let g=o||(({Component:c,props:e,key:d})=>{let r=O(c,{key:d,...e});return typeof c.layout=="function"?c.layout(r):Array.isArray(c.layout)?c.layout.concat(r).reverse().reduce((h,F)=>O(F,{children:h,...e})):r});return O(B.Provider,{value:u},O(V.Provider,{value:l.page},g({Component:l.component,key:l.key,props:l.page.props})))}q.displayName="Inertia";async function Pe({id:o="app",resolve:t,setup:a,title:i,progress:s={},page:f,render:l}){let m=typeof window>"u",u=m?null:document.getElementById(o),g=f||JSON.parse(u.dataset.page),c=r=>Promise.resolve(t(r)).then(h=>h.default||h),e=[],d=await Promise.all([c(g.component),Ke.decryptHistory().catch(()=>{})]).then(([r])=>a({el:u,App:q,props:{initialPage:g,initialComponent:r,resolveComponent:c,titleCallback:i,onHeadUpdate:m?h=>e=h:null}}));if(!m&&s&&Be(s),m){let r=await l(Ve("div",{id:o,"data-page":JSON.stringify(g)},d));return{head:e,body:r}}}import{useEffect as ye,useMemo as Ne,useState as je}from"react";import{useContext as Ue}from"react";function J(){let o=Ue(V);if(!o)throw new Error("usePage must be used within the Inertia component");return o}var he=o=>(o=new URL(o.href),o.hash="",o),$e=(o,t)=>he(o).href===he(t).href,Fe=({children:o,data:t,fallback:a})=>{if(!t)throw new Error("`<Deferred>` requires a `data` prop to be a string or array of strings");let[i,s]=je(!1),f=J().props,l=Ne(()=>Array.isArray(t)?t:[t],[t]);return ye(()=>{let m=Se.on("start",u=>{let g=u.detail.visit.only.length>0||u.detail.visit.except.length>0,c=u.detail.visit.only.find(e=>l.includes(e));$e(u.detail.visit.url,window.location)&&(!g||c)&&s(!1)});return()=>{m()}},[]),ye(()=>{s(l.every(m=>f[m]!==void 0))},[f,l]),i?o:a};Fe.displayName="InertiaDeferred";var We=Fe;import Te,{useContext as _e,useEffect as qe,useMemo as Je}from"react";var ze=function({children:o,title:t}){let a=_e(B),i=Je(()=>a.createProvider(),[a]);qe(()=>(i.reconnect(),i.update(c(o)),()=>{i.disconnect()}),[i,o,t]);function s(e){return["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].indexOf(e.type)>-1}function f(e){let d=Object.keys(e.props).reduce((r,h)=>{if(["head-key","children","dangerouslySetInnerHTML"].includes(h))return r;let F=e.props[h];return F===""?r+` ${h}`:r+` ${h}="${F}"`},"");return`<${e.type}${d}>`}function l(e){return typeof e.props.children=="string"?e.props.children:e.props.children.reduce((d,r)=>d+m(r),"")}function m(e){let d=f(e);return e.props.children&&(d+=l(e)),e.props.dangerouslySetInnerHTML&&(d+=e.props.dangerouslySetInnerHTML.__html),s(e)||(d+=`</${e.type}>`),d}function u(e){return Te.cloneElement(e,{inertia:e.props["head-key"]!==void 0?e.props["head-key"]:""})}function g(e){return m(u(e))}function c(e){let d=Te.Children.toArray(e).filter(r=>r).map(r=>g(r));return t&&!d.find(r=>r.startsWith("<title"))&&d.push(`<title inertia>${t}</title>`),d}return null},Qe=ze;import{mergeDataIntoQueryString as Ye,router as se,shouldIntercept as ae}from"@inertiajs/core";import{createElement as Ge,forwardRef as Xe,useEffect as ve,useMemo as be,useRef as Ze,useState as et}from"react";var R=()=>{},Ce=Xe(({children:o,as:t="a",data:a={},href:i,method:s="get",preserveScroll:f=!1,preserveState:l=null,replace:m=!1,only:u=[],except:g=[],headers:c={},queryStringArrayFormat:e="brackets",async:d=!1,onClick:r=R,onCancelToken:h=R,onBefore:F=R,onStart:A=R,onProgress:E=R,onFinish:Y=R,onCancel:j=R,onSuccess:G=R,onError:M=R,prefetch:T=!1,cacheFor:k=0,...C},X)=>{let[$,L]=et(0),H=Ze(null);t=t.toLowerCase(),s=typeof i=="object"?i.method:s.toLowerCase();let[Z,ee]=Ye(s,typeof i=="object"?i.url:i||"",a,e),w=Z;a=ee;let I={data:a,method:s,preserveScroll:f,preserveState:l??s!=="get",replace:m,only:u,except:g,headers:c,async:d},W={...I,onCancelToken:h,onBefore:F,onStart(p){L(P=>P+1),A(p)},onProgress:E,onFinish(p){L(P=>P-1),Y(p)},onCancel:j,onSuccess:G,onError:M},K=()=>{se.prefetch(w,I,{cacheFor:te})},D=be(()=>T===!0?["hover"]:T===!1?[]:Array.isArray(T)?T:[T],Array.isArray(T)?T:[T]),te=be(()=>k!==0?k:D.length===1&&D[0]==="click"?0:3e4,[k,D]);ve(()=>()=>{clearTimeout(H.current)},[]),ve(()=>{D.includes("mount")&&setTimeout(()=>K())},D);let _={onClick:p=>{r(p),ae(p)&&(p.preventDefault(),se.visit(w,W))}},re={onMouseEnter:()=>{H.current=window.setTimeout(()=>{K()},75)},onMouseLeave:()=>{clearTimeout(H.current)},onClick:_.onClick},oe={onMouseDown:p=>{ae(p)&&(p.preventDefault(),K())},onMouseUp:p=>{p.preventDefault(),se.visit(w,W)},onClick:p=>{r(p),ae(p)&&p.preventDefault()}};return s!=="get"&&(t="button"),Ge(t,{...C,...{a:{href:w},button:{type:"button"}}[t]||{},ref:X,...D.includes("hover")?re:D.includes("click")?oe:_,"data-loading":$>0?"":void 0},o)});Ce.displayName="InertiaLink";var tt=Ce;import{router as Re}from"@inertiajs/core";import{cloneDeep as z,isEqual as nt}from"es-toolkit";import{get as st,has as at,set as ie}from"es-toolkit/compat";import{useCallback as v,useEffect as it,useLayoutEffect as pt,useMemo as ut,useRef as Q,useState as x}from"react";import{router as De}from"@inertiajs/core";import{useEffect as rt,useState as ot}from"react";function U(o,t){let[a,i]=ot(()=>{let s=De.restore(t);return s!==void 0?s:o});return rt(()=>{De.remember(a,t)},[a,t]),[a,i]}function xe(o,t){let a=Q(null),i=typeof o=="string"?o:null,[s,f]=x((typeof o=="string"?t:o)||{}),l=Q(null),m=Q(null),[u,g]=i?U(s,`${i}:data`):x(s),[c,e]=i?U({},`${i}:errors`):x({}),[d,r]=x(!1),[h,F]=x(!1),[A,E]=x(null),[Y,j]=x(!1),[G,M]=x(!1),T=Q(n=>n),k=ut(()=>!nt(u,s),[u,s]);it(()=>(a.current=!0,()=>{a.current=!1}),[]);let C=v((...n)=>{let p=typeof n[0]=="object",P=p?n[0].method:n[0],b=p?n[0].url:n[1],y=(p?n[1]:n[2])??{},ce={...y,onCancelToken:S=>{if(l.current=S,y.onCancelToken)return y.onCancelToken(S)},onBefore:S=>{if(j(!1),M(!1),clearTimeout(m.current),y.onBefore)return y.onBefore(S)},onStart:S=>{if(F(!0),y.onStart)return y.onStart(S)},onProgress:S=>{if(E(S),y.onProgress)return y.onProgress(S)},onSuccess:S=>{if(a.current&&(F(!1),E(null),e({}),r(!1),j(!0),M(!0),f(z(u)),m.current=setTimeout(()=>{a.current&&M(!1)},2e3)),y.onSuccess)return y.onSuccess(S)},onError:S=>{if(a.current&&(F(!1),E(null),e(S),r(!0)),y.onError)return y.onError(S)},onCancel:()=>{if(a.current&&(F(!1),E(null)),y.onCancel)return y.onCancel()},onFinish:S=>{if(a.current&&(F(!1),E(null)),l.current=null,y.onFinish)return y.onFinish(S)}};P==="delete"?Re.delete(b,{...ce,data:T.current(u)}):Re[P](b,T.current(u),ce)},[u,e,T]),X=v((n,p)=>{g(typeof n=="string"?P=>ie(z(P),n,p):typeof n=="function"?P=>n(P):n)},[g]),[$,L]=x(!1),H=v((n,p)=>{typeof n>"u"?(f(u),L(!0)):f(P=>typeof n=="string"?ie(z(P),n,p):Object.assign(z(P),n))},[u,f]);pt(()=>{$&&(k&&f(u),L(!1))},[$]);let Z=v((...n)=>{n.length===0?g(s):g(p=>n.filter(P=>at(s,P)).reduce((P,b)=>ie(P,b,st(s,b)),{...p}))},[g,s]),ee=v((n,p)=>{e(P=>{let b={...P,...typeof n=="string"?{[n]:p}:n};return r(Object.keys(b).length>0),b})},[e,r]),w=v((...n)=>{e(p=>{let P=Object.keys(p).reduce((b,y)=>({...b,...n.length>0&&!n.includes(y)?{[y]:p[y]}:{}}),{});return r(Object.keys(P).length>0),P})},[e,r]),I=n=>(p,P)=>{C(n,p,P)},W=v(I("get"),[C]),K=v(I("post"),[C]),D=v(I("put"),[C]),te=v(I("patch"),[C]),_=v(I("delete"),[C]),re=v(()=>{l.current&&l.current.cancel()},[]),oe=v(n=>{T.current=n},[]);return{data:u,setData:X,isDirty:k,errors:c,hasErrors:d,processing:h,progress:A,wasSuccessful:Y,recentlySuccessful:G,transform:oe,setDefaults:H,reset:Z,setError:ee,clearErrors:w,submit:C,get:W,post:K,put:D,patch:te,delete:_,cancel:re}}import{router as ct}from"@inertiajs/core";import{useEffect as lt,useRef as dt}from"react";function Ie(o,t={},a={keepAlive:!1,autoStart:!0}){let i=dt(ct.poll(o,t,{...a,autoStart:!1}));return lt(()=>((a.autoStart??!0)&&i.current.start(),()=>i.current.stop()),[]),{stop:i.current.stop,start:i.current.start}}import{router as N}from"@inertiajs/core";import{useEffect as ft,useState as pe}from"react";function Ae(o={}){let t=typeof window>"u"?null:N.getCached(window.location.pathname,o),a=typeof window>"u"?null:N.getPrefetching(window.location.pathname,o),[i,s]=pe(t?.staleTimestamp||null),[f,l]=pe(a!==null),[m,u]=pe(t!==null);return ft(()=>{let g=N.on("prefetching",e=>{e.detail.visit.url.pathname===window.location.pathname&&l(!0)}),c=N.on("prefetched",e=>{e.detail.visit.url.pathname===window.location.pathname&&(l(!1),u(!0),s(e.detail.fetchedAt))});return()=>{c(),g()}},[]),{lastUpdatedAt:i,isPrefetching:f,isPrefetched:m,flush:()=>N.flush(window.location.pathname,o)}}import{router as mt}from"@inertiajs/core";import{createElement as gt,useCallback as Pt,useEffect as yt,useRef as ue,useState as ht}from"react";var Ee=({children:o,data:t,params:a,buffer:i,as:s,always:f,fallback:l})=>{f=f??!1,s=s??"div",l=l??null;let[m,u]=ht(!1),g=ue(!1),c=ue(!1),e=ue(null),d=Pt(()=>{if(t)return{only:Array.isArray(t)?t:[t]};if(!a)throw new Error("You must provide either a `data` or `params` prop.");return a},[a,t]);return yt(()=>{if(!e.current)return;let r=new IntersectionObserver(h=>{if(!h[0].isIntersecting||(!f&&g.current&&r.disconnect(),c.current))return;g.current=!0,c.current=!0;let F=d();mt.reload({...F,onStart:A=>{c.current=!0,F.onStart?.(A)},onFinish:A=>{u(!0),c.current=!1,F.onFinish?.(A),f||r.disconnect()}})},{rootMargin:`${i||0}px`});return r.observe(e.current),()=>{r.disconnect()}},[e,d,i]),f||!m?gt(s,{props:null,ref:e},m?o:l):m?o:null};Ee.displayName="InertiaWhenVisible";var Ft=Ee;var Se=St;export{We as Deferred,Qe as Head,tt as Link,Ft as WhenVisible,Pe as createInertiaApp,Se as router,xe as useForm,J as usePage,Ie as usePoll,Ae as usePrefetch,U as useRemember};
//# sourceMappingURL=index.esm.js.map

@@ -1,2 +0,2 @@

var Ke=Object.create;var ee=Object.defineProperty;var Be=Object.getOwnPropertyDescriptor;var Ve=Object.getOwnPropertyNames;var Ue=Object.getPrototypeOf,Ne=Object.prototype.hasOwnProperty;var je=(t,r)=>{for(var o in r)ee(t,o,{get:r[o],enumerable:!0})},Fe=(t,r,o,p)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ve(r))!Ne.call(t,n)&&n!==o&&ee(t,n,{get:()=>r[n],enumerable:!(p=Be(r,n))||p.enumerable});return t};var $e=(t,r,o)=>(o=t!=null?Ke(Ue(t)):{},Fe(r||!t||!t.__esModule?ee(o,"default",{value:t,enumerable:!0}):o,t)),We=t=>Fe(ee({},"__esModule",{value:!0}),t);var Je={};je(Je,{Deferred:()=>Ie,Head:()=>Ee,Link:()=>Ae,WhenVisible:()=>Le,createInertiaApp:()=>de,router:()=>fe,useForm:()=>Pe,usePage:()=>Y,usePoll:()=>ye,usePrefetch:()=>he,useRemember:()=>U});module.exports=We(Je);var He=require("@inertiajs/core");var re=require("@inertiajs/core"),Ce=require("react");var Q=require("@inertiajs/core"),C=require("react");var Se=require("react"),ve=(0,Se.createContext)(void 0);ve.displayName="InertiaHeadContext";var q=ve;var Te=require("react"),be=(0,Te.createContext)(void 0);be.displayName="InertiaPageContext";var J=be;function te({children:t,initialPage:r,initialComponent:o,resolveComponent:p,titleCallback:n,onHeadUpdate:P}){let[c,m]=(0,C.useState)({component:o||null,page:r,key:null}),l=(0,C.useMemo)(()=>(0,Q.createHeadManager)(typeof window>"u",n||(d=>d),P||(()=>{})),[]);if((0,C.useEffect)(()=>{Q.router.init({initialPage:r,resolveComponent:p,swapComponent:async({component:d,page:e,preserveState:f})=>{m(s=>({component:d,page:e,key:f?s.key:Date.now()}))}}),Q.router.on("navigate",()=>l.forceUpdate())},[]),!c.component)return(0,C.createElement)(q.Provider,{value:l},(0,C.createElement)(J.Provider,{value:c.page},null));let g=t||(({Component:d,props:e,key:f})=>{let s=(0,C.createElement)(d,{key:f,...e});return typeof d.layout=="function"?d.layout(s):Array.isArray(d.layout)?d.layout.concat(s).reverse().reduce((F,S)=>(0,C.createElement)(S,{children:F,...e})):s});return(0,C.createElement)(q.Provider,{value:l},(0,C.createElement)(J.Provider,{value:c.page},g({Component:c.component,key:c.key,props:c.page.props})))}te.displayName="Inertia";async function de({id:t="app",resolve:r,setup:o,title:p,progress:n={},page:P,render:c}){let m=typeof window>"u",l=m?null:document.getElementById(t),g=P||JSON.parse(l.dataset.page),d=s=>Promise.resolve(r(s)).then(F=>F.default||F),e=[],f=await Promise.all([d(g.component),re.router.decryptHistory().catch(()=>{})]).then(([s])=>o({el:l,App:te,props:{initialPage:g,initialComponent:s,resolveComponent:d,titleCallback:p,onHeadUpdate:m?F=>e=F:null}}));if(!m&&n&&(0,re.setupProgress)(n),m){let s=await c((0,Ce.createElement)("div",{id:t,"data-page":JSON.stringify(g)},f));return{head:e,body:s}}}var H=require("react");var Re=require("react");function Y(){let t=(0,Re.useContext)(J);if(!t)throw new Error("usePage must be used within the Inertia component");return t}var xe=t=>(t=new URL(t.href),t.hash="",t),_e=(t,r)=>xe(t).href===xe(r).href,De=({children:t,data:r,fallback:o})=>{if(!r)throw new Error("`<Deferred>` requires a `data` prop to be a string or array of strings");let[p,n]=(0,H.useState)(!1),P=Y().props,c=(0,H.useMemo)(()=>Array.isArray(r)?r:[r],[r]);return(0,H.useEffect)(()=>{let m=fe.on("start",l=>{let g=l.detail.visit.only.length>0||l.detail.visit.except.length>0,d=l.detail.visit.only.find(e=>c.includes(e));_e(l.detail.visit.url,window.location)&&(!g||d)&&n(!1)});return()=>{m()}},[]),(0,H.useEffect)(()=>{n(c.every(m=>P[m]!==void 0))},[P,c]),p?t:o};De.displayName="InertiaDeferred";var Ie=De;var k=$e(require("react"),1);var qe=function({children:t,title:r}){let o=(0,k.useContext)(q),p=(0,k.useMemo)(()=>o.createProvider(),[o]);(0,k.useEffect)(()=>()=>{p.disconnect()},[p]);function n(e){return["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].indexOf(e.type)>-1}function P(e){let f=Object.keys(e.props).reduce((s,F)=>{if(["head-key","children","dangerouslySetInnerHTML"].includes(F))return s;let S=e.props[F];return S===""?s+` ${F}`:s+` ${F}="${S}"`},"");return`<${e.type}${f}>`}function c(e){return typeof e.props.children=="string"?e.props.children:e.props.children.reduce((f,s)=>f+m(s),"")}function m(e){let f=P(e);return e.props.children&&(f+=c(e)),e.props.dangerouslySetInnerHTML&&(f+=e.props.dangerouslySetInnerHTML.__html),n(e)||(f+=`</${e.type}>`),f}function l(e){return k.default.cloneElement(e,{inertia:e.props["head-key"]!==void 0?e.props["head-key"]:""})}function g(e){return m(l(e))}function d(e){let f=k.default.Children.toArray(e).filter(s=>s).map(s=>g(s));return r&&!f.find(s=>s.startsWith("<title"))&&f.push(`<title inertia>${r}</title>`),f}return p.update(d(t)),null},Ee=qe;var I=require("@inertiajs/core"),T=require("react"),A=()=>{},ke=(0,T.forwardRef)(({children:t,as:r="a",data:o={},href:p,method:n="get",preserveScroll:P=!1,preserveState:c=null,replace:m=!1,only:l=[],except:g=[],headers:d={},queryStringArrayFormat:e="brackets",async:f=!1,onClick:s=A,onCancelToken:F=A,onBefore:S=A,onStart:O=A,onProgress:M=A,onFinish:se=A,onCancel:z=A,onSuccess:ae=A,onError:$=A,prefetch:b=!1,cacheFor:x=0,...ie},pe)=>{let[ue,G]=(0,T.useState)(0),W=(0,T.useRef)(null);r=r.toLowerCase(),n=typeof p=="object"?p.method:n.toLowerCase();let[L,ce]=(0,I.mergeDataIntoQueryString)(n,typeof p=="object"?p.url:p||"",o,e),B=L;o=ce;let X={data:o,method:n,preserveScroll:P,preserveState:c??n!=="get",replace:m,only:l,except:g,headers:d,async:f},Z={...X,onCancelToken:F,onBefore:S,onStart(a){G(V=>V+1),O(a)},onProgress:M,onFinish(a){G(V=>V-1),se(a)},onCancel:z,onSuccess:ae,onError:$},_=()=>{I.router.prefetch(B,X,{cacheFor:le})},E=(0,T.useMemo)(()=>b===!0?["hover"]:b===!1?[]:Array.isArray(b)?b:[b],Array.isArray(b)?b:[b]),le=(0,T.useMemo)(()=>x!==0?x:E.length===1&&E[0]==="click"?0:3e4,[x,E]);(0,T.useEffect)(()=>()=>{clearTimeout(W.current)},[]),(0,T.useEffect)(()=>{E.includes("mount")&&setTimeout(()=>_())},E);let i={onClick:a=>{s(a),(0,I.shouldIntercept)(a)&&(a.preventDefault(),I.router.visit(B,Z))}},h={onMouseEnter:()=>{W.current=window.setTimeout(()=>{_()},75)},onMouseLeave:()=>{clearTimeout(W.current)},onClick:i.onClick},y={onMouseDown:a=>{(0,I.shouldIntercept)(a)&&(a.preventDefault(),_())},onMouseUp:a=>{a.preventDefault(),I.router.visit(B,Z)},onClick:a=>{s(a),(0,I.shouldIntercept)(a)&&a.preventDefault()}};return n!=="get"&&(r="button"),(0,T.createElement)(r,{...ie,...{a:{href:B},button:{type:"button"}}[r]||{},ref:pe,...E.includes("hover")?h:E.includes("click")?y:i,"data-loading":ue>0?"":void 0},t)});ke.displayName="InertiaLink";var Ae=ke;var ge=require("@inertiajs/core"),K=require("es-toolkit"),w=require("es-toolkit/compat"),u=require("react");var me=require("@inertiajs/core"),oe=require("react");function U(t,r){let[o,p]=(0,oe.useState)(()=>{let n=me.router.restore(r);return n!==void 0?n:t});return(0,oe.useEffect)(()=>{me.router.remember(o,r)},[o,r]),[o,p]}function Pe(t,r){let o=(0,u.useRef)(null),p=typeof t=="string"?t:null,[n,P]=(0,u.useState)((typeof t=="string"?r:t)||{}),c=(0,u.useRef)(null),m=(0,u.useRef)(null),[l,g]=p?U(n,`${p}:data`):(0,u.useState)(n),[d,e]=p?U({},`${p}:errors`):(0,u.useState)({}),[f,s]=(0,u.useState)(!1),[F,S]=(0,u.useState)(!1),[O,M]=(0,u.useState)(null),[se,z]=(0,u.useState)(!1),[ae,$]=(0,u.useState)(!1),b=(0,u.useRef)(i=>i);(0,u.useEffect)(()=>(o.current=!0,()=>{o.current=!1}),[]);let x=(0,u.useCallback)((...i)=>{let h=typeof i[0]=="object",y=h?i[0].method:i[0],D=h?i[0].url:i[1],a=(h?i[1]:i[2])??{},V={...a,onCancelToken:v=>{if(c.current=v,a.onCancelToken)return a.onCancelToken(v)},onBefore:v=>{if(z(!1),$(!1),clearTimeout(m.current),a.onBefore)return a.onBefore(v)},onStart:v=>{if(S(!0),a.onStart)return a.onStart(v)},onProgress:v=>{if(M(v),a.onProgress)return a.onProgress(v)},onSuccess:v=>{if(o.current&&(S(!1),M(null),e({}),s(!1),z(!0),$(!0),P((0,K.cloneDeep)(l)),m.current=setTimeout(()=>{o.current&&$(!1)},2e3)),a.onSuccess)return a.onSuccess(v)},onError:v=>{if(o.current&&(S(!1),M(null),e(v),s(!0)),a.onError)return a.onError(v)},onCancel:()=>{if(o.current&&(S(!1),M(null)),a.onCancel)return a.onCancel()},onFinish:v=>{if(o.current&&(S(!1),M(null)),c.current=null,a.onFinish)return a.onFinish(v)}};y==="delete"?ge.router.delete(D,{...V,data:b.current(l)}):ge.router[y](D,b.current(l),V)},[l,e,b]),ie=(0,u.useCallback)((i,h)=>{g(typeof i=="string"?y=>(0,w.set)((0,K.cloneDeep)(y),i,h):typeof i=="function"?y=>i(y):i)},[g]),pe=(0,u.useCallback)((i,h)=>{P(typeof i>"u"?()=>l:y=>typeof i=="string"?(0,w.set)((0,K.cloneDeep)(y),i,h):Object.assign((0,K.cloneDeep)(y),i))},[l,P]),ue=(0,u.useCallback)((...i)=>{i.length===0?g(n):g(h=>i.filter(y=>(0,w.has)(n,y)).reduce((y,D)=>(0,w.set)(y,D,(0,w.get)(n,D)),{...h}))},[g,n]),G=(0,u.useCallback)((i,h)=>{e(y=>{let D={...y,...typeof i=="string"?{[i]:h}:i};return s(Object.keys(D).length>0),D})},[e,s]),W=(0,u.useCallback)((...i)=>{e(h=>{let y=Object.keys(h).reduce((D,a)=>({...D,...i.length>0&&!i.includes(a)?{[a]:h[a]}:{}}),{});return s(Object.keys(y).length>0),y})},[e,s]),L=i=>(h,y)=>{x(i,h,y)},ce=(0,u.useCallback)(L("get"),[x]),B=(0,u.useCallback)(L("post"),[x]),X=(0,u.useCallback)(L("put"),[x]),Z=(0,u.useCallback)(L("patch"),[x]),_=(0,u.useCallback)(L("delete"),[x]),E=(0,u.useCallback)(()=>{c.current&&c.current.cancel()},[]),le=(0,u.useCallback)(i=>{b.current=i},[]);return{data:l,setData:ie,isDirty:!(0,K.isEqual)(l,n),errors:d,hasErrors:f,processing:F,progress:O,wasSuccessful:se,recentlySuccessful:ae,transform:le,setDefaults:pe,reset:ue,setError:G,clearErrors:W,submit:x,get:ce,post:B,put:X,patch:Z,delete:_,cancel:E}}var we=require("@inertiajs/core"),ne=require("react");function ye(t,r={},o={keepAlive:!1,autoStart:!0}){let p=(0,ne.useRef)(we.router.poll(t,r,{...o,autoStart:!1}));return(0,ne.useEffect)(()=>((o.autoStart??!0)&&p.current.start(),()=>p.current.stop()),[]),{stop:p.current.stop,start:p.current.start}}var N=require("@inertiajs/core"),j=require("react");function he(t={}){let r=typeof window>"u"?null:N.router.getCached(window.location.pathname,t),o=typeof window>"u"?null:N.router.getPrefetching(window.location.pathname,t),[p,n]=(0,j.useState)(r?.staleTimestamp||null),[P,c]=(0,j.useState)(o!==null),[m,l]=(0,j.useState)(r!==null);return(0,j.useEffect)(()=>{let g=N.router.on("prefetching",e=>{e.detail.visit.url.pathname===window.location.pathname&&c(!0)}),d=N.router.on("prefetched",e=>{e.detail.visit.url.pathname===window.location.pathname&&(c(!1),l(!0),n(e.detail.fetchedAt))});return()=>{d(),g()}},[]),{lastUpdatedAt:p,isPrefetching:P,isPrefetched:m,flush:()=>N.router.flush(window.location.pathname,t)}}var Oe=require("@inertiajs/core"),R=require("react"),Me=({children:t,data:r,params:o,buffer:p,as:n,always:P,fallback:c})=>{P=P??!1,n=n??"div",c=c??null;let[m,l]=(0,R.useState)(!1),g=(0,R.useRef)(!1),d=(0,R.useRef)(!1),e=(0,R.useRef)(null),f=(0,R.useCallback)(()=>{if(r)return{only:Array.isArray(r)?r:[r]};if(!o)throw new Error("You must provide either a `data` or `params` prop.");return o},[o,r]);return(0,R.useEffect)(()=>{if(!e.current)return;let s=new IntersectionObserver(F=>{if(!F[0].isIntersecting||(!P&&g.current&&s.disconnect(),d.current))return;g.current=!0,d.current=!0;let S=f();Oe.router.reload({...S,onStart:O=>{d.current=!0,S.onStart?.(O)},onFinish:O=>{l(!0),d.current=!1,S.onFinish?.(O),P||s.disconnect()}})},{rootMargin:`${p||0}px`});return s.observe(e.current),()=>{s.disconnect()}},[e,f,p]),P||!m?(0,R.createElement)(n,{props:null,ref:e},m?t:c):m?t:null};Me.displayName="InertiaWhenVisible";var Le=Me;var fe=He.router;
var $e=Object.create;var te=Object.defineProperty;var We=Object.getOwnPropertyDescriptor;var _e=Object.getOwnPropertyNames;var qe=Object.getPrototypeOf,Je=Object.prototype.hasOwnProperty;var ze=(t,r)=>{for(var o in r)te(t,o,{get:r[o],enumerable:!0})},be=(t,r,o,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of _e(r))!Je.call(t,n)&&n!==o&&te(t,n,{get:()=>r[n],enumerable:!(a=We(r,n))||a.enumerable});return t};var Qe=(t,r,o)=>(o=t!=null?$e(qe(t)):{},be(r||!t||!t.__esModule?te(o,"default",{value:t,enumerable:!0}):o,t)),Ye=t=>be(te({},"__esModule",{value:!0}),t);var Ze={};ze(Ze,{Deferred:()=>Me,Head:()=>Le,Link:()=>Ke,WhenVisible:()=>Ne,createInertiaApp:()=>ge,router:()=>Pe,useForm:()=>Fe,usePage:()=>Y,usePoll:()=>Se,usePrefetch:()=>Te,useRemember:()=>U});module.exports=Ye(Ze);var je=require("@inertiajs/core");var oe=require("@inertiajs/core"),Ee=require("react");var Q=require("@inertiajs/core"),C=require("react");var Ce=require("react"),De=(0,Ce.createContext)(void 0);De.displayName="InertiaHeadContext";var J=De;var Re=require("react"),xe=(0,Re.createContext)(void 0);xe.displayName="InertiaPageContext";var z=xe;var me=!0,Ie=!1,Ae=async()=>{me=!1};function re({children:t,initialPage:r,initialComponent:o,resolveComponent:a,titleCallback:n,onHeadUpdate:m}){let[d,g]=(0,C.useState)({component:o||null,page:r,key:null}),c=(0,C.useMemo)(()=>(0,Q.createHeadManager)(typeof window>"u",n||(l=>l),m||(()=>{})),[]);if(Ie||(Q.router.init({initialPage:r,resolveComponent:a,swapComponent:async l=>Ae(l)}),Ie=!0),(0,C.useEffect)(()=>{Ae=async({component:l,page:e,preserveState:f})=>{if(me){me=!1;return}g(s=>({component:l,page:e,key:f?s.key:Date.now()}))},Q.router.on("navigate",()=>c.forceUpdate())},[]),!d.component)return(0,C.createElement)(J.Provider,{value:c},(0,C.createElement)(z.Provider,{value:d.page},null));let P=t||(({Component:l,props:e,key:f})=>{let s=(0,C.createElement)(l,{key:f,...e});return typeof l.layout=="function"?l.layout(s):Array.isArray(l.layout)?l.layout.concat(s).reverse().reduce((F,S)=>(0,C.createElement)(S,{children:F,...e})):s});return(0,C.createElement)(J.Provider,{value:c},(0,C.createElement)(z.Provider,{value:d.page},P({Component:d.component,key:d.key,props:d.page.props})))}re.displayName="Inertia";async function ge({id:t="app",resolve:r,setup:o,title:a,progress:n={},page:m,render:d}){let g=typeof window>"u",c=g?null:document.getElementById(t),P=m||JSON.parse(c.dataset.page),l=s=>Promise.resolve(r(s)).then(F=>F.default||F),e=[],f=await Promise.all([l(P.component),oe.router.decryptHistory().catch(()=>{})]).then(([s])=>o({el:c,App:re,props:{initialPage:P,initialComponent:s,resolveComponent:l,titleCallback:a,onHeadUpdate:g?F=>e=F:null}}));if(!g&&n&&(0,oe.setupProgress)(n),g){let s=await d((0,Ee.createElement)("div",{id:t,"data-page":JSON.stringify(P)},f));return{head:e,body:s}}}var H=require("react");var ke=require("react");function Y(){let t=(0,ke.useContext)(z);if(!t)throw new Error("usePage must be used within the Inertia component");return t}var we=t=>(t=new URL(t.href),t.hash="",t),Ge=(t,r)=>we(t).href===we(r).href,Oe=({children:t,data:r,fallback:o})=>{if(!r)throw new Error("`<Deferred>` requires a `data` prop to be a string or array of strings");let[a,n]=(0,H.useState)(!1),m=Y().props,d=(0,H.useMemo)(()=>Array.isArray(r)?r:[r],[r]);return(0,H.useEffect)(()=>{let g=Pe.on("start",c=>{let P=c.detail.visit.only.length>0||c.detail.visit.except.length>0,l=c.detail.visit.only.find(e=>d.includes(e));Ge(c.detail.visit.url,window.location)&&(!P||l)&&n(!1)});return()=>{g()}},[]),(0,H.useEffect)(()=>{n(d.every(g=>m[g]!==void 0))},[m,d]),a?t:o};Oe.displayName="InertiaDeferred";var Me=Oe;var E=Qe(require("react"),1);var Xe=function({children:t,title:r}){let o=(0,E.useContext)(J),a=(0,E.useMemo)(()=>o.createProvider(),[o]);(0,E.useEffect)(()=>(a.reconnect(),a.update(l(t)),()=>{a.disconnect()}),[a,t,r]);function n(e){return["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].indexOf(e.type)>-1}function m(e){let f=Object.keys(e.props).reduce((s,F)=>{if(["head-key","children","dangerouslySetInnerHTML"].includes(F))return s;let S=e.props[F];return S===""?s+` ${F}`:s+` ${F}="${S}"`},"");return`<${e.type}${f}>`}function d(e){return typeof e.props.children=="string"?e.props.children:e.props.children.reduce((f,s)=>f+g(s),"")}function g(e){let f=m(e);return e.props.children&&(f+=d(e)),e.props.dangerouslySetInnerHTML&&(f+=e.props.dangerouslySetInnerHTML.__html),n(e)||(f+=`</${e.type}>`),f}function c(e){return E.default.cloneElement(e,{inertia:e.props["head-key"]!==void 0?e.props["head-key"]:""})}function P(e){return g(c(e))}function l(e){let f=E.default.Children.toArray(e).filter(s=>s).map(s=>P(s));return r&&!f.find(s=>s.startsWith("<title"))&&f.push(`<title inertia>${r}</title>`),f}return null},Le=Xe;var x=require("@inertiajs/core"),v=require("react"),k=()=>{},He=(0,v.forwardRef)(({children:t,as:r="a",data:o={},href:a,method:n="get",preserveScroll:m=!1,preserveState:d=null,replace:g=!1,only:c=[],except:P=[],headers:l={},queryStringArrayFormat:e="brackets",async:f=!1,onClick:s=k,onCancelToken:F=k,onBefore:S=k,onStart:M=k,onProgress:L=k,onFinish:ae=k,onCancel:G=k,onSuccess:ie=k,onError:$=k,prefetch:b=!1,cacheFor:B=0,...I},pe)=>{let[X,W]=(0,v.useState)(0),_=(0,v.useRef)(null);r=r.toLowerCase(),n=typeof a=="object"?a.method:n.toLowerCase();let[ue,ce]=(0,x.mergeDataIntoQueryString)(n,typeof a=="object"?a.url:a||"",o,e),V=ue;o=ce;let w={data:o,method:n,preserveScroll:m,preserveState:d??n!=="get",replace:g,only:c,except:P,headers:l,async:f},Z={...w,onCancelToken:F,onBefore:S,onStart(u){W(y=>y+1),M(u)},onProgress:L,onFinish(u){W(y=>y-1),ae(u)},onCancel:G,onSuccess:ie,onError:$},q=()=>{x.router.prefetch(V,w,{cacheFor:le})},A=(0,v.useMemo)(()=>b===!0?["hover"]:b===!1?[]:Array.isArray(b)?b:[b],Array.isArray(b)?b:[b]),le=(0,v.useMemo)(()=>B!==0?B:A.length===1&&A[0]==="click"?0:3e4,[B,A]);(0,v.useEffect)(()=>()=>{clearTimeout(_.current)},[]),(0,v.useEffect)(()=>{A.includes("mount")&&setTimeout(()=>q())},A);let ee={onClick:u=>{s(u),(0,x.shouldIntercept)(u)&&(u.preventDefault(),x.router.visit(V,Z))}},de={onMouseEnter:()=>{_.current=window.setTimeout(()=>{q()},75)},onMouseLeave:()=>{clearTimeout(_.current)},onClick:ee.onClick},fe={onMouseDown:u=>{(0,x.shouldIntercept)(u)&&(u.preventDefault(),q())},onMouseUp:u=>{u.preventDefault(),x.router.visit(V,Z)},onClick:u=>{s(u),(0,x.shouldIntercept)(u)&&u.preventDefault()}};return n!=="get"&&(r="button"),(0,v.createElement)(r,{...I,...{a:{href:V},button:{type:"button"}}[r]||{},ref:pe,...A.includes("hover")?de:A.includes("click")?fe:ee,"data-loading":X>0?"":void 0},t)});He.displayName="InertiaLink";var Ke=He;var he=require("@inertiajs/core"),K=require("es-toolkit"),O=require("es-toolkit/compat"),p=require("react");var ye=require("@inertiajs/core"),ne=require("react");function U(t,r){let[o,a]=(0,ne.useState)(()=>{let n=ye.router.restore(r);return n!==void 0?n:t});return(0,ne.useEffect)(()=>{ye.router.remember(o,r)},[o,r]),[o,a]}function Fe(t,r){let o=(0,p.useRef)(null),a=typeof t=="string"?t:null,[n,m]=(0,p.useState)((typeof t=="string"?r:t)||{}),d=(0,p.useRef)(null),g=(0,p.useRef)(null),[c,P]=a?U(n,`${a}:data`):(0,p.useState)(n),[l,e]=a?U({},`${a}:errors`):(0,p.useState)({}),[f,s]=(0,p.useState)(!1),[F,S]=(0,p.useState)(!1),[M,L]=(0,p.useState)(null),[ae,G]=(0,p.useState)(!1),[ie,$]=(0,p.useState)(!1),b=(0,p.useRef)(i=>i),B=(0,p.useMemo)(()=>!(0,K.isEqual)(c,n),[c,n]);(0,p.useEffect)(()=>(o.current=!0,()=>{o.current=!1}),[]);let I=(0,p.useCallback)((...i)=>{let u=typeof i[0]=="object",y=u?i[0].method:i[0],R=u?i[0].url:i[1],h=(u?i[1]:i[2])??{},ve={...h,onCancelToken:T=>{if(d.current=T,h.onCancelToken)return h.onCancelToken(T)},onBefore:T=>{if(G(!1),$(!1),clearTimeout(g.current),h.onBefore)return h.onBefore(T)},onStart:T=>{if(S(!0),h.onStart)return h.onStart(T)},onProgress:T=>{if(L(T),h.onProgress)return h.onProgress(T)},onSuccess:T=>{if(o.current&&(S(!1),L(null),e({}),s(!1),G(!0),$(!0),m((0,K.cloneDeep)(c)),g.current=setTimeout(()=>{o.current&&$(!1)},2e3)),h.onSuccess)return h.onSuccess(T)},onError:T=>{if(o.current&&(S(!1),L(null),e(T),s(!0)),h.onError)return h.onError(T)},onCancel:()=>{if(o.current&&(S(!1),L(null)),h.onCancel)return h.onCancel()},onFinish:T=>{if(o.current&&(S(!1),L(null)),d.current=null,h.onFinish)return h.onFinish(T)}};y==="delete"?he.router.delete(R,{...ve,data:b.current(c)}):he.router[y](R,b.current(c),ve)},[c,e,b]),pe=(0,p.useCallback)((i,u)=>{P(typeof i=="string"?y=>(0,O.set)((0,K.cloneDeep)(y),i,u):typeof i=="function"?y=>i(y):i)},[P]),[X,W]=(0,p.useState)(!1),_=(0,p.useCallback)((i,u)=>{typeof i>"u"?(m(c),W(!0)):m(y=>typeof i=="string"?(0,O.set)((0,K.cloneDeep)(y),i,u):Object.assign((0,K.cloneDeep)(y),i))},[c,m]);(0,p.useLayoutEffect)(()=>{X&&(B&&m(c),W(!1))},[X]);let ue=(0,p.useCallback)((...i)=>{i.length===0?P(n):P(u=>i.filter(y=>(0,O.has)(n,y)).reduce((y,R)=>(0,O.set)(y,R,(0,O.get)(n,R)),{...u}))},[P,n]),ce=(0,p.useCallback)((i,u)=>{e(y=>{let R={...y,...typeof i=="string"?{[i]:u}:i};return s(Object.keys(R).length>0),R})},[e,s]),V=(0,p.useCallback)((...i)=>{e(u=>{let y=Object.keys(u).reduce((R,h)=>({...R,...i.length>0&&!i.includes(h)?{[h]:u[h]}:{}}),{});return s(Object.keys(y).length>0),y})},[e,s]),w=i=>(u,y)=>{I(i,u,y)},Z=(0,p.useCallback)(w("get"),[I]),q=(0,p.useCallback)(w("post"),[I]),A=(0,p.useCallback)(w("put"),[I]),le=(0,p.useCallback)(w("patch"),[I]),ee=(0,p.useCallback)(w("delete"),[I]),de=(0,p.useCallback)(()=>{d.current&&d.current.cancel()},[]),fe=(0,p.useCallback)(i=>{b.current=i},[]);return{data:c,setData:pe,isDirty:B,errors:l,hasErrors:f,processing:F,progress:M,wasSuccessful:ae,recentlySuccessful:ie,transform:fe,setDefaults:_,reset:ue,setError:ce,clearErrors:V,submit:I,get:Z,post:q,put:A,patch:le,delete:ee,cancel:de}}var Be=require("@inertiajs/core"),se=require("react");function Se(t,r={},o={keepAlive:!1,autoStart:!0}){let a=(0,se.useRef)(Be.router.poll(t,r,{...o,autoStart:!1}));return(0,se.useEffect)(()=>((o.autoStart??!0)&&a.current.start(),()=>a.current.stop()),[]),{stop:a.current.stop,start:a.current.start}}var N=require("@inertiajs/core"),j=require("react");function Te(t={}){let r=typeof window>"u"?null:N.router.getCached(window.location.pathname,t),o=typeof window>"u"?null:N.router.getPrefetching(window.location.pathname,t),[a,n]=(0,j.useState)(r?.staleTimestamp||null),[m,d]=(0,j.useState)(o!==null),[g,c]=(0,j.useState)(r!==null);return(0,j.useEffect)(()=>{let P=N.router.on("prefetching",e=>{e.detail.visit.url.pathname===window.location.pathname&&d(!0)}),l=N.router.on("prefetched",e=>{e.detail.visit.url.pathname===window.location.pathname&&(d(!1),c(!0),n(e.detail.fetchedAt))});return()=>{l(),P()}},[]),{lastUpdatedAt:a,isPrefetching:m,isPrefetched:g,flush:()=>N.router.flush(window.location.pathname,t)}}var Ve=require("@inertiajs/core"),D=require("react"),Ue=({children:t,data:r,params:o,buffer:a,as:n,always:m,fallback:d})=>{m=m??!1,n=n??"div",d=d??null;let[g,c]=(0,D.useState)(!1),P=(0,D.useRef)(!1),l=(0,D.useRef)(!1),e=(0,D.useRef)(null),f=(0,D.useCallback)(()=>{if(r)return{only:Array.isArray(r)?r:[r]};if(!o)throw new Error("You must provide either a `data` or `params` prop.");return o},[o,r]);return(0,D.useEffect)(()=>{if(!e.current)return;let s=new IntersectionObserver(F=>{if(!F[0].isIntersecting||(!m&&P.current&&s.disconnect(),l.current))return;P.current=!0,l.current=!0;let S=f();Ve.router.reload({...S,onStart:M=>{l.current=!0,S.onStart?.(M)},onFinish:M=>{c(!0),l.current=!1,S.onFinish?.(M),m||s.disconnect()}})},{rootMargin:`${a||0}px`});return s.observe(e.current),()=>{s.disconnect()}},[e,f,a]),m||!g?(0,D.createElement)(n,{props:null,ref:e},g?t:d):g?t:null};Ue.displayName="InertiaWhenVisible";var Ne=Ue;var Pe=je.router;
//# sourceMappingURL=index.js.map
{
"name": "@inertiajs/react",
"version": "2.0.12",
"version": "2.0.13",
"license": "MIT",

@@ -62,5 +62,5 @@ "description": "The React adapter for Inertia.js",

"dependencies": {
"@inertiajs/core": "2.0.12",
"@inertiajs/core": "2.0.13",
"es-toolkit": "^1.33.0"
}
}

@@ -6,3 +6,3 @@ export declare const router: import("@inertiajs/core").Router;

export { InertiaLinkProps, default as Link } from './Link';
export { InertiaFormProps, default as useForm } from './useForm';
export { InertiaFormProps, SetDataByObject, SetDataByMethod, SetDataByKeyValuePair, SetDataAction, default as useForm } from './useForm';
export { default as usePage } from './usePage';

@@ -9,0 +9,0 @@ export { default as usePoll } from './usePoll';

import { FormDataConvertible, FormDataKeys, FormDataValues, Method, Progress, VisitOptions } from '@inertiajs/core';
type SetDataByObject<TForm> = (data: TForm) => void;
type SetDataByMethod<TForm> = (data: (previousData: TForm) => TForm) => void;
type SetDataByKeyValuePair<TForm extends Record<any, any>> = <K extends FormDataKeys<TForm>>(key: K, value: FormDataValues<TForm, K>) => void;
export type SetDataByObject<TForm> = (data: TForm) => void;
export type SetDataByMethod<TForm> = (data: (previousData: TForm) => TForm) => void;
export type SetDataByKeyValuePair<TForm extends Record<any, any>> = <K extends FormDataKeys<TForm>>(key: K, value: FormDataValues<TForm, K>) => void;
export type SetDataAction<TForm> = SetDataByObject<TForm> & SetDataByMethod<TForm> & SetDataByKeyValuePair<TForm>;
type FormDataType = Record<string, FormDataConvertible>;

@@ -16,3 +17,3 @@ type FormOptions = Omit<VisitOptions, 'data'>;

recentlySuccessful: boolean;
setData: SetDataByObject<TForm> & SetDataByMethod<TForm> & SetDataByKeyValuePair<TForm>;
setData: SetDataAction<TForm>;
transform: (callback: (data: TForm) => object) => void;

@@ -19,0 +20,0 @@ setDefaults(): void;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet