@refinedev/antd 5.21.0 → 5.22.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,42 @@
1
1
  # @pankod/refine-antd
2
2
 
3
+ ## 5.22.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#4430](https://github.com/refinedev/refine/pull/4430) [`cf07d59587f`](https://github.com/refinedev/refine/commit/cf07d59587fae2adce97a79b40fdb60b9d9a9527) Thanks [@aliemir](https://github.com/aliemir)! - Updated the `useForm`, `useModalForm`, `useDrawerForm` and `useStepsForm` to accept `queryMeta` and `mutationMeta` properties of the `useForm` hook of `@refinedev/core`. These properties are used to pass specific meta values to the query or mutation. This is useful when you have overlapping values in your data provider's `getOne` and `update` methods. For example, you may want to change the `method` of the mutation to `PATCH` but if you pass it in the `meta` property, you'll end up changing the method of the `getOne` request as well.
8
+
9
+ `queryMeta` and `mutationMeta` has precedence over `meta`. This means that if you have the same property in `queryMeta` and `meta`, the value in `queryMeta` will be used.
10
+
11
+ **Usage**
12
+
13
+ ```tsx
14
+ import { useForm } from "@refinedev/core";
15
+
16
+ export const MyEditPage = () => {
17
+ const form = useForm({
18
+ // this is passed both to the mutation and the query requests
19
+ meta: {
20
+ myValue: "myValue",
21
+ },
22
+ // this is only passed to the query request
23
+ queryMeta: {
24
+ propertyOnlyWorksForQuery: "propertyOnlyWorksForQuery",
25
+ },
26
+ // this is only passed to the mutation request
27
+ mutationMeta: {
28
+ propertyOnlyWorksForMutation: "propertyOnlyWorksForMutation",
29
+ },
30
+ });
31
+ };
32
+ ```
33
+
34
+ ### Patch Changes
35
+
36
+ - [#4429](https://github.com/refinedev/refine/pull/4429) [`63daabcb703`](https://github.com/refinedev/refine/commit/63daabcb7037860bc36dff8cc417e9426e9ec027) Thanks [@aliemir](https://github.com/aliemir)! - Fixed the issue of `formLoading` property in return values of `useStepsForm` hook which was not being toggled correctly when the form was submitted or the form data was being fetched.
37
+
38
+ - [#4431](https://github.com/refinedev/refine/pull/4431) [`c29a3618cf6`](https://github.com/refinedev/refine/commit/c29a3618cf6b577c36e90ec514f3a691c87aad8f) Thanks [@aliemir](https://github.com/aliemir)! - Updated the TSDoc comments to fix the broken links in the documentation.
39
+
3
40
  ## 5.21.0
4
41
 
5
42
  ### Minor Changes
@@ -8,7 +8,7 @@ See https://refine.dev/docs/api-reference/core/hooks/useForm/#resource`);let re=
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:rn({resource:E==null?void 0:E.name,id:C!=null?C:"",queryOptions:{enabled:C!==void 0,...p},successNotification:r,errorNotification:o,meta:L,metaData:L,liveMode:n,onLiveEvent:u,dataProviderName:m}),showId:C,setShowId:S}},Uo=v("react"),oc=v("papaparse"),ac=N(v("lodash/chunk")),nc=({resourceName:e,resource:t,mapData:r=f=>f,paparseOptions:o,batchSize:a=Number.MAX_SAFE_INTEGER,onFinish:i,meta:n,metaData:u,onProgress:m,dataProviderName:p}={})=>{let[f,c]=(0,Uo.useState)(0),[T,g]=(0,Uo.useState)(0),[h,d]=(0,Uo.useState)(!1),{resource:l}=fe(t!=null?t:e),s=rs(),b=on(),y;a===1?y=b:y=s;let C=()=>{g(0),c(0),d(!1)},S=E=>{let x={succeeded:E.filter(L=>L.type==="success"),errored:E.filter(L=>L.type==="error")};i==null||i(x),d(!1)};(0,Uo.useEffect)(()=>{m==null||m({totalAmount:T,processedAmount:f})},[T,f]);let P=({file:E})=>(C(),new Promise(x=>{d(!0),(0,oc.parse)(E,{complete:async({data:L})=>{let F=Hi(L,r);if(g(F.length),a===1){let D=F.map(B=>async()=>{var M;return{response:await b.mutateAsync({resource:(M=l==null?void 0:l.name)!=null?M:"",values:B,successNotification:!1,errorNotification:!1,dataProviderName:p,meta:q(n,u),metaData:q(n,u)}),value:B}}),w=await ei(D,({response:B,value:M})=>(c(U=>U+1),{response:[B.data],type:"success",request:[M]}),(B,M)=>({response:[B],type:"error",request:[F[M]]}));x(w)}else{let D=(0,ac.default)(F,a),w=D.map(M=>async()=>{var U;return{response:await s.mutateAsync({resource:(U=l==null?void 0:l.name)!=null?U:"",values:M,successNotification:!1,errorNotification:!1,dataProviderName:p,meta:q(n,u),metaData:q(n,u)}),value:M,currentBatchLength:M.length}}),B=await ei(w,({response:M,currentBatchLength:U,value:H})=>(c($=>$+U),{response:M.data,type:"success",request:H}),(M,U)=>({response:[M],type:"error",request:D[U]}));x(B)}},...o})}).then(x=>(S(x),x)));return{inputProps:{type:"file",accept:".csv",onChange:E=>{E.target.files&&E.target.files.length>0&&P({file:E.target.files[0]})}},mutationResult:y,isLoading:h,handleChange:P}},Va=v("react"),ic=({defaultVisible:e=!1}={})=>{let[t,r]=(0,Va.useState)(e),o=(0,Va.useCallback)(()=>r(!0),[t]),a=(0,Va.useCallback)(()=>r(!1),[t]);return{visible:t,show:o,close:a}},sc=N(v("react")),un=()=>{let e=Le(),{resource:t,resources:r}=fe(),o=_e();return sc.default.useCallback(({resource:a,action:i,meta:n})=>{var u;let m=a||t;if(!m)return;let p=(u=nt(m,r,e==="legacy").find(f=>f.action===i))==null?void 0:u.route;return p?mt(p,m==null?void 0:m.meta,o,n):void 0},[r,t,o])},lc=({resource:e,action:t,meta:r,legacy:o})=>un()({resource:e,action:t,meta:r,legacy:o}),Pi=N(v("react")),Go=()=>{let e=(0,Pi.useContext)(bo);return e!=null&&e.Link?e.Link:({to:t,...r})=>Pi.default.createElement("a",{href:t,...r})},uc=v("react"),bs=N(v("react")),Zt={useHistory:()=>!1,useLocation:()=>!1,useParams:()=>({}),Prompt:()=>null,Link:()=>null},dc=bs.default.createContext(Zt),dn=dc,cc=({children:e,useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n})=>bs.default.createElement(dn.Provider,{value:{useHistory:t!=null?t:Zt.useHistory,useLocation:r!=null?r:Zt.useLocation,useParams:o!=null?o:Zt.useParams,Prompt:a!=null?a:Zt.Prompt,Link:i!=null?i:Zt.Link,routes:n!=null?n:Zt.routes}},e),Ie=()=>{let e=(0,uc.useContext)(dn),{useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n}=e!=null?e:Zt;return{useHistory:t,useLocation:r,useParams:o,Prompt:a,Link:i,routes:n}},pc=v("@tanstack/react-query"),mc=v("react"),Ts=N(v("react")),_o=Ts.default.createContext({}),fc=({can:e,children:t})=>Ts.default.createElement(_o.Provider,{value:{can:e}},t),xs=e=>{let{icon:t,list:r,edit:o,create:a,show:i,clone:n,children:u,meta:m,options:p,...f}=e,{icon:c,...T}=m!=null?m:{},{icon:g,...h}=p!=null?p:{};return{...f,...m?{meta:T}:{},...p?{options:h}:{}}},Cs=({action:e,resource:t,params:r,queryOptions:o})=>{let{can:a}=(0,mc.useContext)(_o),{resource:i,...n}=r!=null?r:{},u=xs(i!=null?i:{}),m=(0,pc.useQuery)(["useCan",{action:e,resource:t,params:{...n,resource:u},enabled:o==null?void 0:o.enabled}],()=>{var p;return(p=a==null?void 0:a({action:e,resource:t,params:n}))!=null?p:Promise.resolve({can:!0})},{enabled:typeof a<"u",...o,retry:!1});return typeof a>"u"?{data:{can:!0}}:m},yc=v("react"),gc=()=>{let{can:e}=(0,yc.useContext)(_o);return{can:e}},Rr=v("react"),vc=N(v("lodash/uniqBy")),hc=N(v("lodash/debounce")),Oo=N(v("lodash/get")),bc=e=>{var t,r,o;let[a,i]=(0,Rr.useState)([]),[n,u]=(0,Rr.useState)([]),[m,p]=(0,Rr.useState)([]),{resource:f,sort:c,sorters:T,filters:g=[],optionLabel:h="title",optionValue:d="id",debounce:l=300,successNotification:s,errorNotification:b,defaultValueQueryOptions:y,queryOptions:C,fetchSize:S,pagination:P,hasPagination:E=!1,liveMode:x,defaultValue:L=[],onLiveEvent:F,onSearch:D,liveParams:w,meta:B,metaData:M,dataProviderName:U}=e,{resources:H}=fe(),$=$e(),R=Ee(f,H),A=(t=R==null?void 0:R.name)!=null?t:f,V=$({resource:R,meta:q(B,M)}),O=Array.isArray(L)?L:[L],I=(0,Rr.useCallback)(K=>{p(K.data.map(_=>({label:(0,Oo.default)(_,h),value:(0,Oo.default)(_,d)})))},[h,d]),z=y!=null?y:C,Q=Xi({resource:A,ids:O,queryOptions:{...z,enabled:O.length>0&&((r=z==null?void 0:z.enabled)!=null?r:!0),onSuccess:K=>{var _;I(K),(_=z==null?void 0:z.onSuccess)==null||_.call(z,K)}},meta:V,metaData:V,liveMode:"off",dataProviderName:U}),j=(0,Rr.useCallback)(K=>{u(K.data.map(_=>({label:(0,Oo.default)(_,h),value:(0,Oo.default)(_,d)})))},[h,d]),X=tn({resource:A,sorters:q(T,c),filters:g.concat(a),pagination:{current:P==null?void 0:P.current,pageSize:(o=P==null?void 0:P.pageSize)!=null?o:S,mode:P==null?void 0:P.mode},hasPagination:E,queryOptions:{...C,onSuccess:K=>{var _;j(K),(_=C==null?void 0:C.onSuccess)==null||_.call(C,K)}},successNotification:s,errorNotification:b,meta:V,metaData:V,liveMode:x,liveParams:w,onLiveEvent:F,dataProviderName:U}),G=K=>{if(D){i(D(K));return}if(K)i([{field:h,operator:"contains",value:K}]);else{i([]);return}};return{queryResult:X,defaultValueQueryResult:Q,options:(0,Rr.useMemo)(()=>(0,vc.default)([...n,...m],"value"),[n,m]),onSearch:(0,hc.default)(G,l)}},vr=N(v("react")),Ei=N(v("qs")),Vo=N(v("lodash/differenceWith")),Ho=N(v("lodash/isEqual")),Tc=N(v("warn-once")),Si=[],Li=[];function xc({initialCurrent:e,initialPageSize:t,hasPagination:r=!0,pagination:o,initialSorter:a,permanentSorter:i=Li,defaultSetFilterBehavior:n,initialFilter:u,permanentFilter:m=Si,filters:p,sorters:f,syncWithLocation:c,resource:T,successNotification:g,errorNotification:h,queryOptions:d,liveMode:l,onLiveEvent:s,liveParams:b,meta:y,metaData:C,dataProviderName:S}={}){var P,E,x,L,F,D,w,B,M,U;let{syncWithLocation:H}=gs(),$=c!=null?c:H,R=ns(l),A=Le(),{useLocation:V}=Ie(),{search:O,pathname:I}=V(),z=$e(),Q=_e(),j=((p==null?void 0:p.mode)||"server")==="server",X=((f==null?void 0:f.mode)||"server")==="server",G=r===!1?"off":"server",K=((P=o==null?void 0:o.mode)!=null?P:G)!=="off",_=q(o==null?void 0:o.current,e),ae=q(o==null?void 0:o.pageSize,t),te=q(y,C),{parsedCurrent:re,parsedPageSize:ge,parsedSorter:se,parsedFilters:le}=Xa(O!=null?O:"?"),ve=q(p==null?void 0:p.initial,u),me=(E=q(p==null?void 0:p.permanent,m))!=null?E:Si,Dt=q(f==null?void 0:f.initial,a),rt=(x=q(f==null?void 0:f.permanent,i))!=null?x:Li,Da=(L=q(p==null?void 0:p.defaultBehavior,n))!=null?L:"merge",Br,mr,Bt,Te;$?(Br=((F=Q==null?void 0:Q.params)==null?void 0:F.current)||re||_||1,mr=((D=Q==null?void 0:Q.params)==null?void 0:D.pageSize)||ge||ae||10,Bt=((w=Q==null?void 0:Q.params)==null?void 0:w.sorters)||(se.length?se:Dt),Te=((B=Q==null?void 0:Q.params)==null?void 0:B.filters)||(le.length?le:ve)):(Br=_||1,mr=ae||10,Bt=Dt,Te=ve);let{replace:Rt}=vt(),Mt=gt(),{resource:_t}=fe(T),Et=z({resource:_t,meta:te}),At=_t==null?void 0:_t.name;vr.default.useEffect(()=>{(0,Tc.default)(typeof At>"u","useTable: `resource` is not defined.")},[At]);let[Ke,Ut]=(0,vr.useState)(Ka(rt,Bt!=null?Bt:[])),[fr,Mo]=(0,vr.useState)(ja(me,Te!=null?Te:[])),[mo,Nn]=(0,vr.useState)(Br),[yr,Un]=(0,vr.useState)(mr),ou=({pagination:{current:Fe,pageSize:pt},sorter:Ao,filters:qo})=>{var No;if(A==="new")return(No=Mt({type:"path",options:{keepHash:!0,keepQuery:!0},query:{...K?{current:Fe,pageSize:pt}:{},sorters:Ao,filters:qo,...On()}}))!=null?No:"";{let fo=Ei.default.parse(O==null?void 0:O.substring(1)),$n=za({pagination:{pageSize:pt,current:Fe},sorters:Ke!=null?Ke:Ao,filters:qo,...fo});return`${I!=null?I:""}?${$n!=null?$n:""}`}};(0,vr.useEffect)(()=>{O===""&&(Nn(Br),Un(mr),Ut(Ka(rt,Bt!=null?Bt:[])),Mo(ja(me,Te!=null?Te:[])))},[O]);let On=()=>{var Fe;if(A==="new"){let{sorters:pt,filters:Ao,pageSize:qo,current:No,...fo}=(Fe=Q==null?void 0:Q.params)!=null?Fe:{};return fo}else{let{sorter:pt,filters:Ao,pageSize:qo,current:No,...fo}=Ei.default.parse(O,{ignoreQueryPrefix:!0});return fo}};(0,vr.useEffect)(()=>{if($){let Fe=On();if(A==="new")Mt({type:"replace",options:{keepQuery:!0},query:{...K?{pageSize:yr,current:mo}:{},sorters:(0,Vo.default)(Ke,rt,Ho.default),filters:(0,Vo.default)(fr,me,Ho.default)}});else{let pt=za({...K?{pagination:{pageSize:yr,current:mo}}:{},sorters:(0,Vo.default)(Ke,rt,Ho.default),filters:(0,Vo.default)(fr,me,Ho.default),...Fe});return Rt==null?void 0:Rt(`${I}?${pt}`,void 0,{shallow:!0})}}},[$,mo,yr,Ke,fr]);let Vn=tn({resource:At,hasPagination:r,pagination:{current:mo,pageSize:yr,mode:o==null?void 0:o.mode},filters:j?yo(me,fr):void 0,sorters:X?Wa(rt,Ke):void 0,queryOptions:d,successNotification:g,errorNotification:h,meta:Et,metaData:Et,liveMode:R,liveParams:b,onLiveEvent:s,dataProviderName:S}),au=Fe=>{Mo(pt=>yo(me,Fe,pt))},nu=Fe=>{Mo(yo(me,Fe))},iu=Fe=>{Mo(pt=>yo(me,Fe(pt)))},su=(Fe,pt=Da)=>{typeof Fe=="function"?iu(Fe):pt==="replace"?nu(Fe):au(Fe)},Hn=Fe=>{Ut(()=>Wa(rt,Fe))};return{tableQueryResult:Vn,sorters:Ke,setSorters:Hn,sorter:Ke,setSorter:Hn,filters:fr,setFilters:su,current:mo,setCurrent:Nn,pageSize:yr,setPageSize:Un,pageCount:yr?Math.ceil(((U=(M=Vn.data)==null?void 0:M.total)!=null?U:0)/yr):1,createLinkForSyncWithLocation:ou}}var wi=v("react"),Ha=v("@tanstack/react-query"),Ps=N(v("react")),Zo=Ps.default.createContext({}),Cc=({create:e,get:t,update:r,children:o})=>Ps.default.createElement(Zo.Provider,{value:{create:e,get:t,update:r}},o),Cr=({logMutationOptions:e,renameMutationOptions:t}={})=>{let r=(0,Ha.useQueryClient)(),o=(0,wi.useContext)(Zo),a=qe(),{resources:i}=(0,wi.useContext)(ho),{data:n,refetch:u,isLoading:m}=qi({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy),queryOptions:{enabled:!!o}}),p=(0,Ha.useMutation)(async c=>{var T,g,h,d,l;let s=Ee(c.resource,i),b=q((T=s==null?void 0:s.meta)==null?void 0:T.audit,(g=s==null?void 0:s.options)==null?void 0:g.audit,(d=(h=s==null?void 0:s.options)==null?void 0:h.auditLog)==null?void 0:d.permissions);if(b&&!Hu(b,c.action))return;let y;return m&&(y=await u()),await((l=o.create)==null?void 0:l.call(o,{...c,author:n!=null?n:y==null?void 0:y.data}))},e),f=(0,Ha.useMutation)(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=yt(c==null?void 0:c.resource);r.invalidateQueries(T.logList())}},...t});return{log:p,rename:f}},Pc=v("react"),Ec=v("@tanstack/react-query"),Sc=({resource:e,action:t,meta:r,author:o,metaData:a,queryOptions:i})=>{let{get:n}=(0,Pc.useContext)(Zo),u=yt(e,void 0,a);return(0,Ec.useQuery)(u.logList(r),()=>{var m;return(m=n==null?void 0:n({resource:e,action:t,author:o,meta:r,metaData:a}))!=null?m:Promise.resolve([])},{enabled:typeof n<"u",...i,retry:!1})},Lc=v("react"),wc=v("@tanstack/react-query"),Pr=()=>{let{resources:e}=fe(),t=(0,wc.useQueryClient)();return(0,Lc.useCallback)(({resource:r,dataProviderName:o,invalidates:a,id:i})=>{if(a===!1)return;let n=yt(r,ee(r,o,e));a.forEach(u=>{switch(u){case"all":t.invalidateQueries(n.all);break;case"list":t.invalidateQueries(n.list());break;case"many":t.invalidateQueries(n.many());break;case"resourceAll":t.invalidateQueries(n.resourceAll);break;case"detail":t.invalidateQueries(n.detail(i||""));break;default:break}})},[])},Fc=v("react"),kc=N(v("warn-once")),Dc=({meta:e={}}={})=>{let t=Le(),{i18nProvider:r}=(0,Fc.useContext)(xr),o=_e(),a=xe(),{resources:i,resource:n,action:u}=fe(),m=[];if(!(n!=null&&n.name))return{breadcrumbs:m};let p=f=>{var c,T,g,h,d,l,s,b;let y=typeof f=="string"?(c=Ee(f,i,t==="legacy"))!=null?c:{name:f}:f;if(y){let C=q((T=y==null?void 0:y.meta)==null?void 0:T.parent,y==null?void 0:y.parentName);C&&p(C);let S=nt(y,i,t==="legacy").find(x=>x.action==="list"),P=(g=S==null?void 0:S.resource)!=null&&g.list?S==null?void 0:S.route:void 0,E=P?t==="legacy"?P:mt(P,y==null?void 0:y.meta,o,e):void 0;m.push({label:(l=q((h=y.meta)==null?void 0:h.label,(d=y.options)==null?void 0:d.label))!=null?l:a(`${y.name}.${y.name}`,$o(y.name)),href:E,icon:q((s=y.meta)==null?void 0:s.icon,(b=y.options)==null?void 0:b.icon,y.icon)})}};if(p(n),u&&u!=="list"){let f=`actions.${u}`,c=a(f);typeof r<"u"&&c===f?((0,kc.default)(!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/api-reference/core/hooks/useBreadcrumb/#i18n-support`),m.push({label:a(`buttons.${u}`,$o(u))})):m.push({label:a(f,$o(u))})}return{breadcrumbs:m}},$a=N(v("react")),Io=(e,t,r=!1)=>{let o=[],a=Yt(e,t);for(;a;)o.push(a),a=Yt(a,t);return o.reverse(),`/${[...o,e].map(i=>{var n,u;return Vt((u=(n=r?i.route:void 0)!=null?n:i.identifier)!=null?u:i.name)}).join("/").replace(/^\//,"")}`},Bc=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(a=>{var i,n;let u=[],m=Yt(a,e);for(;m;)u.push(m),m=Yt(m,e);u.reverse();let p=r;u.forEach(c=>{var T,g;let h=(g=(T=t?c.route:void 0)!=null?T:c.identifier)!=null?g:c.name;p.children[h]||(p.children[h]={item:c,children:{}}),p=p.children[h]});let f=(n=(i=t?a.route:void 0)!=null?i:a.identifier)!=null?n:a.name;p.children[f]||(p.children[f]={item:a,children:{}})});let o=a=>{let i=[];return Object.keys(a.children).forEach(n=>{let u=Io(a.children[n].item,e,t),m={...a.children[n].item,key:u,children:o(a.children[n])};i.push(m)}),i};return o(r)},Fi=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),Rc=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=xe(),o=un(),a=Le(),{resource:i,resources:n}=fe(),{pathname:u}=_e(),{useLocation:m}=Ie(),{pathname:p}=m(),f=a==="legacy"?Fi(p):u?Fi(u):void 0,c=`/${(f!=null?f:"").replace(/^\//,"")}`,T=i?Io(i,n,a==="legacy"):c!=null?c:"",g=$a.default.useMemo(()=>{if(!i)return[];let l=Yt(i,n),s=[Io(i,n)];for(;l;)s.push(Io(l,n)),l=Yt(l,n);return s},[]),h=$a.default.useCallback(l=>{var s,b,y,C,S,P,E,x;if(((y=(s=l==null?void 0:l.meta)==null?void 0:s.hide)!=null?y:(b=l==null?void 0:l.options)==null?void 0:b.hide)||!(l!=null&&l.list)&&l.children.length===0)return;let L=l.list?o({resource:l,action:"list",legacy:a==="legacy",meta:e}):void 0;if(!(t&&L&&L.match(/(\/|^):(.+?)(\/|$){1}/)))return{...l,route:L,icon:q((C=l.meta)==null?void 0:C.icon,(S=l.options)==null?void 0:S.icon,l.icon),label:(x=q((P=l==null?void 0:l.meta)==null?void 0:P.label,(E=l==null?void 0:l.options)==null?void 0:E.label))!=null?x:r(`${l.name}.${l.name}`,jo(l.name,"plural"))}},[a,e,r,t]),d=$a.default.useMemo(()=>{let l=Bc(n,a==="legacy"),s=b=>b.flatMap(y=>{let C=s(y.children),S=h({...y,children:C});return S?[S]:[]});return s(l)},[n,a,h]);return{defaultOpenKeys:g,selectedKey:T,menuItems:d}},$e=()=>{let{params:e}=_e();return({resource:t,meta:r}={})=>{let{meta:o}=xs(t!=null?t:{}),{filters:a,sorters:i,current:n,pageSize:u,...m}=e!=null?e:{};return{...o,...m,...r}}},Mc=()=>{let[e,t]=(0,gr.useState)(),r=xe(),{push:o}=vt(),a=gt(),i=Le(),{resource:n,action:u}=fe();return(0,gr.useEffect)(()=>{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]),gr.default.createElement(gr.default.Fragment,null,gr.default.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&gr.default.createElement("p",null,e),gr.default.createElement("button",{onClick:()=>{i==="legacy"?o("/"):a({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))},Ae=N(v("react")),Es=()=>{let[e,t]=(0,Ae.useState)(""),[r,o]=(0,Ae.useState)(""),a=xe(),i=qe(),{mutate:n}=Za({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)});return Ae.default.createElement(Ae.default.Fragment,null,Ae.default.createElement("h1",null,a("pages.login.title","Sign in your account")),Ae.default.createElement("form",{onSubmit:u=>{u.preventDefault(),n({username:e,password:r})}},Ae.default.createElement("table",null,Ae.default.createElement("tbody",null,Ae.default.createElement("tr",null,Ae.default.createElement("td",null,a("pages.login.username",void 0,"username"),":"),Ae.default.createElement("td",null,Ae.default.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:u=>t(u.target.value)}))),Ae.default.createElement("tr",null,Ae.default.createElement("td",null,a("pages.login.password",void 0,"password"),":"),Ae.default.createElement("td",null,Ae.default.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:u=>o(u.target.value)}))))),Ae.default.createElement("br",null),Ae.default.createElement("input",{type:"submit",value:"login"})))},Mr=N(v("react")),he=N(v("react")),Ac=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:a,wrapperProps:i,renderContent:n,formProps:u,title:m=void 0})=>{let p=Le(),f=Go(),{Link:c}=Ie(),T=p==="legacy"?c:f,[g,h]=(0,he.useState)(""),[d,l]=(0,he.useState)(""),[s,b]=(0,he.useState)(!1),y=xe(),C=qe(),{mutate:S}=Za({v3LegacyAuthProviderCompatible:Boolean(C==null?void 0:C.isLegacy)}),P=(L,F)=>L?typeof L=="string"?he.default.createElement(T,{to:L},F):L:null,E=()=>e?e.map(L=>{var F;return he.default.createElement("div",{key:L.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},he.default.createElement("button",{onClick:()=>S({providerName:L.name}),style:{display:"flex",alignItems:"center"}},L==null?void 0:L.icon,(F=L.label)!=null?F:he.default.createElement("label",null,L.label)))}):null,x=he.default.createElement("div",{...a},he.default.createElement("h1",{style:{textAlign:"center"}},y("pages.login.title","Sign in to your account")),E(),he.default.createElement("hr",null),he.default.createElement("form",{onSubmit:L=>{L.preventDefault(),S({email:g,password:d,remember:s})},...u},he.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},he.default.createElement("label",null,y("pages.login.fields.email","Email")),he.default.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:g,onChange:L=>h(L.target.value)}),he.default.createElement("label",null,y("pages.login.fields.password","Password")),he.default.createElement("input",{type:"password",name:"password",required:!0,size:20,value:d,onChange:L=>l(L.target.value)}),o!=null?o:he.default.createElement(he.default.Fragment,null,he.default.createElement("label",null,y("pages.login.buttons.rememberMe","Remember me"),he.default.createElement("input",{name:"remember",type:"checkbox",size:20,checked:s,value:s.toString(),onChange:()=>{b(!s)}}))),he.default.createElement("br",null),r!=null?r:P("/forgot-password",y("pages.login.buttons.forgotPassword","Forgot password?")),he.default.createElement("input",{type:"submit",value:y("pages.login.signin","Sign in")}),t!=null?t:he.default.createElement("span",null,y("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",P("/register",y("pages.login.register","Sign up"))))));return he.default.createElement("div",{...i},n?n(x,m):x)},ke=N(v("react")),qc=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:a,formProps:i,title:n=void 0})=>{let u=Le(),m=Go(),{Link:p}=Ie(),f=u==="legacy"?p:m,[c,T]=(0,ke.useState)(""),[g,h]=(0,ke.useState)(""),d=xe(),l=qe(),{mutate:s,isLoading:b}=Ni({v3LegacyAuthProviderCompatible:Boolean(l==null?void 0:l.isLegacy)}),y=(P,E)=>P?typeof P=="string"?ke.default.createElement(f,{to:P},E):P:null,C=()=>e?e.map(P=>{var E;return ke.default.createElement("div",{key:P.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ke.default.createElement("button",{onClick:()=>s({providerName:P.name}),style:{display:"flex",alignItems:"center"}},P==null?void 0:P.icon,(E=P.label)!=null?E:ke.default.createElement("label",null,P.label)))}):null,S=ke.default.createElement("div",{...o},ke.default.createElement("h1",{style:{textAlign:"center"}},d("pages.register.title","Sign up for your account")),C(),ke.default.createElement("hr",null),ke.default.createElement("form",{onSubmit:P=>{P.preventDefault(),s({email:c,password:g})},...i},ke.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ke.default.createElement("label",null,d("pages.register.fields.email","Email")),ke.default.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:P=>T(P.target.value)}),ke.default.createElement("label",null,d("pages.register.fields.password","Password")),ke.default.createElement("input",{name:"password",type:"password",required:!0,size:20,value:g,onChange:P=>h(P.target.value)}),ke.default.createElement("input",{type:"submit",value:d("pages.register.buttons.submit","Sign up"),disabled:b}),t!=null?t:ke.default.createElement(ke.default.Fragment,null,ke.default.createElement("span",null,d("pages.login.buttons.haveAccount","Have an account?")," ",y("/login",d("pages.login.signin","Sign in")))))));return ke.default.createElement("div",{...r},a?a(S,n):S)},ot=N(v("react")),Nc=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:a,title:i=void 0})=>{let n=xe(),u=Le(),m=Go(),{Link:p}=Ie(),f=u==="legacy"?p:m,[c,T]=(0,ot.useState)(""),{mutate:g,isLoading:h}=Ui(),d=(s,b)=>s?typeof s=="string"?ot.default.createElement(f,{to:s},b):s:null,l=ot.default.createElement("div",{...r},ot.default.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),ot.default.createElement("hr",null),ot.default.createElement("form",{onSubmit:s=>{s.preventDefault(),g({email:c})},...a},ot.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ot.default.createElement("label",null,n("pages.forgotPassword.fields.email","Email")),ot.default.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:s=>T(s.target.value)}),ot.default.createElement("input",{type:"submit",disabled:h,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),ot.default.createElement("br",null),e!=null?e:ot.default.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",d("/login",n("pages.login.signin","Sign in"))))));return ot.default.createElement("div",{...t},o?o(l,i):l)},at=N(v("react")),Uc=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:a=void 0})=>{let i=xe(),n=qe(),{mutate:u,isLoading:m}=Oi({v3LegacyAuthProviderCompatible:Boolean(n==null?void 0:n.isLegacy)}),[p,f]=(0,at.useState)(""),[c,T]=(0,at.useState)(""),g=at.default.createElement("div",{...t},at.default.createElement("h1",{style:{textAlign:"center"}},i("pages.updatePassword.title","Update Password")),at.default.createElement("hr",null),at.default.createElement("form",{onSubmit:h=>{h.preventDefault(),u({password:p,confirmPassword:c})},...o},at.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},at.default.createElement("label",null,i("pages.updatePassword.fields.password","New Password")),at.default.createElement("input",{name:"password",type:"password",required:!0,size:20,value:p,onChange:h=>f(h.target.value)}),at.default.createElement("label",null,i("pages.updatePassword.fields.confirmPassword","Confirm New Password")),at.default.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:c,onChange:h=>T(h.target.value)}),at.default.createElement("input",{type:"submit",disabled:m,value:i("pages.updatePassword.buttons.submit","Update")}))));return at.default.createElement("div",{...e},r?r(g,a):g)},Oc=e=>{let{type:t}=e;return Mr.default.createElement(Mr.default.Fragment,null,(()=>{switch(t){case"register":return Mr.default.createElement(qc,{...e});case"forgotPassword":return Mr.default.createElement(Nc,{...e});case"updatePassword":return Mr.default.createElement(Uc,{...e});default:return Mr.default.createElement(Ac,{...e})}})())},Ge=N(v("react")),Ss=()=>Ge.default.createElement(Ge.default.Fragment,null,Ge.default.createElement("h1",null,"Welcome on board"),Ge.default.createElement("p",null,"Your configuration is completed."),Ge.default.createElement("p",null,"Now you can get started by adding your resources to the"," ",Ge.default.createElement("code",null,"`resources`")," property of ",Ge.default.createElement("code",null,"`<Refine>`")),Ge.default.createElement("div",{style:{display:"flex",gap:8}},Ge.default.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Documentation")),Ge.default.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Examples")),Ge.default.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Community")))),oe=N(v("react")),Vc=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:oe.default.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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:oe.default.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}),oe.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:oe.default.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}),oe.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:oe.default.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}))}],Hc=()=>{let e=ri("(max-width: 1010px)"),t=ri("(max-width: 650px)"),r=()=>t?"1, 280px":e?"2, 280px":"4, 208px",o=()=>t?"32px":e?"40px":"48px",a=()=>t?"16px":e?"20px":"24px";return oe.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"}},oe.default.createElement("div",{style:{height:"89px"}}),oe.default.createElement("div",{style:{display:"flex",justifyContent:"center"}},oe.default.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),oe.default.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),oe.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},oe.default.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),oe.default.createElement("h4",{style:{fontSize:a(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),oe.default.createElement("div",{style:{height:"64px"}}),oe.default.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},Vc.map(i=>oe.default.createElement($c,{key:`welcome-page-${i.title}`,card:i}))),oe.default.createElement("div",{style:{height:"64px"}}))},$c=({card:e})=>{let{title:t,description:r,icon:o,link:a}=e,[i,n]=(0,oe.useState)(!1);return oe.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},oe.default.createElement("div",{style:{display:"flex",alignItems:"center"}},oe.default.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:a},o,oe.default.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),oe.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"},oe.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"})))),oe.default.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))},be=N(v("react")),Qa=v("@tanstack/react-query"),Qc=v("@tanstack/react-query-devtools"),Ic=v("react"),hr=v("react"),zc="4.17.0",Wc=()=>{let e=Vi(),t=(0,hr.useContext)(Zo),r=(0,hr.useContext)(go),o=(0,hr.useContext)(dn),a=(0,hr.useContext)(an),{i18nProvider:i}=(0,hr.useContext)(xr),n=(0,hr.useContext)(nn),u=(0,hr.useContext)(_o),{resources:m}=fe(),p=!!t.create||!!t.get||!!t.update,f=!!(r!=null&&r.publish)||!!(r!=null&&r.subscribe)||!!(r!=null&&r.unsubscribe),c=!!o.useHistory||!!o.Link||!!o.Prompt||!!o.useLocation||!!o.useParams,T=!!a,g=!!(i!=null&&i.changeLocale)||!!(i!=null&&i.getLocale)||!!(i!=null&&i.translate),h=!!n.close||!!n.open,d=!!u.can;return{providers:{auth:e,auditLog:p,live:f,router:c,data:T,i18n:g,notification:h,accessControl:d},version:zc,resourceCount:m.length}},jc=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Kc=()=>{let e=Wc();return(0,Ic.useEffect)(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${jc(e)}`},[]),null},Gc=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},ki=N(v("react")),_c=e=>{let t=ki.default.useRef(!1);ki.default.useEffect(()=>{t.current===!1&&e&&Gc(e)&&(t.current=!0)},[e])},Zc=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:a,notificationProvider:i,accessControlProvider:n,auditLogProvider:u,resources:m,DashboardPage:p,ReadyPage:f,LoginPage:c,catchAll:T,children:g,liveProvider:h,i18nProvider:d,Title:l,Layout:s,Sider:b,Header:y,Footer:C,OffLayoutArea:S,onLiveEvent:P,options:E})=>{let{optionsWithDefaults:x,disableTelemetryWithDefault:L,reactQueryWithDefaults:F}=_u({options:E}),D=ss(()=>{var M;return F.clientConfig instanceof Qa.QueryClient?F.clientConfig:new Qa.QueryClient({...F.clientConfig,defaultOptions:{...F.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(M=F.clientConfig.defaultOptions)==null?void 0:M.queries}}})},[F.clientConfig]),w=be.default.useMemo(()=>typeof i=="function"?i:()=>i!=null?i:{},[i])();if(_c(a),o&&!a&&(m!=null?m:[]).length===0)return f?be.default.createElement(f,null):be.default.createElement(Ss,null);let{RouterComponent:B=be.default.Fragment}=a?{}:o!=null?o:{};return be.default.createElement(Qa.QueryClientProvider,{client:D},be.default.createElement(Od,{...w},be.default.createElement(xu,{...e!=null?e:{},isProvided:Boolean(e)},be.default.createElement(Cu,{...t!=null?t:{},isProvided:Boolean(t)},be.default.createElement(bd,{...r},be.default.createElement(Pd,{liveProvider:h},be.default.createElement(Md,{value:o&&!a?"legacy":"new"},be.default.createElement(qd,{router:a},be.default.createElement(cc,{...o},be.default.createElement(Rd,{resources:m!=null?m:[]},be.default.createElement(Hd,{i18nProvider:d},be.default.createElement(fc,{...n!=null?n:{}},be.default.createElement(Cc,{...u!=null?u:{}},be.default.createElement(nd,null,be.default.createElement(Gu,{mutationMode:x.mutationMode,warnWhenUnsavedChanges:x.warnWhenUnsavedChanges,syncWithLocation:x.syncWithLocation,Title:l,undoableTimeout:x.undoableTimeout,catchAll:T,DashboardPage:p,LoginPage:c,Layout:s,Sider:b,Footer:C,Header:y,OffLayoutArea:S,hasDashboard:!!p,liveMode:x.liveMode,onLiveEvent:P,options:x},be.default.createElement(zd,null,be.default.createElement(B,null,g,!L&&be.default.createElement(Kc,null),be.default.createElement(ws,null))))))))))))))))),F.devtoolConfig===!1?null:be.default.createElement(Qc.ReactQueryDevtools,{initialIsOpen:!1,position:"bottom-right",...F.devtoolConfig}))},Di=v("react"),Ls=({notification:e})=>{let t=xe(),{notificationDispatch:r}=Ur(),{open:o}=Xt(),[a,i]=(0,Di.useState)(),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:Na(e.seconds)},`You have ${Na(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Na(e.seconds)}),e.seconds>0)){a&&clearTimeout(a);let u=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);i(u)}};return(0,Di.useEffect)(()=>{n()},[e]),null},zo=N(v("react")),Yc=({children:e,Layout:t,Sider:r,Header:o,Title:a,Footer:i,OffLayoutArea:n})=>{let{Layout:u,Footer:m,Header:p,Sider:f,Title:c,OffLayoutArea:T}=ln(),g=t!=null?t:u;return zo.default.createElement(g,{Sider:r!=null?r:f,Header:o!=null?o:p,Footer:i!=null?i:m,Title:a!=null?a:c,OffLayoutArea:n!=null?n:T},e,zo.default.createElement(Jc,null))},Jc=()=>{let{Prompt:e}=Ie(),t=xe(),{warnWhen:r,setWarnWhen:o}=sn(),a=i=>(i.preventDefault(),i.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),i.returnValue);return(0,zo.useEffect)(()=>(r&&window.addEventListener("beforeunload",a),window.removeEventListener("beforeunload",a)),[r]),zo.default.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})},it=N(v("react")),Xc=()=>{let e=gt(),[t,r]=it.default.useState(void 0);return it.default.useEffect(()=>{t&&e(t)},[t]),it.default.useCallback(o=>{t||r(o)},[t])};function ep({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:a}){var i;let n=qe(),u=Le(),m=Boolean(n==null?void 0:n.isProvided),p=Boolean(n==null?void 0:n.isLegacy),f=u==="legacy",c=_e(),T=gt(),g=Xc(),{replace:h}=vt(),{useLocation:d}=Ie(),l=d(),{isLoading:s,isFetching:b,isSuccess:y,data:{authenticated:C,redirectTo:S}={},refetch:P}=Ya({v3LegacyAuthProviderCompatible:p});it.default.useEffect(()=>{P()},[r,o]);let E=it.default.useRef({status:s?"initial":"pending",content:a!=null?a:null});b?E.current.status="pending":b||(E.current.status="settled");let x=m?p?y:C:!0;if(E.current.status==="settled")if(x)E.current.content=it.default.createElement(it.default.Fragment,null,r!=null?r:null);else if(typeof o<"u")E.current.content=it.default.createElement(it.default.Fragment,null,o);else{let L=`${f?l==null?void 0:l.pathname:c.pathname}`.replace(/(\?.*|#.*)$/,""),F=p?typeof e=="string"?e:"/login":typeof e=="string"?e:S;if(F)if(f){let D=t?`?to=${encodeURIComponent(L)}`:"";h(`${F}${D}`)}else g({to:F,query:t?{to:(i=c.params)!=null&&i.to?c.params.to:T({to:L,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return m?it.default.createElement(it.default.Fragment,null,E.current.content):it.default.createElement(it.default.Fragment,null,r!=null?r:null)}var tp=v("react"),ws=()=>{let{useLocation:e}=Ie(),{checkAuth:t}=ft(),r=e();return(0,tp.useEffect)(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null},Ar=N(v("react")),rp=({resource:e,action:t,params:r,fallback:o,children:a,...i})=>{var n,u;let m=Le(),{resources:p}=fe(),{useParams:f}=Ie(),{resource:c,id:T,action:g}=_e(),{resource:h,id:d,action:l}=f(),s=c==null?void 0:c.name,b=!e||e===(m==="legacy"?h:s)?(n=r==null?void 0:r.id)!=null?n:m==="legacy"?d:T:r==null?void 0:r.id,y=e!=null?e:m==="legacy"?h:s,C,S=To();if(m==="legacy")y&&(C=S(y));else if(e){let E=Ee(e,p);E?C=E:C={name:e,route:e}}else if(typeof c=="string"){let E=Ee(c,p);E?C=E:C={name:c,route:c}}else C=c;let{data:P}=Cs({resource:e!=null?e:C==null?void 0:C.name,action:(u=t!=null?t:m==="legacy"?l:g)!=null?u:"",params:r!=null?r:{id:b,resource:C}});return P!=null&&P.can?Ar.default.isValidElement(a)?Ar.default.cloneElement(a,i):Ar.default.createElement(Ar.default.Fragment,null,a):(P==null?void 0:P.can)===!1?Ar.default.createElement(Ar.default.Fragment,null,o!=null?o:null):null},br=N(v("react")),op=[`
11
+ For more information, see https://refine.dev/docs/api-reference/core/hooks/useBreadcrumb/#i18n-support`),m.push({label:a(`buttons.${u}`,$o(u))})):m.push({label:a(f,$o(u))})}return{breadcrumbs:m}},$a=N(v("react")),Io=(e,t,r=!1)=>{let o=[],a=Yt(e,t);for(;a;)o.push(a),a=Yt(a,t);return o.reverse(),`/${[...o,e].map(i=>{var n,u;return Vt((u=(n=r?i.route:void 0)!=null?n:i.identifier)!=null?u:i.name)}).join("/").replace(/^\//,"")}`},Bc=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(a=>{var i,n;let u=[],m=Yt(a,e);for(;m;)u.push(m),m=Yt(m,e);u.reverse();let p=r;u.forEach(c=>{var T,g;let h=(g=(T=t?c.route:void 0)!=null?T:c.identifier)!=null?g:c.name;p.children[h]||(p.children[h]={item:c,children:{}}),p=p.children[h]});let f=(n=(i=t?a.route:void 0)!=null?i:a.identifier)!=null?n:a.name;p.children[f]||(p.children[f]={item:a,children:{}})});let o=a=>{let i=[];return Object.keys(a.children).forEach(n=>{let u=Io(a.children[n].item,e,t),m={...a.children[n].item,key:u,children:o(a.children[n])};i.push(m)}),i};return o(r)},Fi=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),Rc=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=xe(),o=un(),a=Le(),{resource:i,resources:n}=fe(),{pathname:u}=_e(),{useLocation:m}=Ie(),{pathname:p}=m(),f=a==="legacy"?Fi(p):u?Fi(u):void 0,c=`/${(f!=null?f:"").replace(/^\//,"")}`,T=i?Io(i,n,a==="legacy"):c!=null?c:"",g=$a.default.useMemo(()=>{if(!i)return[];let l=Yt(i,n),s=[Io(i,n)];for(;l;)s.push(Io(l,n)),l=Yt(l,n);return s},[]),h=$a.default.useCallback(l=>{var s,b,y,C,S,P,E,x;if(((y=(s=l==null?void 0:l.meta)==null?void 0:s.hide)!=null?y:(b=l==null?void 0:l.options)==null?void 0:b.hide)||!(l!=null&&l.list)&&l.children.length===0)return;let L=l.list?o({resource:l,action:"list",legacy:a==="legacy",meta:e}):void 0;if(!(t&&L&&L.match(/(\/|^):(.+?)(\/|$){1}/)))return{...l,route:L,icon:q((C=l.meta)==null?void 0:C.icon,(S=l.options)==null?void 0:S.icon,l.icon),label:(x=q((P=l==null?void 0:l.meta)==null?void 0:P.label,(E=l==null?void 0:l.options)==null?void 0:E.label))!=null?x:r(`${l.name}.${l.name}`,jo(l.name,"plural"))}},[a,e,r,t]),d=$a.default.useMemo(()=>{let l=Bc(n,a==="legacy"),s=b=>b.flatMap(y=>{let C=s(y.children),S=h({...y,children:C});return S?[S]:[]});return s(l)},[n,a,h]);return{defaultOpenKeys:g,selectedKey:T,menuItems:d}},$e=()=>{let{params:e}=_e();return({resource:t,meta:r}={})=>{let{meta:o}=xs(t!=null?t:{}),{filters:a,sorters:i,current:n,pageSize:u,...m}=e!=null?e:{};return{...o,...m,...r}}},Mc=()=>{let[e,t]=(0,gr.useState)(),r=xe(),{push:o}=vt(),a=gt(),i=Le(),{resource:n,action:u}=fe();return(0,gr.useEffect)(()=>{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]),gr.default.createElement(gr.default.Fragment,null,gr.default.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&gr.default.createElement("p",null,e),gr.default.createElement("button",{onClick:()=>{i==="legacy"?o("/"):a({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))},Ae=N(v("react")),Es=()=>{let[e,t]=(0,Ae.useState)(""),[r,o]=(0,Ae.useState)(""),a=xe(),i=qe(),{mutate:n}=Za({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)});return Ae.default.createElement(Ae.default.Fragment,null,Ae.default.createElement("h1",null,a("pages.login.title","Sign in your account")),Ae.default.createElement("form",{onSubmit:u=>{u.preventDefault(),n({username:e,password:r})}},Ae.default.createElement("table",null,Ae.default.createElement("tbody",null,Ae.default.createElement("tr",null,Ae.default.createElement("td",null,a("pages.login.username",void 0,"username"),":"),Ae.default.createElement("td",null,Ae.default.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:u=>t(u.target.value)}))),Ae.default.createElement("tr",null,Ae.default.createElement("td",null,a("pages.login.password",void 0,"password"),":"),Ae.default.createElement("td",null,Ae.default.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:u=>o(u.target.value)}))))),Ae.default.createElement("br",null),Ae.default.createElement("input",{type:"submit",value:"login"})))},Mr=N(v("react")),he=N(v("react")),Ac=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:a,wrapperProps:i,renderContent:n,formProps:u,title:m=void 0})=>{let p=Le(),f=Go(),{Link:c}=Ie(),T=p==="legacy"?c:f,[g,h]=(0,he.useState)(""),[d,l]=(0,he.useState)(""),[s,b]=(0,he.useState)(!1),y=xe(),C=qe(),{mutate:S}=Za({v3LegacyAuthProviderCompatible:Boolean(C==null?void 0:C.isLegacy)}),P=(L,F)=>L?typeof L=="string"?he.default.createElement(T,{to:L},F):L:null,E=()=>e?e.map(L=>{var F;return he.default.createElement("div",{key:L.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},he.default.createElement("button",{onClick:()=>S({providerName:L.name}),style:{display:"flex",alignItems:"center"}},L==null?void 0:L.icon,(F=L.label)!=null?F:he.default.createElement("label",null,L.label)))}):null,x=he.default.createElement("div",{...a},he.default.createElement("h1",{style:{textAlign:"center"}},y("pages.login.title","Sign in to your account")),E(),he.default.createElement("hr",null),he.default.createElement("form",{onSubmit:L=>{L.preventDefault(),S({email:g,password:d,remember:s})},...u},he.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},he.default.createElement("label",null,y("pages.login.fields.email","Email")),he.default.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:g,onChange:L=>h(L.target.value)}),he.default.createElement("label",null,y("pages.login.fields.password","Password")),he.default.createElement("input",{type:"password",name:"password",required:!0,size:20,value:d,onChange:L=>l(L.target.value)}),o!=null?o:he.default.createElement(he.default.Fragment,null,he.default.createElement("label",null,y("pages.login.buttons.rememberMe","Remember me"),he.default.createElement("input",{name:"remember",type:"checkbox",size:20,checked:s,value:s.toString(),onChange:()=>{b(!s)}}))),he.default.createElement("br",null),r!=null?r:P("/forgot-password",y("pages.login.buttons.forgotPassword","Forgot password?")),he.default.createElement("input",{type:"submit",value:y("pages.login.signin","Sign in")}),t!=null?t:he.default.createElement("span",null,y("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",P("/register",y("pages.login.register","Sign up"))))));return he.default.createElement("div",{...i},n?n(x,m):x)},ke=N(v("react")),qc=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:a,formProps:i,title:n=void 0})=>{let u=Le(),m=Go(),{Link:p}=Ie(),f=u==="legacy"?p:m,[c,T]=(0,ke.useState)(""),[g,h]=(0,ke.useState)(""),d=xe(),l=qe(),{mutate:s,isLoading:b}=Ni({v3LegacyAuthProviderCompatible:Boolean(l==null?void 0:l.isLegacy)}),y=(P,E)=>P?typeof P=="string"?ke.default.createElement(f,{to:P},E):P:null,C=()=>e?e.map(P=>{var E;return ke.default.createElement("div",{key:P.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ke.default.createElement("button",{onClick:()=>s({providerName:P.name}),style:{display:"flex",alignItems:"center"}},P==null?void 0:P.icon,(E=P.label)!=null?E:ke.default.createElement("label",null,P.label)))}):null,S=ke.default.createElement("div",{...o},ke.default.createElement("h1",{style:{textAlign:"center"}},d("pages.register.title","Sign up for your account")),C(),ke.default.createElement("hr",null),ke.default.createElement("form",{onSubmit:P=>{P.preventDefault(),s({email:c,password:g})},...i},ke.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ke.default.createElement("label",null,d("pages.register.fields.email","Email")),ke.default.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:P=>T(P.target.value)}),ke.default.createElement("label",null,d("pages.register.fields.password","Password")),ke.default.createElement("input",{name:"password",type:"password",required:!0,size:20,value:g,onChange:P=>h(P.target.value)}),ke.default.createElement("input",{type:"submit",value:d("pages.register.buttons.submit","Sign up"),disabled:b}),t!=null?t:ke.default.createElement(ke.default.Fragment,null,ke.default.createElement("span",null,d("pages.login.buttons.haveAccount","Have an account?")," ",y("/login",d("pages.login.signin","Sign in")))))));return ke.default.createElement("div",{...r},a?a(S,n):S)},ot=N(v("react")),Nc=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:a,title:i=void 0})=>{let n=xe(),u=Le(),m=Go(),{Link:p}=Ie(),f=u==="legacy"?p:m,[c,T]=(0,ot.useState)(""),{mutate:g,isLoading:h}=Ui(),d=(s,b)=>s?typeof s=="string"?ot.default.createElement(f,{to:s},b):s:null,l=ot.default.createElement("div",{...r},ot.default.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),ot.default.createElement("hr",null),ot.default.createElement("form",{onSubmit:s=>{s.preventDefault(),g({email:c})},...a},ot.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ot.default.createElement("label",null,n("pages.forgotPassword.fields.email","Email")),ot.default.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:s=>T(s.target.value)}),ot.default.createElement("input",{type:"submit",disabled:h,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),ot.default.createElement("br",null),e!=null?e:ot.default.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",d("/login",n("pages.login.signin","Sign in"))))));return ot.default.createElement("div",{...t},o?o(l,i):l)},at=N(v("react")),Uc=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:a=void 0})=>{let i=xe(),n=qe(),{mutate:u,isLoading:m}=Oi({v3LegacyAuthProviderCompatible:Boolean(n==null?void 0:n.isLegacy)}),[p,f]=(0,at.useState)(""),[c,T]=(0,at.useState)(""),g=at.default.createElement("div",{...t},at.default.createElement("h1",{style:{textAlign:"center"}},i("pages.updatePassword.title","Update Password")),at.default.createElement("hr",null),at.default.createElement("form",{onSubmit:h=>{h.preventDefault(),u({password:p,confirmPassword:c})},...o},at.default.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},at.default.createElement("label",null,i("pages.updatePassword.fields.password","New Password")),at.default.createElement("input",{name:"password",type:"password",required:!0,size:20,value:p,onChange:h=>f(h.target.value)}),at.default.createElement("label",null,i("pages.updatePassword.fields.confirmPassword","Confirm New Password")),at.default.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:c,onChange:h=>T(h.target.value)}),at.default.createElement("input",{type:"submit",disabled:m,value:i("pages.updatePassword.buttons.submit","Update")}))));return at.default.createElement("div",{...e},r?r(g,a):g)},Oc=e=>{let{type:t}=e;return Mr.default.createElement(Mr.default.Fragment,null,(()=>{switch(t){case"register":return Mr.default.createElement(qc,{...e});case"forgotPassword":return Mr.default.createElement(Nc,{...e});case"updatePassword":return Mr.default.createElement(Uc,{...e});default:return Mr.default.createElement(Ac,{...e})}})())},Ge=N(v("react")),Ss=()=>Ge.default.createElement(Ge.default.Fragment,null,Ge.default.createElement("h1",null,"Welcome on board"),Ge.default.createElement("p",null,"Your configuration is completed."),Ge.default.createElement("p",null,"Now you can get started by adding your resources to the"," ",Ge.default.createElement("code",null,"`resources`")," property of ",Ge.default.createElement("code",null,"`<Refine>`")),Ge.default.createElement("div",{style:{display:"flex",gap:8}},Ge.default.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Documentation")),Ge.default.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Examples")),Ge.default.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Ge.default.createElement("button",null,"Community")))),oe=N(v("react")),Vc=[{title:"Documentation",description:"Learn about the technical details of using refine in your projects.",link:"https://refine.dev/",icon:oe.default.createElement("svg",{width:"14",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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:oe.default.createElement("svg",{width:"16",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}),oe.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:oe.default.createElement("svg",{width:"16",height:"16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}),oe.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:oe.default.createElement("svg",{width:"16",height:"12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},oe.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"}))}],Hc=()=>{let e=ri("(max-width: 1010px)"),t=ri("(max-width: 650px)"),r=()=>t?"1, 280px":e?"2, 280px":"4, 208px",o=()=>t?"32px":e?"40px":"48px",a=()=>t?"16px":e?"20px":"24px";return oe.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"}},oe.default.createElement("div",{style:{height:"89px"}}),oe.default.createElement("div",{style:{display:"flex",justifyContent:"center"}},oe.default.createElement("img",{src:"https://refine.ams3.cdn.digitaloceanspaces.com/welcome-page/welcome-logo.webp",width:"198",height:"54"})),oe.default.createElement("div",{style:{height:e?"270px":"22vw",minHeight:e?"270px":"313px"}}),oe.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px",textAlign:"center"}},oe.default.createElement("h1",{style:{fontSize:o(),fontWeight:700,margin:"0px"}},"Welcome Aboard!"),oe.default.createElement("h4",{style:{fontSize:a(),fontWeight:400,margin:"0px"}},"Your configuration is completed.")),oe.default.createElement("div",{style:{height:"64px"}}),oe.default.createElement("div",{style:{display:"grid",gridTemplateColumns:`repeat(${r()})`,justifyContent:"center",gap:"48px",paddingRight:"16px",paddingLeft:"16px",maxWidth:"976px",margin:"auto"}},Vc.map(i=>oe.default.createElement($c,{key:`welcome-page-${i.title}`,card:i}))),oe.default.createElement("div",{style:{height:"64px"}}))},$c=({card:e})=>{let{title:t,description:r,icon:o,link:a}=e,[i,n]=(0,oe.useState)(!1);return oe.default.createElement("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},oe.default.createElement("div",{style:{display:"flex",alignItems:"center"}},oe.default.createElement("a",{onPointerEnter:()=>n(!0),onPointerLeave:()=>n(!1),style:{display:"flex",alignItems:"center",color:"#fff",textDecoration:"none"},href:a},o,oe.default.createElement("span",{style:{fontSize:"16px",fontWeight:700,marginLeft:"13px",marginRight:"14px"}},t),oe.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"},oe.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"})))),oe.default.createElement("span",{style:{fontSize:"12px",opacity:.5,lineHeight:"16px"}},r))},be=N(v("react")),Qa=v("@tanstack/react-query"),Qc=v("@tanstack/react-query-devtools"),Ic=v("react"),hr=v("react"),zc="4.18.0",Wc=()=>{let e=Vi(),t=(0,hr.useContext)(Zo),r=(0,hr.useContext)(go),o=(0,hr.useContext)(dn),a=(0,hr.useContext)(an),{i18nProvider:i}=(0,hr.useContext)(xr),n=(0,hr.useContext)(nn),u=(0,hr.useContext)(_o),{resources:m}=fe(),p=!!t.create||!!t.get||!!t.update,f=!!(r!=null&&r.publish)||!!(r!=null&&r.subscribe)||!!(r!=null&&r.unsubscribe),c=!!o.useHistory||!!o.Link||!!o.Prompt||!!o.useLocation||!!o.useParams,T=!!a,g=!!(i!=null&&i.changeLocale)||!!(i!=null&&i.getLocale)||!!(i!=null&&i.translate),h=!!n.close||!!n.open,d=!!u.can;return{providers:{auth:e,auditLog:p,live:f,router:c,data:T,i18n:g,notification:h,accessControl:d},version:zc,resourceCount:m.length}},jc=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Kc=()=>{let e=Wc();return(0,Ic.useEffect)(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${jc(e)}`},[]),null},Gc=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},ki=N(v("react")),_c=e=>{let t=ki.default.useRef(!1);ki.default.useEffect(()=>{t.current===!1&&e&&Gc(e)&&(t.current=!0)},[e])},Zc=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:a,notificationProvider:i,accessControlProvider:n,auditLogProvider:u,resources:m,DashboardPage:p,ReadyPage:f,LoginPage:c,catchAll:T,children:g,liveProvider:h,i18nProvider:d,Title:l,Layout:s,Sider:b,Header:y,Footer:C,OffLayoutArea:S,onLiveEvent:P,options:E})=>{let{optionsWithDefaults:x,disableTelemetryWithDefault:L,reactQueryWithDefaults:F}=_u({options:E}),D=ss(()=>{var M;return F.clientConfig instanceof Qa.QueryClient?F.clientConfig:new Qa.QueryClient({...F.clientConfig,defaultOptions:{...F.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(M=F.clientConfig.defaultOptions)==null?void 0:M.queries}}})},[F.clientConfig]),w=be.default.useMemo(()=>typeof i=="function"?i:()=>i!=null?i:{},[i])();if(_c(a),o&&!a&&(m!=null?m:[]).length===0)return f?be.default.createElement(f,null):be.default.createElement(Ss,null);let{RouterComponent:B=be.default.Fragment}=a?{}:o!=null?o:{};return be.default.createElement(Qa.QueryClientProvider,{client:D},be.default.createElement(Od,{...w},be.default.createElement(xu,{...e!=null?e:{},isProvided:Boolean(e)},be.default.createElement(Cu,{...t!=null?t:{},isProvided:Boolean(t)},be.default.createElement(bd,{...r},be.default.createElement(Pd,{liveProvider:h},be.default.createElement(Md,{value:o&&!a?"legacy":"new"},be.default.createElement(qd,{router:a},be.default.createElement(cc,{...o},be.default.createElement(Rd,{resources:m!=null?m:[]},be.default.createElement(Hd,{i18nProvider:d},be.default.createElement(fc,{...n!=null?n:{}},be.default.createElement(Cc,{...u!=null?u:{}},be.default.createElement(nd,null,be.default.createElement(Gu,{mutationMode:x.mutationMode,warnWhenUnsavedChanges:x.warnWhenUnsavedChanges,syncWithLocation:x.syncWithLocation,Title:l,undoableTimeout:x.undoableTimeout,catchAll:T,DashboardPage:p,LoginPage:c,Layout:s,Sider:b,Footer:C,Header:y,OffLayoutArea:S,hasDashboard:!!p,liveMode:x.liveMode,onLiveEvent:P,options:x},be.default.createElement(zd,null,be.default.createElement(B,null,g,!L&&be.default.createElement(Kc,null),be.default.createElement(ws,null))))))))))))))))),F.devtoolConfig===!1?null:be.default.createElement(Qc.ReactQueryDevtools,{initialIsOpen:!1,position:"bottom-right",...F.devtoolConfig}))},Di=v("react"),Ls=({notification:e})=>{let t=xe(),{notificationDispatch:r}=Ur(),{open:o}=Xt(),[a,i]=(0,Di.useState)(),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:Na(e.seconds)},`You have ${Na(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:Na(e.seconds)}),e.seconds>0)){a&&clearTimeout(a);let u=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);i(u)}};return(0,Di.useEffect)(()=>{n()},[e]),null},zo=N(v("react")),Yc=({children:e,Layout:t,Sider:r,Header:o,Title:a,Footer:i,OffLayoutArea:n})=>{let{Layout:u,Footer:m,Header:p,Sider:f,Title:c,OffLayoutArea:T}=ln(),g=t!=null?t:u;return zo.default.createElement(g,{Sider:r!=null?r:f,Header:o!=null?o:p,Footer:i!=null?i:m,Title:a!=null?a:c,OffLayoutArea:n!=null?n:T},e,zo.default.createElement(Jc,null))},Jc=()=>{let{Prompt:e}=Ie(),t=xe(),{warnWhen:r,setWarnWhen:o}=sn(),a=i=>(i.preventDefault(),i.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),i.returnValue);return(0,zo.useEffect)(()=>(r&&window.addEventListener("beforeunload",a),window.removeEventListener("beforeunload",a)),[r]),zo.default.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})},it=N(v("react")),Xc=()=>{let e=gt(),[t,r]=it.default.useState(void 0);return it.default.useEffect(()=>{t&&e(t)},[t]),it.default.useCallback(o=>{t||r(o)},[t])};function ep({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:a}){var i;let n=qe(),u=Le(),m=Boolean(n==null?void 0:n.isProvided),p=Boolean(n==null?void 0:n.isLegacy),f=u==="legacy",c=_e(),T=gt(),g=Xc(),{replace:h}=vt(),{useLocation:d}=Ie(),l=d(),{isLoading:s,isFetching:b,isSuccess:y,data:{authenticated:C,redirectTo:S}={},refetch:P}=Ya({v3LegacyAuthProviderCompatible:p});it.default.useEffect(()=>{P()},[r,o]);let E=it.default.useRef({status:s?"initial":"pending",content:a!=null?a:null});b?E.current.status="pending":b||(E.current.status="settled");let x=m?p?y:C:!0;if(E.current.status==="settled")if(x)E.current.content=it.default.createElement(it.default.Fragment,null,r!=null?r:null);else if(typeof o<"u")E.current.content=it.default.createElement(it.default.Fragment,null,o);else{let L=`${f?l==null?void 0:l.pathname:c.pathname}`.replace(/(\?.*|#.*)$/,""),F=p?typeof e=="string"?e:"/login":typeof e=="string"?e:S;if(F)if(f){let D=t?`?to=${encodeURIComponent(L)}`:"";h(`${F}${D}`)}else g({to:F,query:t?{to:(i=c.params)!=null&&i.to?c.params.to:T({to:L,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return m?it.default.createElement(it.default.Fragment,null,E.current.content):it.default.createElement(it.default.Fragment,null,r!=null?r:null)}var tp=v("react"),ws=()=>{let{useLocation:e}=Ie(),{checkAuth:t}=ft(),r=e();return(0,tp.useEffect)(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null},Ar=N(v("react")),rp=({resource:e,action:t,params:r,fallback:o,children:a,...i})=>{var n,u;let m=Le(),{resources:p}=fe(),{useParams:f}=Ie(),{resource:c,id:T,action:g}=_e(),{resource:h,id:d,action:l}=f(),s=c==null?void 0:c.name,b=!e||e===(m==="legacy"?h:s)?(n=r==null?void 0:r.id)!=null?n:m==="legacy"?d:T:r==null?void 0:r.id,y=e!=null?e:m==="legacy"?h:s,C,S=To();if(m==="legacy")y&&(C=S(y));else if(e){let E=Ee(e,p);E?C=E:C={name:e,route:e}}else if(typeof c=="string"){let E=Ee(c,p);E?C=E:C={name:c,route:c}}else C=c;let{data:P}=Cs({resource:e!=null?e:C==null?void 0:C.name,action:(u=t!=null?t:m==="legacy"?l:g)!=null?u:"",params:r!=null?r:{id:b,resource:C}});return P!=null&&P.can?Ar.default.isValidElement(a)?Ar.default.cloneElement(a,i):Ar.default.createElement(Ar.default.Fragment,null,a):(P==null?void 0:P.can)===!1?Ar.default.createElement(Ar.default.Fragment,null,o!=null?o:null):null},br=N(v("react")),op=[`
12
12
  .banner {
13
13
  display: flex;
14
14
  @media (max-width: 1000px) {