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