@refinedev/antd 5.35.0 → 5.36.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,47 @@
1
1
  # @refinedev/antd
2
2
 
3
+ ## 5.36.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#4914](https://github.com/refinedev/refine/pull/4914) [`91a4d0da9f1`](https://github.com/refinedev/refine/commit/91a4d0da9f180ae358a448c7d187cee44f8c2299) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - feat: [`optimisticUpdateMap`](https://refine.dev/docs/api-reference/core/hooks/data/useUpdate/#optimisticupdatemap) prop added to `useForm` hook. This prop allows you to update the data in the cache.
8
+
9
+ ```tsx
10
+ useForm({
11
+ mutationMode: "optimistic",
12
+ optimisticUpdateMap: {
13
+ list: true,
14
+ many: true,
15
+ detail: (previous, values, id) => {
16
+ if (!previous) {
17
+ return null;
18
+ }
19
+
20
+ const data = {
21
+ id,
22
+ ...previous.data,
23
+ ...values,
24
+ foo: "bar",
25
+ };
26
+
27
+ return {
28
+ ...previous,
29
+ data,
30
+ };
31
+ },
32
+ },
33
+ });
34
+ ```
35
+
36
+ ### Patch Changes
37
+
38
+ - [#4903](https://github.com/refinedev/refine/pull/4903) [`e327cadc011`](https://github.com/refinedev/refine/commit/e327cadc011ce8696d7149252e1ad308005b1eff) Thanks [@yildirayunlu](https://github.com/yildirayunlu)! - fix: when using [`useForm`](https://refine.dev/docs/api-reference/antd/hooks/form/useForm/), `autoSave` parameters not passed to `@refinedev/core/useForm` hook.
39
+ From now on, you can use `autoSave` parameters in [`useForm`](https://refine.dev/docs/api-reference/antd/hooks/form/useForm/) hook.
40
+
41
+ feat: add `invalidateOnUnmount` prop to [`useForm`](https://refine.dev/docs/api-reference/antd/hooks/form/useForm/) hook.
42
+ feat: add `invalidateOnUnmount` and `invalidateOnClose` prop to [`useModalForm`](https://refine.dev/docs/api-reference/antd/hooks/form/useModalForm/) and [`useDrawerForm`](https://refine.dev/docs/api-reference/antd/hooks/form/useDrawerForm/) hooks.
43
+ From now on, you can use the use this props to invalidate queries upon unmount or close.
44
+
3
45
  ## 5.35.0
4
46
 
5
47
  ### Minor Changes
@@ -8,7 +8,7 @@ See https://refine.dev/docs/api-reference/core/hooks/useForm/#resource`);let Z=c
8
8
  If you don't use the \`setShowId\` method to set the \`showId\`, you should pass the \`id\` prop to \`useShow\`. Otherwise, \`useShow\` will not be able to infer the \`id\` from the current URL.
9
9
 
10
10
  See https://refine.dev/docs/api-reference/core/hooks/show/useShow/#resource`);let T=Pn({resource:l,id:b??"",queryOptions:{enabled:b!==void 0,...u},successNotification:r,errorNotification:o,meta:x,metaData:x,liveMode:n,onLiveEvent:s,dataProviderName:f}),{elapsedTime:R}=je({isLoading:T.isFetching,interval:p==null?void 0:p.interval,onInterval:p==null?void 0:p.onInterval});return{queryResult:T,showId:b,setShowId:m,overtime:{elapsedTime:R}}},"useShow"),Yo=c("react"),wc=c("papaparse"),kc=j(c("lodash/chunk")),Dc=d(({resourceName:e,resource:t,mapData:r=d(p=>p,"mapData"),paparseOptions:o,batchSize:a=Number.MAX_SAFE_INTEGER,onFinish:i,meta:n,metaData:s,onProgress:f,dataProviderName:u}={})=>{let[p,y]=(0,Yo.useState)(0),[S,l]=(0,Yo.useState)(0),[h,g]=(0,Yo.useState)(!1),{resource:v,identifier:b}=ie(t??e),m=Ae(),x=Ls(),T=Cn(),R=m({resource:v,meta:K(n,s)}),F;a===1?F=T:F=x;let C=d(()=>{l(0),y(0),g(!1)},"handleCleanup"),D=d(B=>{let I={succeeded:B.filter(w=>w.type==="success"),errored:B.filter(w=>w.type==="error")};i==null||i(I),g(!1)},"handleFinish");(0,Yo.useEffect)(()=>{f==null||f({totalAmount:S,processedAmount:p})},[S,p]);let L=d(({file:B})=>(C(),new Promise(I=>{g(!0),(0,wc.parse)(B,{complete:async({data:w})=>{let k=Gi(w,r);if(l(k.length),a===1){let E=k.map(q=>d(async()=>({response:await T.mutateAsync({resource:b??"",values:q,successNotification:!1,errorNotification:!1,dataProviderName:u,meta:R,metaData:R}),value:q}),"fn")),N=await ii(E,({response:q,value:A})=>(y(O=>O+1),{response:[q.data],type:"success",request:[A]}),(q,A)=>({response:[q],type:"error",request:[k[A]]}));I(N)}else{let E=(0,kc.default)(k,a),N=E.map(A=>d(async()=>({response:await x.mutateAsync({resource:b??"",values:A,successNotification:!1,errorNotification:!1,dataProviderName:u,meta:R,metaData:R}),value:A,currentBatchLength:A.length}),"fn")),q=await ii(N,({response:A,currentBatchLength:O,value:W})=>(y(M=>M+O),{response:A.data,type:"success",request:W}),(A,O)=>({response:[A],type:"error",request:E[O]}));I(q)}},...o})}).then(I=>(D(I),I))),"handleChange");return{inputProps:{type:"file",accept:".csv",onChange:B=>{B.target.files&&B.target.files.length>0&&L({file:B.target.files[0]})}},mutationResult:F,isLoading:h,handleChange:L}},"useImport"),Xa=c("react"),Bc=d(({defaultVisible:e=!1}={})=>{let[t,r]=(0,Xa.useState)(e),o=(0,Xa.useCallback)(()=>r(!0),[t]),a=(0,Xa.useCallback)(()=>r(!1),[t]);return{visible:t,show:o,close:a}},"useModal"),Rc=j(c("react")),Sn=d(()=>{let e=$e(),{resource:t,resources:r}=ie(),o=It();return Rc.default.useCallback(({resource:a,action:i,meta:n})=>{var s;let f=a||t;if(!f)return;let u=(s=gt(f,r,e==="legacy").find(p=>p.action===i))==null?void 0:s.route;return u?Lt(u,f==null?void 0:f.meta,o,n):void 0},[r,t,o])},"useGetToPath"),Mc=d(({resource:e,action:t,meta:r,legacy:o})=>Sn()({resource:e,action:t,meta:r,legacy:o}),"useToPath"),Ri=j(c("react")),ua=d(()=>{let e=(0,Ri.useContext)(Ao);return e!=null&&e.Link?e.Link:d(({to:t,...r})=>Ri.default.createElement("a",{href:t,...r}),"FallbackLink")},"useLink"),Ac=c("react"),Vs=j(c("react")),ur={useHistory:()=>!1,useLocation:()=>!1,useParams:()=>({}),Prompt:()=>null,Link:()=>null},Nc=Vs.default.createContext(ur),Fn=Nc,Ic=d(({children:e,useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n})=>Vs.default.createElement(Fn.Provider,{value:{useHistory:t??ur.useHistory,useLocation:r??ur.useLocation,useParams:o??ur.useParams,Prompt:a??ur.Prompt,Link:i??ur.Link,routes:n??ur.routes}},e),"LegacyRouterContextProvider"),Tt=d(()=>{let e=(0,Ac.useContext)(Fn),{useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n}=e??ur;return{useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n}},"useRouterContext"),Uc=c("@tanstack/react-query"),qc=c("react"),Qs=j(c("react")),Io=Qs.default.createContext({options:{buttons:{enableAccessControl:!0,hideIfUnauthorized:!1}}}),Oc=d(({can:e,children:t,options:r})=>Qs.default.createElement(Io.Provider,{value:{can:e,options:r?{...r,buttons:{enableAccessControl:!0,hideIfUnauthorized:!1,...r.buttons}}:{buttons:{enableAccessControl:!0,hideIfUnauthorized:!1}}}},t),"AccessControlContextProvider"),En=d(e=>{if(!e)return;let{icon:t,list:r,edit:o,create:a,show:i,clone:n,children:s,meta:f,options:u,...p}=e,{icon:y,...S}=f??{},{icon:l,...h}=u??{};return{...p,...f?{meta:S}:{},...u?{options:h}:{}}},"sanitizeResource"),$s=d(({action:e,resource:t,params:r,queryOptions:o})=>{let{can:a}=(0,qc.useContext)(Io),{keys:i,preferLegacyKeys:n}=ge(),{resource:s,...f}=r??{},u=En(s),p=(0,Uc.useQuery)(i().access().resource(t).action(e).params({params:{...f,resource:u},enabled:o==null?void 0:o.enabled}).get(n),()=>(a==null?void 0:a({action:e,resource:t,params:{...f,resource:u}}))??Promise.resolve({can:!0}),{enabled:typeof a<"u",...o,retry:!1});return typeof a>"u"?{data:{can:!0}}:p},"useCan"),Mi=j(c("react")),Vc=d(()=>{let{can:e}=Mi.default.useContext(Io);return{can:Mi.default.useMemo(()=>e?d(async({params:t,...r})=>{let o=t!=null&&t.resource?En(t.resource):void 0;return e({...r,...t?{params:{...t,resource:o}}:{}})},"canWithSanitizedResource"):void 0,[e])}},"useCanWithoutCache"),Hr=c("react"),Qc=j(c("lodash/uniqBy")),$c=j(c("lodash/debounce")),Xo=j(c("lodash/get")),Hc=d(e=>{let[t,r]=(0,Hr.useState)([]),[o,a]=(0,Hr.useState)([]),[i,n]=(0,Hr.useState)([]),{resource:s,sort:f,sorters:u,filters:p=[],optionLabel:y="title",optionValue:S="id",debounce:l=300,successNotification:h,errorNotification:g,defaultValueQueryOptions:v,queryOptions:b,fetchSize:m,pagination:x,hasPagination:T=!1,liveMode:R,defaultValue:F=[],onLiveEvent:C,onSearch:D,liveParams:L,meta:B,metaData:I,dataProviderName:w,overtimeOptions:k}=e,{resource:E,identifier:N}=ie(s),q=Ae()({resource:E,meta:K(B,I)}),A=Array.isArray(F)?F:[F],O=(0,Hr.useCallback)(H=>{n(H.data.map(V=>({label:(0,Xo.default)(V,y),value:(0,Xo.default)(V,S)})))},[y,S]),W=v??b,M=Cs({resource:N,ids:A,queryOptions:{...W,enabled:A.length>0&&((W==null?void 0:W.enabled)??!0),onSuccess:H=>{var V;O(H),(V=W==null?void 0:W.onSuccess)==null||V.call(W,H)}},meta:q,metaData:q,liveMode:"off",dataProviderName:w}),Q=(0,Hr.useCallback)(H=>{a(H.data.map(V=>({label:(0,Xo.default)(V,y),value:(0,Xo.default)(V,S)})))},[y,S]),$=bn({resource:N,sorters:K(u,f),filters:p.concat(t),pagination:{current:x==null?void 0:x.current,pageSize:(x==null?void 0:x.pageSize)??m,mode:x==null?void 0:x.mode},hasPagination:T,queryOptions:{...b,onSuccess:H=>{var V;Q(H),(V=b==null?void 0:b.onSuccess)==null||V.call(b,H)}},successNotification:h,errorNotification:g,meta:q,metaData:q,liveMode:R,liveParams:L,onLiveEvent:C,dataProviderName:w}),G=d(H=>{if(D){r(D(H));return}if(H)r([{field:y,operator:"contains",value:H}]);else{r([]);return}},"onSearch"),{elapsedTime:z}=je({isLoading:$.isFetching||M.isFetching,interval:k==null?void 0:k.interval,onInterval:k==null?void 0:k.onInterval});return{queryResult:$,defaultValueQueryResult:M,options:(0,Hr.useMemo)(()=>(0,Qc.default)([...o,...i],"value"),[o,i]),onSearch:(0,$c.default)(G,l),overtime:{elapsedTime:z}}},"useSelect"),wr=j(c("react")),Ai=j(c("qs")),Jo=j(c("lodash/differenceWith")),ea=j(c("lodash/isEqual")),zc=j(c("warn-once")),Ni=[],Ii=[];function Hs({initialCurrent:e,initialPageSize:t,hasPagination:r=!0,pagination:o,initialSorter:a,permanentSorter:i=Ii,defaultSetFilterBehavior:n,initialFilter:s,permanentFilter:f=Ni,filters:u,sorters:p,syncWithLocation:y,resource:S,successNotification:l,errorNotification:h,queryOptions:g,liveMode:v,onLiveEvent:b,liveParams:m,meta:x,metaData:T,dataProviderName:R,overtimeOptions:F}={}){var C,D,L,B,I;let{syncWithLocation:w}=vs(),k=y??w,E=Ns(v),N=$e(),{useLocation:q}=Tt(),{search:A,pathname:O}=q(),W=Ae(),M=It(),Q=((u==null?void 0:u.mode)||"server")==="server",$=((p==null?void 0:p.mode)||"server")==="server",G=r===!1?"off":"server",z=((o==null?void 0:o.mode)??G)!=="off",H=K(o==null?void 0:o.current,e),V=K(o==null?void 0:o.pageSize,t),Z=K(x,T),{parsedCurrent:Y,parsedPageSize:J,parsedSorter:de,parsedFilters:ce}=fn(A??"?"),re=K(u==null?void 0:u.initial,s),ne=K(u==null?void 0:u.permanent,f)??Ni,ve=K(p==null?void 0:p.initial,a),oe=K(p==null?void 0:p.permanent,i)??Ii,be=K(u==null?void 0:u.defaultBehavior,n)??"merge",we,at,rt,Ke;k?(we=((C=M==null?void 0:M.params)==null?void 0:C.current)||Y||H||1,at=((D=M==null?void 0:M.params)==null?void 0:D.pageSize)||J||V||10,rt=((L=M==null?void 0:M.params)==null?void 0:L.sorters)||(de.length?de:ve),Ke=((B=M==null?void 0:M.params)==null?void 0:B.filters)||(ce.length?ce:re)):(we=H||1,at=V||10,rt=ve,Ke=re);let{replace:$t}=Et(),Fr=Ft(),{resource:sr,identifier:Fe}=ie(S),Rt=W({resource:sr,meta:Z});wr.default.useEffect(()=>{(0,zc.default)(typeof Fe>"u","useTable: `resource` is not defined.")},[Fe]);let[Re,jt]=(0,wr.useState)(sn(oe,rt??[])),[Oe,Mt]=(0,wr.useState)(nn(ne,Ke??[])),[At,Gt]=(0,wr.useState)(we),[_t,Jn]=(0,wr.useState)(at),wu=d(({pagination:{current:Me,pageSize:xt},sorter:_o,filters:Zo})=>{if(N==="new")return Fr({type:"path",options:{keepHash:!0,keepQuery:!0},query:{...z?{current:Me,pageSize:xt}:{},sorters:_o,filters:Zo,...ei()}})??"";{let ko=Ai.default.parse(A==null?void 0:A.substring(1)),Au=on({pagination:{pageSize:xt,current:Me},sorters:Re??_o,filters:Zo,...ko});return`${O??""}?${Au??""}`}},"createLinkForSyncWithLocation");(0,wr.useEffect)(()=>{A===""&&(Gt(we),Jn(at),jt(sn(oe,rt??[])),Mt(nn(ne,Ke??[])))},[A]);let ei=d(()=>{if(N==="new"){let{sorters:Me,filters:xt,pageSize:_o,current:Zo,...ko}=(M==null?void 0:M.params)??{};return ko}else{let{sorter:Me,filters:xt,pageSize:_o,current:Zo,...ko}=Ai.default.parse(A,{ignoreQueryPrefix:!0});return ko}},"currentQueryParams");(0,wr.useEffect)(()=>{if(k){let Me=ei();if(N==="new")Fr({type:"replace",options:{keepQuery:!0},query:{...z?{pageSize:_t,current:At}:{},sorters:(0,Jo.default)(Re,oe,ea.default),filters:(0,Jo.default)(Oe,ne,ea.default)}});else{let xt=on({...z?{pagination:{pageSize:_t,current:At}}:{},sorters:(0,Jo.default)(Re,oe,ea.default),filters:(0,Jo.default)(Oe,ne,ea.default),...Me});return $t==null?void 0:$t(`${O}?${xt}`,void 0,{shallow:!0})}}},[k,At,_t,Re,Oe]);let Oa=bn({resource:Fe,hasPagination:r,pagination:{current:At,pageSize:_t,mode:o==null?void 0:o.mode},filters:Q?Do(ne,Oe):void 0,sorters:$?an(oe,Re):void 0,queryOptions:g,successNotification:l,errorNotification:h,meta:Rt,metaData:Rt,liveMode:E,liveParams:m,onLiveEvent:b,dataProviderName:R}),ku=d(Me=>{Mt(xt=>Do(ne,Me,xt))},"setFiltersAsMerge"),Du=d(Me=>{Mt(Do(ne,Me))},"setFiltersAsReplace"),Bu=d(Me=>{Mt(xt=>Do(ne,Me(xt)))},"setFiltersWithSetter"),Ru=d((Me,xt=be)=>{typeof Me=="function"?Bu(Me):xt==="replace"?Du(Me):ku(Me)},"setFiltersFn"),ti=d(Me=>{jt(()=>an(oe,Me))},"setSortWithUnion"),{elapsedTime:Mu}=je({isLoading:Oa.isFetching,interval:F==null?void 0:F.interval,onInterval:F==null?void 0:F.onInterval});return{tableQueryResult:Oa,sorters:Re,setSorters:ti,sorter:Re,setSorter:ti,filters:Oe,setFilters:Ru,current:At,setCurrent:Gt,pageSize:_t,setPageSize:Jn,pageCount:_t?Math.ceil((((I=Oa.data)==null?void 0:I.total)??0)/_t):1,createLinkForSyncWithLocation:wu,overtime:{elapsedTime:Mu}}}P(Hs,"ci");d(Hs,"useTable");var Ui=c("react"),Ja=c("@tanstack/react-query"),zs=j(c("react")),da=zs.default.createContext({}),Wc=d(({create:e,get:t,update:r,children:o})=>zs.default.createElement(da.Provider,{value:{create:e,get:t,update:r}},o),"AuditLogContextProvider"),Ar=d(({logMutationOptions:e,renameMutationOptions:t}={})=>{let r=(0,Ja.useQueryClient)(),o=(0,Ui.useContext)(da),{keys:a,preferLegacyKeys:i}=ge(),n=Qe(),{resources:s}=(0,Ui.useContext)(Mo),{data:f,refetch:u,isLoading:p}=gn({v3LegacyAuthProviderCompatible:!!(n!=null&&n.isLegacy),queryOptions:{enabled:!!o}}),y=(0,Ja.useMutation)(async l=>{var h,g,v,b,m;let x=Ze(l.resource,s),T=K((h=x==null?void 0:x.meta)==null?void 0:h.audit,(g=x==null?void 0:x.options)==null?void 0:g.audit,(b=(v=x==null?void 0:x.options)==null?void 0:v.auditLog)==null?void 0:b.permissions);if(T&&!td(T,l.action))return;let R;return p&&(R=await u()),await((m=o.create)==null?void 0:m.call(o,{...l,author:f??(R==null?void 0:R.data)}))},{mutationKey:a().audit().action("log").get(),...e}),S=(0,Ja.useMutation)(async l=>{var h;return await((h=o.update)==null?void 0:h.call(o,l))},{onSuccess:l=>{l!=null&&l.resource&&r.invalidateQueries(a().audit().resource((l==null?void 0:l.resource)??"").action("list").get(i))},mutationKey:a().audit().action("rename").get(),...t});return{log:y,rename:S}},"useLog"),Kc=c("react"),jc=c("@tanstack/react-query"),Gc=d(({resource:e,action:t,meta:r,author:o,metaData:a,queryOptions:i})=>{let{get:n}=(0,Kc.useContext)(da),{keys:s,preferLegacyKeys:f}=ge();return(0,jc.useQuery)(s().audit().resource(e).action("list").params(r).get(f),()=>(n==null?void 0:n({resource:e,action:t,author:o,meta:r,metaData:a}))??Promise.resolve([]),{enabled:typeof n<"u",...i,retry:!1})},"useLogList"),_c=c("react"),Zc=j(c("warn-once")),Yc=d(({meta:e={}}={})=>{let t=$e(),{i18nProvider:r}=(0,_c.useContext)(Mr),o=It(),a=Ce(),{resources:i,resource:n,action:s}=ie(),{options:{textTransformers:f}}=st(),u=[];if(!(n!=null&&n.name))return{breadcrumbs:u};let p=d(y=>{var S,l,h,g,v,b;let m=typeof y=="string"?Ze(y,i,t==="legacy")??{name:y}:y;if(m){let x=K((S=m==null?void 0:m.meta)==null?void 0:S.parent,m==null?void 0:m.parentName);x&&p(x);let T=gt(m,i,t==="legacy").find(C=>C.action==="list"),R=(l=T==null?void 0:T.resource)!=null&&l.list?T==null?void 0:T.route:void 0,F=R?t==="legacy"?R:Lt(R,m==null?void 0:m.meta,o,e):void 0;u.push({label:K((h=m.meta)==null?void 0:h.label,(g=m.options)==null?void 0:g.label)??a(`${m.name}.${m.name}`,f.humanize(m.name)),href:F,icon:K((v=m.meta)==null?void 0:v.icon,(b=m.options)==null?void 0:b.icon,m.icon)})}},"addBreadcrumb");if(p(n),s&&s!=="list"){let y=`actions.${s}`,S=a(y);typeof r<"u"&&S===y?((0,Zc.default)(!0,`[useBreadcrumb]: Breadcrumb missing translate key for the "${s}" action. Please add "actions.${s}" key to your translation file.
11
- For more information, see https://refine.dev/docs/api-reference/core/hooks/useBreadcrumb/#i18n-support`),u.push({label:a(`buttons.${s}`,f.humanize(s))})):u.push({label:a(y,f.humanize(s))})}return{breadcrumbs:u}},"useBreadcrumb"),en=j(c("react")),ra=d((e,t,r=!1)=>{let o=[],a=dr(e,t);for(;a;)o.push(a),a=dr(a,t);return o.reverse(),`/${[...o,e].map(i=>Zt((r?i.route:void 0)??i.identifier??i.name)).join("/").replace(/^\//,"")}`},"createResourceKey"),Xc=d((e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(a=>{let i=[],n=dr(a,e);for(;n;)i.push(n),n=dr(n,e);i.reverse();let s=r;i.forEach(u=>{let p=(t?u.route:void 0)??u.identifier??u.name;s.children[p]||(s.children[p]={item:u,children:{}}),s=s.children[p]});let f=(t?a.route:void 0)??a.identifier??a.name;s.children[f]||(s.children[f]={item:a,children:{}})});let o=d(a=>{let i=[];return Object.keys(a.children).forEach(n=>{let s=ra(a.children[n].item,e,t),f={...a.children[n].item,key:s,children:o(a.children[n])};i.push(f)}),i},"flatten");return o(r)},"createTree"),qi=d(e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),"getCleanPath"),Jc=d(({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=Ce(),o=Sn(),a=$e(),{resource:i,resources:n}=ie(),{pathname:s}=It(),{useLocation:f}=Tt(),{pathname:u}=f(),p=mn(),y=`/${((a==="legacy"?qi(u):s?qi(s):void 0)??"").replace(/^\//,"")}`,S=i?ra(i,n,a==="legacy"):y??"",l=en.default.useMemo(()=>{if(!i)return[];let v=dr(i,n),b=[ra(i,n)];for(;v;)b.push(ra(v,n)),v=dr(v,n);return b},[]),h=en.default.useCallback(v=>{var b,m,x,T,R,F;if((((b=v==null?void 0:v.meta)==null?void 0:b.hide)??((m=v==null?void 0:v.options)==null?void 0:m.hide))||!(v!=null&&v.list)&&v.children.length===0)return;let C=v.list?o({resource:v,action:"list",legacy:a==="legacy",meta:e}):void 0;if(!(t&&C&&C.match(/(\/|^):(.+?)(\/|$){1}/)))return{...v,route:C,icon:K((x=v.meta)==null?void 0:x.icon,(T=v.options)==null?void 0:T.icon,v.icon),label:K((R=v==null?void 0:v.meta)==null?void 0:R.label,(F=v==null?void 0:v.options)==null?void 0:F.label)??r(`${v.name}.${v.name}`,p(v.name,"plural"))}},[a,e,r,t]),g=en.default.useMemo(()=>{let v=Xc(n,a==="legacy"),b=d(m=>m.flatMap(x=>{let T=b(x.children),R=h({...x,children:T});return R?[R]:[]}),"prepare");return b(v)},[n,a,h]);return{defaultOpenKeys:l,selectedKey:S,menuItems:g}},"useMenu"),Ae=d(()=>{let{params:e}=It();return d(({resource:t,meta:r}={})=>{let{meta:o}=En(t)??{meta:{}},{filters:a,sorters:i,current:n,pageSize:s,...f}=e??{};return{...o,...f,...r}},"getMetaFn")},"useMeta"),ep=d(()=>{let[e,t]=(0,Er.useState)(),r=Ce(),{push:o}=Et(),a=Ft(),i=$e(),{resource:n,action:s}=ie();return(0,Er.useEffect)(()=>{n&&s&&t(r("pages.error.info",{action:s,resource:n.name},`You may have forgotten to add the "${s}" component to "${n.name}" resource.`))},[n,s]),Er.default.createElement(Er.default.Fragment,null,Er.default.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&Er.default.createElement("p",null,e),Er.default.createElement("button",{onClick:()=>{i==="legacy"?o("/"):a({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))},"ErrorComponent"),Ve=j(c("react")),Ws=d(()=>{let[e,t]=(0,Ve.useState)(""),[r,o]=(0,Ve.useState)(""),a=Ce(),i=Qe(),{mutate:n}=sa({v3LegacyAuthProviderCompatible:!!(i!=null&&i.isLegacy)});return Ve.default.createElement(Ve.default.Fragment,null,Ve.default.createElement("h1",null,a("pages.login.title","Sign in your account")),Ve.default.createElement("form",{onSubmit:s=>{s.preventDefault(),n({username:e,password:r})}},Ve.default.createElement("table",null,Ve.default.createElement("tbody",null,Ve.default.createElement("tr",null,Ve.default.createElement("td",null,a("pages.login.username",void 0,"username"),":"),Ve.default.createElement("td",null,Ve.default.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:s=>t(s.target.value)}))),Ve.default.createElement("tr",null,Ve.default.createElement("td",null,a("pages.login.password",void 0,"password"),":"),Ve.default.createElement("td",null,Ve.default.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:s=>o(s.target.value)}))))),Ve.default.createElement("br",null),Ve.default.createElement("input",{type:"submit",value:"login"})))},"LoginPage"),zr=j(c("react")),Te=j(c("react")),tp=d(({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:a,wrapperProps:i,renderContent:n,formProps:s,title:f=void 0})=>{let u=$e(),p=ua(),{Link:y}=Tt(),S=u==="legacy"?y:p,[l,h]=(0,Te.useState)(""),[g,v]=(0,Te.useState)(""),[b,m]=(0,Te.useState)(!1),x=Ce(),T=Qe(),{mutate:R}=sa({v3LegacyAuthProviderCompatible:!!(T!=null&&T.isLegacy)}),F=d((L,B)=>Te.default.createElement(S,{to:L},B),"renderLink"),C=d(()=>e?e.map(L=>Te.default.createElement("div",{key:L.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},Te.default.createElement("button",{onClick:()=>R({providerName:L.name}),style:{display:"flex",alignItems:"center"}},L==null?void 0:L.icon,L.label??Te.default.createElement("label",null,L.label)))):null,"renderProviders"),D=Te.default.createElement("div",{...a},Te.default.createElement("h1",{style:{textAlign:"center"}},x("pages.login.title","Sign in to your account")),C(),Te.default.createElement("hr",null),Te.default.createElement("form",{onSubmit:L=>{L.preventDefault(),R({email:l,password:g,remember:b})},...s},Te.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Te.default.createElement("label",{htmlFor:"email-input"},x("pages.login.fields.email","Email")),Te.default.createElement("input",{id:"email-input",name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:l,onChange:L=>h(L.target.value)}),Te.default.createElement("label",{htmlFor:"password-input"},x("pages.login.fields.password","Password")),Te.default.createElement("input",{id:"password-input",type:"password",name:"password",required:!0,size:20,value:g,onChange:L=>v(L.target.value)}),o??Te.default.createElement(Te.default.Fragment,null,Te.default.createElement("label",{htmlFor:"remember-me-input"},x("pages.login.buttons.rememberMe","Remember me"),Te.default.createElement("input",{id:"remember-me-input",name:"remember",type:"checkbox",size:20,checked:b,value:b.toString(),onChange:()=>{m(!b)}}))),Te.default.createElement("br",null),r??F("/forgot-password",x("pages.login.buttons.forgotPassword","Forgot password?")),Te.default.createElement("input",{type:"submit",value:x("pages.login.signin","Sign in")}),t??Te.default.createElement("span",null,x("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",F("/register",x("pages.login.register","Sign up"))))));return Te.default.createElement("div",{...i},n?n(D,f):D)},"LoginPage"),ke=j(c("react")),rp=d(({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:a,formProps:i,title:n=void 0})=>{let s=$e(),f=ua(),{Link:u}=Tt(),p=s==="legacy"?u:f,[y,S]=(0,ke.useState)(""),[l,h]=(0,ke.useState)(""),g=Ce(),v=Qe(),{mutate:b,isLoading:m}=vn({v3LegacyAuthProviderCompatible:!!(v!=null&&v.isLegacy)}),x=d((F,C)=>ke.default.createElement(p,{to:F},C),"renderLink"),T=d(()=>e?e.map(F=>ke.default.createElement("div",{key:F.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ke.default.createElement("button",{onClick:()=>b({providerName:F.name}),style:{display:"flex",alignItems:"center"}},F==null?void 0:F.icon,F.label??ke.default.createElement("label",null,F.label)))):null,"renderProviders"),R=ke.default.createElement("div",{...o},ke.default.createElement("h1",{style:{textAlign:"center"}},g("pages.register.title","Sign up for your account")),T(),ke.default.createElement("hr",null),ke.default.createElement("form",{onSubmit:F=>{F.preventDefault(),b({email:y,password:l})},...i},ke.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ke.default.createElement("label",{htmlFor:"email-input"},g("pages.register.fields.email","Email")),ke.default.createElement("input",{id:"email-input",name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:y,onChange:F=>S(F.target.value)}),ke.default.createElement("label",{htmlFor:"password-input"},g("pages.register.fields.password","Password")),ke.default.createElement("input",{id:"password-input",name:"password",type:"password",required:!0,size:20,value:l,onChange:F=>h(F.target.value)}),ke.default.createElement("input",{type:"submit",value:g("pages.register.buttons.submit","Sign up"),disabled:m}),t??ke.default.createElement(ke.default.Fragment,null,ke.default.createElement("span",null,g("pages.login.buttons.haveAccount","Have an account?")," ",x("/login",g("pages.login.signin","Sign in")))))));return ke.default.createElement("div",{...r},a?a(R,n):R)},"RegisterPage"),mt=j(c("react")),op=d(({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:a,title:i=void 0})=>{let n=Ce(),s=$e(),f=ua(),{Link:u}=Tt(),p=s==="legacy"?u:f,[y,S]=(0,mt.useState)(""),{mutate:l,isLoading:h}=hn(),g=d((b,m)=>mt.default.createElement(p,{to:b},m),"renderLink"),v=mt.default.createElement("div",{...r},mt.default.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),mt.default.createElement("hr",null),mt.default.createElement("form",{onSubmit:b=>{b.preventDefault(),l({email:y})},...a},mt.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},mt.default.createElement("label",{htmlFor:"email-input"},n("pages.forgotPassword.fields.email","Email")),mt.default.createElement("input",{id:"email-input",name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:y,onChange:b=>S(b.target.value)}),mt.default.createElement("input",{type:"submit",disabled:h,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),mt.default.createElement("br",null),e??mt.default.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",g("/login",n("pages.login.signin","Sign in"))))));return mt.default.createElement("div",{...t},o?o(v,i):v)},"ForgotPasswordPage"),ft=j(c("react")),ap=d(({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:a=void 0})=>{let i=Ce(),n=Qe(),{mutate:s,isLoading:f}=Tn({v3LegacyAuthProviderCompatible:!!(n!=null&&n.isLegacy)}),[u,p]=(0,ft.useState)(""),[y,S]=(0,ft.useState)(""),l=ft.default.createElement("div",{...t},ft.default.createElement("h1",{style:{textAlign:"center"}},i("pages.updatePassword.title","Update Password")),ft.default.createElement("hr",null),ft.default.createElement("form",{onSubmit:h=>{h.preventDefault(),s({password:u,confirmPassword:y})},...o},ft.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ft.default.createElement("label",{htmlFor:"password-input"},i("pages.updatePassword.fields.password","New Password")),ft.default.createElement("input",{id:"password-input",name:"password",type:"password",required:!0,size:20,value:u,onChange:h=>p(h.target.value)}),ft.default.createElement("label",{htmlFor:"confirm-password-input"},i("pages.updatePassword.fields.confirmPassword","Confirm New Password")),ft.default.createElement("input",{id:"confirm-password-input",name:"confirmPassword",type:"password",required:!0,size:20,value:y,onChange:h=>S(h.target.value)}),ft.default.createElement("input",{type:"submit",disabled:f,value:i("pages.updatePassword.buttons.submit","Update")}))));return ft.default.createElement("div",{...e},r?r(l,a):l)},"UpdatePasswordPage"),np=d(e=>{let{type:t}=e;return zr.default.createElement(zr.default.Fragment,null,d(()=>{switch(t){case"register":return zr.default.createElement(rp,{...e});case"forgotPassword":return zr.default.createElement(op,{...e});case"updatePassword":return zr.default.createElement(ap,{...e});default:return zr.default.createElement(tp,{...e})}},"renderView")())},"AuthPage"),nt=j(c("react")),Ks=d(()=>nt.default.createElement(nt.default.Fragment,null,nt.default.createElement("h1",null,"Welcome on board"),nt.default.createElement("p",null,"Your configuration is completed."),nt.default.createElement("p",null,"Now you can get started by adding your resources to the"," ",nt.default.createElement("code",null,"`resources`")," property of ",nt.default.createElement("code",null,"`<Refine>`")),nt.default.createElement("div",{style:{display:"flex",gap:8}},nt.default.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Documentation")),nt.default.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Examples")),nt.default.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Community")))),"ReadyPage"),se=j(c("react")),ip=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:se.default.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V5a1 1 0 0 0-1-1H3a1 1 0 0 1 0-2h10a1 1 0 1 0 0-2H2Z",fill:"#fff"}))},{title:"Tutorial",description:"Learn how to use refine by building a fully-functioning CRUD app, from scratch to full launch.",link:"https://refine.dev/docs/tutorial/introduction/index/",icon:se.default.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M0 4.573c0-.475.163-.948.53-1.25a4.57 4.57 0 0 1 .854-.553L5.956.485a4.571 4.571 0 0 1 4.088 0l4.572 2.285c.308.154.594.34.853.553.306.251.47.62.517 1.01.01.055.014.112.014.169v6.5a1 1 0 0 1-2 0V6.684l-3.956 1.978a4.571 4.571 0 0 1-4.088 0L1.384 6.376a4.57 4.57 0 0 1-.853-.553C.163 5.522 0 5.05 0 4.573Z",fill:"#fff"}),se.default.createElement("path",{d:"M5.061 13.305 3 12.274V9.42l2.061 1.031a6.571 6.571 0 0 0 5.878 0L13 9.421v2.853l-2.061 1.03a6.571 6.571 0 0 1-5.878 0Z",fill:"#fff"}))},{title:"Examples",description:"A collection of reference applications you can use as a starting point.",link:"https://refine.dev/examples",icon:se.default.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4H0V2Zm3 2a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm4-1a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm2 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",fill:"#fff"}),se.default.createElement("path",{d:"M0 14V8h16v6a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2Z",fill:"#fff"}))},{title:"Community",description:"Join our Discord community and keep up with the latest news.",link:"https://discord.gg/refine",icon:se.default.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M13.553 1.005A13.334 13.334 0 0 0 10.253 0c-.156.276-.298.56-.423.85a12.42 12.42 0 0 0-3.664 0A8.975 8.975 0 0 0 5.744 0 13.43 13.43 0 0 0 2.44 1.007C.351 4.066-.215 7.05.068 9.99A13.36 13.36 0 0 0 4.116 12c.328-.436.618-.9.867-1.384a8.647 8.647 0 0 1-1.365-.645c.115-.082.227-.167.335-.249a9.594 9.594 0 0 0 8.094 0c.11.089.222.173.335.25-.436.254-.894.47-1.368.646.249.484.539.946.867 1.382a13.3 13.3 0 0 0 4.051-2.01c.332-3.41-.568-6.365-2.379-8.985Zm-8.21 7.176c-.79 0-1.442-.709-1.442-1.58 0-.872.63-1.587 1.439-1.587s1.456.715 1.442 1.586c-.014.872-.636 1.58-1.44 1.58Zm5.315 0c-.79 0-1.44-.709-1.44-1.58 0-.872.63-1.587 1.44-1.587.81 0 1.452.715 1.438 1.586-.014.872-.634 1.58-1.438 1.58Z",fill:"#fff"}))}],sp=d(()=>{let e=li("(max-width: 1010px)"),t=li("(max-width: 650px)"),r=d(()=>t?"1, 280px":e?"2, 280px":"4, 208px","getGridTemplateColumns"),o=d(()=>t?"32px":e?"40px":"48px","getHeaderFontSize"),a=d(()=>t?"16px":e?"20px":"24px","getSubHeaderFontSize");return se.default.createElement("div",{style:{backgroundImage:"url(https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-page.webp)",backgroundPosition:"center top",backgroundSize:"cover",backgroundRepeat:"no-repeat",minHeight:"100vh",backgroundColor:"#0D0D12",fontFamily:"Arial",color:"#FFFFFF"}},se.default.createElement("div",{style:{height:"89px"}}),se.default.createElement("div",{style:{display:"flex",justifyContent:"center"}},se.default.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),se.default.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),se.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},se.default.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),se.default.createElement("h4",{style:{fontSize:a(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),se.default.createElement("div",{style:{height:"64px"}}),se.default.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},ip.map(i=>se.default.createElement(lp,{key:`welcome-page-${i.title}`,card:i}))),se.default.createElement("div",{style:{height:"64px"}}))},"WelcomePage"),lp=d(({card:e})=>{let{title:t,description:r,icon:o,link:a}=e,[i,n]=(0,se.useState)(!1);return se.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},se.default.createElement("div",{style:{display:"flex",alignItems:"center"}},se.default.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:a},o,se.default.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),se.default.createElement("svg",{style:{transition:"transform 0.5s ease-in-out, opacity 0.2s ease-in-out",...i&&{transform:"translateX(4px)",opacity:1}},width:"12",height:"8",fill:"none",opacity:"0.5",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M7.293.293a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L8.586 5H1a1 1 0 0 1 0-2h7.586L7.293 1.707a1 1 0 0 1 0-1.414Z",fill:"#fff"})))),se.default.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))},"Card"),tn=c("@tanstack/react-query"),Pe=j(c("react")),Oi=j(c("react")),kr=c("react"),up="4.39.0",dp=d(()=>{var e;let t=Ps(),r=(0,kr.useContext)(da),o=(0,kr.useContext)(Ro),a=(0,kr.useContext)(Fn),i=(0,kr.useContext)(xn),{i18nProvider:n}=(0,kr.useContext)(Mr),s=(0,kr.useContext)(Ln),f=(0,kr.useContext)(Io),{resources:u}=ie(),p=st(),y=!!r.create||!!r.get||!!r.update,S=!!(o!=null&&o.publish)||!!(o!=null&&o.subscribe)||!!(o!=null&&o.unsubscribe),l=!!a.useHistory||!!a.Link||!!a.Prompt||!!a.useLocation||!!a.useParams,h=!!i,g=!!(n!=null&&n.changeLocale)||!!(n!=null&&n.getLocale)||!!(n!=null&&n.translate),v=!!s.close||!!s.open,b=!!f.can,m=(e=p==null?void 0:p.options)==null?void 0:e.projectId;return{providers:{auth:t,auditLog:y,live:S,router:l,data:h,i18n:g,notification:v,accessControl:b},version:up,resourceCount:u.length,projectId:m}},"useTelemetryData"),cp=d(e=>{try{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")}catch{return}},"encode"),pp=d(e=>{let t=new Image;t.src=e},"throughImage"),mp=d(e=>{fetch(e)},"throughFetch"),fp=d(e=>{typeof Image<"u"?pp(e):typeof fetch<"u"&&mp(e)},"transport"),gp=d(()=>{let e=dp(),t=Oi.default.useRef(!1);return Oi.default.useEffect(()=>{if(t.current)return;let r=cp(e);r&&(fp(`https://telemetry.refine.dev/telemetry?payload=${r}`),t.current=!0)},[]),null},"Telemetry"),yp=d(e=>{let t=["go","parse","back","Link"],r=Object.keys(e).filter(o=>!t.includes(o));return r.length>0?(console.warn(`Unsupported properties are found in \`routerProvider\` prop. You provided \`${r.join(", ")}\`. Supported properties are \`${t.join(", ")}\`. You may wanted to use \`legacyRouterProvider\` prop instead.`),!0):!1},"checkRouterPropMisuse"),Vi=j(c("react")),vp=d(e=>{let t=Vi.default.useRef(!1);Vi.default.useEffect(()=>{t.current===!1&&e&&yp(e)&&(t.current=!0)},[e])},"useRouterMisuseWarning"),hp=d(({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:a,notificationProvider:i,accessControlProvider:n,auditLogProvider:s,resources:f,DashboardPage:u,ReadyPage:p,LoginPage:y,catchAll:S,children:l,liveProvider:h,i18nProvider:g,Title:v,Layout:b,Sider:m,Header:x,Footer:T,OffLayoutArea:R,onLiveEvent:F,options:C})=>{let{optionsWithDefaults:D,disableTelemetryWithDefault:L,reactQueryWithDefaults:B}=dd({options:C}),I=ws(()=>{var E;return B.clientConfig instanceof tn.QueryClient?B.clientConfig:new tn.QueryClient({...B.clientConfig,defaultOptions:{...B.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(E=B.clientConfig.defaultOptions)==null?void 0:E.queries}}})},[B.clientConfig]),w=Pe.default.useMemo(()=>typeof i=="function"?i:()=>i??{},[i])();if(vp(a),o&&!a&&(f??[]).length===0)return p?Pe.default.createElement(p,null):Pe.default.createElement(Ks,null);let{RouterComponent:k=Pe.default.Fragment}=a?{}:o??{};return Pe.default.createElement(tn.QueryClientProvider,{client:I},Pe.default.createElement(fc,{...w},Pe.default.createElement(Gu,{...e??{},isProvided:!!e},Pe.default.createElement(_u,{...t??{},isProvided:!!t},Pe.default.createElement(Gd,{...r},Pe.default.createElement(Yd,{liveProvider:h},Pe.default.createElement(ac,{value:o&&!a?"legacy":"new"},Pe.default.createElement(ic,{router:a},Pe.default.createElement(Ic,{...o},Pe.default.createElement(oc,{resources:f??[]},Pe.default.createElement(yc,{i18nProvider:g},Pe.default.createElement(Oc,{...n??{}},Pe.default.createElement(Wc,{...s??{}},Pe.default.createElement(Id,null,Pe.default.createElement(ud,{mutationMode:D.mutationMode,warnWhenUnsavedChanges:D.warnWhenUnsavedChanges,syncWithLocation:D.syncWithLocation,Title:v,undoableTimeout:D.undoableTimeout,catchAll:S,DashboardPage:u,LoginPage:y,Layout:b,Sider:m,Footer:T,Header:x,OffLayoutArea:R,hasDashboard:!!u,liveMode:D.liveMode,onLiveEvent:F,options:D},Pe.default.createElement(gd,null,Pe.default.createElement(k,null,l,!L&&Pe.default.createElement(gp,null),Pe.default.createElement(_s,null))))))))))))))))))},"Refine"),Qi=c("react"),js=d(({notification:e})=>{let t=Ce(),{notificationDispatch:r}=Gr(),{open:o}=pr(),[a,i]=(0,Qi.useState)(),n=d(()=>{if(e.isRunning===!0&&(e.seconds===0&&e.doMutation(),e.isSilent||o==null||o({key:`${e.id}-${e.resource}-notification`,type:"progress",message:t("notifications.undoable",{seconds:Qa(e.seconds)},`You have ${Qa(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Qa(e.seconds)}),e.seconds>0)){a&&clearTimeout(a);let s=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);i(s)}},"cancelNotification");return(0,Qi.useEffect)(()=>{n()},[e]),null},"UndoableQueue"),aa=j(c("react")),Tp=d(({children:e,Layout:t,Sider:r,Header:o,Title:a,Footer:i,OffLayoutArea:n})=>{let{Layout:s,Footer:f,Header:u,Sider:p,Title:y,OffLayoutArea:S}=st();return aa.default.createElement(t??s,{Sider:r??p,Header:o??u,Footer:i??f,Title:a??y,OffLayoutArea:n??S},e,aa.default.createElement(bp,null))},"LayoutWrapper"),bp=d(()=>{let{Prompt:e}=Tt(),t=Ce(),{warnWhen:r,setWarnWhen:o}=pn(),a=d(i=>(i.preventDefault(),i.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),i.returnValue),"warnWhenListener");return(0,aa.useEffect)(()=>(r&&window.addEventListener("beforeunload",a),window.removeEventListener("beforeunload",a)),[r]),aa.default.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})},"UnsavedPrompt"),yt=j(c("react")),Pp=d(()=>{let e=Ft(),[t,r]=yt.default.useState(void 0);return yt.default.useEffect(()=>{t&&e(t)},[t]),yt.default.useCallback(o=>{t||r(o)},[t])},"useDeferredGo");function Gs({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:a}){var i;let n=Qe(),s=$e(),f=!!(n!=null&&n.isProvided),u=!!(n!=null&&n.isLegacy),p=s==="legacy",y=It(),S=Ft(),l=Pp(),{replace:h}=Et(),{useLocation:g}=Tt(),v=g(),{isLoading:b,isFetching:m,isSuccess:x,data:{authenticated:T,redirectTo:R}={},refetch:F}=la({v3LegacyAuthProviderCompatible:u});yt.default.useEffect(()=>{F()},[r,o]);let C=yt.default.useRef({status:b?"initial":"pending",content:a??null});m?C.current.status="pending":m||(C.current.status="settled");let D=f?u?x:T:!0;if(C.current.status==="settled")if(D)C.current.content=yt.default.createElement(yt.default.Fragment,null,r??null);else if(typeof o<"u")C.current.content=yt.default.createElement(yt.default.Fragment,null,o);else{let L=`${p?v==null?void 0:v.pathname:y.pathname}`.replace(/(\?.*|#.*)$/,""),B=u?typeof e=="string"?e:"/login":typeof e=="string"?e:R;if(B)if(p){let I=t?`?to=${encodeURIComponent(L)}`:"";h(`${B}${I}`)}else l({to:B,query:t?{to:(i=y.params)!=null&&i.to?y.params.to:S({to:L,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return f?yt.default.createElement(yt.default.Fragment,null,C.current.content):yt.default.createElement(yt.default.Fragment,null,r??null)}P(Gs,"Va");d(Gs,"Authenticated");var Cp=c("react"),_s=d(()=>{let{useLocation:e}=Tt(),{checkAuth:t}=St(),r=e();return(0,Cp.useEffect)(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null},"RouteChangeHandler"),Dr=j(c("react")),xp=d(({resource:e,action:t,params:r,fallback:o,onUnauthorized:a,children:i,...n})=>{let{resource:s,id:f,action:u}=ie(e),{identifier:p}=ie(),y=d(()=>{let v=(r==null?void 0:r.id)??f;return e&&e!==p?r==null?void 0:r.id:v},"getDefaultId")(),S=e??(s==null?void 0:s.name),l=t??u??"",h=r??{id:y,resource:s},{data:g}=$s({resource:S,action:l,params:h});return(0,Dr.useEffect)(()=>{a&&(g==null?void 0:g.can)===!1&&a({resource:S,action:l,reason:g==null?void 0:g.reason,params:h})},[g==null?void 0:g.can]),g!=null&&g.can?Dr.default.isValidElement(i)?Dr.default.cloneElement(i,n):Dr.default.createElement(Dr.default.Fragment,null,i):(g==null?void 0:g.can)===!1?Dr.default.createElement(Dr.default.Fragment,null,o??null):null},"CanAccess"),Br=j(c("react")),Lp=[`
11
+ For more information, see https://refine.dev/docs/api-reference/core/hooks/useBreadcrumb/#i18n-support`),u.push({label:a(`buttons.${s}`,f.humanize(s))})):u.push({label:a(y,f.humanize(s))})}return{breadcrumbs:u}},"useBreadcrumb"),en=j(c("react")),ra=d((e,t,r=!1)=>{let o=[],a=dr(e,t);for(;a;)o.push(a),a=dr(a,t);return o.reverse(),`/${[...o,e].map(i=>Zt((r?i.route:void 0)??i.identifier??i.name)).join("/").replace(/^\//,"")}`},"createResourceKey"),Xc=d((e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(a=>{let i=[],n=dr(a,e);for(;n;)i.push(n),n=dr(n,e);i.reverse();let s=r;i.forEach(u=>{let p=(t?u.route:void 0)??u.identifier??u.name;s.children[p]||(s.children[p]={item:u,children:{}}),s=s.children[p]});let f=(t?a.route:void 0)??a.identifier??a.name;s.children[f]||(s.children[f]={item:a,children:{}})});let o=d(a=>{let i=[];return Object.keys(a.children).forEach(n=>{let s=ra(a.children[n].item,e,t),f={...a.children[n].item,key:s,children:o(a.children[n])};i.push(f)}),i},"flatten");return o(r)},"createTree"),qi=d(e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),"getCleanPath"),Jc=d(({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=Ce(),o=Sn(),a=$e(),{resource:i,resources:n}=ie(),{pathname:s}=It(),{useLocation:f}=Tt(),{pathname:u}=f(),p=mn(),y=`/${((a==="legacy"?qi(u):s?qi(s):void 0)??"").replace(/^\//,"")}`,S=i?ra(i,n,a==="legacy"):y??"",l=en.default.useMemo(()=>{if(!i)return[];let v=dr(i,n),b=[ra(i,n)];for(;v;)b.push(ra(v,n)),v=dr(v,n);return b},[]),h=en.default.useCallback(v=>{var b,m,x,T,R,F;if((((b=v==null?void 0:v.meta)==null?void 0:b.hide)??((m=v==null?void 0:v.options)==null?void 0:m.hide))||!(v!=null&&v.list)&&v.children.length===0)return;let C=v.list?o({resource:v,action:"list",legacy:a==="legacy",meta:e}):void 0;if(!(t&&C&&C.match(/(\/|^):(.+?)(\/|$){1}/)))return{...v,route:C,icon:K((x=v.meta)==null?void 0:x.icon,(T=v.options)==null?void 0:T.icon,v.icon),label:K((R=v==null?void 0:v.meta)==null?void 0:R.label,(F=v==null?void 0:v.options)==null?void 0:F.label)??r(`${v.name}.${v.name}`,p(v.name,"plural"))}},[a,e,r,t]),g=en.default.useMemo(()=>{let v=Xc(n,a==="legacy"),b=d(m=>m.flatMap(x=>{let T=b(x.children),R=h({...x,children:T});return R?[R]:[]}),"prepare");return b(v)},[n,a,h]);return{defaultOpenKeys:l,selectedKey:S,menuItems:g}},"useMenu"),Ae=d(()=>{let{params:e}=It();return d(({resource:t,meta:r}={})=>{let{meta:o}=En(t)??{meta:{}},{filters:a,sorters:i,current:n,pageSize:s,...f}=e??{};return{...o,...f,...r}},"getMetaFn")},"useMeta"),ep=d(()=>{let[e,t]=(0,Er.useState)(),r=Ce(),{push:o}=Et(),a=Ft(),i=$e(),{resource:n,action:s}=ie();return(0,Er.useEffect)(()=>{n&&s&&t(r("pages.error.info",{action:s,resource:n.name},`You may have forgotten to add the "${s}" component to "${n.name}" resource.`))},[n,s]),Er.default.createElement(Er.default.Fragment,null,Er.default.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&Er.default.createElement("p",null,e),Er.default.createElement("button",{onClick:()=>{i==="legacy"?o("/"):a({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))},"ErrorComponent"),Ve=j(c("react")),Ws=d(()=>{let[e,t]=(0,Ve.useState)(""),[r,o]=(0,Ve.useState)(""),a=Ce(),i=Qe(),{mutate:n}=sa({v3LegacyAuthProviderCompatible:!!(i!=null&&i.isLegacy)});return Ve.default.createElement(Ve.default.Fragment,null,Ve.default.createElement("h1",null,a("pages.login.title","Sign in your account")),Ve.default.createElement("form",{onSubmit:s=>{s.preventDefault(),n({username:e,password:r})}},Ve.default.createElement("table",null,Ve.default.createElement("tbody",null,Ve.default.createElement("tr",null,Ve.default.createElement("td",null,a("pages.login.username",void 0,"username"),":"),Ve.default.createElement("td",null,Ve.default.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:s=>t(s.target.value)}))),Ve.default.createElement("tr",null,Ve.default.createElement("td",null,a("pages.login.password",void 0,"password"),":"),Ve.default.createElement("td",null,Ve.default.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:s=>o(s.target.value)}))))),Ve.default.createElement("br",null),Ve.default.createElement("input",{type:"submit",value:"login"})))},"LoginPage"),zr=j(c("react")),Te=j(c("react")),tp=d(({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:a,wrapperProps:i,renderContent:n,formProps:s,title:f=void 0})=>{let u=$e(),p=ua(),{Link:y}=Tt(),S=u==="legacy"?y:p,[l,h]=(0,Te.useState)(""),[g,v]=(0,Te.useState)(""),[b,m]=(0,Te.useState)(!1),x=Ce(),T=Qe(),{mutate:R}=sa({v3LegacyAuthProviderCompatible:!!(T!=null&&T.isLegacy)}),F=d((L,B)=>Te.default.createElement(S,{to:L},B),"renderLink"),C=d(()=>e?e.map(L=>Te.default.createElement("div",{key:L.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},Te.default.createElement("button",{onClick:()=>R({providerName:L.name}),style:{display:"flex",alignItems:"center"}},L==null?void 0:L.icon,L.label??Te.default.createElement("label",null,L.label)))):null,"renderProviders"),D=Te.default.createElement("div",{...a},Te.default.createElement("h1",{style:{textAlign:"center"}},x("pages.login.title","Sign in to your account")),C(),Te.default.createElement("hr",null),Te.default.createElement("form",{onSubmit:L=>{L.preventDefault(),R({email:l,password:g,remember:b})},...s},Te.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Te.default.createElement("label",{htmlFor:"email-input"},x("pages.login.fields.email","Email")),Te.default.createElement("input",{id:"email-input",name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:l,onChange:L=>h(L.target.value)}),Te.default.createElement("label",{htmlFor:"password-input"},x("pages.login.fields.password","Password")),Te.default.createElement("input",{id:"password-input",type:"password",name:"password",required:!0,size:20,value:g,onChange:L=>v(L.target.value)}),o??Te.default.createElement(Te.default.Fragment,null,Te.default.createElement("label",{htmlFor:"remember-me-input"},x("pages.login.buttons.rememberMe","Remember me"),Te.default.createElement("input",{id:"remember-me-input",name:"remember",type:"checkbox",size:20,checked:b,value:b.toString(),onChange:()=>{m(!b)}}))),Te.default.createElement("br",null),r??F("/forgot-password",x("pages.login.buttons.forgotPassword","Forgot password?")),Te.default.createElement("input",{type:"submit",value:x("pages.login.signin","Sign in")}),t??Te.default.createElement("span",null,x("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",F("/register",x("pages.login.register","Sign up"))))));return Te.default.createElement("div",{...i},n?n(D,f):D)},"LoginPage"),ke=j(c("react")),rp=d(({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:a,formProps:i,title:n=void 0})=>{let s=$e(),f=ua(),{Link:u}=Tt(),p=s==="legacy"?u:f,[y,S]=(0,ke.useState)(""),[l,h]=(0,ke.useState)(""),g=Ce(),v=Qe(),{mutate:b,isLoading:m}=vn({v3LegacyAuthProviderCompatible:!!(v!=null&&v.isLegacy)}),x=d((F,C)=>ke.default.createElement(p,{to:F},C),"renderLink"),T=d(()=>e?e.map(F=>ke.default.createElement("div",{key:F.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ke.default.createElement("button",{onClick:()=>b({providerName:F.name}),style:{display:"flex",alignItems:"center"}},F==null?void 0:F.icon,F.label??ke.default.createElement("label",null,F.label)))):null,"renderProviders"),R=ke.default.createElement("div",{...o},ke.default.createElement("h1",{style:{textAlign:"center"}},g("pages.register.title","Sign up for your account")),T(),ke.default.createElement("hr",null),ke.default.createElement("form",{onSubmit:F=>{F.preventDefault(),b({email:y,password:l})},...i},ke.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ke.default.createElement("label",{htmlFor:"email-input"},g("pages.register.fields.email","Email")),ke.default.createElement("input",{id:"email-input",name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:y,onChange:F=>S(F.target.value)}),ke.default.createElement("label",{htmlFor:"password-input"},g("pages.register.fields.password","Password")),ke.default.createElement("input",{id:"password-input",name:"password",type:"password",required:!0,size:20,value:l,onChange:F=>h(F.target.value)}),ke.default.createElement("input",{type:"submit",value:g("pages.register.buttons.submit","Sign up"),disabled:m}),t??ke.default.createElement(ke.default.Fragment,null,ke.default.createElement("span",null,g("pages.login.buttons.haveAccount","Have an account?")," ",x("/login",g("pages.login.signin","Sign in")))))));return ke.default.createElement("div",{...r},a?a(R,n):R)},"RegisterPage"),mt=j(c("react")),op=d(({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:a,title:i=void 0})=>{let n=Ce(),s=$e(),f=ua(),{Link:u}=Tt(),p=s==="legacy"?u:f,[y,S]=(0,mt.useState)(""),{mutate:l,isLoading:h}=hn(),g=d((b,m)=>mt.default.createElement(p,{to:b},m),"renderLink"),v=mt.default.createElement("div",{...r},mt.default.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),mt.default.createElement("hr",null),mt.default.createElement("form",{onSubmit:b=>{b.preventDefault(),l({email:y})},...a},mt.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},mt.default.createElement("label",{htmlFor:"email-input"},n("pages.forgotPassword.fields.email","Email")),mt.default.createElement("input",{id:"email-input",name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:y,onChange:b=>S(b.target.value)}),mt.default.createElement("input",{type:"submit",disabled:h,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),mt.default.createElement("br",null),e??mt.default.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",g("/login",n("pages.login.signin","Sign in"))))));return mt.default.createElement("div",{...t},o?o(v,i):v)},"ForgotPasswordPage"),ft=j(c("react")),ap=d(({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:a=void 0})=>{let i=Ce(),n=Qe(),{mutate:s,isLoading:f}=Tn({v3LegacyAuthProviderCompatible:!!(n!=null&&n.isLegacy)}),[u,p]=(0,ft.useState)(""),[y,S]=(0,ft.useState)(""),l=ft.default.createElement("div",{...t},ft.default.createElement("h1",{style:{textAlign:"center"}},i("pages.updatePassword.title","Update Password")),ft.default.createElement("hr",null),ft.default.createElement("form",{onSubmit:h=>{h.preventDefault(),s({password:u,confirmPassword:y})},...o},ft.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ft.default.createElement("label",{htmlFor:"password-input"},i("pages.updatePassword.fields.password","New Password")),ft.default.createElement("input",{id:"password-input",name:"password",type:"password",required:!0,size:20,value:u,onChange:h=>p(h.target.value)}),ft.default.createElement("label",{htmlFor:"confirm-password-input"},i("pages.updatePassword.fields.confirmPassword","Confirm New Password")),ft.default.createElement("input",{id:"confirm-password-input",name:"confirmPassword",type:"password",required:!0,size:20,value:y,onChange:h=>S(h.target.value)}),ft.default.createElement("input",{type:"submit",disabled:f,value:i("pages.updatePassword.buttons.submit","Update")}))));return ft.default.createElement("div",{...e},r?r(l,a):l)},"UpdatePasswordPage"),np=d(e=>{let{type:t}=e;return zr.default.createElement(zr.default.Fragment,null,d(()=>{switch(t){case"register":return zr.default.createElement(rp,{...e});case"forgotPassword":return zr.default.createElement(op,{...e});case"updatePassword":return zr.default.createElement(ap,{...e});default:return zr.default.createElement(tp,{...e})}},"renderView")())},"AuthPage"),nt=j(c("react")),Ks=d(()=>nt.default.createElement(nt.default.Fragment,null,nt.default.createElement("h1",null,"Welcome on board"),nt.default.createElement("p",null,"Your configuration is completed."),nt.default.createElement("p",null,"Now you can get started by adding your resources to the"," ",nt.default.createElement("code",null,"`resources`")," property of ",nt.default.createElement("code",null,"`<Refine>`")),nt.default.createElement("div",{style:{display:"flex",gap:8}},nt.default.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Documentation")),nt.default.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Examples")),nt.default.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},nt.default.createElement("button",null,"Community")))),"ReadyPage"),se=j(c("react")),ip=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:se.default.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V5a1 1 0 0 0-1-1H3a1 1 0 0 1 0-2h10a1 1 0 1 0 0-2H2Z",fill:"#fff"}))},{title:"Tutorial",description:"Learn how to use refine by building a fully-functioning CRUD app, from scratch to full launch.",link:"https://refine.dev/docs/tutorial/introduction/index/",icon:se.default.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M0 4.573c0-.475.163-.948.53-1.25a4.57 4.57 0 0 1 .854-.553L5.956.485a4.571 4.571 0 0 1 4.088 0l4.572 2.285c.308.154.594.34.853.553.306.251.47.62.517 1.01.01.055.014.112.014.169v6.5a1 1 0 0 1-2 0V6.684l-3.956 1.978a4.571 4.571 0 0 1-4.088 0L1.384 6.376a4.57 4.57 0 0 1-.853-.553C.163 5.522 0 5.05 0 4.573Z",fill:"#fff"}),se.default.createElement("path",{d:"M5.061 13.305 3 12.274V9.42l2.061 1.031a6.571 6.571 0 0 0 5.878 0L13 9.421v2.853l-2.061 1.03a6.571 6.571 0 0 1-5.878 0Z",fill:"#fff"}))},{title:"Examples",description:"A collection of reference applications you can use as a starting point.",link:"https://refine.dev/examples",icon:se.default.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4H0V2Zm3 2a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm4-1a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm2 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",fill:"#fff"}),se.default.createElement("path",{d:"M0 14V8h16v6a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2Z",fill:"#fff"}))},{title:"Community",description:"Join our Discord community and keep up with the latest news.",link:"https://discord.gg/refine",icon:se.default.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M13.553 1.005A13.334 13.334 0 0 0 10.253 0c-.156.276-.298.56-.423.85a12.42 12.42 0 0 0-3.664 0A8.975 8.975 0 0 0 5.744 0 13.43 13.43 0 0 0 2.44 1.007C.351 4.066-.215 7.05.068 9.99A13.36 13.36 0 0 0 4.116 12c.328-.436.618-.9.867-1.384a8.647 8.647 0 0 1-1.365-.645c.115-.082.227-.167.335-.249a9.594 9.594 0 0 0 8.094 0c.11.089.222.173.335.25-.436.254-.894.47-1.368.646.249.484.539.946.867 1.382a13.3 13.3 0 0 0 4.051-2.01c.332-3.41-.568-6.365-2.379-8.985Zm-8.21 7.176c-.79 0-1.442-.709-1.442-1.58 0-.872.63-1.587 1.439-1.587s1.456.715 1.442 1.586c-.014.872-.636 1.58-1.44 1.58Zm5.315 0c-.79 0-1.44-.709-1.44-1.58 0-.872.63-1.587 1.44-1.587.81 0 1.452.715 1.438 1.586-.014.872-.634 1.58-1.438 1.58Z",fill:"#fff"}))}],sp=d(()=>{let e=li("(max-width: 1010px)"),t=li("(max-width: 650px)"),r=d(()=>t?"1, 280px":e?"2, 280px":"4, 208px","getGridTemplateColumns"),o=d(()=>t?"32px":e?"40px":"48px","getHeaderFontSize"),a=d(()=>t?"16px":e?"20px":"24px","getSubHeaderFontSize");return se.default.createElement("div",{style:{backgroundImage:"url(https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-page.webp)",backgroundPosition:"center top",backgroundSize:"cover",backgroundRepeat:"no-repeat",minHeight:"100vh",backgroundColor:"#0D0D12",fontFamily:"Arial",color:"#FFFFFF"}},se.default.createElement("div",{style:{height:"89px"}}),se.default.createElement("div",{style:{display:"flex",justifyContent:"center"}},se.default.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),se.default.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),se.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},se.default.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),se.default.createElement("h4",{style:{fontSize:a(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),se.default.createElement("div",{style:{height:"64px"}}),se.default.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},ip.map(i=>se.default.createElement(lp,{key:`welcome-page-${i.title}`,card:i}))),se.default.createElement("div",{style:{height:"64px"}}))},"WelcomePage"),lp=d(({card:e})=>{let{title:t,description:r,icon:o,link:a}=e,[i,n]=(0,se.useState)(!1);return se.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},se.default.createElement("div",{style:{display:"flex",alignItems:"center"}},se.default.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:a},o,se.default.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),se.default.createElement("svg",{style:{transition:"transform 0.5s ease-in-out, opacity 0.2s ease-in-out",...i&&{transform:"translateX(4px)",opacity:1}},width:"12",height:"8",fill:"none",opacity:"0.5",xmlns:"http://www.w3.org/2000/svg"},se.default.createElement("path",{d:"M7.293.293a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L8.586 5H1a1 1 0 0 1 0-2h7.586L7.293 1.707a1 1 0 0 1 0-1.414Z",fill:"#fff"})))),se.default.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))},"Card"),tn=c("@tanstack/react-query"),Pe=j(c("react")),Oi=j(c("react")),kr=c("react"),up="4.40.0",dp=d(()=>{var e;let t=Ps(),r=(0,kr.useContext)(da),o=(0,kr.useContext)(Ro),a=(0,kr.useContext)(Fn),i=(0,kr.useContext)(xn),{i18nProvider:n}=(0,kr.useContext)(Mr),s=(0,kr.useContext)(Ln),f=(0,kr.useContext)(Io),{resources:u}=ie(),p=st(),y=!!r.create||!!r.get||!!r.update,S=!!(o!=null&&o.publish)||!!(o!=null&&o.subscribe)||!!(o!=null&&o.unsubscribe),l=!!a.useHistory||!!a.Link||!!a.Prompt||!!a.useLocation||!!a.useParams,h=!!i,g=!!(n!=null&&n.changeLocale)||!!(n!=null&&n.getLocale)||!!(n!=null&&n.translate),v=!!s.close||!!s.open,b=!!f.can,m=(e=p==null?void 0:p.options)==null?void 0:e.projectId;return{providers:{auth:t,auditLog:y,live:S,router:l,data:h,i18n:g,notification:v,accessControl:b},version:up,resourceCount:u.length,projectId:m}},"useTelemetryData"),cp=d(e=>{try{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")}catch{return}},"encode"),pp=d(e=>{let t=new Image;t.src=e},"throughImage"),mp=d(e=>{fetch(e)},"throughFetch"),fp=d(e=>{typeof Image<"u"?pp(e):typeof fetch<"u"&&mp(e)},"transport"),gp=d(()=>{let e=dp(),t=Oi.default.useRef(!1);return Oi.default.useEffect(()=>{if(t.current)return;let r=cp(e);r&&(fp(`https://telemetry.refine.dev/telemetry?payload=${r}`),t.current=!0)},[]),null},"Telemetry"),yp=d(e=>{let t=["go","parse","back","Link"],r=Object.keys(e).filter(o=>!t.includes(o));return r.length>0?(console.warn(`Unsupported properties are found in \`routerProvider\` prop. You provided \`${r.join(", ")}\`. Supported properties are \`${t.join(", ")}\`. You may wanted to use \`legacyRouterProvider\` prop instead.`),!0):!1},"checkRouterPropMisuse"),Vi=j(c("react")),vp=d(e=>{let t=Vi.default.useRef(!1);Vi.default.useEffect(()=>{t.current===!1&&e&&yp(e)&&(t.current=!0)},[e])},"useRouterMisuseWarning"),hp=d(({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:a,notificationProvider:i,accessControlProvider:n,auditLogProvider:s,resources:f,DashboardPage:u,ReadyPage:p,LoginPage:y,catchAll:S,children:l,liveProvider:h,i18nProvider:g,Title:v,Layout:b,Sider:m,Header:x,Footer:T,OffLayoutArea:R,onLiveEvent:F,options:C})=>{let{optionsWithDefaults:D,disableTelemetryWithDefault:L,reactQueryWithDefaults:B}=dd({options:C}),I=ws(()=>{var E;return B.clientConfig instanceof tn.QueryClient?B.clientConfig:new tn.QueryClient({...B.clientConfig,defaultOptions:{...B.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(E=B.clientConfig.defaultOptions)==null?void 0:E.queries}}})},[B.clientConfig]),w=Pe.default.useMemo(()=>typeof i=="function"?i:()=>i??{},[i])();if(vp(a),o&&!a&&(f??[]).length===0)return p?Pe.default.createElement(p,null):Pe.default.createElement(Ks,null);let{RouterComponent:k=Pe.default.Fragment}=a?{}:o??{};return Pe.default.createElement(tn.QueryClientProvider,{client:I},Pe.default.createElement(fc,{...w},Pe.default.createElement(Gu,{...e??{},isProvided:!!e},Pe.default.createElement(_u,{...t??{},isProvided:!!t},Pe.default.createElement(Gd,{...r},Pe.default.createElement(Yd,{liveProvider:h},Pe.default.createElement(ac,{value:o&&!a?"legacy":"new"},Pe.default.createElement(ic,{router:a},Pe.default.createElement(Ic,{...o},Pe.default.createElement(oc,{resources:f??[]},Pe.default.createElement(yc,{i18nProvider:g},Pe.default.createElement(Oc,{...n??{}},Pe.default.createElement(Wc,{...s??{}},Pe.default.createElement(Id,null,Pe.default.createElement(ud,{mutationMode:D.mutationMode,warnWhenUnsavedChanges:D.warnWhenUnsavedChanges,syncWithLocation:D.syncWithLocation,Title:v,undoableTimeout:D.undoableTimeout,catchAll:S,DashboardPage:u,LoginPage:y,Layout:b,Sider:m,Footer:T,Header:x,OffLayoutArea:R,hasDashboard:!!u,liveMode:D.liveMode,onLiveEvent:F,options:D},Pe.default.createElement(gd,null,Pe.default.createElement(k,null,l,!L&&Pe.default.createElement(gp,null),Pe.default.createElement(_s,null))))))))))))))))))},"Refine"),Qi=c("react"),js=d(({notification:e})=>{let t=Ce(),{notificationDispatch:r}=Gr(),{open:o}=pr(),[a,i]=(0,Qi.useState)(),n=d(()=>{if(e.isRunning===!0&&(e.seconds===0&&e.doMutation(),e.isSilent||o==null||o({key:`${e.id}-${e.resource}-notification`,type:"progress",message:t("notifications.undoable",{seconds:Qa(e.seconds)},`You have ${Qa(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Qa(e.seconds)}),e.seconds>0)){a&&clearTimeout(a);let s=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);i(s)}},"cancelNotification");return(0,Qi.useEffect)(()=>{n()},[e]),null},"UndoableQueue"),aa=j(c("react")),Tp=d(({children:e,Layout:t,Sider:r,Header:o,Title:a,Footer:i,OffLayoutArea:n})=>{let{Layout:s,Footer:f,Header:u,Sider:p,Title:y,OffLayoutArea:S}=st();return aa.default.createElement(t??s,{Sider:r??p,Header:o??u,Footer:i??f,Title:a??y,OffLayoutArea:n??S},e,aa.default.createElement(bp,null))},"LayoutWrapper"),bp=d(()=>{let{Prompt:e}=Tt(),t=Ce(),{warnWhen:r,setWarnWhen:o}=pn(),a=d(i=>(i.preventDefault(),i.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),i.returnValue),"warnWhenListener");return(0,aa.useEffect)(()=>(r&&window.addEventListener("beforeunload",a),window.removeEventListener("beforeunload",a)),[r]),aa.default.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})},"UnsavedPrompt"),yt=j(c("react")),Pp=d(()=>{let e=Ft(),[t,r]=yt.default.useState(void 0);return yt.default.useEffect(()=>{t&&e(t)},[t]),yt.default.useCallback(o=>{t||r(o)},[t])},"useDeferredGo");function Gs({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:a}){var i;let n=Qe(),s=$e(),f=!!(n!=null&&n.isProvided),u=!!(n!=null&&n.isLegacy),p=s==="legacy",y=It(),S=Ft(),l=Pp(),{replace:h}=Et(),{useLocation:g}=Tt(),v=g(),{isLoading:b,isFetching:m,isSuccess:x,data:{authenticated:T,redirectTo:R}={},refetch:F}=la({v3LegacyAuthProviderCompatible:u});yt.default.useEffect(()=>{F()},[r,o]);let C=yt.default.useRef({status:b?"initial":"pending",content:a??null});m?C.current.status="pending":m||(C.current.status="settled");let D=f?u?x:T:!0;if(C.current.status==="settled")if(D)C.current.content=yt.default.createElement(yt.default.Fragment,null,r??null);else if(typeof o<"u")C.current.content=yt.default.createElement(yt.default.Fragment,null,o);else{let L=`${p?v==null?void 0:v.pathname:y.pathname}`.replace(/(\?.*|#.*)$/,""),B=u?typeof e=="string"?e:"/login":typeof e=="string"?e:R;if(B)if(p){let I=t?`?to=${encodeURIComponent(L)}`:"";h(`${B}${I}`)}else l({to:B,query:t?{to:(i=y.params)!=null&&i.to?y.params.to:S({to:L,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return f?yt.default.createElement(yt.default.Fragment,null,C.current.content):yt.default.createElement(yt.default.Fragment,null,r??null)}P(Gs,"Va");d(Gs,"Authenticated");var Cp=c("react"),_s=d(()=>{let{useLocation:e}=Tt(),{checkAuth:t}=St(),r=e();return(0,Cp.useEffect)(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null},"RouteChangeHandler"),Dr=j(c("react")),xp=d(({resource:e,action:t,params:r,fallback:o,onUnauthorized:a,children:i,...n})=>{let{resource:s,id:f,action:u}=ie(e),{identifier:p}=ie(),y=d(()=>{let v=(r==null?void 0:r.id)??f;return e&&e!==p?r==null?void 0:r.id:v},"getDefaultId")(),S=e??(s==null?void 0:s.name),l=t??u??"",h=r??{id:y,resource:s},{data:g}=$s({resource:S,action:l,params:h});return(0,Dr.useEffect)(()=>{a&&(g==null?void 0:g.can)===!1&&a({resource:S,action:l,reason:g==null?void 0:g.reason,params:h})},[g==null?void 0:g.can]),g!=null&&g.can?Dr.default.isValidElement(i)?Dr.default.cloneElement(i,n):Dr.default.createElement(Dr.default.Fragment,null,i):(g==null?void 0:g.can)===!1?Dr.default.createElement(Dr.default.Fragment,null,o??null):null},"CanAccess"),Br=j(c("react")),Lp=[`
12
12
  .banner {
13
13
  display: flex;
14
14
  @media (max-width: 1000px) {