@refinedev/core 4.11.0 → 4.12.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,23 @@
1
1
  # @pankod/refine-core
2
2
 
3
+ ## 4.12.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#4194](https://github.com/refinedev/refine/pull/4194) [`8df15fe0e4e`](https://github.com/refinedev/refine/commit/8df15fe0e4e0fb2bb81102ed1e3a12a0a9532b80) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - feat: `sorters.mode` prop added to `useTable` and `useDataGrid` hooks. This prop handles the sorting mode of the table. It can be either `server` or `off`.
8
+
9
+ - **"off"**: `sorters` are not sent to the server. You can use the `sorters` value to sort the records on the client side.
10
+ - **"server"**: Sorting is done on the server side. Records will be fetched by using the `sorters` value.
11
+
12
+ feat:`filters.mode` prop added to `useTable` and `useDataGrid` hooks. This prop handles the filtering mode of the table. It can be either `server` or `off`.
13
+
14
+ - **"off"**: `filters` are not sent to the server. You can use the `filters` value to filter the records on the client side.
15
+ - **"server"**: Filtering is done on the server side. Records will be fetched by using the `filters` value.
16
+
17
+ ### Patch Changes
18
+
19
+ - [#4194](https://github.com/refinedev/refine/pull/4194) [`8df15fe0e4e`](https://github.com/refinedev/refine/commit/8df15fe0e4e0fb2bb81102ed1e3a12a0a9532b80) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - fix: `filters`, `sorters`, `current`, and, `pageSize` removed from `useMeta` returned object.
20
+
3
21
  ## 4.11.0
4
22
 
5
23
  ### Minor Changes
package/dist/esm/index.js CHANGED
@@ -8,7 +8,7 @@ See https://refine.dev/docs/api-reference/core/hooks/useForm/#resource`);let Ot=
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`),{queryResult:wt({resource:y==null?void 0:y.name,id:h!=null?h:"",queryOptions:{enabled:h!==void 0,...d},successNotification:r,errorNotification:o,meta:P,metaData:P,liveMode:n,onLiveEvent:u,dataProviderName:p}),showId:h,setShowId:l}};import{useEffect as Ua,useState as Kr}from"react";import{parse as Ma}from"papaparse";import La from"lodash-es/chunk";var wg=({resourceName:e,resource:t,mapData:r=m=>m,paparseOptions:o,batchSize:s=Number.MAX_SAFE_INTEGER,onFinish:a,meta:n,metaData:u,onProgress:p,dataProviderName:d}={})=>{let[m,c]=Kr(0),[T,R]=Kr(0),[D,E]=Kr(!1),{resource:i}=Q(t!=null?t:e),g=Or(),f=St(),x;s===1?x=f:x=g;let h=()=>{R(0),c(0),E(!1)},l=y=>{let b={succeeded:y.filter(P=>P.type==="success"),errored:y.filter(P=>P.type==="error")};a==null||a(b),E(!1)};Ua(()=>{p==null||p({totalAmount:T,processedAmount:m})},[T,m]);let C=({file:y})=>(h(),new Promise(b=>{E(!0),Ma(y,{complete:async({data:P})=>{let v=jt(P,r);if(R(v.length),s===1){let U=v.map(I=>async()=>{var F;return{response:await f.mutateAsync({resource:(F=i==null?void 0:i.name)!=null?F:"",values:I,successNotification:!1,errorNotification:!1,dataProviderName:d,meta:L(n,u),metaData:L(n,u)}),value:I}}),M=await tr(U,({response:I,value:w})=>(c(B=>B+1),{response:[I.data],type:"success",request:[w]}),(I,w)=>({response:[I],type:"error",request:[v[w]]}));b(M)}else{let U=La(v,s),M=U.map(w=>async()=>{var A;return{response:await g.mutateAsync({resource:(A=i==null?void 0:i.name)!=null?A:"",values:w,successNotification:!1,errorNotification:!1,dataProviderName:d,meta:L(n,u),metaData:L(n,u)}),value:w,currentBatchLength:w.length}}),I=await tr(M,({response:w,currentBatchLength:B,value:F})=>(c(A=>A+B),{response:w.data,type:"success",request:F}),(w,B)=>({response:[w],type:"error",request:U[B]}));b(I)}},...o})}).then(b=>(l(b),b)));return{inputProps:{type:"file",accept:".csv",onChange:y=>{y.target.files&&y.target.files.length>0&&C({file:y.target.files[0]})}},mutationResult:x,isLoading:D,handleChange:C}};import{useCallback as is,useState as Ia}from"react";var Qg=({defaultVisible:e=!1}={})=>{let[t,r]=Ia(e),o=is(()=>r(!0),[t]),s=is(()=>r(!1),[t]);return{visible:t,show:o,close:s}};import wa from"react";var Bt=()=>{let e=O(),{resource:t,resources:r}=Q(),o=j();return wa.useCallback(({resource:a,action:n,meta:u})=>{var T;let p=a||t;if(!p)return;let m=(T=pe(p,r,e==="legacy").find(R=>R.action===n))==null?void 0:T.route;return m?fe(m,p==null?void 0:p.meta,o,u):void 0},[r,t,o])};var Sa=({resource:e,action:t,meta:r,legacy:o})=>Bt()({resource:e,action:t,meta:r,legacy:o});import Aa,{useContext as Qa}from"react";var st=()=>{let e=Qa(We);return e!=null&&e.Link?e.Link:({to:r,...o})=>Aa.createElement("a",{href:r,...o})};import{useContext as Va}from"react";import us from"react";var Ke={useHistory:()=>!1,useLocation:()=>!1,useParams:()=>({}),Prompt:()=>null,Link:()=>null},ka=us.createContext(Ke),Ft=ka,cs=({children:e,useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n})=>us.createElement(Ft.Provider,{value:{useHistory:t!=null?t:Ke.useHistory,useLocation:r!=null?r:Ke.useLocation,useParams:o!=null?o:Ke.useParams,Prompt:s!=null?s:Ke.Prompt,Link:a!=null?a:Ke.Link,routes:n!=null?n:Ke.routes}},e);var K=()=>{let e=Va(Ft),{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}=e!=null?e:Ke;return{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}};import{useQuery as Ba}from"@tanstack/react-query";import{useContext as Fa}from"react";import ps from"react";var nt=ps.createContext({}),ds=({can:e,children:t})=>ps.createElement(nt.Provider,{value:{can:e}},t);var ur=e=>{let{icon:t,list:r,edit:o,create:s,show:a,clone:n,children:u,meta:p,options:d,...m}=e,{icon:c,...T}=p!=null?p:{},{icon:R,...D}=d!=null?d:{};return{...m,...p?{meta:T}:{},...d?{options:D}:{}}};var ls=({action:e,resource:t,params:r,queryOptions:o})=>{let{can:s}=Fa(nt),{resource:a,...n}=r!=null?r:{},u=ur(a!=null?a:{}),p=Ba(["useCan",{action:e,resource:t,params:{...n,resource:u},enabled:o==null?void 0:o.enabled}],()=>{var d;return(d=s==null?void 0:s({action:e,resource:t,params:n}))!=null?d:Promise.resolve({can:!0})},{enabled:typeof s<"u",...o,retry:!1});return typeof s>"u"?{data:{can:!0}}:p};import{useContext as Na}from"react";var hT=()=>{let{can:e}=Na(nt);return{can:e}};import{useCallback as ms,useMemo as Oa,useState as zr}from"react";import Ha from"lodash/uniqBy";import $a from"lodash/debounce";import cr from"lodash/get";var VT=e=>{var He,be,xe;let[t,r]=zr([]),[o,s]=zr([]),[a,n]=zr([]),{resource:u,sort:p,sorters:d,filters:m=[],optionLabel:c="title",optionValue:T="id",debounce:R=300,successNotification:D,errorNotification:E,defaultValueQueryOptions:i,queryOptions:g,fetchSize:f,pagination:x,hasPagination:h=!1,liveMode:l,defaultValue:C=[],onLiveEvent:y,onSearch:b,liveParams:P,meta:v,metaData:U,dataProviderName:M}=e,{resources:I}=Q(),w=G(),B=$(u,I),F=(He=B==null?void 0:B.name)!=null?He:u,A=w({resource:B,meta:L(v,U)}),Z=Array.isArray(C)?C:[C],S=ms(ie=>{n(ie.data.map(re=>({label:cr(re,c),value:cr(re,T)})))},[c,T]),N=i!=null?i:g,W=kr({resource:F,ids:Z,queryOptions:{...N,enabled:Z.length>0&&((be=i==null?void 0:i.enabled)!=null?be:!0),onSuccess:ie=>{var re;S(ie),(re=N==null?void 0:N.onSuccess)==null||re.call(N,ie)}},meta:A,metaData:A,liveMode:"off",dataProviderName:M}),ke=ms(ie=>{s(ie.data.map(re=>({label:cr(re,c),value:cr(re,T)})))},[c,T]),Y=It({resource:F,sorters:L(d,p),filters:m.concat(t),pagination:{current:x==null?void 0:x.current,pageSize:(xe=x==null?void 0:x.pageSize)!=null?xe:f,mode:x==null?void 0:x.mode},hasPagination:h,queryOptions:{...g,onSuccess:ie=>{var re;ke(ie),(re=g==null?void 0:g.onSuccess)==null||re.call(g,ie)}},successNotification:D,errorNotification:E,meta:A,metaData:A,liveMode:l,liveParams:P,onLiveEvent:y,dataProviderName:M}),me=ie=>{if(b){r(b(ie));return}if(ie)r([{field:c,operator:"contains",value:ie}]);else{r([]);return}};return{queryResult:Y,defaultValueQueryResult:W,options:Oa(()=>Ha([...o,...a],"value"),[o,a]),onSearch:$a(me,R)}};import Ga,{useState as pr,useEffect as fs}from"react";import ys from"qs";import dr from"lodash/differenceWith";import lr from"lodash/isEqual";import Wa from"warn-once";var gs=[],Ts=[];function _T({initialCurrent:e,initialPageSize:t,hasPagination:r=!0,pagination:o,initialSorter:s,permanentSorter:a=Ts,defaultSetFilterBehavior:n,initialFilter:u,permanentFilter:p=gs,filters:d,sorters:m,syncWithLocation:c,resource:T,successNotification:R,errorNotification:D,queryOptions:E,liveMode:i,onLiveEvent:g,liveParams:f,meta:x,metaData:h,dataProviderName:l}={}){var Xr,qr,eo,to,ro,oo,so,no,ao,io;let{syncWithLocation:C}=Gr(),y=c!=null?c:C,b=Wo(i),P=O(),{useLocation:v}=K(),{search:U,pathname:M}=v(),I=G(),w=j(),B=((d==null?void 0:d.mode)||"server")==="server",F=((m==null?void 0:m.mode)||"server")==="server",A=r===!1?"off":"server",Z=((Xr=o==null?void 0:o.mode)!=null?Xr:A)!=="off",S=L(o==null?void 0:o.current,e),N=L(o==null?void 0:o.pageSize,t),W=L(x,h),{parsedCurrent:ke,parsedPageSize:Y,parsedSorter:me,parsedFilters:He}=Zt(U!=null?U:"?"),be=L(d==null?void 0:d.initial,u),xe=(qr=L(d==null?void 0:d.permanent,p))!=null?qr:gs,ie=L(m==null?void 0:m.initial,s),re=(eo=L(m==null?void 0:m.permanent,a))!=null?eo:Ts,Ot=(to=L(d==null?void 0:d.defaultBehavior,n))!=null?to:"merge",ut,Je,Le,Ie;y?(ut=((ro=w==null?void 0:w.params)==null?void 0:ro.current)||ke||S||1,Je=((oo=w==null?void 0:w.params)==null?void 0:oo.pageSize)||Y||N||10,Le=((so=w==null?void 0:w.params)==null?void 0:so.sorters)||(me.length?me:ie),Ie=((no=w==null?void 0:w.params)==null?void 0:no.filters)||(He.length?He:be)):(ut=S||1,Je=N||10,Le=ie,Ie=be);let{replace:Pt}=se(),Ht=ne(),{resource:Xe}=Q(T),$t=I({resource:Xe,meta:W}),bt=Xe==null?void 0:Xe.name;Ga.useEffect(()=>{Wa(typeof bt>"u","useTable: `resource` is not defined.")},[bt]);let[he,ct]=pr(qt(re,Le!=null?Le:[])),[pt,ht]=pr(Xt(xe,Ie!=null?Ie:[])),[dt,mr]=pr(ut),[ze,ce]=pr(Je),Ve=({pagination:{current:ue,pageSize:De},sorter:Gt,filters:Wt})=>{var Kt;if(P==="new")return(Kt=Ht({type:"path",options:{keepHash:!0,keepQuery:!0},query:{...Z?{current:ue,pageSize:De}:{},sorters:Gt,filters:Wt,...Be()}}))!=null?Kt:"";{let vt=ys.parse(U==null?void 0:U.substring(1)),fr=Yt({pagination:{pageSize:De,current:ue},sorters:he!=null?he:Gt,filters:Wt,...vt});return`${M!=null?M:""}?${fr!=null?fr:""}`}};fs(()=>{U===""&&(mr(ut),ce(Je),ct(qt(re,Le!=null?Le:[])),ht(Xt(xe,Ie!=null?Ie:[])))},[U]);let Be=()=>{var ue;if(P==="new"){let{sorters:De,filters:Gt,pageSize:Wt,current:Kt,...vt}=(ue=w==null?void 0:w.params)!=null?ue:{};return vt}else{let{sorter:De,filters:Gt,pageSize:Wt,current:Kt,...vt}=ys.parse(U,{ignoreQueryPrefix:!0});return vt}};fs(()=>{if(y){let ue=Be();if(P==="new")Ht({type:"replace",options:{keepQuery:!0},query:{...Z?{pageSize:ze,current:dt}:{},sorters:dr(he,re,lr),filters:dr(pt,xe,lr)}});else{let De=Yt({...Z?{pagination:{pageSize:ze,current:dt}}:{},sorters:dr(he,re,lr),filters:dr(pt,xe,lr),...ue});return Pt==null?void 0:Pt(`${M}?${De}`,void 0,{shallow:!0})}}},[y,dt,ze,he,pt]);let qe=It({resource:bt,hasPagination:r,pagination:{current:dt,pageSize:ze,mode:o==null?void 0:o.mode},filters:B?ft(xe,pt):void 0,sorters:F?Jt(re,he):void 0,queryOptions:E,successNotification:R,errorNotification:D,meta:$t,metaData:$t,liveMode:b,liveParams:f,onLiveEvent:g,dataProviderName:l}),we=ue=>{ht(De=>ft(xe,ue,De))},_e=ue=>{ht(ft(xe,ue))},et=ue=>{ht(De=>ft(xe,ue(De)))},tt=(ue,De=Ot)=>{typeof ue=="function"?et(ue):De==="replace"?_e(ue):we(ue)},Dt=ue=>{ct(()=>Jt(re,ue))};return{tableQueryResult:qe,sorters:he,setSorters:Dt,sorter:he,setSorter:Dt,filters:pt,setFilters:tt,current:dt,setCurrent:mr,pageSize:ze,setPageSize:ce,pageCount:ze?Math.ceil(((io=(ao=qe.data)==null?void 0:ao.total)!=null?io:0)/ze):1,createLinkForSyncWithLocation:Ve}}import{useContext as Cs}from"react";import{useMutation as Ps,useQueryClient as Ka}from"@tanstack/react-query";import Rs from"react";var at=Rs.createContext({}),xs=({create:e,get:t,update:r,children:o})=>Rs.createElement(at.Provider,{value:{create:e,get:t,update:r}},o);var Ee=({logMutationOptions:e,renameMutationOptions:t}={})=>{let r=Ka(),o=Cs(at),s=H(),{resources:a}=Cs(Ze),{data:n,refetch:u,isLoading:p}=yr({v3LegacyAuthProviderCompatible:Boolean(s==null?void 0:s.isLegacy),queryOptions:{enabled:!!o}}),d=Ps(async c=>{var E,i,g,f,x;let T=$(c.resource,a),R=L((E=T==null?void 0:T.meta)==null?void 0:E.audit,(i=T==null?void 0:T.options)==null?void 0:i.audit,(f=(g=T==null?void 0:T.options)==null?void 0:g.auditLog)==null?void 0:f.permissions);if(R&&!Er(R,c.action))return;let D;return p&&(D=await u()),await((x=o.create)==null?void 0:x.call(o,{...c,author:n!=null?n:D==null?void 0:D.data}))},e),m=Ps(async c=>{var T;return await((T=o.update)==null?void 0:T.call(o,c))},{onSuccess:c=>{if(c!=null&&c.resource){let T=J(c==null?void 0:c.resource);r.invalidateQueries(T.logList())}},...t});return{log:d,rename:m}};import{useContext as za}from"react";import{useQuery as _a}from"@tanstack/react-query";var fR=({resource:e,action:t,meta:r,author:o,metaData:s,queryOptions:a})=>{let{get:n}=za(at),u=J(e,void 0,s);return _a(u.logList(r),()=>{var d;return(d=n==null?void 0:n({resource:e,action:t,author:o,meta:r,metaData:s}))!=null?d:Promise.resolve([])},{enabled:typeof n<"u",...a,retry:!1})};import{useCallback as ja}from"react";import{useQueryClient as Za}from"@tanstack/react-query";var Ue=()=>{let{resources:e}=Q(),t=Za();return ja(({resource:o,dataProviderName:s,invalidates:a,id:n})=>{if(a===!1)return;let u=J(o,k(o,s,e));a.forEach(p=>{switch(p){case"all":t.invalidateQueries(u.all);break;case"list":t.invalidateQueries(u.list());break;case"many":t.invalidateQueries(u.many());break;case"resourceAll":t.invalidateQueries(u.resourceAll);break;case"detail":t.invalidateQueries(u.detail(n||""));break;default:break}})},[])};import{useContext as Ya}from"react";import Ja from"warn-once";var kR=({meta:e={}}={})=>{let t=O(),{i18nProvider:r}=Ya(Ae),o=j(),s=V(),{resources:a,resource:n,action:u}=Q(),p=[];if(!(n!=null&&n.name))return{breadcrumbs:p};let d=m=>{var T,R,D,E,i,g,f,x;let c=typeof m=="string"?(T=$(m,a,t==="legacy"))!=null?T:{name:m}:m;if(c){let h=L((R=c==null?void 0:c.meta)==null?void 0:R.parent,c==null?void 0:c.parentName);h&&d(h);let l=pe(c,a,t==="legacy").find(b=>b.action==="list"),C=(D=l==null?void 0:l.resource)!=null&&D.list?l==null?void 0:l.route:void 0,y=C?t==="legacy"?C:fe(C,c==null?void 0:c.meta,o,e):void 0;p.push({label:(g=L((E=c.meta)==null?void 0:E.label,(i=c.options)==null?void 0:i.label))!=null?g:s(`${c.name}.${c.name}`,rt(c.name)),href:y,icon:L((f=c.meta)==null?void 0:f.icon,(x=c.options)==null?void 0:x.icon,c.icon)})}};if(d(n),u&&u!=="list"){let m=`actions.${u}`,c=s(m);typeof r<"u"&&c===m?(Ja(!0,`[useBreadcrumb]: Breadcrumb missing translate key for the "${u}" action. Please add "actions.${u}" key to your translation file.
11
- For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`),p.push({label:s(`buttons.${u}`,rt(u))})):p.push({label:s(m,rt(u))})}return{breadcrumbs:p}};import _r from"react";var Tt=(e,t,r=!1)=>{let o=[],s=Ce(e,t);for(;s;)o.push(s),s=Ce(s,t);return o.reverse(),`/${[...o,e].map(n=>{var u,p;return le((p=(u=r?n.route:void 0)!=null?u:n.identifier)!=null?p:n.name)}).join("/").replace(/^\//,"")}`};var bs=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(s=>{var d,m;let a=[],n=Ce(s,e);for(;n;)a.push(n),n=Ce(n,e);a.reverse();let u=r;a.forEach(c=>{var R,D;let T=(D=(R=t?c.route:void 0)!=null?R:c.identifier)!=null?D:c.name;u.children[T]||(u.children[T]={item:c,children:{}}),u=u.children[T]});let p=(m=(d=t?s.route:void 0)!=null?d:s.identifier)!=null?m:s.name;u.children[p]||(u.children[p]={item:s,children:{}})});let o=s=>{let a=[];return Object.keys(s.children).forEach(n=>{let u=Tt(s.children[n].item,e,t),p={...s.children[n].item,key:u,children:o(s.children[n])};a.push(p)}),a};return o(r)};var hs=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),Xa=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=V(),o=Bt(),s=O(),{resource:a,resources:n}=Q(),{pathname:u}=j(),{useLocation:p}=K(),{pathname:d}=p(),m=s==="legacy"?hs(d):u?hs(u):void 0,c=`/${(m!=null?m:"").replace(/^\//,"")}`,T=a?Tt(a,n,s==="legacy"):c!=null?c:"",R=_r.useMemo(()=>{if(!a)return[];let i=Ce(a,n),g=[Tt(a,n)];for(;i;)g.push(Tt(i,n)),i=Ce(i,n);return g},[]),D=_r.useCallback(i=>{var f,x,h,l,C,y,b,P;if(((h=(f=i==null?void 0:i.meta)==null?void 0:f.hide)!=null?h:(x=i==null?void 0:i.options)==null?void 0:x.hide)||!(i!=null&&i.list)&&i.children.length===0)return;let g=i.list?o({resource:i,action:"list",legacy:s==="legacy",meta:e}):void 0;if(!(t&&g&&g.match(/(\/|^):(.+?)(\/|$){1}/)))return{...i,route:g,icon:L((l=i.meta)==null?void 0:l.icon,(C=i.options)==null?void 0:C.icon,i.icon),label:(P=L((y=i==null?void 0:i.meta)==null?void 0:y.label,(b=i==null?void 0:i.options)==null?void 0:b.label))!=null?P:r(`${i.name}.${i.name}`,yt(i.name,"plural"))}},[s,e,r,t]),E=_r.useMemo(()=>{let i=bs(n,s==="legacy"),g=f=>f.flatMap(x=>{let h=g(x.children),l=D({...x,children:h});return l?[l]:[]});return g(i)},[n,s,D]);return{defaultOpenKeys:R,selectedKey:T,menuItems:E}};var G=()=>{let{params:e}=j();return({resource:r,meta:o}={})=>{let{meta:s}=ur(r!=null?r:{}),{filters:a,sorters:n,current:u,pageSize:p,...d}=e!=null?e:{};return{...s,...d,...o}}};var ti=()=>{let[e,t]=ei(),r=V(),{push:o}=se(),s=ne(),a=O(),{resource:n,action:u}=Q();return qa(()=>{n&&u&&t(r("pages.error.info",{action:u,resource:n==null?void 0:n.name},`You may have forgotten to add the "${u}" component to "${n==null?void 0:n.name}" resource.`))},[n,u]),Nt.createElement(Nt.Fragment,null,Nt.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&Nt.createElement("p",null,e),Nt.createElement("button",{onClick:()=>{a==="legacy"?o("/"):s({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))};import ye,{useState as Ds}from"react";var Sr=()=>{let[e,t]=Ds(""),[r,o]=Ds(""),s=V(),a=H(),{mutate:n}=Et({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy)});return ye.createElement(ye.Fragment,null,ye.createElement("h1",null,s("pages.login.title","Sign in your account")),ye.createElement("form",{onSubmit:u=>{u.preventDefault(),n({username:e,password:r})}},ye.createElement("table",null,ye.createElement("tbody",null,ye.createElement("tr",null,ye.createElement("td",null,s("pages.login.username",void 0,"username"),":"),ye.createElement("td",null,ye.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:u=>t(u.target.value)}))),ye.createElement("tr",null,ye.createElement("td",null,s("pages.login.password",void 0,"password"),":"),ye.createElement("td",null,ye.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:u=>o(u.target.value)}))))),ye.createElement("br",null),ye.createElement("input",{type:"submit",value:"login"})))};import Rt from"react";import ae,{useState as jr}from"react";var vs=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:s,wrapperProps:a,renderContent:n,formProps:u,title:p=void 0})=>{let d=O(),m=st(),{Link:c}=K(),T=d==="legacy"?c:m,[R,D]=jr(""),[E,i]=jr(""),[g,f]=jr(!1),x=V(),h=H(),{mutate:l}=Et({v3LegacyAuthProviderCompatible:Boolean(h==null?void 0:h.isLegacy)}),C=(P,v)=>P?typeof P=="string"?ae.createElement(T,{to:P},v):P:null,y=()=>e?e.map(P=>{var v;return ae.createElement("div",{key:P.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ae.createElement("button",{onClick:()=>l({providerName:P.name}),style:{display:"flex",alignItems:"center"}},P==null?void 0:P.icon,(v=P.label)!=null?v:ae.createElement("label",null,P.label)))}):null,b=ae.createElement("div",{...s},ae.createElement("h1",{style:{textAlign:"center"}},x("pages.login.title","Sign in to your account")),y(),ae.createElement("hr",null),ae.createElement("form",{onSubmit:P=>{P.preventDefault(),l({email:R,password:E,remember:g})},...u},ae.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ae.createElement("label",null,x("pages.login.fields.email","Email")),ae.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:R,onChange:P=>D(P.target.value)}),ae.createElement("label",null,x("pages.login.fields.password","Password")),ae.createElement("input",{type:"password",name:"password",required:!0,size:20,value:E,onChange:P=>i(P.target.value)}),o!=null?o:ae.createElement(ae.Fragment,null,ae.createElement("label",null,x("pages.login.buttons.rememberMe","Remember me"),ae.createElement("input",{name:"remember",type:"checkbox",size:20,checked:g,value:g.toString(),onChange:()=>{f(!g)}}))),ae.createElement("br",null),r!=null?r:C("/forgot-password",x("pages.login.buttons.forgotPassword","Forgot password?")),ae.createElement("input",{type:"submit",value:x("pages.login.signin","Sign in")}),t!=null?t:ae.createElement("span",null,x("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",C("/register",x("pages.login.register","Sign up"))))));return ae.createElement("div",{...a},n?n(b,p):b)};import de,{useState as Es}from"react";var Us=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:s,formProps:a,title:n=void 0})=>{let u=O(),p=st(),{Link:d}=K(),m=u==="legacy"?d:p,[c,T]=Es(""),[R,D]=Es(""),E=V(),i=H(),{mutate:g,isLoading:f}=xr({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),x=(C,y)=>C?typeof C=="string"?de.createElement(m,{to:C},y):C:null,h=()=>e?e.map(C=>{var y;return de.createElement("div",{key:C.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},de.createElement("button",{onClick:()=>g({providerName:C.name}),style:{display:"flex",alignItems:"center"}},C==null?void 0:C.icon,(y=C.label)!=null?y:de.createElement("label",null,C.label)))}):null,l=de.createElement("div",{...o},de.createElement("h1",{style:{textAlign:"center"}},E("pages.register.title","Sign up for your account")),h(),de.createElement("hr",null),de.createElement("form",{onSubmit:C=>{C.preventDefault(),g({email:c,password:R})},...a},de.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},de.createElement("label",null,E("pages.register.fields.email","Email")),de.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:C=>T(C.target.value)}),de.createElement("label",null,E("pages.register.fields.password","Password")),de.createElement("input",{name:"password",type:"password",required:!0,size:20,value:R,onChange:C=>D(C.target.value)}),de.createElement("input",{type:"submit",value:E("pages.register.buttons.submit","Sign up"),disabled:f}),t!=null?t:de.createElement(de.Fragment,null,de.createElement("span",null,E("pages.login.buttons.haveAccount","Have an account?")," ",x("/login",E("pages.login.signin","Sign in")))))));return de.createElement("div",{...r},s?s(l,n):l)};import Me,{useState as ri}from"react";var Ms=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:s,title:a=void 0})=>{let n=V(),u=O(),p=st(),{Link:d}=K(),m=u==="legacy"?d:p,[c,T]=ri(""),{mutate:R,isLoading:D}=Pr(),E=(g,f)=>g?typeof g=="string"?Me.createElement(m,{to:g},f):g:null,i=Me.createElement("div",{...r},Me.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),Me.createElement("hr",null),Me.createElement("form",{onSubmit:g=>{g.preventDefault(),R({email:c})},...s},Me.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Me.createElement("label",null,n("pages.forgotPassword.fields.email","Email")),Me.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:g=>T(g.target.value)}),Me.createElement("input",{type:"submit",disabled:D,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),Me.createElement("br",null),e!=null?e:Me.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",E("/login",n("pages.login.signin","Sign in"))))));return Me.createElement("div",{...t},o?o(i,a):i)};import Qe,{useState as Ls}from"react";var Is=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:s=void 0})=>{let a=V(),n=H(),{mutate:u,isLoading:p}=hr({v3LegacyAuthProviderCompatible:Boolean(n==null?void 0:n.isLegacy)}),[d,m]=Ls(""),[c,T]=Ls(""),R=Qe.createElement("div",{...t},Qe.createElement("h1",{style:{textAlign:"center"}},a("pages.updatePassword.title","Update Password")),Qe.createElement("hr",null),Qe.createElement("form",{onSubmit:D=>{D.preventDefault(),u({password:d,confirmPassword:c})},...o},Qe.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Qe.createElement("label",null,a("pages.updatePassword.fields.password","New Password")),Qe.createElement("input",{name:"password",type:"password",required:!0,size:20,value:d,onChange:D=>m(D.target.value)}),Qe.createElement("label",null,a("pages.updatePassword.fields.confirmPassword","Confirm New Password")),Qe.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:c,onChange:D=>T(D.target.value)}),Qe.createElement("input",{type:"submit",disabled:p,value:a("pages.updatePassword.buttons.submit","Update")}))));return Qe.createElement("div",{...e},r?r(R,s):R)};var oi=e=>{let{type:t}=e;return Rt.createElement(Rt.Fragment,null,(()=>{switch(t){case"register":return Rt.createElement(Us,{...e});case"forgotPassword":return Rt.createElement(Ms,{...e});case"updatePassword":return Rt.createElement(Is,{...e});default:return Rt.createElement(vs,{...e})}})())};import Re from"react";var Zr=()=>Re.createElement(Re.Fragment,null,Re.createElement("h1",null,"Welcome on board"),Re.createElement("p",null,"Your configuration is completed."),Re.createElement("p",null,"Now you can get started by adding your resources to the"," ",Re.createElement("code",null,"`resources`")," property of ",Re.createElement("code",null,"`<Refine>`")),Re.createElement("div",{style:{display:"flex",gap:8}},Re.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Documentation")),Re.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Examples")),Re.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Community"))));import _,{useState as si}from"react";var ni=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:_.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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:_.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}),_.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:_.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}),_.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:_.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}))}],ai=()=>{let e=nr("(max-width: 1010px)"),t=nr("(max-width: 650px)"),r=()=>t?"1, 280px":e?"2, 280px":"4, 208px",o=()=>t?"32px":e?"40px":"48px",s=()=>t?"16px":e?"20px":"24px";return _.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"}},_.createElement("div",{style:{height:"89px"}}),_.createElement("div",{style:{display:"flex",justifyContent:"center"}},_.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),_.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),_.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},_.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),_.createElement("h4",{style:{fontSize:s(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),_.createElement("div",{style:{height:"64px"}}),_.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},ni.map(a=>_.createElement(ii,{key:`welcome-page-${a.title}`,card:a}))),_.createElement("div",{style:{height:"64px"}}))},ii=({card:e})=>{let{title:t,description:r,icon:o,link:s}=e,[a,n]=si(!1);return _.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},_.createElement("div",{style:{display:"flex",alignItems:"center"}},_.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:s},o,_.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),_.createElement("svg",{style:{transition:"transform 0.5s ease-in-out, opacity 0.2s ease-in-out",...a&&{transform:"translateX(4px)",opacity:1}},width:"12",height:"8",fill:"none",opacity:"0.5",xmlns:"http://www.w3.org/2000/svg"},_.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"})))),_.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))};import te from"react";import{QueryClientProvider as di,QueryClient as Vs}from"@tanstack/react-query";import{ReactQueryDevtools as li}from"@tanstack/react-query-devtools";import{useEffect as ci}from"react";import{useContext as it}from"react";var ui="4.11.0",ws=()=>{let e=Dr(),t=it(at),r=it(Ge),o=it(Ft),s=it(At),{i18nProvider:a}=it(Ae),n=it(Qt),u=it(nt),{resources:p}=Q(),d=!!t.create||!!t.get||!!t.update,m=!!(r!=null&&r.publish)||!!(r!=null&&r.subscribe)||!!(r!=null&&r.unsubscribe),c=!!o.useHistory||!!o.Link||!!o.Prompt||!!o.useLocation||!!o.useParams,T=!!s,R=!!(a!=null&&a.changeLocale)||!!(a!=null&&a.getLocale)||!!(a!=null&&a.translate),D=!!n.close||!!n.open,E=!!u.can;return{providers:{auth:e,auditLog:d,live:m,router:c,data:T,i18n:R,notification:D,accessControl:E},version:ui,resourceCount:p.length}};var pi=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Ss=()=>{let e=ws();return ci(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${pi(e)}`},[]),null};var As=e=>{let t=["go","parse","back","Link"],r=Object.keys(e).filter(s=>!t.includes(s));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};import Qs from"react";var ks=e=>{let t=Qs.useRef(!1);Qs.useEffect(()=>{t.current===!1&&e&&As(e)&&(t.current=!0)},[e])};var mi=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:s,notificationProvider:a,accessControlProvider:n,auditLogProvider:u,resources:p,DashboardPage:d,ReadyPage:m,LoginPage:c,catchAll:T,children:R,liveProvider:D,i18nProvider:E,Title:i,Layout:g,Sider:f,Header:x,Footer:h,OffLayoutArea:l,onLiveEvent:C,options:y})=>{let{optionsWithDefaults:b,disableTelemetryWithDefault:P,reactQueryWithDefaults:v}=Ar({options:y}),U=ir(()=>{var B;return v.clientConfig instanceof Vs?v.clientConfig:new Vs({...v.clientConfig,defaultOptions:{...v.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(B=v.clientConfig.defaultOptions)==null?void 0:B.queries}}})},[v.clientConfig]),I=te.useMemo(()=>typeof a=="function"?a:()=>a!=null?a:{},[a])();if(ks(s),o&&!s&&(p!=null?p:[]).length===0)return m?te.createElement(m,null):te.createElement(Zr,null);let{RouterComponent:w=te.Fragment}=s?{}:o!=null?o:{};return te.createElement(di,{client:U},te.createElement(qo,{...I},te.createElement(co,{...e!=null?e:{},isProvided:Boolean(e)},te.createElement(lo,{...t!=null?t:{},isProvided:Boolean(t)},te.createElement(Oo,{...r},te.createElement($o,{liveProvider:D},te.createElement(Yo,{value:o&&!s?"legacy":"new"},te.createElement(Xo,{router:s},te.createElement(cs,{...o},te.createElement(_o,{resources:p!=null?p:[]},te.createElement(ts,{i18nProvider:E},te.createElement(ds,{...n!=null?n:{}},te.createElement(xs,{...u!=null?u:{}},te.createElement(Fr,null,te.createElement(wo,{mutationMode:b.mutationMode,warnWhenUnsavedChanges:b.warnWhenUnsavedChanges,syncWithLocation:b.syncWithLocation,Title:i,undoableTimeout:b.undoableTimeout,catchAll:T,DashboardPage:d,LoginPage:c,Layout:g,Sider:f,Footer:h,Header:x,OffLayoutArea:l,hasDashboard:!!d,liveMode:b.liveMode,onLiveEvent:C,options:b},te.createElement(os,null,te.createElement(w,null,R,!P&&te.createElement(Ss,null),te.createElement(Yr,null))))))))))))))))),v.devtoolConfig===!1?null:te.createElement(li,{initialIsOpen:!1,position:"bottom-right",...v.devtoolConfig}))};import{useEffect as fi,useState as yi}from"react";var Qo=({notification:e})=>{let t=V(),{notificationDispatch:r}=Oe(),{open:o}=Te(),[s,a]=yi(),n=()=>{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:Ut(e.seconds)},`You have ${Ut(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Ut(e.seconds)}),e.seconds>0)){s&&clearTimeout(s);let u=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);a(u)}};return fi(()=>{n()},[e]),null};import Jr,{useEffect as gi}from"react";var Ti=({children:e,Layout:t,Sider:r,Header:o,Title:s,Footer:a,OffLayoutArea:n})=>{let{Layout:u,Footer:p,Header:d,Sider:m,Title:c,OffLayoutArea:T}=Vt(),R=t!=null?t:u;return Jr.createElement(R,{Sider:r!=null?r:m,Header:o!=null?o:d,Footer:a!=null?a:p,Title:s!=null?s:c,OffLayoutArea:n!=null?n:T},e,Jr.createElement(Ri,null))},Ri=()=>{let{Prompt:e}=K(),t=V(),{warnWhen:r,setWarnWhen:o}=kt(),s=a=>(a.preventDefault(),a.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),a.returnValue);return gi(()=>(r&&window.addEventListener("beforeunload",s),window.removeEventListener("beforeunload",s)),[r]),Jr.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})};import Pe from"react";var xi=()=>{let e=ne(),[t,r]=Pe.useState(void 0);return Pe.useEffect(()=>{t&&e(t)},[t]),Pe.useCallback(s=>{t||r(s)},[t])};function Ci({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:s}){var b;let a=H(),n=O(),u=Boolean(a==null?void 0:a.isProvided),p=Boolean(a==null?void 0:a.isLegacy),d=n==="legacy",m=j(),c=ne(),T=xi(),{replace:R}=se(),{useLocation:D}=K(),E=D(),{isLoading:i,isFetching:g,isSuccess:f,data:{authenticated:x,redirectTo:h}={},refetch:l}=_t({v3LegacyAuthProviderCompatible:p});Pe.useEffect(()=>{l()},[r,o]);let C=Pe.useRef({status:i?"initial":"pending",content:s!=null?s:null});g?C.current.status="pending":g||(C.current.status="settled");let y=u?p?f:x:!0;if(C.current.status==="settled")if(y)C.current.content=Pe.createElement(Pe.Fragment,null,r!=null?r:null);else if(typeof o<"u")C.current.content=Pe.createElement(Pe.Fragment,null,o);else{let P=`${d?E==null?void 0:E.pathname:m.pathname}`.replace(/(\?.*|#.*)$/,""),v=p?typeof e=="string"?e:"/login":typeof e=="string"?e:h;if(v)if(d){let U=t?`?to=${encodeURIComponent(P)}`:"";R(`${v}${U}`)}else T({to:v,query:t?{to:(b=m.params)!=null&&b.to?m.params.to:c({to:P,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return u?Pe.createElement(Pe.Fragment,null,C.current.content):Pe.createElement(Pe.Fragment,null,r!=null?r:null)}import{useEffect as Pi}from"react";var Yr=()=>{let{useLocation:e}=K(),{checkAuth:t}=X(),r=e();return Pi(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null};import xt from"react";var bi=({resource:e,action:t,params:r,fallback:o,children:s,...a})=>{var l,C;let n=O(),{resources:u}=Q(),{useParams:p}=K(),{resource:d,id:m,action:c}=j(),{resource:T,id:R,action:D}=p(),E=d==null?void 0:d.name,i=!e||e===(n==="legacy"?T:E)?(l=r==null?void 0:r.id)!=null?l:n==="legacy"?R:m:r==null?void 0:r.id,g=e!=null?e:n==="legacy"?T:E,f,x=Ye();if(n==="legacy")g&&(f=x(g));else if(e){let y=$(e,u);y?f=y:f={name:e,route:e}}else if(typeof d=="string"){let y=$(d,u);y?f=y:f={name:d,route:d}}else f=d;let{data:h}=ls({resource:e!=null?e:f==null?void 0:f.name,action:(C=t!=null?t:n==="legacy"?D:c)!=null?C:"",params:r!=null?r:{id:i,resource:f}});return h!=null&&h.can?xt.isValidElement(s)?xt.cloneElement(s,a):xt.createElement(xt.Fragment,null,s):(h==null?void 0:h.can)===!1?xt.createElement(xt.Fragment,null,o!=null?o:null):null};import Ct,{useEffect as hi}from"react";var Bs=[`
11
+ For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`),p.push({label:s(`buttons.${u}`,rt(u))})):p.push({label:s(m,rt(u))})}return{breadcrumbs:p}};import _r from"react";var Tt=(e,t,r=!1)=>{let o=[],s=Ce(e,t);for(;s;)o.push(s),s=Ce(s,t);return o.reverse(),`/${[...o,e].map(n=>{var u,p;return le((p=(u=r?n.route:void 0)!=null?u:n.identifier)!=null?p:n.name)}).join("/").replace(/^\//,"")}`};var bs=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(s=>{var d,m;let a=[],n=Ce(s,e);for(;n;)a.push(n),n=Ce(n,e);a.reverse();let u=r;a.forEach(c=>{var R,D;let T=(D=(R=t?c.route:void 0)!=null?R:c.identifier)!=null?D:c.name;u.children[T]||(u.children[T]={item:c,children:{}}),u=u.children[T]});let p=(m=(d=t?s.route:void 0)!=null?d:s.identifier)!=null?m:s.name;u.children[p]||(u.children[p]={item:s,children:{}})});let o=s=>{let a=[];return Object.keys(s.children).forEach(n=>{let u=Tt(s.children[n].item,e,t),p={...s.children[n].item,key:u,children:o(s.children[n])};a.push(p)}),a};return o(r)};var hs=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),Xa=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=V(),o=Bt(),s=O(),{resource:a,resources:n}=Q(),{pathname:u}=j(),{useLocation:p}=K(),{pathname:d}=p(),m=s==="legacy"?hs(d):u?hs(u):void 0,c=`/${(m!=null?m:"").replace(/^\//,"")}`,T=a?Tt(a,n,s==="legacy"):c!=null?c:"",R=_r.useMemo(()=>{if(!a)return[];let i=Ce(a,n),g=[Tt(a,n)];for(;i;)g.push(Tt(i,n)),i=Ce(i,n);return g},[]),D=_r.useCallback(i=>{var f,x,h,l,C,y,b,P;if(((h=(f=i==null?void 0:i.meta)==null?void 0:f.hide)!=null?h:(x=i==null?void 0:i.options)==null?void 0:x.hide)||!(i!=null&&i.list)&&i.children.length===0)return;let g=i.list?o({resource:i,action:"list",legacy:s==="legacy",meta:e}):void 0;if(!(t&&g&&g.match(/(\/|^):(.+?)(\/|$){1}/)))return{...i,route:g,icon:L((l=i.meta)==null?void 0:l.icon,(C=i.options)==null?void 0:C.icon,i.icon),label:(P=L((y=i==null?void 0:i.meta)==null?void 0:y.label,(b=i==null?void 0:i.options)==null?void 0:b.label))!=null?P:r(`${i.name}.${i.name}`,yt(i.name,"plural"))}},[s,e,r,t]),E=_r.useMemo(()=>{let i=bs(n,s==="legacy"),g=f=>f.flatMap(x=>{let h=g(x.children),l=D({...x,children:h});return l?[l]:[]});return g(i)},[n,s,D]);return{defaultOpenKeys:R,selectedKey:T,menuItems:E}};var G=()=>{let{params:e}=j();return({resource:r,meta:o}={})=>{let{meta:s}=ur(r!=null?r:{}),{filters:a,sorters:n,current:u,pageSize:p,...d}=e!=null?e:{};return{...s,...d,...o}}};var ti=()=>{let[e,t]=ei(),r=V(),{push:o}=se(),s=ne(),a=O(),{resource:n,action:u}=Q();return qa(()=>{n&&u&&t(r("pages.error.info",{action:u,resource:n==null?void 0:n.name},`You may have forgotten to add the "${u}" component to "${n==null?void 0:n.name}" resource.`))},[n,u]),Nt.createElement(Nt.Fragment,null,Nt.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&Nt.createElement("p",null,e),Nt.createElement("button",{onClick:()=>{a==="legacy"?o("/"):s({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))};import ye,{useState as Ds}from"react";var Sr=()=>{let[e,t]=Ds(""),[r,o]=Ds(""),s=V(),a=H(),{mutate:n}=Et({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy)});return ye.createElement(ye.Fragment,null,ye.createElement("h1",null,s("pages.login.title","Sign in your account")),ye.createElement("form",{onSubmit:u=>{u.preventDefault(),n({username:e,password:r})}},ye.createElement("table",null,ye.createElement("tbody",null,ye.createElement("tr",null,ye.createElement("td",null,s("pages.login.username",void 0,"username"),":"),ye.createElement("td",null,ye.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:u=>t(u.target.value)}))),ye.createElement("tr",null,ye.createElement("td",null,s("pages.login.password",void 0,"password"),":"),ye.createElement("td",null,ye.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:u=>o(u.target.value)}))))),ye.createElement("br",null),ye.createElement("input",{type:"submit",value:"login"})))};import Rt from"react";import ae,{useState as jr}from"react";var vs=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:s,wrapperProps:a,renderContent:n,formProps:u,title:p=void 0})=>{let d=O(),m=st(),{Link:c}=K(),T=d==="legacy"?c:m,[R,D]=jr(""),[E,i]=jr(""),[g,f]=jr(!1),x=V(),h=H(),{mutate:l}=Et({v3LegacyAuthProviderCompatible:Boolean(h==null?void 0:h.isLegacy)}),C=(P,v)=>P?typeof P=="string"?ae.createElement(T,{to:P},v):P:null,y=()=>e?e.map(P=>{var v;return ae.createElement("div",{key:P.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ae.createElement("button",{onClick:()=>l({providerName:P.name}),style:{display:"flex",alignItems:"center"}},P==null?void 0:P.icon,(v=P.label)!=null?v:ae.createElement("label",null,P.label)))}):null,b=ae.createElement("div",{...s},ae.createElement("h1",{style:{textAlign:"center"}},x("pages.login.title","Sign in to your account")),y(),ae.createElement("hr",null),ae.createElement("form",{onSubmit:P=>{P.preventDefault(),l({email:R,password:E,remember:g})},...u},ae.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ae.createElement("label",null,x("pages.login.fields.email","Email")),ae.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:R,onChange:P=>D(P.target.value)}),ae.createElement("label",null,x("pages.login.fields.password","Password")),ae.createElement("input",{type:"password",name:"password",required:!0,size:20,value:E,onChange:P=>i(P.target.value)}),o!=null?o:ae.createElement(ae.Fragment,null,ae.createElement("label",null,x("pages.login.buttons.rememberMe","Remember me"),ae.createElement("input",{name:"remember",type:"checkbox",size:20,checked:g,value:g.toString(),onChange:()=>{f(!g)}}))),ae.createElement("br",null),r!=null?r:C("/forgot-password",x("pages.login.buttons.forgotPassword","Forgot password?")),ae.createElement("input",{type:"submit",value:x("pages.login.signin","Sign in")}),t!=null?t:ae.createElement("span",null,x("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",C("/register",x("pages.login.register","Sign up"))))));return ae.createElement("div",{...a},n?n(b,p):b)};import de,{useState as Es}from"react";var Us=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:s,formProps:a,title:n=void 0})=>{let u=O(),p=st(),{Link:d}=K(),m=u==="legacy"?d:p,[c,T]=Es(""),[R,D]=Es(""),E=V(),i=H(),{mutate:g,isLoading:f}=xr({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),x=(C,y)=>C?typeof C=="string"?de.createElement(m,{to:C},y):C:null,h=()=>e?e.map(C=>{var y;return de.createElement("div",{key:C.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},de.createElement("button",{onClick:()=>g({providerName:C.name}),style:{display:"flex",alignItems:"center"}},C==null?void 0:C.icon,(y=C.label)!=null?y:de.createElement("label",null,C.label)))}):null,l=de.createElement("div",{...o},de.createElement("h1",{style:{textAlign:"center"}},E("pages.register.title","Sign up for your account")),h(),de.createElement("hr",null),de.createElement("form",{onSubmit:C=>{C.preventDefault(),g({email:c,password:R})},...a},de.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},de.createElement("label",null,E("pages.register.fields.email","Email")),de.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:C=>T(C.target.value)}),de.createElement("label",null,E("pages.register.fields.password","Password")),de.createElement("input",{name:"password",type:"password",required:!0,size:20,value:R,onChange:C=>D(C.target.value)}),de.createElement("input",{type:"submit",value:E("pages.register.buttons.submit","Sign up"),disabled:f}),t!=null?t:de.createElement(de.Fragment,null,de.createElement("span",null,E("pages.login.buttons.haveAccount","Have an account?")," ",x("/login",E("pages.login.signin","Sign in")))))));return de.createElement("div",{...r},s?s(l,n):l)};import Me,{useState as ri}from"react";var Ms=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:s,title:a=void 0})=>{let n=V(),u=O(),p=st(),{Link:d}=K(),m=u==="legacy"?d:p,[c,T]=ri(""),{mutate:R,isLoading:D}=Pr(),E=(g,f)=>g?typeof g=="string"?Me.createElement(m,{to:g},f):g:null,i=Me.createElement("div",{...r},Me.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),Me.createElement("hr",null),Me.createElement("form",{onSubmit:g=>{g.preventDefault(),R({email:c})},...s},Me.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Me.createElement("label",null,n("pages.forgotPassword.fields.email","Email")),Me.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:g=>T(g.target.value)}),Me.createElement("input",{type:"submit",disabled:D,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),Me.createElement("br",null),e!=null?e:Me.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",E("/login",n("pages.login.signin","Sign in"))))));return Me.createElement("div",{...t},o?o(i,a):i)};import Qe,{useState as Ls}from"react";var Is=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:s=void 0})=>{let a=V(),n=H(),{mutate:u,isLoading:p}=hr({v3LegacyAuthProviderCompatible:Boolean(n==null?void 0:n.isLegacy)}),[d,m]=Ls(""),[c,T]=Ls(""),R=Qe.createElement("div",{...t},Qe.createElement("h1",{style:{textAlign:"center"}},a("pages.updatePassword.title","Update Password")),Qe.createElement("hr",null),Qe.createElement("form",{onSubmit:D=>{D.preventDefault(),u({password:d,confirmPassword:c})},...o},Qe.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Qe.createElement("label",null,a("pages.updatePassword.fields.password","New Password")),Qe.createElement("input",{name:"password",type:"password",required:!0,size:20,value:d,onChange:D=>m(D.target.value)}),Qe.createElement("label",null,a("pages.updatePassword.fields.confirmPassword","Confirm New Password")),Qe.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:c,onChange:D=>T(D.target.value)}),Qe.createElement("input",{type:"submit",disabled:p,value:a("pages.updatePassword.buttons.submit","Update")}))));return Qe.createElement("div",{...e},r?r(R,s):R)};var oi=e=>{let{type:t}=e;return Rt.createElement(Rt.Fragment,null,(()=>{switch(t){case"register":return Rt.createElement(Us,{...e});case"forgotPassword":return Rt.createElement(Ms,{...e});case"updatePassword":return Rt.createElement(Is,{...e});default:return Rt.createElement(vs,{...e})}})())};import Re from"react";var Zr=()=>Re.createElement(Re.Fragment,null,Re.createElement("h1",null,"Welcome on board"),Re.createElement("p",null,"Your configuration is completed."),Re.createElement("p",null,"Now you can get started by adding your resources to the"," ",Re.createElement("code",null,"`resources`")," property of ",Re.createElement("code",null,"`<Refine>`")),Re.createElement("div",{style:{display:"flex",gap:8}},Re.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Documentation")),Re.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Examples")),Re.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Re.createElement("button",null,"Community"))));import _,{useState as si}from"react";var ni=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:_.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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:_.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}),_.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:_.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}),_.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:_.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_.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"}))}],ai=()=>{let e=nr("(max-width: 1010px)"),t=nr("(max-width: 650px)"),r=()=>t?"1, 280px":e?"2, 280px":"4, 208px",o=()=>t?"32px":e?"40px":"48px",s=()=>t?"16px":e?"20px":"24px";return _.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"}},_.createElement("div",{style:{height:"89px"}}),_.createElement("div",{style:{display:"flex",justifyContent:"center"}},_.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),_.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),_.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},_.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),_.createElement("h4",{style:{fontSize:s(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),_.createElement("div",{style:{height:"64px"}}),_.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},ni.map(a=>_.createElement(ii,{key:`welcome-page-${a.title}`,card:a}))),_.createElement("div",{style:{height:"64px"}}))},ii=({card:e})=>{let{title:t,description:r,icon:o,link:s}=e,[a,n]=si(!1);return _.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},_.createElement("div",{style:{display:"flex",alignItems:"center"}},_.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:s},o,_.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),_.createElement("svg",{style:{transition:"transform 0.5s ease-in-out, opacity 0.2s ease-in-out",...a&&{transform:"translateX(4px)",opacity:1}},width:"12",height:"8",fill:"none",opacity:"0.5",xmlns:"http://www.w3.org/2000/svg"},_.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"})))),_.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))};import te from"react";import{QueryClientProvider as di,QueryClient as Vs}from"@tanstack/react-query";import{ReactQueryDevtools as li}from"@tanstack/react-query-devtools";import{useEffect as ci}from"react";import{useContext as it}from"react";var ui="4.12.0",ws=()=>{let e=Dr(),t=it(at),r=it(Ge),o=it(Ft),s=it(At),{i18nProvider:a}=it(Ae),n=it(Qt),u=it(nt),{resources:p}=Q(),d=!!t.create||!!t.get||!!t.update,m=!!(r!=null&&r.publish)||!!(r!=null&&r.subscribe)||!!(r!=null&&r.unsubscribe),c=!!o.useHistory||!!o.Link||!!o.Prompt||!!o.useLocation||!!o.useParams,T=!!s,R=!!(a!=null&&a.changeLocale)||!!(a!=null&&a.getLocale)||!!(a!=null&&a.translate),D=!!n.close||!!n.open,E=!!u.can;return{providers:{auth:e,auditLog:d,live:m,router:c,data:T,i18n:R,notification:D,accessControl:E},version:ui,resourceCount:p.length}};var pi=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Ss=()=>{let e=ws();return ci(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${pi(e)}`},[]),null};var As=e=>{let t=["go","parse","back","Link"],r=Object.keys(e).filter(s=>!t.includes(s));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};import Qs from"react";var ks=e=>{let t=Qs.useRef(!1);Qs.useEffect(()=>{t.current===!1&&e&&As(e)&&(t.current=!0)},[e])};var mi=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:s,notificationProvider:a,accessControlProvider:n,auditLogProvider:u,resources:p,DashboardPage:d,ReadyPage:m,LoginPage:c,catchAll:T,children:R,liveProvider:D,i18nProvider:E,Title:i,Layout:g,Sider:f,Header:x,Footer:h,OffLayoutArea:l,onLiveEvent:C,options:y})=>{let{optionsWithDefaults:b,disableTelemetryWithDefault:P,reactQueryWithDefaults:v}=Ar({options:y}),U=ir(()=>{var B;return v.clientConfig instanceof Vs?v.clientConfig:new Vs({...v.clientConfig,defaultOptions:{...v.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(B=v.clientConfig.defaultOptions)==null?void 0:B.queries}}})},[v.clientConfig]),I=te.useMemo(()=>typeof a=="function"?a:()=>a!=null?a:{},[a])();if(ks(s),o&&!s&&(p!=null?p:[]).length===0)return m?te.createElement(m,null):te.createElement(Zr,null);let{RouterComponent:w=te.Fragment}=s?{}:o!=null?o:{};return te.createElement(di,{client:U},te.createElement(qo,{...I},te.createElement(co,{...e!=null?e:{},isProvided:Boolean(e)},te.createElement(lo,{...t!=null?t:{},isProvided:Boolean(t)},te.createElement(Oo,{...r},te.createElement($o,{liveProvider:D},te.createElement(Yo,{value:o&&!s?"legacy":"new"},te.createElement(Xo,{router:s},te.createElement(cs,{...o},te.createElement(_o,{resources:p!=null?p:[]},te.createElement(ts,{i18nProvider:E},te.createElement(ds,{...n!=null?n:{}},te.createElement(xs,{...u!=null?u:{}},te.createElement(Fr,null,te.createElement(wo,{mutationMode:b.mutationMode,warnWhenUnsavedChanges:b.warnWhenUnsavedChanges,syncWithLocation:b.syncWithLocation,Title:i,undoableTimeout:b.undoableTimeout,catchAll:T,DashboardPage:d,LoginPage:c,Layout:g,Sider:f,Footer:h,Header:x,OffLayoutArea:l,hasDashboard:!!d,liveMode:b.liveMode,onLiveEvent:C,options:b},te.createElement(os,null,te.createElement(w,null,R,!P&&te.createElement(Ss,null),te.createElement(Yr,null))))))))))))))))),v.devtoolConfig===!1?null:te.createElement(li,{initialIsOpen:!1,position:"bottom-right",...v.devtoolConfig}))};import{useEffect as fi,useState as yi}from"react";var Qo=({notification:e})=>{let t=V(),{notificationDispatch:r}=Oe(),{open:o}=Te(),[s,a]=yi(),n=()=>{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:Ut(e.seconds)},`You have ${Ut(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Ut(e.seconds)}),e.seconds>0)){s&&clearTimeout(s);let u=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);a(u)}};return fi(()=>{n()},[e]),null};import Jr,{useEffect as gi}from"react";var Ti=({children:e,Layout:t,Sider:r,Header:o,Title:s,Footer:a,OffLayoutArea:n})=>{let{Layout:u,Footer:p,Header:d,Sider:m,Title:c,OffLayoutArea:T}=Vt(),R=t!=null?t:u;return Jr.createElement(R,{Sider:r!=null?r:m,Header:o!=null?o:d,Footer:a!=null?a:p,Title:s!=null?s:c,OffLayoutArea:n!=null?n:T},e,Jr.createElement(Ri,null))},Ri=()=>{let{Prompt:e}=K(),t=V(),{warnWhen:r,setWarnWhen:o}=kt(),s=a=>(a.preventDefault(),a.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),a.returnValue);return gi(()=>(r&&window.addEventListener("beforeunload",s),window.removeEventListener("beforeunload",s)),[r]),Jr.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})};import Pe from"react";var xi=()=>{let e=ne(),[t,r]=Pe.useState(void 0);return Pe.useEffect(()=>{t&&e(t)},[t]),Pe.useCallback(s=>{t||r(s)},[t])};function Ci({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:s}){var b;let a=H(),n=O(),u=Boolean(a==null?void 0:a.isProvided),p=Boolean(a==null?void 0:a.isLegacy),d=n==="legacy",m=j(),c=ne(),T=xi(),{replace:R}=se(),{useLocation:D}=K(),E=D(),{isLoading:i,isFetching:g,isSuccess:f,data:{authenticated:x,redirectTo:h}={},refetch:l}=_t({v3LegacyAuthProviderCompatible:p});Pe.useEffect(()=>{l()},[r,o]);let C=Pe.useRef({status:i?"initial":"pending",content:s!=null?s:null});g?C.current.status="pending":g||(C.current.status="settled");let y=u?p?f:x:!0;if(C.current.status==="settled")if(y)C.current.content=Pe.createElement(Pe.Fragment,null,r!=null?r:null);else if(typeof o<"u")C.current.content=Pe.createElement(Pe.Fragment,null,o);else{let P=`${d?E==null?void 0:E.pathname:m.pathname}`.replace(/(\?.*|#.*)$/,""),v=p?typeof e=="string"?e:"/login":typeof e=="string"?e:h;if(v)if(d){let U=t?`?to=${encodeURIComponent(P)}`:"";R(`${v}${U}`)}else T({to:v,query:t?{to:(b=m.params)!=null&&b.to?m.params.to:c({to:P,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return u?Pe.createElement(Pe.Fragment,null,C.current.content):Pe.createElement(Pe.Fragment,null,r!=null?r:null)}import{useEffect as Pi}from"react";var Yr=()=>{let{useLocation:e}=K(),{checkAuth:t}=X(),r=e();return Pi(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null};import xt from"react";var bi=({resource:e,action:t,params:r,fallback:o,children:s,...a})=>{var l,C;let n=O(),{resources:u}=Q(),{useParams:p}=K(),{resource:d,id:m,action:c}=j(),{resource:T,id:R,action:D}=p(),E=d==null?void 0:d.name,i=!e||e===(n==="legacy"?T:E)?(l=r==null?void 0:r.id)!=null?l:n==="legacy"?R:m:r==null?void 0:r.id,g=e!=null?e:n==="legacy"?T:E,f,x=Ye();if(n==="legacy")g&&(f=x(g));else if(e){let y=$(e,u);y?f=y:f={name:e,route:e}}else if(typeof d=="string"){let y=$(d,u);y?f=y:f={name:d,route:d}}else f=d;let{data:h}=ls({resource:e!=null?e:f==null?void 0:f.name,action:(C=t!=null?t:n==="legacy"?D:c)!=null?C:"",params:r!=null?r:{id:i,resource:f}});return h!=null&&h.can?xt.isValidElement(s)?xt.cloneElement(s,a):xt.createElement(xt.Fragment,null,s):(h==null?void 0:h.can)===!1?xt.createElement(xt.Fragment,null,o!=null?o:null):null};import Ct,{useEffect as hi}from"react";var Bs=[`
12
12
  .banner {
13
13
  display: flex;
14
14
  @media (max-width: 1000px) {