@refinedev/core 4.3.0 → 4.5.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 +16 -0
- package/dist/components/pages/auth/components/forgotPassword/index.d.ts.map +1 -1
- package/dist/components/pages/auth/components/login/index.d.ts.map +1 -1
- package/dist/components/pages/auth/components/register/index.d.ts.map +1 -1
- package/dist/components/pages/auth/components/updatePassword/index.d.ts.map +1 -1
- package/dist/components/pages/auth/index.d.ts +1 -1
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/iife/index.js +3 -3
- package/dist/iife/index.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/interfaces/auth.d.ts +14 -5
- package/dist/interfaces/auth.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/authenticated/index.tsx +0 -1
- package/src/components/pages/auth/components/forgotPassword/index.tsx +2 -1
- package/src/components/pages/auth/components/login/index.tsx +2 -1
- package/src/components/pages/auth/components/register/index.tsx +2 -1
- package/src/components/pages/auth/components/updatePassword/index.tsx +2 -1
- package/src/components/pages/auth/index.tsx +1 -1
- package/src/interfaces/auth.tsx +29 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @pankod/refine-core
|
|
2
2
|
|
|
3
|
+
## 4.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#3912](https://github.com/refinedev/refine/pull/3912) [`0ffe70308b2`](https://github.com/refinedev/refine/commit/0ffe70308b24d2d70695399fb0a1b7b76bcf2ccb) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - - `title` prop added to `AuthPage`'s `renderContent` prop to use in the custom content.
|
|
8
|
+
- `title` prop added to `AuthPage` to render a custom title.
|
|
9
|
+
- ⚠️ These features have not been implemented yet. Only types were added. It will be implemented in the next release.
|
|
10
|
+
|
|
11
|
+
## 4.4.0
|
|
12
|
+
|
|
13
|
+
### Minor Changes
|
|
14
|
+
|
|
15
|
+
- [#3912](https://github.com/refinedev/refine/pull/3912) [`0ffe70308b2`](https://github.com/refinedev/refine/commit/0ffe70308b24d2d70695399fb0a1b7b76bcf2ccb) Thanks [@alicanerdurmaz](https://github.com/alicanerdurmaz)! - - `title` prop added to `AuthPage`'s `renderContent` prop to use in the custom content.
|
|
16
|
+
- `title` prop added to `AuthPage` to render a custom title.
|
|
17
|
+
- ⚠️ These features have not been implemented yet. Only types were added. It will be implemented in the next release.
|
|
18
|
+
|
|
3
19
|
## 4.3.0
|
|
4
20
|
|
|
5
21
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/forgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAEH,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,aAAK,mBAAmB,GAAG,uBAAuB,CAC9C,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/forgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAEH,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,aAAK,mBAAmB,GAAG,uBAAuB,CAC9C,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAoG5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/login/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,cAAc,EAAkB,MAAM,2BAA2B,CAAC;AAK3E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,UAAU,GAAG,cAAc,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;AAE5E,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/login/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,cAAc,EAAkB,MAAM,2BAA2B,CAAC;AAK3E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,UAAU,GAAG,cAAc,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;AAE5E,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CA2K1C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/register/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAU9D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,aAAa,GAAG,iBAAiB,CAClC,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/register/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAU9D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,aAAa,GAAG,iBAAiB,CAClC,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAoJhD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/updatePassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAEH,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,mBAAmB,GAAG,uBAAuB,CAC9C,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/auth/components/updatePassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAEH,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGpD,aAAK,mBAAmB,GAAG,uBAAuB,CAC9C,YAAY,EACZ,YAAY,EACZ,aAAa,CAChB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAuF5D,CAAC"}
|
|
@@ -5,7 +5,7 @@ export declare type FormPropsType = DetailedHTMLProps<FormHTMLAttributes<HTMLFor
|
|
|
5
5
|
export declare type AuthProps = AuthPageProps<DivPropsType, DivPropsType, FormPropsType>;
|
|
6
6
|
/**
|
|
7
7
|
* **refine** has a default auth page form which is served on `/login` route when the `authProvider` configuration is provided.
|
|
8
|
-
*
|
|
8
|
+
* @param title is not implemented yet.
|
|
9
9
|
* @see {@link https://refine.dev/docs/api-references/components/refine-config#authpage} for more details.
|
|
10
10
|
*/
|
|
11
11
|
export declare const AuthPage: React.FC<AuthProps>;
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import kt,{useEffect as Wa,useState as Ka}from"react";import pt from"react";var to=pt.createContext({}),ro=({children:e,isProvided:t,...r})=>{let{replace:o}=ee(),s=async l=>{var p;try{return await((p=r.login)==null?void 0:p.call(r,l))}catch(d){return Promise.reject(d)}},a=async l=>{var p;try{return await((p=r.register)==null?void 0:p.call(r,l))}catch(d){return Promise.reject(d)}},n=async l=>{var p;try{return await((p=r.logout)==null?void 0:p.call(r,l))}catch(d){return Promise.reject(d)}},i=async l=>{var p;try{return await((p=r.checkAuth)==null?void 0:p.call(r,l)),Promise.resolve()}catch(d){return d!=null&&d.redirectPath&&o(d.redirectPath),Promise.reject(d)}};return pt.createElement(to.Provider,{value:{...r,login:s,logout:n,checkAuth:i,register:a,isProvided:t}},e)},oo=pt.createContext({}),so=({children:e,isProvided:t,...r})=>{let o=async p=>{var d;try{return await((d=r.login)==null?void 0:d.call(r,p))}catch(c){return console.warn("Unhandled Error in login: refine always expects a resolved promise.",c),Promise.reject(c)}},s=async p=>{var d;try{return await((d=r.register)==null?void 0:d.call(r,p))}catch(c){return console.warn("Unhandled Error in register: refine always expects a resolved promise.",c),Promise.reject(c)}},a=async p=>{var d;try{return await((d=r.logout)==null?void 0:d.call(r,p))}catch(c){return console.warn("Unhandled Error in logout: refine always expects a resolved promise.",c),Promise.reject(c)}},n=async p=>{var d;try{let c=await((d=r.check)==null?void 0:d.call(r,p));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in check: refine always expects a resolved promise.",c),Promise.reject(c)}},i=async p=>{var d;try{let c=await((d=r.forgotPassword)==null?void 0:d.call(r,p));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in forgotPassword: refine always expects a resolved promise.",c),Promise.reject(c)}},l=async p=>{var d;try{let c=await((d=r.updatePassword)==null?void 0:d.call(r,p));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in updatePassword: refine always expects a resolved promise.",c),Promise.reject(c)}};return pt.createElement(oo.Provider,{value:{...r,login:o,logout:a,check:n,register:s,forgotPassword:i,updatePassword:l,isProvided:t}},e)},j=()=>pt.useContext(to),q=()=>pt.useContext(oo);import{useQuery as no}from"@tanstack/react-query";function Ss({v3LegacyAuthProviderCompatible:e=!1,options:t}={}){let{getPermissions:r}=j(),{getPermissions:o}=q(),s=no(["usePermissions"],o!=null?o:()=>Promise.resolve(void 0),{enabled:!e&&!!o,...e?{}:t}),a=no(["usePermissions","v3LegacyAuthProviderCompatible"],r!=null?r:()=>Promise.resolve(void 0),{enabled:e&&!!r,...e?t:{}});return e?a:s}import{useQuery as ao}from"@tanstack/react-query";function cr({v3LegacyAuthProviderCompatible:e=!1,queryOptions:t}={}){let{getUserIdentity:r}=j(),{getIdentity:o}=q(),s=ao(["getUserIdentity"],o!=null?o:()=>Promise.resolve({}),{enabled:!e&&!!o,retry:!1,...e===!0?{}:t}),a=ao(["getUserIdentity","v3LegacyAuthProviderCompatible"],r!=null?r:()=>Promise.resolve({}),{enabled:e&&!!r,retry:!1,...e?t:{}});return e?a:s}import{useMutation as io}from"@tanstack/react-query";import{useQueryClient as ws}from"@tanstack/react-query";var lt=()=>{let e=ws();return async()=>{await Promise.all([e.invalidateQueries(["useAuthenticated"]),e.invalidateQueries(["getUserIdentity"]),e.invalidateQueries(["usePermissions"])])}};function Ht({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=lt(),o=F(),s=te(),{push:a}=ee(),{open:n,close:i}=me(),{logout:l}=j(),{logout:p}=q(),d=io(["useLogout"],p,{onSuccess:async(g,x)=>{let{success:D,error:T,redirectTo:u}=g,{redirectPath:y}=x!=null?x:{},R=y!=null?y:u;D&&(i==null||i("useLogout-error")),(T||!D)&&(n==null||n(pr(T))),await r(),R!==!1&&(o==="legacy"?a(R!=null?R:"/login"):R&&s({to:R}))},onError:g=>{n==null||n(pr(g))},...e===!0?{}:t}),c=io(["useLogout","v3LegacyAuthProviderCompatible"],l,{onSuccess:async(g,x)=>{var T;let D=(T=x==null?void 0:x.redirectPath)!=null?T:g;if(await r(),D!==!1){if(D){o==="legacy"?a(D):s({to:D});return}o==="legacy"?a("/login"):s({to:"/login"})}},onError:g=>{n==null||n(pr(g))},...e?t:{}});return e?c:d}var pr=e=>({key:"useLogout-error",type:"error",message:(e==null?void 0:e.name)||"Logout Error",description:(e==null?void 0:e.message)||"Something went wrong during logout"});import{useMutation as uo}from"@tanstack/react-query";import ks from"qs";import Vs from"react";function Pt({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=lt(),o=F(),s=te(),{replace:a}=ee(),n=z(),{useLocation:i}=W(),{search:l}=i(),{close:p,open:d}=me(),{login:c}=j(),{login:g}=q(),x=Vs.useMemo(()=>{var u;return o==="legacy"?ks.parse(l,{ignoreQueryPrefix:!0}).to:(u=n.params)==null?void 0:u.to},[o,n.params,l]),D=uo(["useLogin"],g,{onSuccess:async({success:u,redirectTo:y,error:R})=>{u&&(p==null||p("login-error")),(R||!u)&&(d==null||d(lr(R))),await r(),x&&u?o==="legacy"?a(x):s({to:x,type:"replace"}):y?o==="legacy"?a(y):s({to:y,type:"replace"}):o==="legacy"&&a("/")},onError:u=>{d==null||d(lr(u))},...e===!0?{}:t}),T=uo(["useLogin","v3LegacyAuthProviderCompatible"],c,{onSuccess:async u=>{await r(),x&&a(x),u!==!1&&!x&&(typeof u=="string"?o==="legacy"?a(u):s({to:u,type:"replace"}):o==="legacy"?a("/"):s({to:"/",type:"replace"})),p==null||p("login-error")},onError:u=>{d==null||d(lr(u))},...e?t:{}});return e?T:D}var lr=e=>({message:(e==null?void 0:e.name)||"Login Error",description:(e==null?void 0:e.message)||"Invalid credentials",key:"login-error",type:"error"});import{useMutation as co}from"@tanstack/react-query";function mr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=lt(),o=F(),s=te(),{replace:a}=ee(),{register:n}=j(),{register:i}=q(),{close:l,open:p}=me(),d=co(["useRegister"],i,{onSuccess:async({success:g,redirectTo:x,error:D})=>{g&&(l==null||l("register-error")),(D||!g)&&(p==null||p(dr(D))),await r(),x?o==="legacy"?a(x):s({to:x,type:"replace"}):o==="legacy"&&a("/")},onError:g=>{p==null||p(dr(g))},...e===!0?{}:t}),c=co(["useRegister","v3LegacyAuthProviderCompatible"],n,{onSuccess:async g=>{await r(),g!==!1&&(g?o==="legacy"?a(g):s({to:g,type:"replace"}):o==="legacy"?a("/"):s({to:"/",type:"replace"}),l==null||l("register-error"))},onError:g=>{p==null||p(dr(g))},...e?t:{}});return e?c:d}var dr=e=>({message:(e==null?void 0:e.name)||"Register Error",description:(e==null?void 0:e.message)||"Error while registering",key:"register-error",type:"error"});import{useMutation as po}from"@tanstack/react-query";function yr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=F(),o=te(),{replace:s}=ee(),{forgotPassword:a}=j(),{forgotPassword:n}=q(),{close:i,open:l}=me(),p=po(["useForgotPassword"],n,{onSuccess:({success:c,redirectTo:g,error:x})=>{c&&(i==null||i("forgot-password-error")),(x||!c)&&(l==null||l(fr(x))),g&&(r==="legacy"?s(g):o({to:g,type:"replace"}))},onError:c=>{l==null||l(fr(c))},...e===!0?{}:t}),d=po(["useForgotPassword","v3LegacyAuthProviderCompatible"],a,{onSuccess:c=>{c!==!1&&c&&(r==="legacy"?s(c):o({to:c,type:"replace"})),i==null||i("forgot-password-error")},onError:c=>{l==null||l(fr(c))},...e?t:{}});return e?d:p}var fr=e=>({message:(e==null?void 0:e.name)||"Forgot Password Error",description:(e==null?void 0:e.message)||"Error while resetting password",key:"forgot-password-error",type:"error"});import Qs from"react";import{useMutation as lo}from"@tanstack/react-query";import Bs from"qs";function Tr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=F(),o=te(),{replace:s}=ee(),{updatePassword:a}=j(),{updatePassword:n}=q(),{close:i,open:l}=me(),p=z(),{useLocation:d}=W(),{search:c}=d(),g=Qs.useMemo(()=>{var T;if(r==="legacy"){let u=Bs.parse(c,{ignoreQueryPrefix:!0});return u!=null?u:{}}else return(T=p.params)!=null?T:{}},[c,p,r]),x=lo(["useUpdatePassword"],async T=>n==null?void 0:n({...g,...T}),{onSuccess:({success:T,redirectTo:u,error:y})=>{T&&(i==null||i("update-password-error")),(y||!T)&&(l==null||l(gr(y))),u&&(r==="legacy"?s(u):o({to:u,type:"replace"}))},onError:T=>{l==null||l(gr(T))},...e===!0?{}:t}),D=lo(["useUpdatePassword","v3LegacyAuthProviderCompatible"],async T=>a==null?void 0:a({...g,...T}),{onSuccess:T=>{T!==!1&&T&&(r==="legacy"?s(T):o({to:T,type:"replace"})),i==null||i("update-password-error")},onError:T=>{l==null||l(gr(T))},...e?t:{}});return e?D:x}var gr=e=>({message:(e==null?void 0:e.name)||"Update Password Error",description:(e==null?void 0:e.message)||"Error while updating password",key:"update-password-error",type:"error"});import{useQuery as mo}from"@tanstack/react-query";function $t({v3LegacyAuthProviderCompatible:e=!1,params:t}={}){let{checkAuth:r}=j(),{check:o}=q(),s=mo(["useAuthenticated",t],async()=>{var n;return(n=await(o==null?void 0:o(t)))!=null?n:{}},{retry:!1,enabled:!e}),a=mo(["useAuthenticated",t,"v3LegacyAuthProviderCompatible"],async()=>{var n;return(n=await(r==null?void 0:r(t)))!=null?n:{}},{retry:!1,enabled:e});return e?a:s}var Ns=$t;import{useMutation as fo}from"@tanstack/react-query";function Y({v3LegacyAuthProviderCompatible:e=!1}={}){let t=F(),r=te(),{replace:o}=ee(),{checkError:s}=j(),{onError:a}=q(),{mutate:n}=Ht({v3LegacyAuthProviderCompatible:Boolean(e)}),{mutate:i}=Ht({v3LegacyAuthProviderCompatible:Boolean(e)}),l=fo(["useCheckError"],a,{onSuccess:({logout:d,redirectTo:c})=>{if(d){i({redirectPath:c});return}if(c){t==="legacy"?o(c):r({to:c,type:"replace"});return}}}),p=fo(["useCheckError","v3LegacyAuthProviderCompatible"],s,{onError:d=>{n({redirectPath:d})}});return e?p:l}var Fs=Y;var Rr=()=>{let{isProvided:e}=j(),{isProvided:t}=q();return Boolean(t||e)};import{useQuery as js}from"@tanstack/react-query";var bt=e=>e/1e3;import Os from"lodash/zip";import Hs from"lodash/fromPairs";var Wt=(e,t=r=>r)=>{let[r,...o]=e;return o.map(s=>Hs(Os(r,s))).map((s,a,n)=>t.call(void 0,s,a,n))};import xo from"pluralize";import xr from"qs";import yo from"lodash/unionWith";import go from"lodash/differenceWith";import $s from"warn-once";var Kt=e=>{var n;let{current:t,pageSize:r,sorter:o,sorters:s,filters:a}=xr.parse(e.substring(1));return{parsedCurrent:t&&Number(t),parsedPageSize:r&&Number(r),parsedSorter:(n=b(s,o))!=null?n:[],parsedFilters:a!=null?a:[]}},Ws=e=>{let t=xr.stringify(e);return Kt(`/${t}`)},Gt=e=>{let t={skipNulls:!0,arrayFormat:"indices",encode:!1},{pagination:r,sorter:o,sorters:s,filters:a,...n}=e;return xr.stringify({...n,...r||{},sorters:b(s,o),filters:a},t)},To=(e,t)=>e.operator!=="and"&&e.operator!=="or"&&t.operator!=="and"&&t.operator!=="or"?("field"in e?e.field:void 0)==("field"in t?t.field:void 0)&&e.operator==t.operator:("key"in e?e.key:void 0)==("key"in t?t.key:void 0)&&e.operator==t.operator,Ro=(e,t)=>e.field==t.field,dt=(e,t,r=[])=>(t.filter(s=>(s.operator==="or"||s.operator==="and")&&!s.key).length>1&&$s(!0,`[conditionalFilters]: You have created multiple Conditional Filters at the top level, this requires the key parameter.
|
|
2
|
-
For more information, see https://refine.dev/docs/advanced-tutorials/data-provider/handling-filters/#top-level-multiple-conditional-filters-usage`),yo(e,t,r,To).filter(s=>s.value!==void 0&&s.value!==null&&(s.operator!=="or"||s.operator==="or"&&s.value.length!==0)&&(s.operator!=="and"||s.operator==="and"&&s.value.length!==0))),zt=(e,t)=>yo(e,t,Ro).filter(r=>r.order!==void 0&&r.order!==null),_t=(e,t)=>[...go(t,e,To),...e],jt=(e,t)=>[...go(t,e,Ro),...e],Ks=(e,t)=>{if(!t)return;let r=t.find(o=>o.field===e);if(r)return r.order},Gs=(e,t,r="eq")=>{let o=t==null?void 0:t.find(s=>{if(s.operator!=="or"&&s.operator!=="and"&&"field"in s){let{operator:a,field:n}=s;return n===e&&a===r}});if(o)return o.value||[]};var zs=e=>new Promise((t,r)=>{let o=new FileReader,s=()=>{o.result&&(o.removeEventListener("load",s,!1),t(o.result))};o.addEventListener("load",s,!1),o.readAsDataURL(e.originFileObj),o.onerror=a=>(o.removeEventListener("load",s,!1),r(a))});var mt=(e="",t)=>{let r=qe(e);return t==="singular"?xo.singular(r):xo.plural(r)};var Co=(e={})=>e!=null&&e.id?{...e,id:decodeURIComponent(e.id)}:e;var b=(...e)=>e.find(t=>typeof t<"u");var _=(e,t,r,o)=>{let s=t||"default",a={all:[s],resourceAll:[s,e||""],list:n=>[...a.resourceAll,"list",{...n,...b(r,o)||{}}],many:n=>[...a.resourceAll,"getMany",n&&n.map(String),{...b(r,o)||{}}].filter(i=>i!==void 0),detail:n=>[...a.resourceAll,"detail",n==null?void 0:n.toString(),{...b(r,o)||{}}],logList:n=>["logList",e,n,o].filter(i=>i!==void 0)};return a};var Cr=(e,t)=>!e||!t?!1:!!e.find(r=>r===t);var et=e=>e.startsWith(":");var we=e=>e.split("/").filter(r=>r!=="");var Pr=(e,t)=>{let r=we(e),o=we(t);return r.length===o.length};var ue=e=>e.replace(/^\/|\/$/g,"");var br=(e,t)=>{let r=ue(e),o=ue(t);if(!Pr(r,o))return!1;let s=we(r);return we(o).every((n,i)=>et(n)||n===s[i])};var hr=(e,t,r)=>{let o=ue(r||""),s=`${o}${o?"/":""}${e}`;return t==="list"?s=`${s}`:t==="create"?s=`${s}/create`:t==="edit"?s=`${s}/edit/:id`:t==="show"?s=`${s}/show/:id`:t==="clone"&&(s=`${s}/clone/:id`),`/${s.replace(/^\//,"")}`};var ge=(e,t)=>{var s,a;let r=b((s=e.meta)==null?void 0:s.parent,(a=e.options)==null?void 0:a.parent,e.parentName);if(!r)return;let o=t.find(n=>{var i;return((i=n.identifier)!=null?i:n.name)===r});return o!=null?o:{name:r}};var ht=(e,t,r)=>{let o=[],s=ge(e,t);for(;s;)o.push(s),s=ge(s,t);if(o.length!==0)return`/${o.reverse().map(a=>{var i,l;let n=r&&(l=(i=a.options)==null?void 0:i.route)!=null?l:a.name;return ue(n)}).join("/")}`};var ne=(e,t,r)=>{let o=[],s=["list","show","edit","create","clone"],a=ht(e,t,r);return s.forEach(n=>{var p,d,c,g;let i=r&&n==="clone"?e.create:e[n],l;typeof i=="function"||r?l=hr(r&&(g=(c=(p=e.meta)==null?void 0:p.route)!=null?c:(d=e.options)==null?void 0:d.route)!=null?g:e.name,n,r?a:void 0):typeof i=="string"?l=i:typeof i=="object"&&(l=i.path),l&&o.push({action:n,resource:e,route:`/${l.replace(/^\//,"")}`})}),o};var Po=e=>{var s,a;if(e.length===0)return;if(e.length===1)return e[0];let t=e.map(n=>({...n,splitted:we(ue(n.route))})),r=(a=(s=t[0])==null?void 0:s.splitted.length)!=null?a:0,o=[...t];for(let n=0;n<r;n++){let i=o.filter(l=>!et(l.splitted[n]));if(i.length!==0){if(i.length===1){o=i;break}o=i}}return o[0]};var vr=(e,t)=>{let o=t.flatMap(a=>ne(a,t)).filter(a=>br(e,a.route)),s=Po(o);return{found:!!s,resource:s==null?void 0:s.resource,action:s==null?void 0:s.action,matchedRoute:s==null?void 0:s.route}};var Yt=(e,t)=>{var s,a,n;let r,o=ht(e,t,!0);if(o){let i=b(e.meta,e.options);r=`${o}/${(s=i==null?void 0:i.route)!=null?s:e.name}`}else r=(n=(a=e.options)==null?void 0:a.route)!=null?n:e.name;return`/${r.replace(/^\//,"")}`};var bo=e=>{var n,i,l;let t=[],r={},o={},s,a;for(let p=0;p<e.length;p++){s=e[p];let d=(l=(i=s.route)!=null?i:(n=b(s==null?void 0:s.meta,s.options))==null?void 0:n.route)!=null?l:"";r[d]=s,r[d].children=[],o[s.name]=s,o[s.name].children=[]}for(let p in r)r.hasOwnProperty(p)&&(a=r[p],a.parentName&&o[a.parentName]?o[a.parentName].children.push(a):t.push(a));return t};var qe=e=>(e=e.replace(/([a-z]{1})([A-Z]{1})/g,"$1-$2"),e=e.replace(/([A-Z]{1})([A-Z]{1})([a-z]{1})/g,"$1-$2$3"),e=e.toLowerCase().replace(/[_-]+/g," ").replace(/\s{2,}/g," ").trim(),e=e.charAt(0).toUpperCase()+e.slice(1),e);import ho from"react";import _s from"react";var Dr=({children:e})=>_s.createElement("div",null,e);var ke={mutationMode:"pessimistic",syncWithLocation:!1,undoableTimeout:5e3,warnWhenUnsavedChanges:!1,liveMode:"off",redirect:{afterCreate:"list",afterClone:"list",afterEdit:"list"}},de=ho.createContext({hasDashboard:!1,mutationMode:"pessimistic",warnWhenUnsavedChanges:!1,syncWithLocation:!1,undoableTimeout:5e3,Title:void 0,Sider:void 0,Header:void 0,Footer:void 0,Layout:Dr,OffLayoutArea:void 0,liveMode:"off",onLiveEvent:void 0,options:ke}),vo=({hasDashboard:e,mutationMode:t,warnWhenUnsavedChanges:r,syncWithLocation:o,undoableTimeout:s,children:a,DashboardPage:n,Title:i,Layout:l=Dr,Header:p,Sider:d,Footer:c,OffLayoutArea:g,LoginPage:x=Ur,catchAll:D,liveMode:T="off",onLiveEvent:u,options:y})=>ho.createElement(de.Provider,{value:{hasDashboard:e,mutationMode:t,warnWhenUnsavedChanges:r,syncWithLocation:o,Title:i,undoableTimeout:s,Layout:l,Header:p,Sider:d,Footer:c,OffLayoutArea:g,DashboardPage:n,LoginPage:x,catchAll:D,liveMode:T,onLiveEvent:u,options:y}},a);var Er=({options:e,disableTelemetry:t,liveMode:r,mutationMode:o,reactQueryClientConfig:s,reactQueryDevtoolConfig:a,syncWithLocation:n,undoableTimeout:i,warnWhenUnsavedChanges:l}={})=>{var g,x,D,T,u,y,R,v,h,m,f,C,P,U,E,L,M,I,S,V,N,A,B,O;let p={breadcrumb:e==null?void 0:e.breadcrumb,mutationMode:(x=(g=e==null?void 0:e.mutationMode)!=null?g:o)!=null?x:ke.mutationMode,undoableTimeout:(T=(D=e==null?void 0:e.undoableTimeout)!=null?D:i)!=null?T:ke.undoableTimeout,syncWithLocation:(y=(u=e==null?void 0:e.syncWithLocation)!=null?u:n)!=null?y:ke.syncWithLocation,warnWhenUnsavedChanges:(v=(R=e==null?void 0:e.warnWhenUnsavedChanges)!=null?R:l)!=null?v:ke.warnWhenUnsavedChanges,liveMode:(m=(h=e==null?void 0:e.liveMode)!=null?h:r)!=null?m:ke.liveMode,redirect:{afterCreate:(C=(f=e==null?void 0:e.redirect)==null?void 0:f.afterCreate)!=null?C:ke.redirect.afterCreate,afterClone:(U=(P=e==null?void 0:e.redirect)==null?void 0:P.afterClone)!=null?U:ke.redirect.afterClone,afterEdit:(L=(E=e==null?void 0:e.redirect)==null?void 0:E.afterEdit)!=null?L:ke.redirect.afterEdit}},d=(I=(M=e==null?void 0:e.disableTelemetry)!=null?M:t)!=null?I:!1,c={clientConfig:(N=(V=(S=e==null?void 0:e.reactQuery)==null?void 0:S.clientConfig)!=null?V:s)!=null?N:{},devtoolConfig:(O=(B=(A=e==null?void 0:e.reactQuery)==null?void 0:A.devtoolConfig)!=null?B:a)!=null?O:{}};return{optionsWithDefaults:p,disableTelemetryWithDefault:d,reactQueryWithDefaults:c}};var Lr=({redirectFromProps:e,action:t,redirectOptions:r})=>{if(e||e===!1)return e;switch(t){case"clone":return r.afterClone;case"create":return r.afterCreate;case"edit":return r.afterEdit;default:return!1}};var Jt=async(e,t,r)=>{let o=[];for(let[s,a]of e.entries())try{let n=await a();o.push(t(n,s))}catch(n){o.push(r(n,s))}return o};var $=(e,t=[],r=!1)=>{if(!e)return;if(r){let s=t.find(n=>{var i;return ue((i=n.route)!=null?i:"")===ue(e)});return s||t.find(n=>n.name===e)}return t.find(s=>{var a;return((a=s.identifier)!=null?a:s.name)===e})};var k=(e,t,r)=>{if(t)return t;let o=$(e,r),s=b(o==null?void 0:o.meta,o==null?void 0:o.options);return s!=null&&s.dataProviderName?s.dataProviderName:"default"};var Ne=async e=>({data:(await Promise.all(e)).map(t=>t.data)});var Xt=e=>{let{pagination:t,cursor:r}=e;if(r!=null&&r.next)return r.next;let o=(t==null?void 0:t.current)||1,s=(t==null?void 0:t.pageSize)||10,a=Math.ceil((e.total||0)/s);return o<a?Number(o)+1:void 0},Zt=e=>{let{pagination:t,cursor:r}=e;if(r!=null&&r.prev)return r.prev;let o=(t==null?void 0:t.current)||1;return o===1?void 0:o-1};var qt=e=>{let t=[];return e==null||e.forEach(r=>{var o,s,a;t.push({...r,label:(a=(o=r.meta)==null?void 0:o.label)!=null?a:(s=r.options)==null?void 0:s.label,route:Yt(r,e),canCreate:!!r.create,canEdit:!!r.edit,canShow:!!r.show,canDelete:r.canDelete})}),t};var Do=e=>we(ue(e)).flatMap(r=>et(r)?[r.slice(1)]:[]);var Uo=(e,t={},r={})=>e.reduce((o,s)=>{var n;let a=r[s]||((n=t.params)==null?void 0:n[s])||(s==="id"?t.id:void 0)||(s==="action"?t.action:void 0)||(s==="resource"?t.resource:void 0);return typeof a<"u"&&(o[s]=a),o},{});var pe=(e,t={},r={})=>{let o=Do(e),s=Uo(o,t,r);return e.replace(/:([^\/]+)/g,(a,n)=>{let i=s[n];return typeof i<"u"?`${i}`:a})};var H=()=>{let e=j(),t=q();return t.isProvided?{isLegacy:!1,...t}:e.isProvided?{isLegacy:!0,...e,check:e.checkAuth,onError:e.checkError,getIdentity:e.getUserIdentity}:null};var vt=({hasPagination:e,pagination:t,configPagination:r}={})=>{var i,l,p;let o=e===!1?"off":"server",s=(i=t==null?void 0:t.mode)!=null?i:o,a=(l=b(t==null?void 0:t.current,r==null?void 0:r.current))!=null?l:1,n=(p=b(t==null?void 0:t.pageSize,r==null?void 0:r.pageSize))!=null?p:10;return{current:a,pageSize:n,mode:s}};var Dt=({resource:e,config:t,filters:r,hasPagination:o,pagination:s,sorters:a,queryOptions:n,successNotification:i,errorNotification:l,meta:p,metaData:d,liveMode:c,onLiveEvent:g,liveParams:x,dataProviderName:D})=>{let{resources:T}=w(),u=K(),y=Q(),R=H(),{mutate:v}=Y({v3LegacyAuthProviderCompatible:Boolean(R==null?void 0:R.isLegacy)}),h=J(),m=k(e,D,T),f=b(p,d),C=b(r,t==null?void 0:t.filters),P=b(a,t==null?void 0:t.sort),U=b(o,t==null?void 0:t.hasPagination),E=vt({pagination:s,configPagination:t==null?void 0:t.pagination,hasPagination:U}),L=E.mode==="server",M={meta:f,metaData:f,filters:C,hasPagination:L,pagination:E,sorters:P,config:{...t,sort:P}},I=(n==null?void 0:n.enabled)===void 0||(n==null?void 0:n.enabled)===!0,S=_(e,m,f,f),{getList:V}=u(m);return je({resource:e,types:["*"],params:{meta:f,metaData:f,pagination:E,hasPagination:L,sort:P,sorters:P,filters:C,subscriptionType:"useList",...x},channel:`resources/${e}`,enabled:I,liveMode:c,onLiveEvent:g}),js(S.list({filters:C,hasPagination:L,...L&&{pagination:E},...a&&{sorters:a},...(t==null?void 0:t.sort)&&{sort:t==null?void 0:t.sort}}),({queryKey:A,pageParam:B,signal:O})=>V({resource:e,pagination:E,hasPagination:L,filters:C,sort:P,sorters:P,meta:{...f||{},queryContext:{queryKey:A,pageParam:B,signal:O}},metaData:{...f||{},queryContext:{queryKey:A,pageParam:B,signal:O}}}),{...n,enabled:typeof(n==null?void 0:n.enabled)<"u"?n==null?void 0:n.enabled:!!e,select:A=>{var G;let B=A,{current:O,mode:ye,pageSize:he}=E;return ye==="client"&&(B={...B,data:B.data.slice((O-1)*he,O*he),total:B.total}),n!=null&&n.select?(G=n==null?void 0:n.select)==null?void 0:G.call(n,B):B},onSuccess:A=>{var O;(O=n==null?void 0:n.onSuccess)==null||O.call(n,A);let B=typeof i=="function"?i(A,M,e):i;h(B)},onError:A=>{var O;v(A),(O=n==null?void 0:n.onError)==null||O.call(n,A);let B=typeof l=="function"?l(A,M,e):l;h(B,{key:`${e}-useList-notification`,message:y("notifications.error",{statusCode:A.statusCode},`Error (status code: ${A.statusCode})`),description:A.message,type:"error"})}})};import{useQuery as Ys}from"@tanstack/react-query";var Ut=({resource:e,id:t,queryOptions:r,successNotification:o,errorNotification:s,meta:a,metaData:n,liveMode:i,onLiveEvent:l,liveParams:p,dataProviderName:d})=>{let{resources:c}=w(),g=K(),x=_(e,k(e,d,c),b(a,n),b(a,n)),{getOne:D}=g(k(e,d,c)),T=Q(),u=H(),{mutate:y}=Y({v3LegacyAuthProviderCompatible:Boolean(u==null?void 0:u.isLegacy)}),R=J();return je({resource:e,types:["*"],channel:`resources/${e}`,params:{ids:t?[t]:[],id:t,meta:b(a,n),metaData:b(a,n),subscriptionType:"useOne",...p},enabled:typeof(r==null?void 0:r.enabled)<"u"?r==null?void 0:r.enabled:typeof e<"u"&&typeof t<"u",liveMode:i,onLiveEvent:l}),Ys(x.detail(t),({queryKey:h,pageParam:m,signal:f})=>D({resource:e,id:t,meta:{...b(a,n)||{},queryContext:{queryKey:h,pageParam:m,signal:f}},metaData:{...b(a,n)||{},queryContext:{queryKey:h,pageParam:m,signal:f}}}),{...r,enabled:typeof(r==null?void 0:r.enabled)<"u"?r==null?void 0:r.enabled:typeof t<"u",onSuccess:h=>{var f;(f=r==null?void 0:r.onSuccess)==null||f.call(r,h);let m=typeof o=="function"?o(h,{id:t,...b(a,n)||{}},e):o;R(m)},onError:h=>{var f;y(h),(f=r==null?void 0:r.onError)==null||f.call(r,h);let m=typeof s=="function"?s(h,{id:t,...b(a,n)||{}},e):s;R(m,{key:`${t}-${e}-getOne-notification`,message:T("notifications.error",{statusCode:h.statusCode},`Error (status code: ${h.statusCode})`),description:h.message,type:"error"})}})};import{useQuery as Js}from"@tanstack/react-query";var Ir=({resource:e,ids:t,queryOptions:r,successNotification:o,errorNotification:s,meta:a,metaData:n,liveMode:i,onLiveEvent:l,liveParams:p,dataProviderName:d})=>{let{resources:c}=w(),g=K(),x=_(e,k(e,d,c),b(a,n),b(a,n)),{getMany:D,getOne:T}=g(k(e,d,c)),u=Q(),y=H(),{mutate:R}=Y({v3LegacyAuthProviderCompatible:Boolean(y==null?void 0:y.isLegacy)}),v=J(),h=(r==null?void 0:r.enabled)===void 0||(r==null?void 0:r.enabled)===!0;return je({resource:e,types:["*"],params:{ids:t!=null?t:[],meta:b(a,n),metaData:b(a,n),subscriptionType:"useMany",...p},channel:`resources/${e}`,enabled:h,liveMode:i,onLiveEvent:l}),Js(x.many(t),({queryKey:f,pageParam:C,signal:P})=>D?D({resource:e,ids:t,metaData:{...b(a,n)||{},queryContext:{queryKey:f,pageParam:C,signal:P}}}):Ne(t.map(U=>T({resource:e,id:U,metaData:{...b(a,n)||{},queryContext:{queryKey:f,pageParam:C,signal:P}}}))),{...r,onSuccess:f=>{var P;(P=r==null?void 0:r.onSuccess)==null||P.call(r,f);let C=typeof o=="function"?o(f,t,e):o;v(C)},onError:f=>{var P;R(f),(P=r==null?void 0:r.onError)==null||P.call(r,f);let C=typeof s=="function"?s(f,t,e):s;v(C,{key:`${t[0]}-${e}-getMany-notification`,message:u("notifications.error",{statusCode:f.statusCode},`Error (status code: ${f.statusCode})`),description:f.message,type:"error"})}})};import{useMutation as en,useQueryClient as tn}from"@tanstack/react-query";import Ar,{useReducer as Xs}from"react";import Mr from"lodash-es/isEqual";var er=Ar.createContext({notifications:[],notificationDispatch:()=>!1}),Zs=[],qs=(e,t)=>{switch(t.type){case"ADD":return[...e.filter(o=>!(Mr(o.id,t.payload.id)&&o.resource==t.payload.resource)),{...t.payload,isRunning:!0}];case"REMOVE":return e.filter(o=>!(Mr(o.id,t.payload.id)&&o.resource==t.payload.resource));case"DECREASE_NOTIFICATION_SECOND":return e.map(o=>Mr(o.id,t.payload.id)&&o.resource==t.payload.resource?{...o,seconds:t.payload.seconds-1e3}:o);default:return e}},Sr=({children:e})=>{let[t,r]=Xs(qs,Zs),o={notifications:t,notificationDispatch:r};return Ar.createElement(er.Provider,{value:o},e,typeof window<"u"&&t.map(s=>Ar.createElement(Eo,{key:`${s.id}-${s.resource}-queue`,notification:s})))};import Lo from"pluralize";var wr=({mutationOptions:e}={})=>{let{resources:t}=w(),r=tn(),o=K(),{mutationMode:s,undoableTimeout:a}=Ie(),n=Q(),i=H(),{mutate:l}=Y({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),p=xe(),{log:d}=Ce(),{notificationDispatch:c}=Ve(),g=J(),x=Pe();return en(({id:T,values:u,resource:y,mutationMode:R,undoableTimeout:v,onCancel:h,meta:m,metaData:f,dataProviderName:C})=>{let P=R!=null?R:s,U=v!=null?v:a;return P!=="undoable"?o(k(y,C,t)).update({resource:y,id:T,variables:u,meta:b(m,f),metaData:b(m,f)}):new Promise((L,M)=>{let I=()=>{o(k(y,C,t)).update({resource:y,id:T,variables:u,meta:b(m,f),metaData:b(m,f)}).then(V=>L(V)).catch(V=>M(V))},S=()=>{M({message:"mutationCancelled"})};h&&h(S),c({type:"ADD",payload:{id:T,resource:y,cancelMutation:S,doMutation:I,seconds:U,isSilent:!!h}})})},{onMutate:async({resource:T,id:u,mutationMode:y,values:R,dataProviderName:v})=>{let h=_(T,k(T,v,t)),m=r.getQueriesData(h.resourceAll),f=y!=null?y:s;return await r.cancelQueries(h.resourceAll,void 0,{silent:!0}),f!=="pessimistic"&&(r.setQueriesData(h.list(),C=>{if(!C)return null;let P=C.data.map(U=>{var E;return((E=U.id)==null?void 0:E.toString())===(u==null?void 0:u.toString())?{id:u,...U,...R}:U});return{...C,data:P}}),r.setQueriesData(h.many(),C=>{if(!C)return null;let P=C.data.map(U=>{var E;return((E=U.id)==null?void 0:E.toString())===(u==null?void 0:u.toString())&&(U={id:u,...U,...R}),U});return{...C,data:P}}),r.setQueriesData(h.detail(u),C=>C?{...C,data:{...C.data,...R}}:null)),{previousQueries:m,queryKey:h}},onSettled:(T,u,{id:y,resource:R,dataProviderName:v,invalidates:h=["list","many","detail"]})=>{x({resource:R,dataProviderName:k(R,v,t),invalidates:h,id:y}),c({type:"REMOVE",payload:{id:y,resource:R}})},onSuccess:(T,{id:u,resource:y,successNotification:R,dataProviderName:v,values:h,meta:m,metaData:f},C)=>{var V;let P=Lo.singular(y),U=typeof R=="function"?R(T,{id:u,values:h},y):R;g(U,{key:`${u}-${y}-notification`,description:n("notifications.success","Successful"),message:n("notifications.editSuccess",{resource:n(`${y}.${y}`,P)},`Successfully updated ${P}`),type:"success"}),p==null||p({channel:`resources/${y}`,type:"updated",payload:{ids:(V=T.data)!=null&&V.id?[T.data.id]:void 0},date:new Date});let E;if(C){let N=r.getQueryData(C.queryKey.detail(u));E=Object.keys(h||{}).reduce((A,B)=>{var O;return A[B]=(O=N==null?void 0:N.data)==null?void 0:O[B],A},{})}let{fields:L,operation:M,variables:I,...S}=b(m,f)||{};d==null||d.mutate({action:"update",resource:y,data:h,previousData:E,meta:{id:u,dataProviderName:k(y,v,t),...S}})},onError:(T,{id:u,resource:y,errorNotification:R,values:v},h)=>{if(h)for(let m of h.previousQueries)r.setQueryData(m[0],m[1]);if(T.message!=="mutationCancelled"){l==null||l(T);let m=Lo.singular(y),f=typeof R=="function"?R(T,{id:u,values:v},y):R;g(f,{key:`${u}-${y}-notification`,message:n("notifications.editError",{resource:n(`${y}.${y}`,m),statusCode:T.statusCode},`Error when updating ${m} (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useMutation as rn}from"@tanstack/react-query";import Io from"pluralize";var Et=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=K(),s=Pe(),{resources:a}=w(),n=Q(),i=xe(),{log:l}=Ce(),p=J();return rn(({resource:c,values:g,meta:x,metaData:D,dataProviderName:T})=>o(k(c,T,a)).create({resource:c,variables:g,meta:b(x,D),metaData:b(x,D)}),{onSuccess:(c,{resource:g,successNotification:x,dataProviderName:D,invalidates:T=["list","many"],values:u,meta:y,metaData:R})=>{var U,E,L;let v=Io.singular(g),h=typeof x=="function"?x(c,u,g):x;p(h,{key:`create-${g}-notification`,message:n("notifications.createSuccess",{resource:n(`${g}.${g}`,v)},`Successfully created ${v}`),description:n("notifications.success","Success"),type:"success"}),s({resource:g,dataProviderName:k(g,D,a),invalidates:T}),i==null||i({channel:`resources/${g}`,type:"created",payload:{ids:(U=c==null?void 0:c.data)!=null&&U.id?[c.data.id]:void 0},date:new Date});let{fields:m,operation:f,variables:C,...P}=b(y,R)||{};l==null||l.mutate({action:"create",resource:g,data:u,meta:{dataProviderName:k(g,D,a),id:(L=(E=c==null?void 0:c.data)==null?void 0:E.id)!=null?L:void 0,...P}})},onError:(c,{resource:g,errorNotification:x,values:D})=>{r(c);let T=Io.singular(g),u=typeof x=="function"?x(c,D,g):x;p(u,{key:`create-${g}-notification`,description:c.message,message:n("notifications.createError",{resource:n(`${g}.${g}`,T),statusCode:c.statusCode},`There was an error creating ${T} (status code: ${c.statusCode})`),type:"error"})},...e})};import{useQueryClient as on,useMutation as sn}from"@tanstack/react-query";import Mo from"pluralize";var nn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=K(),{resources:s}=w(),a=on(),{mutationMode:n,undoableTimeout:i}=Ie(),{notificationDispatch:l}=Ve(),p=Q(),d=xe(),{log:c}=Ce(),g=J(),x=Pe();return sn(({id:T,mutationMode:u,undoableTimeout:y,resource:R,onCancel:v,meta:h,metaData:m,dataProviderName:f,values:C})=>{let P=u!=null?u:n,U=y!=null?y:i;return P!=="undoable"?o(k(R,f,s)).deleteOne({resource:R,id:T,meta:b(h,m),metaData:b(h,m),variables:C}):new Promise((L,M)=>{let I=()=>{o(k(R,f,s)).deleteOne({resource:R,id:T,meta:b(h,m),variables:C}).then(V=>L(V)).catch(V=>M(V))},S=()=>{M({message:"mutationCancelled"})};v&&v(S),l({type:"ADD",payload:{id:T,resource:R,cancelMutation:S,doMutation:I,seconds:U,isSilent:!!v}})})},{onMutate:async({id:T,resource:u,mutationMode:y,dataProviderName:R})=>{let v=_(u,k(u,R,s)),h=y!=null?y:n;await a.cancelQueries(v.resourceAll,void 0,{silent:!0});let m=a.getQueriesData(v.resourceAll);return h!=="pessimistic"&&(a.setQueriesData(v.list(),f=>f?{data:f.data.filter(P=>{var U;return((U=P.id)==null?void 0:U.toString())!==T.toString()}),total:f.total-1}:null),a.setQueriesData(v.many(),f=>{if(!f)return null;let C=f.data.filter(P=>{var U;return((U=P.id)==null?void 0:U.toString())!==(T==null?void 0:T.toString())});return{...f,data:C}})),{previousQueries:m,queryKey:v}},onSettled:(T,u,{id:y,resource:R,dataProviderName:v,invalidates:h=["list","many"]})=>{x({resource:R,dataProviderName:k(R,v,s),invalidates:h}),l({type:"REMOVE",payload:{id:y,resource:R}})},onSuccess:(T,{id:u,resource:y,successNotification:R,dataProviderName:v,meta:h,metaData:m},f)=>{let C=Mo.singular(y!=null?y:"");a.removeQueries(f==null?void 0:f.queryKey.detail(u));let P=typeof R=="function"?R(T,u,y):R;g(P,{key:`${u}-${y}-notification`,description:p("notifications.success","Success"),message:p("notifications.deleteSuccess",{resource:p(`${y}.${y}`,C)},`Successfully deleted a ${C}`),type:"success"}),d==null||d({channel:`resources/${y}`,type:"deleted",payload:{ids:u?[u]:[]},date:new Date});let{fields:U,operation:E,variables:L,...M}=b(h,m)||{};c==null||c.mutate({action:"delete",resource:y,meta:{id:u,dataProviderName:k(y,v,s),...M}}),a.removeQueries(f==null?void 0:f.queryKey.detail(u))},onError:(T,{id:u,resource:y,errorNotification:R},v)=>{if(v)for(let h of v.previousQueries)a.setQueryData(h[0],h[1]);if(T.message!=="mutationCancelled"){r(T);let h=Mo.singular(y!=null?y:""),m=typeof R=="function"?R(T,u,y):R;g(m,{key:`${u}-${y}-notification`,message:p("notifications.deleteError",{resource:h,statusCode:T.statusCode},`Error (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useMutation as an}from"@tanstack/react-query";import un from"pluralize";var kr=({mutationOptions:e}={})=>{let t=K(),{resources:r}=w(),o=Q(),s=xe(),a=J(),n=Pe(),{log:i}=Ce();return an(({resource:p,values:d,meta:c,metaData:g,dataProviderName:x})=>{let D=t(k(p,x,r));return D.createMany?D.createMany({resource:p,variables:d,meta:b(c,g),metaData:b(c,g)}):Ne(d.map(T=>D.create({resource:p,variables:T,meta:b(c,g),metaData:b(c,g)})))},{onSuccess:(p,{resource:d,successNotification:c,dataProviderName:g,invalidates:x=["list","many"],values:D,meta:T,metaData:u})=>{let y=un.plural(d),R=typeof c=="function"?c(p,D,d):c;a(R,{key:`createMany-${d}-notification`,message:o("notifications.createSuccess",{resource:o(`${d}.${d}`,d)},`Successfully created ${y}`),description:o("notifications.success","Success"),type:"success"}),n({resource:d,dataProviderName:k(d,g,r),invalidates:x});let v=p==null?void 0:p.data.filter(P=>(P==null?void 0:P.id)!==void 0).map(P=>P.id);s==null||s({channel:`resources/${d}`,type:"created",payload:{ids:v},date:new Date});let{fields:h,operation:m,variables:f,...C}=b(T,u)||{};i==null||i.mutate({action:"createMany",resource:d,data:D,meta:{dataProviderName:k(d,g,r),ids:v,...C}})},onError:(p,{resource:d,errorNotification:c,values:g})=>{let x=typeof c=="function"?c(p,g,d):c;a(x,{key:`createMany-${d}-notification`,description:p.message,message:o("notifications.createError",{resource:o(`${d}.${d}`,d),statusCode:p.statusCode},`There was an error creating ${d} (status code: ${p.statusCode}`),type:"error"})},...e})};import{useMutation as cn,useQueryClient as pn}from"@tanstack/react-query";import Ao from"pluralize";var ln=({mutationOptions:e}={})=>{let{resources:t}=w(),r=pn(),o=K(),s=Q(),{mutationMode:a,undoableTimeout:n}=Ie(),i=H(),{mutate:l}=Y({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),{notificationDispatch:p}=Ve(),d=xe(),c=J(),g=Pe(),{log:x}=Ce();return cn(({ids:T,values:u,resource:y,onCancel:R,mutationMode:v,undoableTimeout:h,meta:m,metaData:f,dataProviderName:C})=>{let P=v!=null?v:a,U=h!=null?h:n,E=o(k(y,C,t)),L=()=>E.updateMany?E.updateMany({resource:y,ids:T,variables:u,meta:b(m,f),metaData:b(m,f)}):Ne(T.map(I=>E.update({resource:y,id:I,variables:u,meta:b(m,f),metaData:b(m,f)})));return P!=="undoable"?L():new Promise((I,S)=>{let V=()=>{L().then(A=>I(A)).catch(A=>S(A))},N=()=>{S({message:"mutationCancelled"})};R&&R(N),p({type:"ADD",payload:{id:T,resource:y,cancelMutation:N,doMutation:V,seconds:U,isSilent:!!R}})})},{onMutate:async({resource:T,ids:u,values:y,mutationMode:R,dataProviderName:v,meta:h,metaData:m})=>{let f=_(T,k(T,v,t),b(h,m),b(h,m)),C=R!=null?R:a;await r.cancelQueries(f.resourceAll,void 0,{silent:!0});let P=r.getQueriesData(f.resourceAll);if(C!=="pessimistic"){r.setQueriesData(f.list(),U=>{if(!U)return null;let E=U.data.map(L=>L.id!==void 0&&u.filter(M=>M!==void 0).map(String).includes(L.id.toString())?{...L,...y}:L);return{...U,data:E}}),r.setQueriesData(f.many(),U=>{if(!U)return null;let E=U.data.map(L=>L.id!==void 0&&u.filter(M=>M!==void 0).map(String).includes(L.id.toString())?{...L,...y}:L);return{...U,data:E}});for(let U of u)r.setQueriesData(f.detail(U),E=>{if(!E)return null;let L={...E.data,...y};return{...E,data:L}})}return{previousQueries:P,queryKey:f}},onSettled:(T,u,{ids:y,resource:R,dataProviderName:v})=>{g({resource:R,invalidates:["list","many"],dataProviderName:k(R,v,t)}),y.forEach(h=>g({resource:R,invalidates:["detail"],dataProviderName:k(R,v,t),id:h})),p({type:"REMOVE",payload:{id:y,resource:R}})},onSuccess:(T,{ids:u,resource:y,meta:R,metaData:v,dataProviderName:h,successNotification:m,values:f},C)=>{let P=Ao.singular(y),U=typeof m=="function"?m(T,{ids:u,values:f},y):m;c(U,{key:`${u}-${y}-notification`,description:s("notifications.success","Successful"),message:s("notifications.editSuccess",{resource:s(`${y}.${y}`,y)},`Successfully updated ${P}`),type:"success"}),d==null||d({channel:`resources/${y}`,type:"updated",payload:{ids:u.map(String)},date:new Date});let E=[];C&&u.forEach(V=>{let N=r.getQueryData(C.queryKey.detail(V));E.push(Object.keys(f||{}).reduce((A,B)=>{var O;return A[B]=(O=N==null?void 0:N.data)==null?void 0:O[B],A},{}))});let{fields:L,operation:M,variables:I,...S}=b(R,v)||{};x==null||x.mutate({action:"updateMany",resource:y,data:f,previousData:E,meta:{ids:u,dataProviderName:k(y,h,t),...S}})},onError:(T,{ids:u,resource:y,errorNotification:R,values:v},h)=>{if(h)for(let m of h.previousQueries)r.setQueryData(m[0],m[1]);if(T.message!=="mutationCancelled"){l==null||l(T);let m=Ao.singular(y),f=typeof R=="function"?R(T,{ids:u,values:v},y):R;c(f,{key:`${u}-${y}-updateMany-error-notification`,message:s("notifications.editError",{resource:m,statusCode:T.statusCode},`Error when updating ${m} (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useQueryClient as dn,useMutation as mn}from"@tanstack/react-query";import fn from"pluralize";var yn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),{mutationMode:o,undoableTimeout:s}=Ie(),a=K(),{notificationDispatch:n}=Ve(),i=Q(),l=xe(),p=J(),d=Pe(),{log:c}=Ce(),{resources:g}=w(),x=dn();return mn(({resource:T,ids:u,mutationMode:y,undoableTimeout:R,onCancel:v,meta:h,metaData:m,dataProviderName:f,values:C})=>{let P=y!=null?y:o,U=R!=null?R:s,E=a(k(T,f,g)),L=()=>E.deleteMany?E.deleteMany({resource:T,ids:u,meta:b(h,m),metaData:b(h,m),variables:C}):Ne(u.map(I=>E.deleteOne({resource:T,id:I,meta:b(h,m),metaData:b(h,m),variables:C})));return P!=="undoable"?L():new Promise((I,S)=>{let V=()=>{L().then(A=>I(A)).catch(A=>S(A))},N=()=>{S({message:"mutationCancelled"})};v&&v(N),n({type:"ADD",payload:{id:u,resource:T,cancelMutation:N,doMutation:V,seconds:U,isSilent:!!v}})})},{onMutate:async({ids:T,resource:u,mutationMode:y,dataProviderName:R})=>{let v=_(u,k(u,R,g)),h=y!=null?y:o;await x.cancelQueries(v.resourceAll,void 0,{silent:!0});let m=x.getQueriesData(v.resourceAll);if(h!=="pessimistic"){x.setQueriesData(v.list(),f=>f?{data:f.data.filter(P=>P.id&&!T.map(String).includes(P.id.toString())),total:f.total-1}:null),x.setQueriesData(v.many(),f=>{if(!f)return null;let C=f.data.filter(P=>P.id?!T.map(String).includes(P.id.toString()):!1);return{...f,data:C}});for(let f of T)x.setQueriesData(v.detail(f),C=>!C||C.data.id==f?null:{...C})}return{previousQueries:m,queryKey:v}},onSettled:(T,u,{resource:y,ids:R,dataProviderName:v,invalidates:h=["list","many"]})=>{d({resource:y,dataProviderName:k(y,v,g),invalidates:h}),n({type:"REMOVE",payload:{id:R,resource:y}})},onSuccess:(T,{ids:u,resource:y,meta:R,metaData:v,dataProviderName:h,successNotification:m},f)=>{u.forEach(M=>x.removeQueries(f==null?void 0:f.queryKey.detail(M)));let C=typeof m=="function"?m(T,u,y):m;p(C,{key:`${u}-${y}-notification`,description:i("notifications.success","Success"),message:i("notifications.deleteSuccess",{resource:i(`${y}.${y}`,y)},`Successfully deleted ${y}`),type:"success"}),l==null||l({channel:`resources/${y}`,type:"deleted",payload:{ids:u},date:new Date});let{fields:P,operation:U,variables:E,...L}=b(R,v)||{};c==null||c.mutate({action:"deleteMany",resource:y,meta:{ids:u,dataProviderName:k(y,h,g),...L}}),u.forEach(M=>x.removeQueries(f==null?void 0:f.queryKey.detail(M)))},onError:(T,{ids:u,resource:y,errorNotification:R},v)=>{if(v)for(let h of v.previousQueries)x.setQueryData(h[0],h[1]);if(T.message!=="mutationCancelled"){r(T);let h=fn.singular(y),m=typeof R=="function"?R(T,u,y):R;p(m,{key:`${u}-${y}-notification`,message:i("notifications.deleteError",{resource:h,statusCode:T.statusCode},`Error (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};var gn=e=>{let t=K(),{getApiUrl:r}=t(e);return r()};import{useQuery as Tn}from"@tanstack/react-query";var Rn=({url:e,method:t,config:r,queryOptions:o,successNotification:s,errorNotification:a,meta:n,metaData:i,dataProviderName:l})=>{let p=K(),{custom:d}=p(l),c=H(),{mutate:g}=Y({v3LegacyAuthProviderCompatible:Boolean(c==null?void 0:c.isLegacy)}),x=Q(),D=J();if(d)return Tn({queryKey:[l,"custom",t,e,{...r,...b(n,i)||{}}],queryFn:({queryKey:u,pageParam:y,signal:R})=>d({url:e,method:t,...r,metaData:{...b(n,i)||{},queryContext:{queryKey:u,pageParam:y,signal:R}}}),...o,onSuccess:u=>{var R;(R=o==null?void 0:o.onSuccess)==null||R.call(o,u);let y=typeof s=="function"?s(u,{...r,...b(n,i)||{}}):s;D(y)},onError:u=>{var R;g(u),(R=o==null?void 0:o.onError)==null||R.call(o,u);let y=typeof a=="function"?a(u,{...r,...b(n,i)||{}}):a;D(y,{key:`${t}-notification`,message:x("notifications.error",{statusCode:u.statusCode},`Error (status code: ${u.statusCode})`),description:u.message,type:"error"})}});throw Error("Not implemented custom on data provider.")};import{useMutation as xn}from"@tanstack/react-query";var Cn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=J(),s=K(),a=Q();return xn(({url:i,method:l,values:p,meta:d,metaData:c,dataProviderName:g,config:x})=>{let{custom:D}=s(g);if(D)return D({url:i,method:l,payload:p,meta:b(d,c),metaData:b(d,c),headers:{...x==null?void 0:x.headers}});throw Error("Not implemented custom on data provider.")},{onSuccess:(i,{successNotification:l,config:p,meta:d,metaData:c})=>{let g=typeof l=="function"?l(i,{...p,...b(d,c)||{}}):l;o(g)},onError:(i,{errorNotification:l,method:p,config:d,meta:c,metaData:g})=>{r(i);let x=typeof l=="function"?l(i,{...d,...b(c,g)||{}}):l;o(x,{key:`${p}-notification`,message:a("notifications.error",{statusCode:i.statusCode},`Error (status code: ${i.statusCode})`),description:i.message,type:"error"})},...e})};import{useCallback as bn,useContext as hn}from"react";import So from"react";var Pn=()=>({default:{create:()=>Promise.resolve({data:{id:1}}),createMany:()=>Promise.resolve({data:[]}),deleteOne:()=>Promise.resolve({data:{id:1}}),deleteMany:()=>Promise.resolve({data:[]}),getList:()=>Promise.resolve({data:[],total:0}),getMany:()=>Promise.resolve({data:[]}),getOne:()=>Promise.resolve({data:{id:1}}),update:()=>Promise.resolve({data:{id:1}}),updateMany:()=>Promise.resolve({data:[]}),custom:()=>Promise.resolve({data:{}}),getApiUrl:()=>""}}),Lt=So.createContext(Pn()),wo=({children:e,...t})=>{let r;return!t.getList||!t.getOne?r=t:r={default:t},So.createElement(Lt.Provider,{value:r},e)};var K=()=>{let e=hn(Lt);return bn(r=>{if(r){if(!e[r])throw new Error(`"${r}" Data provider not found`);return e[r]}if(e.default)return e.default;throw new Error('There is no "default" data provider. Please pass dataProviderName.')},[e])};import{useInfiniteQuery as vn}from"@tanstack/react-query";var Dn=({resource:e,config:t,filters:r,hasPagination:o,pagination:s,sorters:a,queryOptions:n,successNotification:i,errorNotification:l,meta:p,metaData:d,liveMode:c,onLiveEvent:g,liveParams:x,dataProviderName:D})=>{let{resources:T}=w(),u=K(),y=Q(),R=H(),{mutate:v}=Y({v3LegacyAuthProviderCompatible:Boolean(R==null?void 0:R.isLegacy)}),h=J(),m=k(e,D,T),f=b(p,d),C=b(r,t==null?void 0:t.filters),P=b(a,t==null?void 0:t.sort),U=b(o,t==null?void 0:t.hasPagination),E=vt({pagination:s,configPagination:t==null?void 0:t.pagination,hasPagination:U}),L=E.mode==="server",M={meta:f,metaData:f,filters:C,hasPagination:L,pagination:E,sorters:P,config:{...t,sort:P}},I=(n==null?void 0:n.enabled)===void 0||(n==null?void 0:n.enabled)===!0,S=_(e,m,f,f),{getList:V}=u(m);return je({resource:e,types:["*"],params:{meta:f,metaData:f,pagination:E,hasPagination:L,sort:P,sorters:P,filters:C,subscriptionType:"useList",...x},channel:`resources/${e}`,enabled:I,liveMode:c,onLiveEvent:g}),vn(S.list({filters:C,hasPagination:L,...L&&{pagination:E},...a&&{sorters:a},...(t==null?void 0:t.sort)&&{sort:t==null?void 0:t.sort}}),({queryKey:A,pageParam:B,signal:O})=>{let ye={...E,current:B};return V({resource:e,pagination:ye,hasPagination:L,filters:C,sort:P,sorters:P,meta:{...f||{},queryContext:{queryKey:A,pageParam:B,signal:O}},metaData:{...f||{},queryContext:{queryKey:A,pageParam:B,signal:O}}}).then(({data:he,total:G,...Qe})=>({data:he,total:G,pagination:ye,...Qe}))},{getNextPageParam:A=>Xt(A),getPreviousPageParam:A=>Zt(A),...n,onSuccess:A=>{var O;(O=n==null?void 0:n.onSuccess)==null||O.call(n,A);let B=typeof i=="function"?i(A,M,e):i;h(B)},onError:A=>{var O;v(A),(O=n==null?void 0:n.onError)==null||O.call(n,A);let B=typeof l=="function"?l(A,M,e):l;h(B,{key:`${e}-useInfiniteList-notification`,message:y("notifications.error",{statusCode:A.statusCode},`Error (status code: ${A.statusCode})`),description:A.message,type:"error"})}})};import{useContext as Qo,useEffect as Un}from"react";import{useQueryClient as En}from"@tanstack/react-query";import ko from"react";var Fe=ko.createContext(void 0),Vo=({liveProvider:e,children:t})=>ko.createElement(Fe.Provider,{value:e},t);var je=({resource:e,params:t,channel:r,types:o,enabled:s=!0,liveMode:a,onLiveEvent:n})=>{let i=En(),l=_(e),p=Qo(Fe),{liveMode:d,onLiveEvent:c}=Qo(de),g=a!=null?a:d;Un(()=>{let x;return g&&g!=="off"&&s&&(x=p==null?void 0:p.subscribe({channel:r,params:{resource:e,...t},types:o,callback:D=>{g==="auto"&&i.invalidateQueries(l.resourceAll),n==null||n(D),c==null||c(D)}})),()=>{x&&(p==null||p.unsubscribe(x))}},[s])};import{useContext as Ln}from"react";var Bo=e=>{let{liveMode:t}=Ln(de);return e!=null?e:t};import{useContext as In,useEffect as Mn}from"react";var gm=({params:e,channel:t,types:r=["*"],enabled:o=!0,onLiveEvent:s})=>{let a=In(Fe);Mn(()=>{let n;return o&&(n=a==null?void 0:a.subscribe({channel:t,params:e,types:r,callback:s})),()=>{n&&(a==null||a.unsubscribe(n))}},[o])};import{useContext as An}from"react";var xe=()=>{let e=An(Fe);return e==null?void 0:e.publish};import{useContext as On}from"react";import Fo from"react";import{useMemo as kn}from"react";import{useRef as Sn}from"react";import wn from"lodash-es/isEqual";var No=e=>{let t=Sn(e);return wn(t.current,e)||(t.current=e),t.current};var tr=(e,t)=>{let r=No(t);return kn(e,r)};var Ye=Fo.createContext({resources:[]}),Oo=({resources:e,children:t})=>{let r=tr(()=>qt(e!=null?e:[]),[e]);return Fo.createElement(Ye.Provider,{value:{resources:r}},t)};import Ho from"react";var $o=Ho.createContext("new"),Wo=$o.Provider,F=()=>Ho.useContext($o);import Fn from"react";import Vn,{createContext as Qn}from"react";var Ko={},Oe=Qn(Ko),Go=({children:e,router:t})=>Vn.createElement(Oe.Provider,{value:t!=null?t:Ko},e);import Bn,{useContext as Nn}from"react";var Vr=()=>{let e=Nn(Oe);return Bn.useMemo(()=>{var o;return(o=e==null?void 0:e.parse)!=null?o:()=>()=>({})},[e==null?void 0:e.parse])()};var z=()=>{let e=Vr();return Fn.useMemo(()=>e(),[e])};function w(e){var d,c;let{resources:t}=On(Ye),r=F(),o=z(),s={resourceName:e&&typeof e!="string"?e.resourceName:e,resourceNameOrRouteName:e&&typeof e!="string"?e.resourceNameOrRouteName:e,recordItemId:e&&typeof e!="string"?e.recordItemId:void 0},a=Je(),{useParams:n}=W(),i=n();if(r==="legacy"){let g=s.resourceNameOrRouteName?s.resourceNameOrRouteName:i.resource,x=g?a(g):void 0,D=(d=s==null?void 0:s.recordItemId)!=null?d:i.id,T=i.action,u=(c=s==null?void 0:s.resourceName)!=null?c:x==null?void 0:x.name;return{resources:t,resource:x,resourceName:u,id:D,action:T}}let l,p=typeof e=="string"?e:s==null?void 0:s.resourceNameOrRouteName;if(p){let g=$(p,t);g?l=g:l={name:p}}else o!=null&&o.resource&&(l=o.resource);return{resources:t,resource:l,resourceName:l==null?void 0:l.name,id:o.id,action:o.action}}import{useContext as Hn,useCallback as $n}from"react";var Je=()=>{let{resources:e}=Hn(Ye);return $n(r=>{let o=$(r,e,!0);return o||{name:r,route:r}},[e])};import{useContext as Wn}from"react";var Ve=()=>{let{notifications:e,notificationDispatch:t}=Wn(er);return{notifications:e,notificationDispatch:t}};import{useContext as zn}from"react";import Kn,{createContext as Gn}from"react";var It=Gn({}),zo=({open:e,close:t,children:r})=>Kn.createElement(It.Provider,{value:{open:e,close:t}},r);var me=()=>{let{open:e,close:t}=zn(It);return{open:e,close:t}};import{useCallback as _n}from"react";var J=()=>{let{open:e}=me();return _n((r,o)=>{r!==!1&&(r?e==null||e(r):o&&(e==null||e(o)))},[])};import{useCallback as jn,useContext as Yn}from"react";import _o from"react";var Me=_o.createContext({}),jo=({children:e,i18nProvider:t})=>_o.createElement(Me.Provider,{value:{i18nProvider:t}},e);var Jn=()=>{let{i18nProvider:e}=Yn(Me);return jn(t=>e==null?void 0:e.changeLocale(t),[])};import{useContext as Xn,useMemo as Zn}from"react";var Q=()=>{let{i18nProvider:e}=Xn(Me);return Zn(()=>{function r(o,s,a){var n,i;return(i=(n=e==null?void 0:e.translate(o,s,a))!=null?n:a)!=null?i:typeof s=="string"&&typeof a>"u"?s:o}return r},[e])};import{useContext as qn,useCallback as ea}from"react";var ta=()=>{let{i18nProvider:e}=qn(Me);return ea(()=>e==null?void 0:e.getLocale(),[])};import{useContext as ra}from"react";var Ie=()=>{let{mutationMode:e,undoableTimeout:t}=ra(de);return{mutationMode:e,undoableTimeout:t}};import{useContext as Xo}from"react";import Yo,{useState as oa}from"react";var Qr=Yo.createContext({}),Jo=({children:e})=>{let[t,r]=oa(!1);return Yo.createElement(Qr.Provider,{value:{warnWhen:t,setWarnWhen:r}},e)};var Mt=()=>{let{warnWhenUnsavedChanges:e}=Xo(de),{warnWhen:t,setWarnWhen:r}=Xo(Qr);return{warnWhenUnsavedChanges:e,warnWhen:Boolean(t),setWarnWhen:r!=null?r:()=>{}}};import{useContext as sa}from"react";var Br=()=>{let{syncWithLocation:e}=sa(de);return{syncWithLocation:e}};import{useContext as na}from"react";var aa=()=>{let{Title:e}=na(de);return e};import{useContext as ia}from"react";var At=()=>{let{Footer:e,Header:t,Layout:r,OffLayoutArea:o,Sider:s,Title:a,hasDashboard:n,mutationMode:i,syncWithLocation:l,undoableTimeout:p,warnWhenUnsavedChanges:d,DashboardPage:c,LoginPage:g,catchAll:x,options:D}=ia(de);return{Footer:e,Header:t,Layout:r,OffLayoutArea:o,Sider:s,Title:a,hasDashboard:n,mutationMode:i,syncWithLocation:l,undoableTimeout:p,warnWhenUnsavedChanges:d,DashboardPage:c,LoginPage:g,catchAll:x,options:D}};import{useState as ua}from"react";import{ExportToCsv as ca}from"export-to-csv-fix-source-map";var yy=({resourceName:e,resource:t,sorter:r,sorters:o,filters:s,maxItemCount:a,pageSize:n=20,mapData:i=x=>x,exportOptions:l,meta:p,metaData:d,dataProviderName:c,onError:g}={})=>{var m;let[x,D]=ua(!1),T=K(),{resource:u,resources:y}=w(),R=`${mt(u==null?void 0:u.name,"plural")}-${new Date().toLocaleString()}`,{getList:v}=T(k((m=u==null?void 0:u.identifier)!=null?m:u==null?void 0:u.name,c,y));return{isLoading:x,triggerExport:async()=>{var E;D(!0);let f=[],C=1,P=!0;for(;P;)try{let{data:L,total:M}=await v({resource:(E=u==null?void 0:u.name)!=null?E:"",filters:s,sort:b(o,r),sorters:b(o,r),pagination:{current:C,pageSize:n,mode:"server"},meta:b(p,d),metaData:b(p,d)});C++,f.push(...L),a&&f.length>=a&&(f=f.slice(0,a),P=!1),M===f.length&&(P=!1)}catch(L){D(!1),P=!1,g==null||g(L);return}new ca({filename:R,useKeysAsHeaders:!0,...l}).generateCsv(f.map(i)),D(!1)}}};import Zo from"react";var Ey=({resource:e,action:t,id:r,onMutationSuccess:o,onMutationError:s,redirect:a,successNotification:n,errorNotification:i,meta:l,metaData:p,mutationMode:d,liveMode:c,onLiveEvent:g,liveParams:x,undoableTimeout:D,dataProviderName:T,invalidates:u,queryOptions:y,createMutationOptions:R,updateMutationOptions:v}={})=>{let{options:h}=At(),{resources:m}=w(),f=F(),{resource:C,id:P,action:U}=z(),{useParams:E}=W(),{resource:L,action:M,id:I}=E(),S=typeof C=="string"?C:C==null?void 0:C.name,V=!e||e===(f==="legacy"?L:S)?r!=null?r:f==="legacy"?I:P:r,[N,A]=Zo.useState(V);Zo.useEffect(()=>{V!==N&&A(r)},[r]);let B=e!=null?e:f==="legacy"?L:S,O=f==="legacy"?M:U,ye=t!=null?t:O==="edit"||O==="clone"?O:"create",he=Je(),G;if(f==="legacy")B&&(G=he(B));else if(e){let se=$(e,m);se?G=se:G={name:e,route:e}}else if(typeof C=="string"){let se=$(C,m);se?G=se:G={name:C,route:C}}else G=C;let{mutationMode:Qe}=Ie(),ae=d!=null?d:Qe,Xe=ye==="create",Z=ye==="edit",ce=ye==="clone",Ze=Lr({redirectFromProps:a,action:ye,redirectOptions:h.redirect}),nt=N!==void 0&&(Z||ce),ve=Ut({resource:G==null?void 0:G.name,id:N!=null?N:"",queryOptions:{enabled:nt,...y},liveMode:c,onLiveEvent:g,liveParams:x,meta:b(l,p),metaData:b(l,p),dataProviderName:T}),{isFetching:De}=ve,at=Et({mutationOptions:R}),{mutate:Qt,isLoading:Rt}=at,it=wr({mutationOptions:v}),{mutate:Ue,isLoading:Bt}=it,{setWarnWhen:$e}=Mt(),We=qo();return{...Xe||ce?{formLoading:De||Rt,mutationResult:at,onFinish:async se=>{$e(!1);let Ee=Be=>{We({redirect:Ze,resource:G,id:Be,meta:p})};return ae!=="pessimistic"&&setTimeout(()=>{Ee()}),new Promise((Be,ct)=>{if(ae!=="pessimistic"&&Be(),!!G)return Qt({values:se,resource:G.name,successNotification:n,errorNotification:i,meta:b(l,p),metaData:b(l,p),dataProviderName:T,invalidates:u},{onSuccess:(Le,Ge,ze)=>{var xt;o&&o(Le,se,ze);let _e=(xt=Le==null?void 0:Le.data)==null?void 0:xt.id;Ee(_e),Be(Le)},onError:(Le,Ge,ze)=>{if(s)return s(Le,se,ze);ct()}})})}}:{formLoading:De||Bt,mutationResult:it,onFinish:async se=>{if($e(!1),!G)return;let Ee={id:N!=null?N:"",values:se,resource:G.name,mutationMode:ae,undoableTimeout:D,successNotification:n,errorNotification:i,meta:b(l,p),metaData:b(l,p),dataProviderName:T,invalidates:u},Be=()=>{A(V),We({redirect:Ze,resource:G,id:N,meta:p})};return ae!=="pessimistic"&&setTimeout(()=>{Be()}),new Promise((ct,Le)=>(ae!=="pessimistic"&&ct(),setTimeout(()=>{Ue(Ee,{onSuccess:(Ge,ze,_e)=>{o&&o(Ge,se,_e),ae==="pessimistic"&&Be(),ct(Ge)},onError:(Ge,ze,_e)=>{if(s)return s(Ge,se,_e);Le()}})})))}},queryResult:ve,id:N,setId:A,redirect:(se,Ee)=>{We({redirect:se!==void 0?se:Z?"list":"edit",resource:G,id:Ee!=null?Ee:N,meta:p})}}};import{useCallback as pa}from"react";var qo=()=>{let{show:e,edit:t,list:r,create:o}=ee();return pa(({redirect:a,resource:n,id:i,meta:l={}})=>{if(a&&n)return!!n.show&&a==="show"&&i?e(n,i,void 0,l):!!n.edit&&a==="edit"&&i?t(n,i,void 0,l):!!n.create&&a==="create"?o(n,void 0,l):r(n,"push",l)},[])};import la,{useContext as da}from"react";var te=()=>{let e=da(Oe);return la.useMemo(()=>{var o;return(o=e==null?void 0:e.go)!=null?o:()=>()=>{}},[e==null?void 0:e.go])()};import ma,{useContext as fa}from"react";var Nr=()=>{let e=fa(Oe);return ma.useMemo(()=>{var o;return(o=e==null?void 0:e.back)!=null?o:()=>()=>{}},[e==null?void 0:e.back])()};var ee=()=>{let{resources:e}=w(),t=F(),{useHistory:r}=W(),o=r(),s=z(),a=te(),n=Nr(),i=(m,f="push")=>{t==="legacy"?o[f](m):a({to:m,type:f})},l=(m,f={})=>{var C,P,U;if(t==="legacy"){let E=typeof m=="string"?(C=$(m,e,!0))!=null?C:{name:m,route:m}:m,L=ne(E,e,!0).find(M=>M.action==="create");return L?pe(L.route,s,f):""}else{let E=typeof m=="string"?(P=$(m,e))!=null?P:{name:m}:m,L=(U=ne(E,e).find(M=>M.action==="create"))==null?void 0:U.route;return L?a({to:pe(L,s,f),type:"path"}):""}},p=(m,f,C={})=>{var U,E,L;let P=encodeURIComponent(f);if(t==="legacy"){let M=typeof m=="string"?(U=$(m,e,!0))!=null?U:{name:m,route:m}:m,I=ne(M,e,!0).find(S=>S.action==="edit");return I?pe(I.route,s,{...C,id:P}):""}else{let M=typeof m=="string"?(E=$(m,e))!=null?E:{name:m}:m,I=(L=ne(M,e).find(S=>S.action==="edit"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:P}),type:"path"}):""}},d=(m,f,C={})=>{var U,E,L;let P=encodeURIComponent(f);if(t==="legacy"){let M=typeof m=="string"?(U=$(m,e,!0))!=null?U:{name:m,route:m}:m,I=ne(M,e,!0).find(S=>S.action==="clone");return I?pe(I.route,s,{...C,id:P}):""}else{let M=typeof m=="string"?(E=$(m,e))!=null?E:{name:m}:m,I=(L=ne(M,e).find(S=>S.action==="clone"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:P}),type:"path"}):""}},c=(m,f,C={})=>{var U,E,L;let P=encodeURIComponent(f);if(t==="legacy"){let M=typeof m=="string"?(U=$(m,e,!0))!=null?U:{name:m,route:m}:m,I=ne(M,e,!0).find(S=>S.action==="show");return I?pe(I.route,s,{...C,id:P}):""}else{let M=typeof m=="string"?(E=$(m,e))!=null?E:{name:m}:m,I=(L=ne(M,e).find(S=>S.action==="show"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:P}),type:"path"}):""}},g=(m,f={})=>{var C,P,U;if(t==="legacy"){let E=typeof m=="string"?(C=$(m,e,!0))!=null?C:{name:m,route:m}:m,L=ne(E,e,!0).find(M=>M.action==="list");return L?pe(L.route,s,f):""}else{let E=typeof m=="string"?(P=$(m,e))!=null?P:{name:m}:m,L=(U=ne(E,e).find(M=>M.action==="list"))==null?void 0:U.route;return L?a({to:pe(L,s,f),type:"path"}):""}};return{create:(m,f="push",C={})=>{i(l(m,C),f)},createUrl:l,edit:(m,f,C="push",P={})=>{i(p(m,f,P),C)},editUrl:p,clone:(m,f,C="push",P={})=>{i(d(m,f,P),C)},cloneUrl:d,show:(m,f,C="push",P={})=>{i(c(m,f,P),C)},showUrl:c,list:(m,f="push",C={})=>{i(g(m,C),f)},listUrl:g,push:(m,...f)=>{t==="legacy"?o.push(m,...f):a({to:m,type:"push"})},replace:(m,...f)=>{t==="legacy"?o.replace(m,...f):a({to:m,type:"replace"})},goBack:()=>{t==="legacy"?o.goBack():n()}}};import ya,{useState as ga}from"react";var rg=({resource:e,id:t,successNotification:r,errorNotification:o,meta:s,metaData:a,liveMode:n,onLiveEvent:i,dataProviderName:l,queryOptions:p}={})=>{let d=F(),{resources:c}=w(),{useParams:g}=W(),{resource:x,id:D}=z(),{resource:T,id:u}=g(),y=x==null?void 0:x.name,R=!e||e===(d==="legacy"?T:y)?t!=null?t:d==="legacy"?u:D:t,[v,h]=ga(R);ya.useEffect(()=>{R!==v&&h(R)},[R]);let m=e!=null?e:d==="legacy"?T:y,f,C=Je();if(d==="legacy")m&&(f=C(m));else if(e){let U=$(e,c);U?f=U:f={name:e,route:e}}else if(typeof x=="string"){let U=$(x,c);U?f=U:f={name:x,route:x}}else f=x;return{queryResult:Ut({resource:f==null?void 0:f.name,id:v!=null?v:"",queryOptions:{enabled:v!==void 0,...p},successNotification:r,errorNotification:o,meta:b(s,a),metaData:b(s,a),liveMode:n,onLiveEvent:i,dataProviderName:l}),showId:v,setShowId:h}};import{useEffect as Ta,useState as Fr}from"react";import{parse as Ra}from"papaparse";import xa from"lodash-es/chunk";var dg=({resourceName:e,resource:t,mapData:r=d=>d,paparseOptions:o,batchSize:s=Number.MAX_SAFE_INTEGER,onFinish:a,meta:n,metaData:i,onProgress:l,dataProviderName:p}={})=>{let[d,c]=Fr(0),[g,x]=Fr(0),[D,T]=Fr(!1),{resource:u}=w(t!=null?t:e),y=kr(),R=Et(),v;s===1?v=R:v=y;let h=()=>{x(0),c(0),T(!1)},m=C=>{let P={succeeded:C.filter(U=>U.type==="success"),errored:C.filter(U=>U.type==="error")};a==null||a(P),T(!1)};Ta(()=>{l==null||l({totalAmount:g,processedAmount:d})},[g,d]);let f=({file:C})=>(h(),new Promise(P=>{T(!0),Ra(C,{complete:async({data:U})=>{let E=Wt(U,r);if(x(E.length),s===1){let L=E.map(I=>async()=>{var N;return{response:await R.mutateAsync({resource:(N=u==null?void 0:u.name)!=null?N:"",values:I,successNotification:!1,errorNotification:!1,dataProviderName:p,meta:b(n,i),metaData:b(n,i)}),value:I}}),M=await Jt(L,({response:I,value:S})=>(c(V=>V+1),{response:[I.data],type:"success",request:[S]}),(I,S)=>({response:[I],type:"error",request:[E[S]]}));P(M)}else{let L=xa(E,s),M=L.map(S=>async()=>{var A;return{response:await y.mutateAsync({resource:(A=u==null?void 0:u.name)!=null?A:"",values:S,successNotification:!1,errorNotification:!1,dataProviderName:p,meta:b(n,i),metaData:b(n,i)}),value:S,currentBatchLength:S.length}}),I=await Jt(M,({response:S,currentBatchLength:V,value:N})=>(c(A=>A+V),{response:S.data,type:"success",request:N}),(S,V)=>({response:[S],type:"error",request:L[V]}));P(I)}},...o})}).then(P=>(m(P),P)));return{inputProps:{type:"file",accept:".csv",onChange:C=>{C.target.files&&C.target.files.length>0&&f({file:C.target.files[0]})}},mutationResult:v,isLoading:D,handleChange:f}};import{useCallback as es,useState as Ca}from"react";var yg=({defaultVisible:e=!1}={})=>{let[t,r]=Ca(e),o=es(()=>r(!0),[t]),s=es(()=>r(!1),[t]);return{visible:t,show:o,close:s}};import Pa from"react";var St=()=>{let e=F(),{resource:t,resources:r}=w(),o=z();return Pa.useCallback(({resource:a,action:n,meta:i})=>{var g;let l=a||t;if(!l)return;let d=(g=ne(l,r,e==="legacy").find(x=>x.action===n))==null?void 0:g.route;return d?pe(d,o,i):void 0},[r,t,o])};var ba=({resource:e,action:t,meta:r,legacy:o})=>St()({resource:e,action:t,meta:r,legacy:o});import ha,{useContext as va}from"react";var tt=()=>{let e=va(Oe);return e!=null&&e.Link?e.Link:({to:r,...o})=>ha.createElement("a",{href:r,...o})};import{useContext as Ua}from"react";import ts from"react";var He={useHistory:()=>!1,useLocation:()=>!1,useParams:()=>({}),Prompt:()=>null,Link:()=>null},Da=ts.createContext(He),wt=Da,rs=({children:e,useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n})=>ts.createElement(wt.Provider,{value:{useHistory:t!=null?t:He.useHistory,useLocation:r!=null?r:He.useLocation,useParams:o!=null?o:He.useParams,Prompt:s!=null?s:He.Prompt,Link:a!=null?a:He.Link,routes:n!=null?n:He.routes}},e);var W=()=>{let e=Ua(wt),{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}=e!=null?e:He;return{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}};import{useQuery as Ea}from"@tanstack/react-query";import{useContext as La}from"react";import os from"react";var rt=os.createContext({}),ss=({can:e,children:t})=>os.createElement(rt.Provider,{value:{can:e}},t);var ns=e=>{let{icon:t,list:r,edit:o,create:s,show:a,clone:n,children:i,meta:l,options:p,...d}=e,{icon:c,...g}=l!=null?l:{},{icon:x,...D}=p!=null?p:{};return{...d,...l?{meta:g}:{},...p?{options:D}:{}}};var as=({action:e,resource:t,params:r,queryOptions:o})=>{let{can:s}=La(rt),{resource:a,...n}=r!=null?r:{},i=ns(a!=null?a:{}),l=Ea(["useCan",{action:e,resource:t,params:{...n,resource:i},enabled:o==null?void 0:o.enabled}],()=>{var p;return(p=s==null?void 0:s({action:e,resource:t,params:n}))!=null?p:Promise.resolve({can:!0})},{enabled:typeof s<"u",...o,retry:!1});return typeof s>"u"?{data:{can:!0}}:l};import{useContext as Ia}from"react";var sT=()=>{let{can:e}=Ia(rt);return{can:e}};import{useCallback as is,useMemo as Ma,useState as Or}from"react";import Aa from"lodash/uniqBy";import Sa from"lodash/debounce";import rr from"lodash/get";var TT=e=>{var Qe,ae,Xe;let[t,r]=Or([]),[o,s]=Or([]),[a,n]=Or([]),{resource:i,sort:l,sorters:p,filters:d=[],optionLabel:c="title",optionValue:g="id",debounce:x=300,successNotification:D,errorNotification:T,defaultValueQueryOptions:u,queryOptions:y,fetchSize:R,pagination:v,hasPagination:h=!1,liveMode:m,defaultValue:f=[],onLiveEvent:C,onSearch:P,liveParams:U,meta:E,metaData:L,dataProviderName:M}=e,{resources:I}=w(),S=$(i,I),V=(Qe=S==null?void 0:S.name)!=null?Qe:i,N=Array.isArray(f)?f:[f],A=is(Z=>{n(Z.data.map(ce=>({label:rr(ce,c),value:rr(ce,g)})))},[c,g]),B=u!=null?u:y,O=Ir({resource:V,ids:N,queryOptions:{...B,enabled:N.length>0&&((ae=u==null?void 0:u.enabled)!=null?ae:!0),onSuccess:Z=>{var ce;A(Z),(ce=B==null?void 0:B.onSuccess)==null||ce.call(B,Z)}},meta:b(E,L),metaData:b(E,L),liveMode:"off",dataProviderName:M}),ye=is(Z=>{s(Z.data.map(ce=>({label:rr(ce,c),value:rr(ce,g)})))},[c,g]),he=Dt({resource:V,sorters:b(p,l),filters:d.concat(t),pagination:{current:v==null?void 0:v.current,pageSize:(Xe=v==null?void 0:v.pageSize)!=null?Xe:R,mode:v==null?void 0:v.mode},hasPagination:h,queryOptions:{...y,onSuccess:Z=>{var ce;ye(Z),(ce=y==null?void 0:y.onSuccess)==null||ce.call(y,Z)}},successNotification:D,errorNotification:T,meta:b(E,L),metaData:b(E,L),liveMode:m,liveParams:U,onLiveEvent:C,dataProviderName:M}),G=Z=>{if(P){r(P(Z));return}if(Z)r([{field:c,operator:"contains",value:Z}]);else{r([]);return}};return{queryResult:he,defaultValueQueryResult:O,options:Ma(()=>Aa([...o,...a],"value"),[o,a]),onSearch:Sa(G,x)}};import wa,{useState as or,useEffect as us}from"react";import cs from"qs";import sr from"lodash/differenceWith";import nr from"lodash/isEqual";import ka from"warn-once";var ps=[],ls=[];function LT({initialCurrent:e,initialPageSize:t,hasPagination:r=!0,pagination:o,initialSorter:s,permanentSorter:a=ls,defaultSetFilterBehavior:n,initialFilter:i,permanentFilter:l=ps,filters:p,sorters:d,syncWithLocation:c,resource:g,successNotification:x,errorNotification:D,queryOptions:T,liveMode:u,onLiveEvent:y,liveParams:R,meta:v,metaData:h,dataProviderName:m}={}){var _e,xt,_r,jr,Yr,Jr,Xr,Zr,qr,eo;let{syncWithLocation:f}=Br(),C=c!=null?c:f,P=Bo(u),U=F(),{useLocation:E}=W(),{search:L,pathname:M}=E(),I=z(),S=r===!1?"off":"server",V=((_e=o==null?void 0:o.mode)!=null?_e:S)!=="off",N=b(o==null?void 0:o.current,e),A=b(o==null?void 0:o.pageSize,t),B=b(v,h),{parsedCurrent:O,parsedPageSize:ye,parsedSorter:he,parsedFilters:G}=Kt(L!=null?L:"?"),Qe=b(p==null?void 0:p.initial,i),ae=(xt=b(p==null?void 0:p.permanent,l))!=null?xt:ps,Xe=b(d==null?void 0:d.initial,s),Z=(_r=b(d==null?void 0:d.permanent,a))!=null?_r:ls,ce=(jr=b(p==null?void 0:p.defaultBehavior,n))!=null?jr:"merge",Ze,nt,ve,De;C?(Ze=((Yr=I==null?void 0:I.params)==null?void 0:Yr.current)||O||N||1,nt=((Jr=I==null?void 0:I.params)==null?void 0:Jr.pageSize)||ye||A||10,ve=((Xr=I==null?void 0:I.params)==null?void 0:Xr.sorters)||(he.length?he:Xe),De=((Zr=I==null?void 0:I.params)==null?void 0:Zr.filters)||(G.length?G:Qe)):(Ze=N||1,nt=A||10,ve=Xe,De=Qe);let{replace:at}=ee(),Qt=te(),{resource:Rt}=w(g),it=Rt==null?void 0:Rt.name;wa.useEffect(()=>{ka(typeof it>"u","useTable: `resource` is not defined.")},[it]);let[Ue,Bt]=or(jt(Z,ve!=null?ve:[])),[$e,We]=or(_t(ae,De!=null?De:[])),[ut,ar]=or(Ze),[Ke,ir]=or(nt),zr=({pagination:{current:oe,pageSize:Re},sorter:Nt,filters:Ft})=>{var Ot;if(U==="new")return(Ot=Qt({type:"path",options:{keepHash:!0,keepQuery:!0},query:{...V?{current:oe,pageSize:Re}:{},sorters:Nt,filters:Ft,...se()}}))!=null?Ot:"";{let Ct=cs.parse(L==null?void 0:L.substring(1)),ur=Gt({pagination:{pageSize:Re,current:oe},sorters:Ue!=null?Ue:Nt,filters:Ft,...Ct});return`${M!=null?M:""}?${ur!=null?ur:""}`}};us(()=>{L===""&&(ar(Ze),ir(nt),Bt(jt(Z,ve!=null?ve:[])),We(_t(ae,De!=null?De:[])))},[L]);let se=()=>{var oe;if(U==="new"){let{sorters:Re,filters:Nt,pageSize:Ft,current:Ot,...Ct}=(oe=I==null?void 0:I.params)!=null?oe:{};return Ct}else{let{sorter:Re,filters:Nt,pageSize:Ft,current:Ot,...Ct}=cs.parse(L,{ignoreQueryPrefix:!0});return Ct}};us(()=>{if(C){let oe=se();if(U==="new")Qt({type:"replace",options:{keepQuery:!0},query:{...V?{pageSize:Ke,current:ut}:{},sorters:sr(Ue,Z,nr),filters:sr($e,ae,nr)}});else{let Re=Gt({...V?{pagination:{pageSize:Ke,current:ut}}:{},sorters:sr(Ue,Z,nr),filters:sr($e,ae,nr),...oe});return at==null?void 0:at(`${M}?${Re}`,void 0,{shallow:!0})}}},[C,ut,Ke,Ue,$e]);let Ee=Dt({resource:it,hasPagination:r,pagination:{current:ut,pageSize:Ke,mode:o==null?void 0:o.mode},filters:dt(ae,$e),sorters:zt(Z,Ue),queryOptions:T,successNotification:x,errorNotification:D,meta:B,metaData:B,liveMode:P,liveParams:R,onLiveEvent:y,dataProviderName:m}),Be=oe=>{We(Re=>dt(ae,oe,Re))},ct=oe=>{We(dt(ae,oe))},Le=oe=>{We(Re=>dt(ae,oe(Re)))},Ge=(oe,Re=ce)=>{typeof oe=="function"?Le(oe):Re==="replace"?ct(oe):Be(oe)},ze=oe=>{Bt(()=>zt(Z,oe))};return{tableQueryResult:Ee,sorters:Ue,setSorters:ze,sorter:Ue,setSorter:ze,filters:$e,setFilters:Ge,current:ut,setCurrent:ar,pageSize:Ke,setPageSize:ir,pageCount:Ke?Math.ceil(((eo=(qr=Ee.data)==null?void 0:qr.total)!=null?eo:0)/Ke):1,createLinkForSyncWithLocation:zr}}import{useContext as fs}from"react";import{useMutation as ys,useQueryClient as Va}from"@tanstack/react-query";import ds from"react";var ot=ds.createContext({}),ms=({create:e,get:t,update:r,children:o})=>ds.createElement(ot.Provider,{value:{create:e,get:t,update:r}},o);var Ce=({logMutationOptions:e,renameMutationOptions:t}={})=>{let r=Va(),o=fs(ot),s=H(),{resources:a}=fs(Ye),{data:n,refetch:i,isLoading:l}=cr({v3LegacyAuthProviderCompatible:Boolean(s==null?void 0:s.isLegacy),queryOptions:{enabled:!!o}}),p=ys(async c=>{var T,u,y,R,v;let g=$(c.resource,a),x=b((T=g==null?void 0:g.meta)==null?void 0:T.audit,(u=g==null?void 0:g.options)==null?void 0:u.audit,(R=(y=g==null?void 0:g.options)==null?void 0:y.auditLog)==null?void 0:R.permissions);if(x&&!Cr(x,c.action))return;let D;return l&&(D=await i()),await((v=o.create)==null?void 0:v.call(o,{...c,author:n!=null?n:D==null?void 0:D.data}))},e),d=ys(async c=>{var g;return await((g=o.update)==null?void 0:g.call(o,c))},{onSuccess:c=>{if(c!=null&&c.resource){let g=_(c==null?void 0:c.resource);r.invalidateQueries(g.logList())}},...t});return{log:p,rename:d}};import{useContext as Qa}from"react";import{useQuery as Ba}from"@tanstack/react-query";var YT=({resource:e,action:t,meta:r,author:o,metaData:s,queryOptions:a})=>{let{get:n}=Qa(ot),i=_(e,void 0,s);return Ba(i.logList(r),()=>{var p;return(p=n==null?void 0:n({resource:e,action:t,author:o,meta:r,metaData:s}))!=null?p:Promise.resolve([])},{enabled:typeof n<"u",...a,retry:!1})};import{useCallback as Na}from"react";import{useQueryClient as Fa}from"@tanstack/react-query";var Pe=()=>{let{resources:e}=w(),t=Fa();return Na(({resource:o,dataProviderName:s,invalidates:a,id:n})=>{if(a===!1)return;let i=_(o,k(o,s,e));a.forEach(l=>{switch(l){case"all":t.invalidateQueries(i.all);break;case"list":t.invalidateQueries(i.list());break;case"many":t.invalidateQueries(i.many());break;case"resourceAll":t.invalidateQueries(i.resourceAll);break;case"detail":t.invalidateQueries(i.detail(n||""));break;default:break}})},[])};import{useContext as Oa}from"react";import Ha from"warn-once";var gR=({meta:e={}}={})=>{let t=F(),{i18nProvider:r}=Oa(Me),o=z(),s=Q(),{resources:a,resource:n,action:i}=w(),l=[];if(!(n!=null&&n.name))return{breadcrumbs:l};let p=d=>{var g,x,D,T,u,y,R,v;let c=typeof d=="string"?(g=$(d,a,t==="legacy"))!=null?g:{name:d}:d;if(c){let h=b((x=c==null?void 0:c.meta)==null?void 0:x.parent,c==null?void 0:c.parentName);h&&p(h);let m=ne(c,a,t==="legacy").find(P=>P.action==="list"),f=(D=m==null?void 0:m.resource)!=null&&D.list?m==null?void 0:m.route:void 0,C=f?t==="legacy"?f:pe(f,o,e):void 0;l.push({label:(y=b((T=c.meta)==null?void 0:T.label,(u=c.options)==null?void 0:u.label))!=null?y:s(`${c.name}.${c.name}`,qe(c.name)),href:C,icon:b((R=c.meta)==null?void 0:R.icon,(v=c.options)==null?void 0:v.icon,c.icon)})}};if(p(n),i&&i!=="list"){let d=`actions.${i}`,c=s(d);typeof r<"u"&&c===d?(Ha(!0,`[useBreadcrumb]: Breadcrumb missing translate key for the "${i}" action. Please add "actions.${i}" key to your translation file.
|
|
3
|
-
For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`),l.push({label:s(`buttons.${i}`,qe(i))})):l.push({label:s(d,qe(i))})}return{breadcrumbs:l}};import Hr from"react";var yt=(e,t,r=!1)=>{let o=[],s=ge(e,t);for(;s;)o.push(s),s=ge(s,t);return o.reverse(),`/${[...o,e].map(n=>{var i,l;return ue((l=(i=r?n.route:void 0)!=null?i:n.identifier)!=null?l:n.name)}).join("/").replace(/^\//,"")}`};var gs=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(s=>{var p,d;let a=[],n=ge(s,e);for(;n;)a.push(n),n=ge(n,e);a.reverse();let i=r;a.forEach(c=>{var x,D;let g=(D=(x=t?c.route:void 0)!=null?x:c.identifier)!=null?D:c.name;i.children[g]||(i.children[g]={item:c,children:{}}),i=i.children[g]});let l=(d=(p=t?s.route:void 0)!=null?p:s.identifier)!=null?d:s.name;i.children[l]||(i.children[l]={item:s,children:{}})});let o=s=>{let a=[];return Object.keys(s.children).forEach(n=>{let i=yt(s.children[n].item,e,t),l={...s.children[n].item,key:i,children:o(s.children[n])};a.push(l)}),a};return o(r)};var Ts=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),$a=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=Q(),o=St(),s=F(),{resource:a,resources:n}=w(),{pathname:i}=z(),{useLocation:l}=W(),{pathname:p}=l(),d=s==="legacy"?Ts(p):i?Ts(i):void 0,c=`/${(d!=null?d:"").replace(/^\//,"")}`,g=a?yt(a,n,s==="legacy"):c!=null?c:"",x=Hr.useMemo(()=>{if(!a)return[];let u=ge(a,n),y=[yt(a,n)];for(;u;)y.push(yt(u,n)),u=ge(u,n);return y},[]),D=Hr.useCallback(u=>{var R,v,h,m,f,C,P,U;if(((h=(R=u==null?void 0:u.meta)==null?void 0:R.hide)!=null?h:(v=u==null?void 0:u.options)==null?void 0:v.hide)||!(u!=null&&u.list)&&u.children.length===0)return;let y=u.list?o({resource:u,action:"list",legacy:s==="legacy",meta:e}):void 0;if(!(t&&y&&y.match(/(\/|^):(.+?)(\/|$){1}/)))return{...u,route:y,icon:b((m=u.meta)==null?void 0:m.icon,(f=u.options)==null?void 0:f.icon,u.icon),label:(U=b((C=u==null?void 0:u.meta)==null?void 0:C.label,(P=u==null?void 0:u.options)==null?void 0:P.label))!=null?U:r(`${u.name}.${u.name}`,mt(u.name,"plural"))}},[s,e,r,t]),T=Hr.useMemo(()=>{let u=gs(n,s==="legacy"),y=R=>R.flatMap(v=>{let h=y(v.children),m=D({...v,children:h});return m?[m]:[]});return y(u)},[n,s,D]);return{defaultOpenKeys:x,selectedKey:g,menuItems:T}};var Ga=()=>{let[e,t]=Ka(),r=Q(),{push:o}=ee(),s=te(),a=F(),{resource:n,action:i}=w();return Wa(()=>{n&&i&&t(r("pages.error.info",{action:i,resource:n==null?void 0:n.name},`You may have forgotten to add the "${i}" component to "${n==null?void 0:n.name}" resource.`))},[n,i]),kt.createElement(kt.Fragment,null,kt.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&kt.createElement("p",null,e),kt.createElement("button",{onClick:()=>{a==="legacy"?o("/"):s({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))};import le,{useState as Rs}from"react";var Ur=()=>{let[e,t]=Rs(""),[r,o]=Rs(""),s=Q(),a=H(),{mutate:n}=Pt({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy)});return le.createElement(le.Fragment,null,le.createElement("h1",null,s("pages.login.title","Sign in your account")),le.createElement("form",{onSubmit:i=>{i.preventDefault(),n({username:e,password:r})}},le.createElement("table",null,le.createElement("tbody",null,le.createElement("tr",null,le.createElement("td",null,s("pages.login.username",void 0,"username"),":"),le.createElement("td",null,le.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:i=>t(i.target.value)}))),le.createElement("tr",null,le.createElement("td",null,s("pages.login.password",void 0,"password"),":"),le.createElement("td",null,le.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:i=>o(i.target.value)}))))),le.createElement("br",null),le.createElement("input",{type:"submit",value:"login"})))};import gt from"react";import re,{useState as $r}from"react";var xs=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:s,wrapperProps:a,renderContent:n,formProps:i})=>{let l=F(),p=tt(),{Link:d}=W(),c=l==="legacy"?d:p,[g,x]=$r(""),[D,T]=$r(""),[u,y]=$r(!1),R=Q(),v=H(),{mutate:h}=Pt({v3LegacyAuthProviderCompatible:Boolean(v==null?void 0:v.isLegacy)}),m=(P,U)=>P?typeof P=="string"?re.createElement(c,{to:P},U):P:null,f=()=>e?e.map(P=>{var U;return re.createElement("div",{key:P.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},re.createElement("button",{onClick:()=>h({providerName:P.name}),style:{display:"flex",alignItems:"center"}},P==null?void 0:P.icon,(U=P.label)!=null?U:re.createElement("label",null,P.label)))}):null,C=re.createElement("div",{...s},re.createElement("h1",{style:{textAlign:"center"}},R("pages.login.title","Sign in to your account")),f(),re.createElement("hr",null),re.createElement("form",{onSubmit:P=>{P.preventDefault(),h({email:g,password:D,remember:u})},...i},re.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},re.createElement("label",null,R("pages.login.fields.email","Email")),re.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:g,onChange:P=>x(P.target.value)}),re.createElement("label",null,R("pages.login.fields.password","Password")),re.createElement("input",{type:"password",name:"password",required:!0,size:20,value:D,onChange:P=>T(P.target.value)}),o!=null?o:re.createElement(re.Fragment,null,re.createElement("label",null,R("pages.login.buttons.rememberMe","Remember me"),re.createElement("input",{name:"remember",type:"checkbox",size:20,checked:u,value:u.toString(),onChange:()=>{y(!u)}}))),re.createElement("br",null),r!=null?r:m("/forgot-password",R("pages.login.buttons.forgotPassword","Forgot password?")),re.createElement("input",{type:"submit",value:R("pages.login.signin","Sign in")}),t!=null?t:re.createElement("span",null,R("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",m("/register",R("pages.login.register","Sign up"))))));return re.createElement("div",{...a},n?n(C):C)};import ie,{useState as Cs}from"react";var Ps=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:s,formProps:a})=>{let n=F(),i=tt(),{Link:l}=W(),p=n==="legacy"?l:i,[d,c]=Cs(""),[g,x]=Cs(""),D=Q(),T=H(),{mutate:u,isLoading:y}=mr({v3LegacyAuthProviderCompatible:Boolean(T==null?void 0:T.isLegacy)}),R=(m,f)=>m?typeof m=="string"?ie.createElement(p,{to:m},f):m:null,v=()=>e?e.map(m=>{var f;return ie.createElement("div",{key:m.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ie.createElement("button",{onClick:()=>u({providerName:m.name}),style:{display:"flex",alignItems:"center"}},m==null?void 0:m.icon,(f=m.label)!=null?f:ie.createElement("label",null,m.label)))}):null,h=ie.createElement("div",{...o},ie.createElement("h1",{style:{textAlign:"center"}},D("pages.register.title","Sign up for your account")),v(),ie.createElement("hr",null),ie.createElement("form",{onSubmit:m=>{m.preventDefault(),u({email:d,password:g})},...a},ie.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ie.createElement("label",null,D("pages.register.fields.email","Email")),ie.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:d,onChange:m=>c(m.target.value)}),ie.createElement("label",null,D("pages.register.fields.password","Password")),ie.createElement("input",{name:"password",type:"password",required:!0,size:20,value:g,onChange:m=>x(m.target.value)}),ie.createElement("input",{type:"submit",value:D("pages.register.buttons.submit","Sign up"),disabled:y}),t!=null?t:ie.createElement(ie.Fragment,null,ie.createElement("span",null,D("pages.login.buttons.haveAccount","Have an account?")," ",R("/login",D("pages.login.signin","Sign in")))))));return ie.createElement("div",{...r},s?s(h):h)};import be,{useState as za}from"react";var bs=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:s})=>{let a=Q(),n=F(),i=tt(),{Link:l}=W(),p=n==="legacy"?l:i,[d,c]=za(""),{mutate:g,isLoading:x}=yr(),D=(u,y)=>u?typeof u=="string"?be.createElement(p,{to:u},y):u:null,T=be.createElement("div",{...r},be.createElement("h1",{style:{textAlign:"center"}},a("pages.forgotPassword.title","Forgot your password?")),be.createElement("hr",null),be.createElement("form",{onSubmit:u=>{u.preventDefault(),g({email:d})},...s},be.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},be.createElement("label",null,a("pages.forgotPassword.fields.email","Email")),be.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:d,onChange:u=>c(u.target.value)}),be.createElement("input",{type:"submit",disabled:x,value:a("pages.forgotPassword.buttons.submit","Send reset instructions")}),be.createElement("br",null),e!=null?e:be.createElement("span",null,a("pages.register.buttons.haveAccount","Have an account? ")," ",D("/login",a("pages.login.signin","Sign in"))))));return be.createElement("div",{...t},o?o(T):T)};import Ae,{useState as hs}from"react";var vs=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o})=>{let s=Q(),a=H(),{mutate:n,isLoading:i}=Tr({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy)}),[l,p]=hs(""),[d,c]=hs(""),g=Ae.createElement("div",{...t},Ae.createElement("h1",{style:{textAlign:"center"}},s("pages.updatePassword.title","Update Password")),Ae.createElement("hr",null),Ae.createElement("form",{onSubmit:x=>{x.preventDefault(),n({password:l,confirmPassword:d})},...o},Ae.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Ae.createElement("label",null,s("pages.updatePassword.fields.password","New Password")),Ae.createElement("input",{name:"password",type:"password",required:!0,size:20,value:l,onChange:x=>p(x.target.value)}),Ae.createElement("label",null,s("pages.updatePassword.fields.confirmPassword","Confirm New Password")),Ae.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:d,onChange:x=>c(x.target.value)}),Ae.createElement("input",{type:"submit",disabled:i,value:s("pages.updatePassword.buttons.submit","Update")}))));return Ae.createElement("div",{...e},r?r(g):g)};var _a=e=>{let{type:t}=e;return gt.createElement(gt.Fragment,null,(()=>{switch(t){case"register":return gt.createElement(Ps,{...e});case"forgotPassword":return gt.createElement(bs,{...e});case"updatePassword":return gt.createElement(vs,{...e});default:return gt.createElement(xs,{...e})}})())};import fe from"react";var Wr=()=>fe.createElement(fe.Fragment,null,fe.createElement("h1",null,"Welcome on board"),fe.createElement("p",null,"Your configuration is completed."),fe.createElement("p",null,"Now you can get started by adding your resources to the"," ",fe.createElement("code",null,"`resources`")," property of ",fe.createElement("code",null,"`<Refine>`")),fe.createElement("div",{style:{display:"flex",gap:8}},fe.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Documentation")),fe.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Examples")),fe.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Community"))));import Se from"react";var ja=()=>Se.createElement(Se.Fragment,null,Se.createElement("h1",null,"Welcome on board"),Se.createElement("p",null,"Your configuration is completed."),Se.createElement("div",{style:{display:"flex",gap:8}},Se.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Documentation")),Se.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Examples")),Se.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Community"))));import X from"react";import{QueryClientProvider as Za,QueryClient as Ms}from"@tanstack/react-query";import{ReactQueryDevtools as qa}from"@tanstack/react-query-devtools";import{useEffect as Ja}from"react";import{useContext as st}from"react";var Ya="4.3.0",Ds=()=>{let e=Rr(),t=st(ot),r=st(Fe),o=st(wt),s=st(Lt),{i18nProvider:a}=st(Me),n=st(It),i=st(rt),{resources:l}=w(),p=!!t.create||!!t.get||!!t.update,d=!!(r!=null&&r.publish)||!!(r!=null&&r.subscribe)||!!(r!=null&&r.unsubscribe),c=!!o.useHistory||!!o.Link||!!o.Prompt||!!o.useLocation||!!o.useParams,g=!!s,x=!!(a!=null&&a.changeLocale)||!!(a!=null&&a.getLocale)||!!(a!=null&&a.translate),D=!!n.close||!!n.open,T=!!i.can;return{providers:{auth:e,auditLog:p,live:d,router:c,data:g,i18n:x,notification:D,accessControl:T},version:Ya,resourceCount:l.length}};var Xa=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Us=()=>{let e=Ds();return Ja(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${Xa(e)}`},[]),null};var Es=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 Ls from"react";var Is=e=>{let t=Ls.useRef(!1);Ls.useEffect(()=>{t.current===!1&&e&&Es(e)&&(t.current=!0)},[e])};var ei=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:s,notificationProvider:a,accessControlProvider:n,auditLogProvider:i,resources:l,DashboardPage:p,ReadyPage:d,LoginPage:c,catchAll:g,children:x,liveProvider:D,i18nProvider:T,Title:u,Layout:y,Sider:R,Header:v,Footer:h,OffLayoutArea:m,onLiveEvent:f,options:C})=>{let{optionsWithDefaults:P,disableTelemetryWithDefault:U,reactQueryWithDefaults:E}=Er({options:C}),L=tr(()=>{var V;return E.clientConfig instanceof Ms?E.clientConfig:new Ms({...E.clientConfig,defaultOptions:{...E.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(V=E.clientConfig.defaultOptions)==null?void 0:V.queries}}})},[E.clientConfig]),I=X.useMemo(()=>typeof a=="function"?a:()=>a!=null?a:{},[a])();if(Is(s),o&&!s&&(l!=null?l:[]).length===0)return d?X.createElement(d,null):X.createElement(Wr,null);let{RouterComponent:S=X.Fragment}=s?{}:o!=null?o:{};return X.createElement(Za,{client:L},X.createElement(zo,{...I},X.createElement(ro,{...e!=null?e:{},isProvided:Boolean(e)},X.createElement(so,{...t!=null?t:{},isProvided:Boolean(t)},X.createElement(wo,{...r},X.createElement(Vo,{liveProvider:D},X.createElement(Wo,{value:o&&!s?"legacy":"new"},X.createElement(Go,{router:s},X.createElement(rs,{...o},X.createElement(Oo,{resources:l!=null?l:[]},X.createElement(jo,{i18nProvider:T},X.createElement(ss,{...n!=null?n:{}},X.createElement(ms,{...i!=null?i:{}},X.createElement(Sr,null,X.createElement(vo,{mutationMode:P.mutationMode,warnWhenUnsavedChanges:P.warnWhenUnsavedChanges,syncWithLocation:P.syncWithLocation,Title:u,undoableTimeout:P.undoableTimeout,catchAll:g,DashboardPage:p,LoginPage:c,Layout:y,Sider:R,Footer:h,Header:v,OffLayoutArea:m,hasDashboard:!!p,liveMode:P.liveMode,onLiveEvent:f,options:P},X.createElement(Jo,null,X.createElement(S,null,x,!U&&X.createElement(Us,null),X.createElement(Kr,null))))))))))))))))),E.devtoolConfig===!1?null:X.createElement(qa,{initialIsOpen:!1,position:"bottom-right",...E.devtoolConfig}))};import{useEffect as ti,useState as ri}from"react";var Eo=({notification:e})=>{let t=Q(),{notificationDispatch:r}=Ve(),{open:o}=me(),[s,a]=ri(),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:bt(e.seconds)},`You have ${bt(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:bt(e.seconds)}),e.seconds>0)){s&&clearTimeout(s);let i=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);a(i)}};return ti(()=>{n()},[e]),null};import Gr,{useEffect as oi}from"react";var si=({children:e,Layout:t,Sider:r,Header:o,Title:s,Footer:a,OffLayoutArea:n})=>{let{Layout:i,Footer:l,Header:p,Sider:d,Title:c,OffLayoutArea:g}=At(),x=t!=null?t:i;return Gr.createElement(x,{Sider:r!=null?r:d,Header:o!=null?o:p,Footer:a!=null?a:l,Title:s!=null?s:c,OffLayoutArea:n!=null?n:g},e,Gr.createElement(ni,null))},ni=()=>{let{Prompt:e}=W(),t=Q(),{warnWhen:r,setWarnWhen:o}=Mt(),s=a=>(a.preventDefault(),a.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),a.returnValue);return oi(()=>(r&&window.addEventListener("beforeunload",s),window.removeEventListener("beforeunload",s)),[r]),Gr.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})};import Te from"react";var ai=()=>{let e=te(),[t,r]=Te.useState(void 0);return Te.useEffect(()=>{t&&e(t)},[t]),Te.useCallback(s=>{t||r(s)},[t])};function ii({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:s}){var P;let a=H(),n=F(),i=Boolean(a==null?void 0:a.isProvided),l=Boolean(a==null?void 0:a.isLegacy),p=n==="legacy",d=z(),c=te(),g=ai(),{replace:x}=ee(),{useLocation:D}=W(),T=D(),{isLoading:u,isFetching:y,isSuccess:R,data:{authenticated:v,redirectTo:h}={},refetch:m}=$t({v3LegacyAuthProviderCompatible:l});Te.useEffect(()=>{m()},[r,o]);let f=Te.useRef({status:u?"initial":"pending",content:s!=null?s:null});y?f.current.status="pending":y||(f.current.status="settled");let C=i?l?R:v:!0;if(f.current.status==="settled")if(C)f.current.content=Te.createElement(Te.Fragment,null,r!=null?r:null);else if(typeof o<"u")f.current.content=Te.createElement(Te.Fragment,null,o);else{let U=`${p?T==null?void 0:T.pathname:d.pathname}`.replace(/(\?.*|#.*)$/,""),E=l?typeof e=="string"?e:"/login":typeof e=="string"?e:h;if(E)if(p){let L=t?`?to=${encodeURIComponent(U)}`:"";x(`${E}${L}`)}else g({to:E,query:t?{to:(P=d.params)!=null&&P.to?d.params.to:c({to:U,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return i?Te.createElement(Te.Fragment,null,f.current.content):Te.createElement(Te.Fragment,null,r!=null?r:null)}import{useEffect as ui}from"react";var Kr=()=>{let{useLocation:e}=W(),{checkAuth:t}=j(),r=e();return ui(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null};import Tt from"react";var ci=({resource:e,action:t,params:r,fallback:o,children:s,...a})=>{var m,f;let n=F(),{resources:i}=w(),{useParams:l}=W(),{resource:p,id:d,action:c}=z(),{resource:g,id:x,action:D}=l(),T=p==null?void 0:p.name,u=!e||e===(n==="legacy"?g:T)?(m=r==null?void 0:r.id)!=null?m:n==="legacy"?x:d:r==null?void 0:r.id,y=e!=null?e:n==="legacy"?g:T,R,v=Je();if(n==="legacy")y&&(R=v(y));else if(e){let C=$(e,i);C?R=C:R={name:e,route:e}}else if(typeof p=="string"){let C=$(p,i);C?R=C:R={name:p,route:p}}else R=p;let{data:h}=as({resource:e!=null?e:R==null?void 0:R.name,action:(f=t!=null?t:n==="legacy"?D:c)!=null?f:"",params:r!=null?r:{id:u,resource:R}});return h!=null&&h.can?Tt.isValidElement(s)?Tt.cloneElement(s,a):Tt.createElement(Tt.Fragment,null,s):(h==null?void 0:h.can)===!1?Tt.createElement(Tt.Fragment,null,o!=null?o:null):null};import Vt,{useEffect as pi}from"react";var As=[`
|
|
1
|
+
import kt,{useEffect as Wa,useState as Ka}from"react";import pt from"react";var to=pt.createContext({}),ro=({children:e,isProvided:t,...r})=>{let{replace:o}=ee(),s=async m=>{var d;try{return await((d=r.login)==null?void 0:d.call(r,m))}catch(f){return Promise.reject(f)}},a=async m=>{var d;try{return await((d=r.register)==null?void 0:d.call(r,m))}catch(f){return Promise.reject(f)}},n=async m=>{var d;try{return await((d=r.logout)==null?void 0:d.call(r,m))}catch(f){return Promise.reject(f)}},i=async m=>{var d;try{return await((d=r.checkAuth)==null?void 0:d.call(r,m)),Promise.resolve()}catch(f){return f!=null&&f.redirectPath&&o(f.redirectPath),Promise.reject(f)}};return pt.createElement(to.Provider,{value:{...r,login:s,logout:n,checkAuth:i,register:a,isProvided:t}},e)},oo=pt.createContext({}),so=({children:e,isProvided:t,...r})=>{let o=async d=>{var f;try{return await((f=r.login)==null?void 0:f.call(r,d))}catch(c){return console.warn("Unhandled Error in login: refine always expects a resolved promise.",c),Promise.reject(c)}},s=async d=>{var f;try{return await((f=r.register)==null?void 0:f.call(r,d))}catch(c){return console.warn("Unhandled Error in register: refine always expects a resolved promise.",c),Promise.reject(c)}},a=async d=>{var f;try{return await((f=r.logout)==null?void 0:f.call(r,d))}catch(c){return console.warn("Unhandled Error in logout: refine always expects a resolved promise.",c),Promise.reject(c)}},n=async d=>{var f;try{let c=await((f=r.check)==null?void 0:f.call(r,d));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in check: refine always expects a resolved promise.",c),Promise.reject(c)}},i=async d=>{var f;try{let c=await((f=r.forgotPassword)==null?void 0:f.call(r,d));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in forgotPassword: refine always expects a resolved promise.",c),Promise.reject(c)}},m=async d=>{var f;try{let c=await((f=r.updatePassword)==null?void 0:f.call(r,d));return Promise.resolve(c)}catch(c){return console.warn("Unhandled Error in updatePassword: refine always expects a resolved promise.",c),Promise.reject(c)}};return pt.createElement(oo.Provider,{value:{...r,login:o,logout:a,check:n,register:s,forgotPassword:i,updatePassword:m,isProvided:t}},e)},j=()=>pt.useContext(to),q=()=>pt.useContext(oo);import{useQuery as no}from"@tanstack/react-query";function Ss({v3LegacyAuthProviderCompatible:e=!1,options:t}={}){let{getPermissions:r}=j(),{getPermissions:o}=q(),s=no(["usePermissions"],o!=null?o:()=>Promise.resolve(void 0),{enabled:!e&&!!o,...e?{}:t}),a=no(["usePermissions","v3LegacyAuthProviderCompatible"],r!=null?r:()=>Promise.resolve(void 0),{enabled:e&&!!r,...e?t:{}});return e?a:s}import{useQuery as ao}from"@tanstack/react-query";function cr({v3LegacyAuthProviderCompatible:e=!1,queryOptions:t}={}){let{getUserIdentity:r}=j(),{getIdentity:o}=q(),s=ao(["getUserIdentity"],o!=null?o:()=>Promise.resolve({}),{enabled:!e&&!!o,retry:!1,...e===!0?{}:t}),a=ao(["getUserIdentity","v3LegacyAuthProviderCompatible"],r!=null?r:()=>Promise.resolve({}),{enabled:e&&!!r,retry:!1,...e?t:{}});return e?a:s}import{useMutation as io}from"@tanstack/react-query";import{useQueryClient as ws}from"@tanstack/react-query";var dt=()=>{let e=ws();return async()=>{await Promise.all([e.invalidateQueries(["useAuthenticated"]),e.invalidateQueries(["getUserIdentity"]),e.invalidateQueries(["usePermissions"])])}};function Ht({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=dt(),o=F(),s=te(),{push:a}=ee(),{open:n,close:i}=me(),{logout:m}=j(),{logout:d}=q(),f=io(["useLogout"],d,{onSuccess:async(g,x)=>{let{success:U,error:T,redirectTo:u}=g,{redirectPath:l}=x!=null?x:{},R=l!=null?l:u;U&&(i==null||i("useLogout-error")),(T||!U)&&(n==null||n(pr(T))),await r(),R!==!1&&(o==="legacy"?a(R!=null?R:"/login"):R&&s({to:R}))},onError:g=>{n==null||n(pr(g))},...e===!0?{}:t}),c=io(["useLogout","v3LegacyAuthProviderCompatible"],m,{onSuccess:async(g,x)=>{var T;let U=(T=x==null?void 0:x.redirectPath)!=null?T:g;if(await r(),U!==!1){if(U){o==="legacy"?a(U):s({to:U});return}o==="legacy"?a("/login"):s({to:"/login"})}},onError:g=>{n==null||n(pr(g))},...e?t:{}});return e?c:f}var pr=e=>({key:"useLogout-error",type:"error",message:(e==null?void 0:e.name)||"Logout Error",description:(e==null?void 0:e.message)||"Something went wrong during logout"});import{useMutation as uo}from"@tanstack/react-query";import ks from"qs";import Vs from"react";function Pt({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=dt(),o=F(),s=te(),{replace:a}=ee(),n=z(),{useLocation:i}=W(),{search:m}=i(),{close:d,open:f}=me(),{login:c}=j(),{login:g}=q(),x=Vs.useMemo(()=>{var u;return o==="legacy"?ks.parse(m,{ignoreQueryPrefix:!0}).to:(u=n.params)==null?void 0:u.to},[o,n.params,m]),U=uo(["useLogin"],g,{onSuccess:async({success:u,redirectTo:l,error:R})=>{u&&(d==null||d("login-error")),(R||!u)&&(f==null||f(dr(R))),await r(),x&&u?o==="legacy"?a(x):s({to:x,type:"replace"}):l?o==="legacy"?a(l):s({to:l,type:"replace"}):o==="legacy"&&a("/")},onError:u=>{f==null||f(dr(u))},...e===!0?{}:t}),T=uo(["useLogin","v3LegacyAuthProviderCompatible"],c,{onSuccess:async u=>{await r(),x&&a(x),u!==!1&&!x&&(typeof u=="string"?o==="legacy"?a(u):s({to:u,type:"replace"}):o==="legacy"?a("/"):s({to:"/",type:"replace"})),d==null||d("login-error")},onError:u=>{f==null||f(dr(u))},...e?t:{}});return e?T:U}var dr=e=>({message:(e==null?void 0:e.name)||"Login Error",description:(e==null?void 0:e.message)||"Invalid credentials",key:"login-error",type:"error"});import{useMutation as co}from"@tanstack/react-query";function mr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=dt(),o=F(),s=te(),{replace:a}=ee(),{register:n}=j(),{register:i}=q(),{close:m,open:d}=me(),f=co(["useRegister"],i,{onSuccess:async({success:g,redirectTo:x,error:U})=>{g&&(m==null||m("register-error")),(U||!g)&&(d==null||d(lr(U))),await r(),x?o==="legacy"?a(x):s({to:x,type:"replace"}):o==="legacy"&&a("/")},onError:g=>{d==null||d(lr(g))},...e===!0?{}:t}),c=co(["useRegister","v3LegacyAuthProviderCompatible"],n,{onSuccess:async g=>{await r(),g!==!1&&(g?o==="legacy"?a(g):s({to:g,type:"replace"}):o==="legacy"?a("/"):s({to:"/",type:"replace"}),m==null||m("register-error"))},onError:g=>{d==null||d(lr(g))},...e?t:{}});return e?c:f}var lr=e=>({message:(e==null?void 0:e.name)||"Register Error",description:(e==null?void 0:e.message)||"Error while registering",key:"register-error",type:"error"});import{useMutation as po}from"@tanstack/react-query";function yr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=F(),o=te(),{replace:s}=ee(),{forgotPassword:a}=j(),{forgotPassword:n}=q(),{close:i,open:m}=me(),d=po(["useForgotPassword"],n,{onSuccess:({success:c,redirectTo:g,error:x})=>{c&&(i==null||i("forgot-password-error")),(x||!c)&&(m==null||m(fr(x))),g&&(r==="legacy"?s(g):o({to:g,type:"replace"}))},onError:c=>{m==null||m(fr(c))},...e===!0?{}:t}),f=po(["useForgotPassword","v3LegacyAuthProviderCompatible"],a,{onSuccess:c=>{c!==!1&&c&&(r==="legacy"?s(c):o({to:c,type:"replace"})),i==null||i("forgot-password-error")},onError:c=>{m==null||m(fr(c))},...e?t:{}});return e?f:d}var fr=e=>({message:(e==null?void 0:e.name)||"Forgot Password Error",description:(e==null?void 0:e.message)||"Error while resetting password",key:"forgot-password-error",type:"error"});import Qs from"react";import{useMutation as lo}from"@tanstack/react-query";import Bs from"qs";function Tr({v3LegacyAuthProviderCompatible:e,mutationOptions:t}={}){let r=F(),o=te(),{replace:s}=ee(),{updatePassword:a}=j(),{updatePassword:n}=q(),{close:i,open:m}=me(),d=z(),{useLocation:f}=W(),{search:c}=f(),g=Qs.useMemo(()=>{var T;if(r==="legacy"){let u=Bs.parse(c,{ignoreQueryPrefix:!0});return u!=null?u:{}}else return(T=d.params)!=null?T:{}},[c,d,r]),x=lo(["useUpdatePassword"],async T=>n==null?void 0:n({...g,...T}),{onSuccess:({success:T,redirectTo:u,error:l})=>{T&&(i==null||i("update-password-error")),(l||!T)&&(m==null||m(gr(l))),u&&(r==="legacy"?s(u):o({to:u,type:"replace"}))},onError:T=>{m==null||m(gr(T))},...e===!0?{}:t}),U=lo(["useUpdatePassword","v3LegacyAuthProviderCompatible"],async T=>a==null?void 0:a({...g,...T}),{onSuccess:T=>{T!==!1&&T&&(r==="legacy"?s(T):o({to:T,type:"replace"})),i==null||i("update-password-error")},onError:T=>{m==null||m(gr(T))},...e?t:{}});return e?U:x}var gr=e=>({message:(e==null?void 0:e.name)||"Update Password Error",description:(e==null?void 0:e.message)||"Error while updating password",key:"update-password-error",type:"error"});import{useQuery as mo}from"@tanstack/react-query";function $t({v3LegacyAuthProviderCompatible:e=!1,params:t}={}){let{checkAuth:r}=j(),{check:o}=q(),s=mo(["useAuthenticated",t],async()=>{var n;return(n=await(o==null?void 0:o(t)))!=null?n:{}},{retry:!1,enabled:!e}),a=mo(["useAuthenticated",t,"v3LegacyAuthProviderCompatible"],async()=>{var n;return(n=await(r==null?void 0:r(t)))!=null?n:{}},{retry:!1,enabled:e});return e?a:s}var Ns=$t;import{useMutation as fo}from"@tanstack/react-query";function Y({v3LegacyAuthProviderCompatible:e=!1}={}){let t=F(),r=te(),{replace:o}=ee(),{checkError:s}=j(),{onError:a}=q(),{mutate:n}=Ht({v3LegacyAuthProviderCompatible:Boolean(e)}),{mutate:i}=Ht({v3LegacyAuthProviderCompatible:Boolean(e)}),m=fo(["useCheckError"],a,{onSuccess:({logout:f,redirectTo:c})=>{if(f){i({redirectPath:c});return}if(c){t==="legacy"?o(c):r({to:c,type:"replace"});return}}}),d=fo(["useCheckError","v3LegacyAuthProviderCompatible"],s,{onError:f=>{n({redirectPath:f})}});return e?d:m}var Fs=Y;var Rr=()=>{let{isProvided:e}=j(),{isProvided:t}=q();return Boolean(t||e)};import{useQuery as js}from"@tanstack/react-query";var bt=e=>e/1e3;import Os from"lodash/zip";import Hs from"lodash/fromPairs";var Wt=(e,t=r=>r)=>{let[r,...o]=e;return o.map(s=>Hs(Os(r,s))).map((s,a,n)=>t.call(void 0,s,a,n))};import xo from"pluralize";import xr from"qs";import yo from"lodash/unionWith";import go from"lodash/differenceWith";import $s from"warn-once";var Kt=e=>{var n;let{current:t,pageSize:r,sorter:o,sorters:s,filters:a}=xr.parse(e.substring(1));return{parsedCurrent:t&&Number(t),parsedPageSize:r&&Number(r),parsedSorter:(n=P(s,o))!=null?n:[],parsedFilters:a!=null?a:[]}},Ws=e=>{let t=xr.stringify(e);return Kt(`/${t}`)},Gt=e=>{let t={skipNulls:!0,arrayFormat:"indices",encode:!1},{pagination:r,sorter:o,sorters:s,filters:a,...n}=e;return xr.stringify({...n,...r||{},sorters:P(s,o),filters:a},t)},To=(e,t)=>e.operator!=="and"&&e.operator!=="or"&&t.operator!=="and"&&t.operator!=="or"?("field"in e?e.field:void 0)==("field"in t?t.field:void 0)&&e.operator==t.operator:("key"in e?e.key:void 0)==("key"in t?t.key:void 0)&&e.operator==t.operator,Ro=(e,t)=>e.field==t.field,lt=(e,t,r=[])=>(t.filter(s=>(s.operator==="or"||s.operator==="and")&&!s.key).length>1&&$s(!0,`[conditionalFilters]: You have created multiple Conditional Filters at the top level, this requires the key parameter.
|
|
2
|
+
For more information, see https://refine.dev/docs/advanced-tutorials/data-provider/handling-filters/#top-level-multiple-conditional-filters-usage`),yo(e,t,r,To).filter(s=>s.value!==void 0&&s.value!==null&&(s.operator!=="or"||s.operator==="or"&&s.value.length!==0)&&(s.operator!=="and"||s.operator==="and"&&s.value.length!==0))),zt=(e,t)=>yo(e,t,Ro).filter(r=>r.order!==void 0&&r.order!==null),_t=(e,t)=>[...go(t,e,To),...e],jt=(e,t)=>[...go(t,e,Ro),...e],Ks=(e,t)=>{if(!t)return;let r=t.find(o=>o.field===e);if(r)return r.order},Gs=(e,t,r="eq")=>{let o=t==null?void 0:t.find(s=>{if(s.operator!=="or"&&s.operator!=="and"&&"field"in s){let{operator:a,field:n}=s;return n===e&&a===r}});if(o)return o.value||[]};var zs=e=>new Promise((t,r)=>{let o=new FileReader,s=()=>{o.result&&(o.removeEventListener("load",s,!1),t(o.result))};o.addEventListener("load",s,!1),o.readAsDataURL(e.originFileObj),o.onerror=a=>(o.removeEventListener("load",s,!1),r(a))});var mt=(e="",t)=>{let r=qe(e);return t==="singular"?xo.singular(r):xo.plural(r)};var Co=(e={})=>e!=null&&e.id?{...e,id:decodeURIComponent(e.id)}:e;var P=(...e)=>e.find(t=>typeof t<"u");var _=(e,t,r,o)=>{let s=t||"default",a={all:[s],resourceAll:[s,e||""],list:n=>[...a.resourceAll,"list",{...n,...P(r,o)||{}}],many:n=>[...a.resourceAll,"getMany",n&&n.map(String),{...P(r,o)||{}}].filter(i=>i!==void 0),detail:n=>[...a.resourceAll,"detail",n==null?void 0:n.toString(),{...P(r,o)||{}}],logList:n=>["logList",e,n,o].filter(i=>i!==void 0)};return a};var Cr=(e,t)=>!e||!t?!1:!!e.find(r=>r===t);var et=e=>e.startsWith(":");var we=e=>e.split("/").filter(r=>r!=="");var Pr=(e,t)=>{let r=we(e),o=we(t);return r.length===o.length};var ue=e=>e.replace(/^\/|\/$/g,"");var br=(e,t)=>{let r=ue(e),o=ue(t);if(!Pr(r,o))return!1;let s=we(r);return we(o).every((n,i)=>et(n)||n===s[i])};var hr=(e,t,r)=>{let o=ue(r||""),s=`${o}${o?"/":""}${e}`;return t==="list"?s=`${s}`:t==="create"?s=`${s}/create`:t==="edit"?s=`${s}/edit/:id`:t==="show"?s=`${s}/show/:id`:t==="clone"&&(s=`${s}/clone/:id`),`/${s.replace(/^\//,"")}`};var ge=(e,t)=>{var s,a;let r=P((s=e.meta)==null?void 0:s.parent,(a=e.options)==null?void 0:a.parent,e.parentName);if(!r)return;let o=t.find(n=>{var i;return((i=n.identifier)!=null?i:n.name)===r});return o!=null?o:{name:r}};var ht=(e,t,r)=>{let o=[],s=ge(e,t);for(;s;)o.push(s),s=ge(s,t);if(o.length!==0)return`/${o.reverse().map(a=>{var i,m;let n=r&&(m=(i=a.options)==null?void 0:i.route)!=null?m:a.name;return ue(n)}).join("/")}`};var ne=(e,t,r)=>{let o=[],s=["list","show","edit","create","clone"],a=ht(e,t,r);return s.forEach(n=>{var d,f,c,g;let i=r&&n==="clone"?e.create:e[n],m;typeof i=="function"||r?m=hr(r&&(g=(c=(d=e.meta)==null?void 0:d.route)!=null?c:(f=e.options)==null?void 0:f.route)!=null?g:e.name,n,r?a:void 0):typeof i=="string"?m=i:typeof i=="object"&&(m=i.path),m&&o.push({action:n,resource:e,route:`/${m.replace(/^\//,"")}`})}),o};var Po=e=>{var s,a;if(e.length===0)return;if(e.length===1)return e[0];let t=e.map(n=>({...n,splitted:we(ue(n.route))})),r=(a=(s=t[0])==null?void 0:s.splitted.length)!=null?a:0,o=[...t];for(let n=0;n<r;n++){let i=o.filter(m=>!et(m.splitted[n]));if(i.length!==0){if(i.length===1){o=i;break}o=i}}return o[0]};var vr=(e,t)=>{let o=t.flatMap(a=>ne(a,t)).filter(a=>br(e,a.route)),s=Po(o);return{found:!!s,resource:s==null?void 0:s.resource,action:s==null?void 0:s.action,matchedRoute:s==null?void 0:s.route}};var Yt=(e,t)=>{var s,a,n;let r,o=ht(e,t,!0);if(o){let i=P(e.meta,e.options);r=`${o}/${(s=i==null?void 0:i.route)!=null?s:e.name}`}else r=(n=(a=e.options)==null?void 0:a.route)!=null?n:e.name;return`/${r.replace(/^\//,"")}`};var bo=e=>{var n,i,m;let t=[],r={},o={},s,a;for(let d=0;d<e.length;d++){s=e[d];let f=(m=(i=s.route)!=null?i:(n=P(s==null?void 0:s.meta,s.options))==null?void 0:n.route)!=null?m:"";r[f]=s,r[f].children=[],o[s.name]=s,o[s.name].children=[]}for(let d in r)r.hasOwnProperty(d)&&(a=r[d],a.parentName&&o[a.parentName]?o[a.parentName].children.push(a):t.push(a));return t};var qe=e=>(e=e.replace(/([a-z]{1})([A-Z]{1})/g,"$1-$2"),e=e.replace(/([A-Z]{1})([A-Z]{1})([a-z]{1})/g,"$1-$2$3"),e=e.toLowerCase().replace(/[_-]+/g," ").replace(/\s{2,}/g," ").trim(),e=e.charAt(0).toUpperCase()+e.slice(1),e);import ho from"react";import _s from"react";var Dr=({children:e})=>_s.createElement("div",null,e);var ke={mutationMode:"pessimistic",syncWithLocation:!1,undoableTimeout:5e3,warnWhenUnsavedChanges:!1,liveMode:"off",redirect:{afterCreate:"list",afterClone:"list",afterEdit:"list"}},le=ho.createContext({hasDashboard:!1,mutationMode:"pessimistic",warnWhenUnsavedChanges:!1,syncWithLocation:!1,undoableTimeout:5e3,Title:void 0,Sider:void 0,Header:void 0,Footer:void 0,Layout:Dr,OffLayoutArea:void 0,liveMode:"off",onLiveEvent:void 0,options:ke}),vo=({hasDashboard:e,mutationMode:t,warnWhenUnsavedChanges:r,syncWithLocation:o,undoableTimeout:s,children:a,DashboardPage:n,Title:i,Layout:m=Dr,Header:d,Sider:f,Footer:c,OffLayoutArea:g,LoginPage:x=Ur,catchAll:U,liveMode:T="off",onLiveEvent:u,options:l})=>ho.createElement(le.Provider,{value:{hasDashboard:e,mutationMode:t,warnWhenUnsavedChanges:r,syncWithLocation:o,Title:i,undoableTimeout:s,Layout:m,Header:d,Sider:f,Footer:c,OffLayoutArea:g,DashboardPage:n,LoginPage:x,catchAll:U,liveMode:T,onLiveEvent:u,options:l}},a);var Er=({options:e,disableTelemetry:t,liveMode:r,mutationMode:o,reactQueryClientConfig:s,reactQueryDevtoolConfig:a,syncWithLocation:n,undoableTimeout:i,warnWhenUnsavedChanges:m}={})=>{var g,x,U,T,u,l,R,b,h,y,p,C,v,D,E,L,M,I,S,V,N,A,B,O;let d={breadcrumb:e==null?void 0:e.breadcrumb,mutationMode:(x=(g=e==null?void 0:e.mutationMode)!=null?g:o)!=null?x:ke.mutationMode,undoableTimeout:(T=(U=e==null?void 0:e.undoableTimeout)!=null?U:i)!=null?T:ke.undoableTimeout,syncWithLocation:(l=(u=e==null?void 0:e.syncWithLocation)!=null?u:n)!=null?l:ke.syncWithLocation,warnWhenUnsavedChanges:(b=(R=e==null?void 0:e.warnWhenUnsavedChanges)!=null?R:m)!=null?b:ke.warnWhenUnsavedChanges,liveMode:(y=(h=e==null?void 0:e.liveMode)!=null?h:r)!=null?y:ke.liveMode,redirect:{afterCreate:(C=(p=e==null?void 0:e.redirect)==null?void 0:p.afterCreate)!=null?C:ke.redirect.afterCreate,afterClone:(D=(v=e==null?void 0:e.redirect)==null?void 0:v.afterClone)!=null?D:ke.redirect.afterClone,afterEdit:(L=(E=e==null?void 0:e.redirect)==null?void 0:E.afterEdit)!=null?L:ke.redirect.afterEdit}},f=(I=(M=e==null?void 0:e.disableTelemetry)!=null?M:t)!=null?I:!1,c={clientConfig:(N=(V=(S=e==null?void 0:e.reactQuery)==null?void 0:S.clientConfig)!=null?V:s)!=null?N:{},devtoolConfig:(O=(B=(A=e==null?void 0:e.reactQuery)==null?void 0:A.devtoolConfig)!=null?B:a)!=null?O:{}};return{optionsWithDefaults:d,disableTelemetryWithDefault:f,reactQueryWithDefaults:c}};var Lr=({redirectFromProps:e,action:t,redirectOptions:r})=>{if(e||e===!1)return e;switch(t){case"clone":return r.afterClone;case"create":return r.afterCreate;case"edit":return r.afterEdit;default:return!1}};var Jt=async(e,t,r)=>{let o=[];for(let[s,a]of e.entries())try{let n=await a();o.push(t(n,s))}catch(n){o.push(r(n,s))}return o};var $=(e,t=[],r=!1)=>{if(!e)return;if(r){let s=t.find(n=>{var i;return ue((i=n.route)!=null?i:"")===ue(e)});return s||t.find(n=>n.name===e)}return t.find(s=>{var a;return((a=s.identifier)!=null?a:s.name)===e})};var k=(e,t,r)=>{if(t)return t;let o=$(e,r),s=P(o==null?void 0:o.meta,o==null?void 0:o.options);return s!=null&&s.dataProviderName?s.dataProviderName:"default"};var Ne=async e=>({data:(await Promise.all(e)).map(t=>t.data)});var Xt=e=>{let{pagination:t,cursor:r}=e;if(r!=null&&r.next)return r.next;let o=(t==null?void 0:t.current)||1,s=(t==null?void 0:t.pageSize)||10,a=Math.ceil((e.total||0)/s);return o<a?Number(o)+1:void 0},Zt=e=>{let{pagination:t,cursor:r}=e;if(r!=null&&r.prev)return r.prev;let o=(t==null?void 0:t.current)||1;return o===1?void 0:o-1};var qt=e=>{let t=[];return e==null||e.forEach(r=>{var o,s,a;t.push({...r,label:(a=(o=r.meta)==null?void 0:o.label)!=null?a:(s=r.options)==null?void 0:s.label,route:Yt(r,e),canCreate:!!r.create,canEdit:!!r.edit,canShow:!!r.show,canDelete:r.canDelete})}),t};var Do=e=>we(ue(e)).flatMap(r=>et(r)?[r.slice(1)]:[]);var Uo=(e,t={},r={})=>e.reduce((o,s)=>{var n;let a=r[s]||((n=t.params)==null?void 0:n[s])||(s==="id"?t.id:void 0)||(s==="action"?t.action:void 0)||(s==="resource"?t.resource:void 0);return typeof a<"u"&&(o[s]=a),o},{});var pe=(e,t={},r={})=>{let o=Do(e),s=Uo(o,t,r);return e.replace(/:([^\/]+)/g,(a,n)=>{let i=s[n];return typeof i<"u"?`${i}`:a})};var H=()=>{let e=j(),t=q();return t.isProvided?{isLegacy:!1,...t}:e.isProvided?{isLegacy:!0,...e,check:e.checkAuth,onError:e.checkError,getIdentity:e.getUserIdentity}:null};var vt=({hasPagination:e,pagination:t,configPagination:r}={})=>{var i,m,d;let o=e===!1?"off":"server",s=(i=t==null?void 0:t.mode)!=null?i:o,a=(m=P(t==null?void 0:t.current,r==null?void 0:r.current))!=null?m:1,n=(d=P(t==null?void 0:t.pageSize,r==null?void 0:r.pageSize))!=null?d:10;return{current:a,pageSize:n,mode:s}};var Dt=({resource:e,config:t,filters:r,hasPagination:o,pagination:s,sorters:a,queryOptions:n,successNotification:i,errorNotification:m,meta:d,metaData:f,liveMode:c,onLiveEvent:g,liveParams:x,dataProviderName:U})=>{let{resources:T}=w(),u=K(),l=Q(),R=H(),{mutate:b}=Y({v3LegacyAuthProviderCompatible:Boolean(R==null?void 0:R.isLegacy)}),h=J(),y=k(e,U,T),p=P(d,f),C=P(r,t==null?void 0:t.filters),v=P(a,t==null?void 0:t.sort),D=P(o,t==null?void 0:t.hasPagination),E=vt({pagination:s,configPagination:t==null?void 0:t.pagination,hasPagination:D}),L=E.mode==="server",M={meta:p,metaData:p,filters:C,hasPagination:L,pagination:E,sorters:v,config:{...t,sort:v}},I=(n==null?void 0:n.enabled)===void 0||(n==null?void 0:n.enabled)===!0,S=_(e,y,p,p),{getList:V}=u(y);return je({resource:e,types:["*"],params:{meta:p,metaData:p,pagination:E,hasPagination:L,sort:v,sorters:v,filters:C,subscriptionType:"useList",...x},channel:`resources/${e}`,enabled:I,liveMode:c,onLiveEvent:g}),js(S.list({filters:C,hasPagination:L,...L&&{pagination:E},...a&&{sorters:a},...(t==null?void 0:t.sort)&&{sort:t==null?void 0:t.sort}}),({queryKey:A,pageParam:B,signal:O})=>V({resource:e,pagination:E,hasPagination:L,filters:C,sort:v,sorters:v,meta:{...p||{},queryContext:{queryKey:A,pageParam:B,signal:O}},metaData:{...p||{},queryContext:{queryKey:A,pageParam:B,signal:O}}}),{...n,enabled:typeof(n==null?void 0:n.enabled)<"u"?n==null?void 0:n.enabled:!!e,select:A=>{var G;let B=A,{current:O,mode:ye,pageSize:he}=E;return ye==="client"&&(B={...B,data:B.data.slice((O-1)*he,O*he),total:B.total}),n!=null&&n.select?(G=n==null?void 0:n.select)==null?void 0:G.call(n,B):B},onSuccess:A=>{var O;(O=n==null?void 0:n.onSuccess)==null||O.call(n,A);let B=typeof i=="function"?i(A,M,e):i;h(B)},onError:A=>{var O;b(A),(O=n==null?void 0:n.onError)==null||O.call(n,A);let B=typeof m=="function"?m(A,M,e):m;h(B,{key:`${e}-useList-notification`,message:l("notifications.error",{statusCode:A.statusCode},`Error (status code: ${A.statusCode})`),description:A.message,type:"error"})}})};import{useQuery as Ys}from"@tanstack/react-query";var Ut=({resource:e,id:t,queryOptions:r,successNotification:o,errorNotification:s,meta:a,metaData:n,liveMode:i,onLiveEvent:m,liveParams:d,dataProviderName:f})=>{let{resources:c}=w(),g=K(),x=_(e,k(e,f,c),P(a,n),P(a,n)),{getOne:U}=g(k(e,f,c)),T=Q(),u=H(),{mutate:l}=Y({v3LegacyAuthProviderCompatible:Boolean(u==null?void 0:u.isLegacy)}),R=J();return je({resource:e,types:["*"],channel:`resources/${e}`,params:{ids:t?[t]:[],id:t,meta:P(a,n),metaData:P(a,n),subscriptionType:"useOne",...d},enabled:typeof(r==null?void 0:r.enabled)<"u"?r==null?void 0:r.enabled:typeof e<"u"&&typeof t<"u",liveMode:i,onLiveEvent:m}),Ys(x.detail(t),({queryKey:h,pageParam:y,signal:p})=>U({resource:e,id:t,meta:{...P(a,n)||{},queryContext:{queryKey:h,pageParam:y,signal:p}},metaData:{...P(a,n)||{},queryContext:{queryKey:h,pageParam:y,signal:p}}}),{...r,enabled:typeof(r==null?void 0:r.enabled)<"u"?r==null?void 0:r.enabled:typeof t<"u",onSuccess:h=>{var p;(p=r==null?void 0:r.onSuccess)==null||p.call(r,h);let y=typeof o=="function"?o(h,{id:t,...P(a,n)||{}},e):o;R(y)},onError:h=>{var p;l(h),(p=r==null?void 0:r.onError)==null||p.call(r,h);let y=typeof s=="function"?s(h,{id:t,...P(a,n)||{}},e):s;R(y,{key:`${t}-${e}-getOne-notification`,message:T("notifications.error",{statusCode:h.statusCode},`Error (status code: ${h.statusCode})`),description:h.message,type:"error"})}})};import{useQuery as Js}from"@tanstack/react-query";var Ir=({resource:e,ids:t,queryOptions:r,successNotification:o,errorNotification:s,meta:a,metaData:n,liveMode:i,onLiveEvent:m,liveParams:d,dataProviderName:f})=>{let{resources:c}=w(),g=K(),x=_(e,k(e,f,c),P(a,n),P(a,n)),{getMany:U,getOne:T}=g(k(e,f,c)),u=Q(),l=H(),{mutate:R}=Y({v3LegacyAuthProviderCompatible:Boolean(l==null?void 0:l.isLegacy)}),b=J(),h=(r==null?void 0:r.enabled)===void 0||(r==null?void 0:r.enabled)===!0;return je({resource:e,types:["*"],params:{ids:t!=null?t:[],meta:P(a,n),metaData:P(a,n),subscriptionType:"useMany",...d},channel:`resources/${e}`,enabled:h,liveMode:i,onLiveEvent:m}),Js(x.many(t),({queryKey:p,pageParam:C,signal:v})=>U?U({resource:e,ids:t,metaData:{...P(a,n)||{},queryContext:{queryKey:p,pageParam:C,signal:v}}}):Ne(t.map(D=>T({resource:e,id:D,metaData:{...P(a,n)||{},queryContext:{queryKey:p,pageParam:C,signal:v}}}))),{...r,onSuccess:p=>{var v;(v=r==null?void 0:r.onSuccess)==null||v.call(r,p);let C=typeof o=="function"?o(p,t,e):o;b(C)},onError:p=>{var v;R(p),(v=r==null?void 0:r.onError)==null||v.call(r,p);let C=typeof s=="function"?s(p,t,e):s;b(C,{key:`${t[0]}-${e}-getMany-notification`,message:u("notifications.error",{statusCode:p.statusCode},`Error (status code: ${p.statusCode})`),description:p.message,type:"error"})}})};import{useMutation as en,useQueryClient as tn}from"@tanstack/react-query";import Ar,{useReducer as Xs}from"react";import Mr from"lodash-es/isEqual";var er=Ar.createContext({notifications:[],notificationDispatch:()=>!1}),Zs=[],qs=(e,t)=>{switch(t.type){case"ADD":return[...e.filter(o=>!(Mr(o.id,t.payload.id)&&o.resource==t.payload.resource)),{...t.payload,isRunning:!0}];case"REMOVE":return e.filter(o=>!(Mr(o.id,t.payload.id)&&o.resource==t.payload.resource));case"DECREASE_NOTIFICATION_SECOND":return e.map(o=>Mr(o.id,t.payload.id)&&o.resource==t.payload.resource?{...o,seconds:t.payload.seconds-1e3}:o);default:return e}},Sr=({children:e})=>{let[t,r]=Xs(qs,Zs),o={notifications:t,notificationDispatch:r};return Ar.createElement(er.Provider,{value:o},e,typeof window<"u"&&t.map(s=>Ar.createElement(Eo,{key:`${s.id}-${s.resource}-queue`,notification:s})))};import Lo from"pluralize";var wr=({mutationOptions:e}={})=>{let{resources:t}=w(),r=tn(),o=K(),{mutationMode:s,undoableTimeout:a}=Ie(),n=Q(),i=H(),{mutate:m}=Y({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),d=xe(),{log:f}=Ce(),{notificationDispatch:c}=Ve(),g=J(),x=Pe();return en(({id:T,values:u,resource:l,mutationMode:R,undoableTimeout:b,onCancel:h,meta:y,metaData:p,dataProviderName:C})=>{let v=R!=null?R:s,D=b!=null?b:a;return v!=="undoable"?o(k(l,C,t)).update({resource:l,id:T,variables:u,meta:P(y,p),metaData:P(y,p)}):new Promise((L,M)=>{let I=()=>{o(k(l,C,t)).update({resource:l,id:T,variables:u,meta:P(y,p),metaData:P(y,p)}).then(V=>L(V)).catch(V=>M(V))},S=()=>{M({message:"mutationCancelled"})};h&&h(S),c({type:"ADD",payload:{id:T,resource:l,cancelMutation:S,doMutation:I,seconds:D,isSilent:!!h}})})},{onMutate:async({resource:T,id:u,mutationMode:l,values:R,dataProviderName:b})=>{let h=_(T,k(T,b,t)),y=r.getQueriesData(h.resourceAll),p=l!=null?l:s;return await r.cancelQueries(h.resourceAll,void 0,{silent:!0}),p!=="pessimistic"&&(r.setQueriesData(h.list(),C=>{if(!C)return null;let v=C.data.map(D=>{var E;return((E=D.id)==null?void 0:E.toString())===(u==null?void 0:u.toString())?{id:u,...D,...R}:D});return{...C,data:v}}),r.setQueriesData(h.many(),C=>{if(!C)return null;let v=C.data.map(D=>{var E;return((E=D.id)==null?void 0:E.toString())===(u==null?void 0:u.toString())&&(D={id:u,...D,...R}),D});return{...C,data:v}}),r.setQueriesData(h.detail(u),C=>C?{...C,data:{...C.data,...R}}:null)),{previousQueries:y,queryKey:h}},onSettled:(T,u,{id:l,resource:R,dataProviderName:b,invalidates:h=["list","many","detail"]})=>{x({resource:R,dataProviderName:k(R,b,t),invalidates:h,id:l}),c({type:"REMOVE",payload:{id:l,resource:R}})},onSuccess:(T,{id:u,resource:l,successNotification:R,dataProviderName:b,values:h,meta:y,metaData:p},C)=>{var V;let v=Lo.singular(l),D=typeof R=="function"?R(T,{id:u,values:h},l):R;g(D,{key:`${u}-${l}-notification`,description:n("notifications.success","Successful"),message:n("notifications.editSuccess",{resource:n(`${l}.${l}`,v)},`Successfully updated ${v}`),type:"success"}),d==null||d({channel:`resources/${l}`,type:"updated",payload:{ids:(V=T.data)!=null&&V.id?[T.data.id]:void 0},date:new Date});let E;if(C){let N=r.getQueryData(C.queryKey.detail(u));E=Object.keys(h||{}).reduce((A,B)=>{var O;return A[B]=(O=N==null?void 0:N.data)==null?void 0:O[B],A},{})}let{fields:L,operation:M,variables:I,...S}=P(y,p)||{};f==null||f.mutate({action:"update",resource:l,data:h,previousData:E,meta:{id:u,dataProviderName:k(l,b,t),...S}})},onError:(T,{id:u,resource:l,errorNotification:R,values:b},h)=>{if(h)for(let y of h.previousQueries)r.setQueryData(y[0],y[1]);if(T.message!=="mutationCancelled"){m==null||m(T);let y=Lo.singular(l),p=typeof R=="function"?R(T,{id:u,values:b},l):R;g(p,{key:`${u}-${l}-notification`,message:n("notifications.editError",{resource:n(`${l}.${l}`,y),statusCode:T.statusCode},`Error when updating ${y} (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useMutation as rn}from"@tanstack/react-query";import Io from"pluralize";var Et=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=K(),s=Pe(),{resources:a}=w(),n=Q(),i=xe(),{log:m}=Ce(),d=J();return rn(({resource:c,values:g,meta:x,metaData:U,dataProviderName:T})=>o(k(c,T,a)).create({resource:c,variables:g,meta:P(x,U),metaData:P(x,U)}),{onSuccess:(c,{resource:g,successNotification:x,dataProviderName:U,invalidates:T=["list","many"],values:u,meta:l,metaData:R})=>{var D,E,L;let b=Io.singular(g),h=typeof x=="function"?x(c,u,g):x;d(h,{key:`create-${g}-notification`,message:n("notifications.createSuccess",{resource:n(`${g}.${g}`,b)},`Successfully created ${b}`),description:n("notifications.success","Success"),type:"success"}),s({resource:g,dataProviderName:k(g,U,a),invalidates:T}),i==null||i({channel:`resources/${g}`,type:"created",payload:{ids:(D=c==null?void 0:c.data)!=null&&D.id?[c.data.id]:void 0},date:new Date});let{fields:y,operation:p,variables:C,...v}=P(l,R)||{};m==null||m.mutate({action:"create",resource:g,data:u,meta:{dataProviderName:k(g,U,a),id:(L=(E=c==null?void 0:c.data)==null?void 0:E.id)!=null?L:void 0,...v}})},onError:(c,{resource:g,errorNotification:x,values:U})=>{r(c);let T=Io.singular(g),u=typeof x=="function"?x(c,U,g):x;d(u,{key:`create-${g}-notification`,description:c.message,message:n("notifications.createError",{resource:n(`${g}.${g}`,T),statusCode:c.statusCode},`There was an error creating ${T} (status code: ${c.statusCode})`),type:"error"})},...e})};import{useQueryClient as on,useMutation as sn}from"@tanstack/react-query";import Mo from"pluralize";var nn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=K(),{resources:s}=w(),a=on(),{mutationMode:n,undoableTimeout:i}=Ie(),{notificationDispatch:m}=Ve(),d=Q(),f=xe(),{log:c}=Ce(),g=J(),x=Pe();return sn(({id:T,mutationMode:u,undoableTimeout:l,resource:R,onCancel:b,meta:h,metaData:y,dataProviderName:p,values:C})=>{let v=u!=null?u:n,D=l!=null?l:i;return v!=="undoable"?o(k(R,p,s)).deleteOne({resource:R,id:T,meta:P(h,y),metaData:P(h,y),variables:C}):new Promise((L,M)=>{let I=()=>{o(k(R,p,s)).deleteOne({resource:R,id:T,meta:P(h,y),variables:C}).then(V=>L(V)).catch(V=>M(V))},S=()=>{M({message:"mutationCancelled"})};b&&b(S),m({type:"ADD",payload:{id:T,resource:R,cancelMutation:S,doMutation:I,seconds:D,isSilent:!!b}})})},{onMutate:async({id:T,resource:u,mutationMode:l,dataProviderName:R})=>{let b=_(u,k(u,R,s)),h=l!=null?l:n;await a.cancelQueries(b.resourceAll,void 0,{silent:!0});let y=a.getQueriesData(b.resourceAll);return h!=="pessimistic"&&(a.setQueriesData(b.list(),p=>p?{data:p.data.filter(v=>{var D;return((D=v.id)==null?void 0:D.toString())!==T.toString()}),total:p.total-1}:null),a.setQueriesData(b.many(),p=>{if(!p)return null;let C=p.data.filter(v=>{var D;return((D=v.id)==null?void 0:D.toString())!==(T==null?void 0:T.toString())});return{...p,data:C}})),{previousQueries:y,queryKey:b}},onSettled:(T,u,{id:l,resource:R,dataProviderName:b,invalidates:h=["list","many"]})=>{x({resource:R,dataProviderName:k(R,b,s),invalidates:h}),m({type:"REMOVE",payload:{id:l,resource:R}})},onSuccess:(T,{id:u,resource:l,successNotification:R,dataProviderName:b,meta:h,metaData:y},p)=>{let C=Mo.singular(l!=null?l:"");a.removeQueries(p==null?void 0:p.queryKey.detail(u));let v=typeof R=="function"?R(T,u,l):R;g(v,{key:`${u}-${l}-notification`,description:d("notifications.success","Success"),message:d("notifications.deleteSuccess",{resource:d(`${l}.${l}`,C)},`Successfully deleted a ${C}`),type:"success"}),f==null||f({channel:`resources/${l}`,type:"deleted",payload:{ids:u?[u]:[]},date:new Date});let{fields:D,operation:E,variables:L,...M}=P(h,y)||{};c==null||c.mutate({action:"delete",resource:l,meta:{id:u,dataProviderName:k(l,b,s),...M}}),a.removeQueries(p==null?void 0:p.queryKey.detail(u))},onError:(T,{id:u,resource:l,errorNotification:R},b)=>{if(b)for(let h of b.previousQueries)a.setQueryData(h[0],h[1]);if(T.message!=="mutationCancelled"){r(T);let h=Mo.singular(l!=null?l:""),y=typeof R=="function"?R(T,u,l):R;g(y,{key:`${u}-${l}-notification`,message:d("notifications.deleteError",{resource:h,statusCode:T.statusCode},`Error (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useMutation as an}from"@tanstack/react-query";import un from"pluralize";var kr=({mutationOptions:e}={})=>{let t=K(),{resources:r}=w(),o=Q(),s=xe(),a=J(),n=Pe(),{log:i}=Ce();return an(({resource:d,values:f,meta:c,metaData:g,dataProviderName:x})=>{let U=t(k(d,x,r));return U.createMany?U.createMany({resource:d,variables:f,meta:P(c,g),metaData:P(c,g)}):Ne(f.map(T=>U.create({resource:d,variables:T,meta:P(c,g),metaData:P(c,g)})))},{onSuccess:(d,{resource:f,successNotification:c,dataProviderName:g,invalidates:x=["list","many"],values:U,meta:T,metaData:u})=>{let l=un.plural(f),R=typeof c=="function"?c(d,U,f):c;a(R,{key:`createMany-${f}-notification`,message:o("notifications.createSuccess",{resource:o(`${f}.${f}`,f)},`Successfully created ${l}`),description:o("notifications.success","Success"),type:"success"}),n({resource:f,dataProviderName:k(f,g,r),invalidates:x});let b=d==null?void 0:d.data.filter(v=>(v==null?void 0:v.id)!==void 0).map(v=>v.id);s==null||s({channel:`resources/${f}`,type:"created",payload:{ids:b},date:new Date});let{fields:h,operation:y,variables:p,...C}=P(T,u)||{};i==null||i.mutate({action:"createMany",resource:f,data:U,meta:{dataProviderName:k(f,g,r),ids:b,...C}})},onError:(d,{resource:f,errorNotification:c,values:g})=>{let x=typeof c=="function"?c(d,g,f):c;a(x,{key:`createMany-${f}-notification`,description:d.message,message:o("notifications.createError",{resource:o(`${f}.${f}`,f),statusCode:d.statusCode},`There was an error creating ${f} (status code: ${d.statusCode}`),type:"error"})},...e})};import{useMutation as cn,useQueryClient as pn}from"@tanstack/react-query";import Ao from"pluralize";var dn=({mutationOptions:e}={})=>{let{resources:t}=w(),r=pn(),o=K(),s=Q(),{mutationMode:a,undoableTimeout:n}=Ie(),i=H(),{mutate:m}=Y({v3LegacyAuthProviderCompatible:Boolean(i==null?void 0:i.isLegacy)}),{notificationDispatch:d}=Ve(),f=xe(),c=J(),g=Pe(),{log:x}=Ce();return cn(({ids:T,values:u,resource:l,onCancel:R,mutationMode:b,undoableTimeout:h,meta:y,metaData:p,dataProviderName:C})=>{let v=b!=null?b:a,D=h!=null?h:n,E=o(k(l,C,t)),L=()=>E.updateMany?E.updateMany({resource:l,ids:T,variables:u,meta:P(y,p),metaData:P(y,p)}):Ne(T.map(I=>E.update({resource:l,id:I,variables:u,meta:P(y,p),metaData:P(y,p)})));return v!=="undoable"?L():new Promise((I,S)=>{let V=()=>{L().then(A=>I(A)).catch(A=>S(A))},N=()=>{S({message:"mutationCancelled"})};R&&R(N),d({type:"ADD",payload:{id:T,resource:l,cancelMutation:N,doMutation:V,seconds:D,isSilent:!!R}})})},{onMutate:async({resource:T,ids:u,values:l,mutationMode:R,dataProviderName:b,meta:h,metaData:y})=>{let p=_(T,k(T,b,t),P(h,y),P(h,y)),C=R!=null?R:a;await r.cancelQueries(p.resourceAll,void 0,{silent:!0});let v=r.getQueriesData(p.resourceAll);if(C!=="pessimistic"){r.setQueriesData(p.list(),D=>{if(!D)return null;let E=D.data.map(L=>L.id!==void 0&&u.filter(M=>M!==void 0).map(String).includes(L.id.toString())?{...L,...l}:L);return{...D,data:E}}),r.setQueriesData(p.many(),D=>{if(!D)return null;let E=D.data.map(L=>L.id!==void 0&&u.filter(M=>M!==void 0).map(String).includes(L.id.toString())?{...L,...l}:L);return{...D,data:E}});for(let D of u)r.setQueriesData(p.detail(D),E=>{if(!E)return null;let L={...E.data,...l};return{...E,data:L}})}return{previousQueries:v,queryKey:p}},onSettled:(T,u,{ids:l,resource:R,dataProviderName:b})=>{g({resource:R,invalidates:["list","many"],dataProviderName:k(R,b,t)}),l.forEach(h=>g({resource:R,invalidates:["detail"],dataProviderName:k(R,b,t),id:h})),d({type:"REMOVE",payload:{id:l,resource:R}})},onSuccess:(T,{ids:u,resource:l,meta:R,metaData:b,dataProviderName:h,successNotification:y,values:p},C)=>{let v=Ao.singular(l),D=typeof y=="function"?y(T,{ids:u,values:p},l):y;c(D,{key:`${u}-${l}-notification`,description:s("notifications.success","Successful"),message:s("notifications.editSuccess",{resource:s(`${l}.${l}`,l)},`Successfully updated ${v}`),type:"success"}),f==null||f({channel:`resources/${l}`,type:"updated",payload:{ids:u.map(String)},date:new Date});let E=[];C&&u.forEach(V=>{let N=r.getQueryData(C.queryKey.detail(V));E.push(Object.keys(p||{}).reduce((A,B)=>{var O;return A[B]=(O=N==null?void 0:N.data)==null?void 0:O[B],A},{}))});let{fields:L,operation:M,variables:I,...S}=P(R,b)||{};x==null||x.mutate({action:"updateMany",resource:l,data:p,previousData:E,meta:{ids:u,dataProviderName:k(l,h,t),...S}})},onError:(T,{ids:u,resource:l,errorNotification:R,values:b},h)=>{if(h)for(let y of h.previousQueries)r.setQueryData(y[0],y[1]);if(T.message!=="mutationCancelled"){m==null||m(T);let y=Ao.singular(l),p=typeof R=="function"?R(T,{ids:u,values:b},l):R;c(p,{key:`${u}-${l}-updateMany-error-notification`,message:s("notifications.editError",{resource:y,statusCode:T.statusCode},`Error when updating ${y} (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};import{useQueryClient as ln,useMutation as mn}from"@tanstack/react-query";import fn from"pluralize";var yn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),{mutationMode:o,undoableTimeout:s}=Ie(),a=K(),{notificationDispatch:n}=Ve(),i=Q(),m=xe(),d=J(),f=Pe(),{log:c}=Ce(),{resources:g}=w(),x=ln();return mn(({resource:T,ids:u,mutationMode:l,undoableTimeout:R,onCancel:b,meta:h,metaData:y,dataProviderName:p,values:C})=>{let v=l!=null?l:o,D=R!=null?R:s,E=a(k(T,p,g)),L=()=>E.deleteMany?E.deleteMany({resource:T,ids:u,meta:P(h,y),metaData:P(h,y),variables:C}):Ne(u.map(I=>E.deleteOne({resource:T,id:I,meta:P(h,y),metaData:P(h,y),variables:C})));return v!=="undoable"?L():new Promise((I,S)=>{let V=()=>{L().then(A=>I(A)).catch(A=>S(A))},N=()=>{S({message:"mutationCancelled"})};b&&b(N),n({type:"ADD",payload:{id:u,resource:T,cancelMutation:N,doMutation:V,seconds:D,isSilent:!!b}})})},{onMutate:async({ids:T,resource:u,mutationMode:l,dataProviderName:R})=>{let b=_(u,k(u,R,g)),h=l!=null?l:o;await x.cancelQueries(b.resourceAll,void 0,{silent:!0});let y=x.getQueriesData(b.resourceAll);if(h!=="pessimistic"){x.setQueriesData(b.list(),p=>p?{data:p.data.filter(v=>v.id&&!T.map(String).includes(v.id.toString())),total:p.total-1}:null),x.setQueriesData(b.many(),p=>{if(!p)return null;let C=p.data.filter(v=>v.id?!T.map(String).includes(v.id.toString()):!1);return{...p,data:C}});for(let p of T)x.setQueriesData(b.detail(p),C=>!C||C.data.id==p?null:{...C})}return{previousQueries:y,queryKey:b}},onSettled:(T,u,{resource:l,ids:R,dataProviderName:b,invalidates:h=["list","many"]})=>{f({resource:l,dataProviderName:k(l,b,g),invalidates:h}),n({type:"REMOVE",payload:{id:R,resource:l}})},onSuccess:(T,{ids:u,resource:l,meta:R,metaData:b,dataProviderName:h,successNotification:y},p)=>{u.forEach(M=>x.removeQueries(p==null?void 0:p.queryKey.detail(M)));let C=typeof y=="function"?y(T,u,l):y;d(C,{key:`${u}-${l}-notification`,description:i("notifications.success","Success"),message:i("notifications.deleteSuccess",{resource:i(`${l}.${l}`,l)},`Successfully deleted ${l}`),type:"success"}),m==null||m({channel:`resources/${l}`,type:"deleted",payload:{ids:u},date:new Date});let{fields:v,operation:D,variables:E,...L}=P(R,b)||{};c==null||c.mutate({action:"deleteMany",resource:l,meta:{ids:u,dataProviderName:k(l,h,g),...L}}),u.forEach(M=>x.removeQueries(p==null?void 0:p.queryKey.detail(M)))},onError:(T,{ids:u,resource:l,errorNotification:R},b)=>{if(b)for(let h of b.previousQueries)x.setQueryData(h[0],h[1]);if(T.message!=="mutationCancelled"){r(T);let h=fn.singular(l),y=typeof R=="function"?R(T,u,l):R;d(y,{key:`${u}-${l}-notification`,message:i("notifications.deleteError",{resource:h,statusCode:T.statusCode},`Error (status code: ${T.statusCode})`),description:T.message,type:"error"})}},...e})};var gn=e=>{let t=K(),{getApiUrl:r}=t(e);return r()};import{useQuery as Tn}from"@tanstack/react-query";var Rn=({url:e,method:t,config:r,queryOptions:o,successNotification:s,errorNotification:a,meta:n,metaData:i,dataProviderName:m})=>{let d=K(),{custom:f}=d(m),c=H(),{mutate:g}=Y({v3LegacyAuthProviderCompatible:Boolean(c==null?void 0:c.isLegacy)}),x=Q(),U=J();if(f)return Tn({queryKey:[m,"custom",t,e,{...r,...P(n,i)||{}}],queryFn:({queryKey:u,pageParam:l,signal:R})=>f({url:e,method:t,...r,metaData:{...P(n,i)||{},queryContext:{queryKey:u,pageParam:l,signal:R}}}),...o,onSuccess:u=>{var R;(R=o==null?void 0:o.onSuccess)==null||R.call(o,u);let l=typeof s=="function"?s(u,{...r,...P(n,i)||{}}):s;U(l)},onError:u=>{var R;g(u),(R=o==null?void 0:o.onError)==null||R.call(o,u);let l=typeof a=="function"?a(u,{...r,...P(n,i)||{}}):a;U(l,{key:`${t}-notification`,message:x("notifications.error",{statusCode:u.statusCode},`Error (status code: ${u.statusCode})`),description:u.message,type:"error"})}});throw Error("Not implemented custom on data provider.")};import{useMutation as xn}from"@tanstack/react-query";var Cn=({mutationOptions:e}={})=>{let t=H(),{mutate:r}=Y({v3LegacyAuthProviderCompatible:Boolean(t==null?void 0:t.isLegacy)}),o=J(),s=K(),a=Q();return xn(({url:i,method:m,values:d,meta:f,metaData:c,dataProviderName:g,config:x})=>{let{custom:U}=s(g);if(U)return U({url:i,method:m,payload:d,meta:P(f,c),metaData:P(f,c),headers:{...x==null?void 0:x.headers}});throw Error("Not implemented custom on data provider.")},{onSuccess:(i,{successNotification:m,config:d,meta:f,metaData:c})=>{let g=typeof m=="function"?m(i,{...d,...P(f,c)||{}}):m;o(g)},onError:(i,{errorNotification:m,method:d,config:f,meta:c,metaData:g})=>{r(i);let x=typeof m=="function"?m(i,{...f,...P(c,g)||{}}):m;o(x,{key:`${d}-notification`,message:a("notifications.error",{statusCode:i.statusCode},`Error (status code: ${i.statusCode})`),description:i.message,type:"error"})},...e})};import{useCallback as bn,useContext as hn}from"react";import So from"react";var Pn=()=>({default:{create:()=>Promise.resolve({data:{id:1}}),createMany:()=>Promise.resolve({data:[]}),deleteOne:()=>Promise.resolve({data:{id:1}}),deleteMany:()=>Promise.resolve({data:[]}),getList:()=>Promise.resolve({data:[],total:0}),getMany:()=>Promise.resolve({data:[]}),getOne:()=>Promise.resolve({data:{id:1}}),update:()=>Promise.resolve({data:{id:1}}),updateMany:()=>Promise.resolve({data:[]}),custom:()=>Promise.resolve({data:{}}),getApiUrl:()=>""}}),Lt=So.createContext(Pn()),wo=({children:e,...t})=>{let r;return!t.getList||!t.getOne?r=t:r={default:t},So.createElement(Lt.Provider,{value:r},e)};var K=()=>{let e=hn(Lt);return bn(r=>{if(r){if(!e[r])throw new Error(`"${r}" Data provider not found`);return e[r]}if(e.default)return e.default;throw new Error('There is no "default" data provider. Please pass dataProviderName.')},[e])};import{useInfiniteQuery as vn}from"@tanstack/react-query";var Dn=({resource:e,config:t,filters:r,hasPagination:o,pagination:s,sorters:a,queryOptions:n,successNotification:i,errorNotification:m,meta:d,metaData:f,liveMode:c,onLiveEvent:g,liveParams:x,dataProviderName:U})=>{let{resources:T}=w(),u=K(),l=Q(),R=H(),{mutate:b}=Y({v3LegacyAuthProviderCompatible:Boolean(R==null?void 0:R.isLegacy)}),h=J(),y=k(e,U,T),p=P(d,f),C=P(r,t==null?void 0:t.filters),v=P(a,t==null?void 0:t.sort),D=P(o,t==null?void 0:t.hasPagination),E=vt({pagination:s,configPagination:t==null?void 0:t.pagination,hasPagination:D}),L=E.mode==="server",M={meta:p,metaData:p,filters:C,hasPagination:L,pagination:E,sorters:v,config:{...t,sort:v}},I=(n==null?void 0:n.enabled)===void 0||(n==null?void 0:n.enabled)===!0,S=_(e,y,p,p),{getList:V}=u(y);return je({resource:e,types:["*"],params:{meta:p,metaData:p,pagination:E,hasPagination:L,sort:v,sorters:v,filters:C,subscriptionType:"useList",...x},channel:`resources/${e}`,enabled:I,liveMode:c,onLiveEvent:g}),vn(S.list({filters:C,hasPagination:L,...L&&{pagination:E},...a&&{sorters:a},...(t==null?void 0:t.sort)&&{sort:t==null?void 0:t.sort}}),({queryKey:A,pageParam:B,signal:O})=>{let ye={...E,current:B};return V({resource:e,pagination:ye,hasPagination:L,filters:C,sort:v,sorters:v,meta:{...p||{},queryContext:{queryKey:A,pageParam:B,signal:O}},metaData:{...p||{},queryContext:{queryKey:A,pageParam:B,signal:O}}}).then(({data:he,total:G,...Qe})=>({data:he,total:G,pagination:ye,...Qe}))},{getNextPageParam:A=>Xt(A),getPreviousPageParam:A=>Zt(A),...n,onSuccess:A=>{var O;(O=n==null?void 0:n.onSuccess)==null||O.call(n,A);let B=typeof i=="function"?i(A,M,e):i;h(B)},onError:A=>{var O;b(A),(O=n==null?void 0:n.onError)==null||O.call(n,A);let B=typeof m=="function"?m(A,M,e):m;h(B,{key:`${e}-useInfiniteList-notification`,message:l("notifications.error",{statusCode:A.statusCode},`Error (status code: ${A.statusCode})`),description:A.message,type:"error"})}})};import{useContext as Qo,useEffect as Un}from"react";import{useQueryClient as En}from"@tanstack/react-query";import ko from"react";var Fe=ko.createContext(void 0),Vo=({liveProvider:e,children:t})=>ko.createElement(Fe.Provider,{value:e},t);var je=({resource:e,params:t,channel:r,types:o,enabled:s=!0,liveMode:a,onLiveEvent:n})=>{let i=En(),m=_(e),d=Qo(Fe),{liveMode:f,onLiveEvent:c}=Qo(le),g=a!=null?a:f;Un(()=>{let x;return g&&g!=="off"&&s&&(x=d==null?void 0:d.subscribe({channel:r,params:{resource:e,...t},types:o,callback:U=>{g==="auto"&&i.invalidateQueries(m.resourceAll),n==null||n(U),c==null||c(U)}})),()=>{x&&(d==null||d.unsubscribe(x))}},[s])};import{useContext as Ln}from"react";var Bo=e=>{let{liveMode:t}=Ln(le);return e!=null?e:t};import{useContext as In,useEffect as Mn}from"react";var gm=({params:e,channel:t,types:r=["*"],enabled:o=!0,onLiveEvent:s})=>{let a=In(Fe);Mn(()=>{let n;return o&&(n=a==null?void 0:a.subscribe({channel:t,params:e,types:r,callback:s})),()=>{n&&(a==null||a.unsubscribe(n))}},[o])};import{useContext as An}from"react";var xe=()=>{let e=An(Fe);return e==null?void 0:e.publish};import{useContext as On}from"react";import Fo from"react";import{useMemo as kn}from"react";import{useRef as Sn}from"react";import wn from"lodash-es/isEqual";var No=e=>{let t=Sn(e);return wn(t.current,e)||(t.current=e),t.current};var tr=(e,t)=>{let r=No(t);return kn(e,r)};var Ye=Fo.createContext({resources:[]}),Oo=({resources:e,children:t})=>{let r=tr(()=>qt(e!=null?e:[]),[e]);return Fo.createElement(Ye.Provider,{value:{resources:r}},t)};import Ho from"react";var $o=Ho.createContext("new"),Wo=$o.Provider,F=()=>Ho.useContext($o);import Fn from"react";import Vn,{createContext as Qn}from"react";var Ko={},Oe=Qn(Ko),Go=({children:e,router:t})=>Vn.createElement(Oe.Provider,{value:t!=null?t:Ko},e);import Bn,{useContext as Nn}from"react";var Vr=()=>{let e=Nn(Oe);return Bn.useMemo(()=>{var o;return(o=e==null?void 0:e.parse)!=null?o:()=>()=>({})},[e==null?void 0:e.parse])()};var z=()=>{let e=Vr();return Fn.useMemo(()=>e(),[e])};function w(e){var f,c;let{resources:t}=On(Ye),r=F(),o=z(),s={resourceName:e&&typeof e!="string"?e.resourceName:e,resourceNameOrRouteName:e&&typeof e!="string"?e.resourceNameOrRouteName:e,recordItemId:e&&typeof e!="string"?e.recordItemId:void 0},a=Je(),{useParams:n}=W(),i=n();if(r==="legacy"){let g=s.resourceNameOrRouteName?s.resourceNameOrRouteName:i.resource,x=g?a(g):void 0,U=(f=s==null?void 0:s.recordItemId)!=null?f:i.id,T=i.action,u=(c=s==null?void 0:s.resourceName)!=null?c:x==null?void 0:x.name;return{resources:t,resource:x,resourceName:u,id:U,action:T}}let m,d=typeof e=="string"?e:s==null?void 0:s.resourceNameOrRouteName;if(d){let g=$(d,t);g?m=g:m={name:d}}else o!=null&&o.resource&&(m=o.resource);return{resources:t,resource:m,resourceName:m==null?void 0:m.name,id:o.id,action:o.action}}import{useContext as Hn,useCallback as $n}from"react";var Je=()=>{let{resources:e}=Hn(Ye);return $n(r=>{let o=$(r,e,!0);return o||{name:r,route:r}},[e])};import{useContext as Wn}from"react";var Ve=()=>{let{notifications:e,notificationDispatch:t}=Wn(er);return{notifications:e,notificationDispatch:t}};import{useContext as zn}from"react";import Kn,{createContext as Gn}from"react";var It=Gn({}),zo=({open:e,close:t,children:r})=>Kn.createElement(It.Provider,{value:{open:e,close:t}},r);var me=()=>{let{open:e,close:t}=zn(It);return{open:e,close:t}};import{useCallback as _n}from"react";var J=()=>{let{open:e}=me();return _n((r,o)=>{r!==!1&&(r?e==null||e(r):o&&(e==null||e(o)))},[])};import{useCallback as jn,useContext as Yn}from"react";import _o from"react";var Me=_o.createContext({}),jo=({children:e,i18nProvider:t})=>_o.createElement(Me.Provider,{value:{i18nProvider:t}},e);var Jn=()=>{let{i18nProvider:e}=Yn(Me);return jn(t=>e==null?void 0:e.changeLocale(t),[])};import{useContext as Xn,useMemo as Zn}from"react";var Q=()=>{let{i18nProvider:e}=Xn(Me);return Zn(()=>{function r(o,s,a){var n,i;return(i=(n=e==null?void 0:e.translate(o,s,a))!=null?n:a)!=null?i:typeof s=="string"&&typeof a>"u"?s:o}return r},[e])};import{useContext as qn,useCallback as ea}from"react";var ta=()=>{let{i18nProvider:e}=qn(Me);return ea(()=>e==null?void 0:e.getLocale(),[])};import{useContext as ra}from"react";var Ie=()=>{let{mutationMode:e,undoableTimeout:t}=ra(le);return{mutationMode:e,undoableTimeout:t}};import{useContext as Xo}from"react";import Yo,{useState as oa}from"react";var Qr=Yo.createContext({}),Jo=({children:e})=>{let[t,r]=oa(!1);return Yo.createElement(Qr.Provider,{value:{warnWhen:t,setWarnWhen:r}},e)};var Mt=()=>{let{warnWhenUnsavedChanges:e}=Xo(le),{warnWhen:t,setWarnWhen:r}=Xo(Qr);return{warnWhenUnsavedChanges:e,warnWhen:Boolean(t),setWarnWhen:r!=null?r:()=>{}}};import{useContext as sa}from"react";var Br=()=>{let{syncWithLocation:e}=sa(le);return{syncWithLocation:e}};import{useContext as na}from"react";var aa=()=>{let{Title:e}=na(le);return e};import{useContext as ia}from"react";var At=()=>{let{Footer:e,Header:t,Layout:r,OffLayoutArea:o,Sider:s,Title:a,hasDashboard:n,mutationMode:i,syncWithLocation:m,undoableTimeout:d,warnWhenUnsavedChanges:f,DashboardPage:c,LoginPage:g,catchAll:x,options:U}=ia(le);return{Footer:e,Header:t,Layout:r,OffLayoutArea:o,Sider:s,Title:a,hasDashboard:n,mutationMode:i,syncWithLocation:m,undoableTimeout:d,warnWhenUnsavedChanges:f,DashboardPage:c,LoginPage:g,catchAll:x,options:U}};import{useState as ua}from"react";import{ExportToCsv as ca}from"export-to-csv-fix-source-map";var yy=({resourceName:e,resource:t,sorter:r,sorters:o,filters:s,maxItemCount:a,pageSize:n=20,mapData:i=x=>x,exportOptions:m,meta:d,metaData:f,dataProviderName:c,onError:g}={})=>{var y;let[x,U]=ua(!1),T=K(),{resource:u,resources:l}=w(),R=`${mt(u==null?void 0:u.name,"plural")}-${new Date().toLocaleString()}`,{getList:b}=T(k((y=u==null?void 0:u.identifier)!=null?y:u==null?void 0:u.name,c,l));return{isLoading:x,triggerExport:async()=>{var E;U(!0);let p=[],C=1,v=!0;for(;v;)try{let{data:L,total:M}=await b({resource:(E=u==null?void 0:u.name)!=null?E:"",filters:s,sort:P(o,r),sorters:P(o,r),pagination:{current:C,pageSize:n,mode:"server"},meta:P(d,f),metaData:P(d,f)});C++,p.push(...L),a&&p.length>=a&&(p=p.slice(0,a),v=!1),M===p.length&&(v=!1)}catch(L){U(!1),v=!1,g==null||g(L);return}new ca({filename:R,useKeysAsHeaders:!0,...m}).generateCsv(p.map(i)),U(!1)}}};import Zo from"react";var Ey=({resource:e,action:t,id:r,onMutationSuccess:o,onMutationError:s,redirect:a,successNotification:n,errorNotification:i,meta:m,metaData:d,mutationMode:f,liveMode:c,onLiveEvent:g,liveParams:x,undoableTimeout:U,dataProviderName:T,invalidates:u,queryOptions:l,createMutationOptions:R,updateMutationOptions:b}={})=>{let{options:h}=At(),{resources:y}=w(),p=F(),{resource:C,id:v,action:D}=z(),{useParams:E}=W(),{resource:L,action:M,id:I}=E(),S=typeof C=="string"?C:C==null?void 0:C.name,V=!e||e===(p==="legacy"?L:S)?r!=null?r:p==="legacy"?I:v:r,[N,A]=Zo.useState(V);Zo.useEffect(()=>{V!==N&&A(r)},[r]);let B=e!=null?e:p==="legacy"?L:S,O=p==="legacy"?M:D,ye=t!=null?t:O==="edit"||O==="clone"?O:"create",he=Je(),G;if(p==="legacy")B&&(G=he(B));else if(e){let se=$(e,y);se?G=se:G={name:e,route:e}}else if(typeof C=="string"){let se=$(C,y);se?G=se:G={name:C,route:C}}else G=C;let{mutationMode:Qe}=Ie(),ae=f!=null?f:Qe,Xe=ye==="create",Z=ye==="edit",ce=ye==="clone",Ze=Lr({redirectFromProps:a,action:ye,redirectOptions:h.redirect}),nt=N!==void 0&&(Z||ce),ve=Ut({resource:G==null?void 0:G.name,id:N!=null?N:"",queryOptions:{enabled:nt,...l},liveMode:c,onLiveEvent:g,liveParams:x,meta:P(m,d),metaData:P(m,d),dataProviderName:T}),{isFetching:De}=ve,at=Et({mutationOptions:R}),{mutate:Qt,isLoading:Rt}=at,it=wr({mutationOptions:b}),{mutate:Ue,isLoading:Bt}=it,{setWarnWhen:$e}=Mt(),We=qo();return{...Xe||ce?{formLoading:De||Rt,mutationResult:at,onFinish:async se=>{$e(!1);let Ee=Be=>{We({redirect:Ze,resource:G,id:Be,meta:d})};return ae!=="pessimistic"&&setTimeout(()=>{Ee()}),new Promise((Be,ct)=>{if(ae!=="pessimistic"&&Be(),!!G)return Qt({values:se,resource:G.name,successNotification:n,errorNotification:i,meta:P(m,d),metaData:P(m,d),dataProviderName:T,invalidates:u},{onSuccess:(Le,Ge,ze)=>{var xt;o&&o(Le,se,ze);let _e=(xt=Le==null?void 0:Le.data)==null?void 0:xt.id;Ee(_e),Be(Le)},onError:(Le,Ge,ze)=>{if(s)return s(Le,se,ze);ct()}})})}}:{formLoading:De||Bt,mutationResult:it,onFinish:async se=>{if($e(!1),!G)return;let Ee={id:N!=null?N:"",values:se,resource:G.name,mutationMode:ae,undoableTimeout:U,successNotification:n,errorNotification:i,meta:P(m,d),metaData:P(m,d),dataProviderName:T,invalidates:u},Be=()=>{A(V),We({redirect:Ze,resource:G,id:N,meta:d})};return ae!=="pessimistic"&&setTimeout(()=>{Be()}),new Promise((ct,Le)=>(ae!=="pessimistic"&&ct(),setTimeout(()=>{Ue(Ee,{onSuccess:(Ge,ze,_e)=>{o&&o(Ge,se,_e),ae==="pessimistic"&&Be(),ct(Ge)},onError:(Ge,ze,_e)=>{if(s)return s(Ge,se,_e);Le()}})})))}},queryResult:ve,id:N,setId:A,redirect:(se,Ee)=>{We({redirect:se!==void 0?se:Z?"list":"edit",resource:G,id:Ee!=null?Ee:N,meta:d})}}};import{useCallback as pa}from"react";var qo=()=>{let{show:e,edit:t,list:r,create:o}=ee();return pa(({redirect:a,resource:n,id:i,meta:m={}})=>{if(a&&n)return!!n.show&&a==="show"&&i?e(n,i,void 0,m):!!n.edit&&a==="edit"&&i?t(n,i,void 0,m):!!n.create&&a==="create"?o(n,void 0,m):r(n,"push",m)},[])};import da,{useContext as la}from"react";var te=()=>{let e=la(Oe);return da.useMemo(()=>{var o;return(o=e==null?void 0:e.go)!=null?o:()=>()=>{}},[e==null?void 0:e.go])()};import ma,{useContext as fa}from"react";var Nr=()=>{let e=fa(Oe);return ma.useMemo(()=>{var o;return(o=e==null?void 0:e.back)!=null?o:()=>()=>{}},[e==null?void 0:e.back])()};var ee=()=>{let{resources:e}=w(),t=F(),{useHistory:r}=W(),o=r(),s=z(),a=te(),n=Nr(),i=(y,p="push")=>{t==="legacy"?o[p](y):a({to:y,type:p})},m=(y,p={})=>{var C,v,D;if(t==="legacy"){let E=typeof y=="string"?(C=$(y,e,!0))!=null?C:{name:y,route:y}:y,L=ne(E,e,!0).find(M=>M.action==="create");return L?pe(L.route,s,p):""}else{let E=typeof y=="string"?(v=$(y,e))!=null?v:{name:y}:y,L=(D=ne(E,e).find(M=>M.action==="create"))==null?void 0:D.route;return L?a({to:pe(L,s,p),type:"path"}):""}},d=(y,p,C={})=>{var D,E,L;let v=encodeURIComponent(p);if(t==="legacy"){let M=typeof y=="string"?(D=$(y,e,!0))!=null?D:{name:y,route:y}:y,I=ne(M,e,!0).find(S=>S.action==="edit");return I?pe(I.route,s,{...C,id:v}):""}else{let M=typeof y=="string"?(E=$(y,e))!=null?E:{name:y}:y,I=(L=ne(M,e).find(S=>S.action==="edit"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:v}),type:"path"}):""}},f=(y,p,C={})=>{var D,E,L;let v=encodeURIComponent(p);if(t==="legacy"){let M=typeof y=="string"?(D=$(y,e,!0))!=null?D:{name:y,route:y}:y,I=ne(M,e,!0).find(S=>S.action==="clone");return I?pe(I.route,s,{...C,id:v}):""}else{let M=typeof y=="string"?(E=$(y,e))!=null?E:{name:y}:y,I=(L=ne(M,e).find(S=>S.action==="clone"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:v}),type:"path"}):""}},c=(y,p,C={})=>{var D,E,L;let v=encodeURIComponent(p);if(t==="legacy"){let M=typeof y=="string"?(D=$(y,e,!0))!=null?D:{name:y,route:y}:y,I=ne(M,e,!0).find(S=>S.action==="show");return I?pe(I.route,s,{...C,id:v}):""}else{let M=typeof y=="string"?(E=$(y,e))!=null?E:{name:y}:y,I=(L=ne(M,e).find(S=>S.action==="show"))==null?void 0:L.route;return I?a({to:pe(I,s,{...C,id:v}),type:"path"}):""}},g=(y,p={})=>{var C,v,D;if(t==="legacy"){let E=typeof y=="string"?(C=$(y,e,!0))!=null?C:{name:y,route:y}:y,L=ne(E,e,!0).find(M=>M.action==="list");return L?pe(L.route,s,p):""}else{let E=typeof y=="string"?(v=$(y,e))!=null?v:{name:y}:y,L=(D=ne(E,e).find(M=>M.action==="list"))==null?void 0:D.route;return L?a({to:pe(L,s,p),type:"path"}):""}};return{create:(y,p="push",C={})=>{i(m(y,C),p)},createUrl:m,edit:(y,p,C="push",v={})=>{i(d(y,p,v),C)},editUrl:d,clone:(y,p,C="push",v={})=>{i(f(y,p,v),C)},cloneUrl:f,show:(y,p,C="push",v={})=>{i(c(y,p,v),C)},showUrl:c,list:(y,p="push",C={})=>{i(g(y,C),p)},listUrl:g,push:(y,...p)=>{t==="legacy"?o.push(y,...p):a({to:y,type:"push"})},replace:(y,...p)=>{t==="legacy"?o.replace(y,...p):a({to:y,type:"replace"})},goBack:()=>{t==="legacy"?o.goBack():n()}}};import ya,{useState as ga}from"react";var rg=({resource:e,id:t,successNotification:r,errorNotification:o,meta:s,metaData:a,liveMode:n,onLiveEvent:i,dataProviderName:m,queryOptions:d}={})=>{let f=F(),{resources:c}=w(),{useParams:g}=W(),{resource:x,id:U}=z(),{resource:T,id:u}=g(),l=x==null?void 0:x.name,R=!e||e===(f==="legacy"?T:l)?t!=null?t:f==="legacy"?u:U:t,[b,h]=ga(R);ya.useEffect(()=>{R!==b&&h(R)},[R]);let y=e!=null?e:f==="legacy"?T:l,p,C=Je();if(f==="legacy")y&&(p=C(y));else if(e){let D=$(e,c);D?p=D:p={name:e,route:e}}else if(typeof x=="string"){let D=$(x,c);D?p=D:p={name:x,route:x}}else p=x;return{queryResult:Ut({resource:p==null?void 0:p.name,id:b!=null?b:"",queryOptions:{enabled:b!==void 0,...d},successNotification:r,errorNotification:o,meta:P(s,a),metaData:P(s,a),liveMode:n,onLiveEvent:i,dataProviderName:m}),showId:b,setShowId:h}};import{useEffect as Ta,useState as Fr}from"react";import{parse as Ra}from"papaparse";import xa from"lodash-es/chunk";var lg=({resourceName:e,resource:t,mapData:r=f=>f,paparseOptions:o,batchSize:s=Number.MAX_SAFE_INTEGER,onFinish:a,meta:n,metaData:i,onProgress:m,dataProviderName:d}={})=>{let[f,c]=Fr(0),[g,x]=Fr(0),[U,T]=Fr(!1),{resource:u}=w(t!=null?t:e),l=kr(),R=Et(),b;s===1?b=R:b=l;let h=()=>{x(0),c(0),T(!1)},y=C=>{let v={succeeded:C.filter(D=>D.type==="success"),errored:C.filter(D=>D.type==="error")};a==null||a(v),T(!1)};Ta(()=>{m==null||m({totalAmount:g,processedAmount:f})},[g,f]);let p=({file:C})=>(h(),new Promise(v=>{T(!0),Ra(C,{complete:async({data:D})=>{let E=Wt(D,r);if(x(E.length),s===1){let L=E.map(I=>async()=>{var N;return{response:await R.mutateAsync({resource:(N=u==null?void 0:u.name)!=null?N:"",values:I,successNotification:!1,errorNotification:!1,dataProviderName:d,meta:P(n,i),metaData:P(n,i)}),value:I}}),M=await Jt(L,({response:I,value:S})=>(c(V=>V+1),{response:[I.data],type:"success",request:[S]}),(I,S)=>({response:[I],type:"error",request:[E[S]]}));v(M)}else{let L=xa(E,s),M=L.map(S=>async()=>{var A;return{response:await l.mutateAsync({resource:(A=u==null?void 0:u.name)!=null?A:"",values:S,successNotification:!1,errorNotification:!1,dataProviderName:d,meta:P(n,i),metaData:P(n,i)}),value:S,currentBatchLength:S.length}}),I=await Jt(M,({response:S,currentBatchLength:V,value:N})=>(c(A=>A+V),{response:S.data,type:"success",request:N}),(S,V)=>({response:[S],type:"error",request:L[V]}));v(I)}},...o})}).then(v=>(y(v),v)));return{inputProps:{type:"file",accept:".csv",onChange:C=>{C.target.files&&C.target.files.length>0&&p({file:C.target.files[0]})}},mutationResult:b,isLoading:U,handleChange:p}};import{useCallback as es,useState as Ca}from"react";var yg=({defaultVisible:e=!1}={})=>{let[t,r]=Ca(e),o=es(()=>r(!0),[t]),s=es(()=>r(!1),[t]);return{visible:t,show:o,close:s}};import Pa from"react";var St=()=>{let e=F(),{resource:t,resources:r}=w(),o=z();return Pa.useCallback(({resource:a,action:n,meta:i})=>{var g;let m=a||t;if(!m)return;let f=(g=ne(m,r,e==="legacy").find(x=>x.action===n))==null?void 0:g.route;return f?pe(f,o,i):void 0},[r,t,o])};var ba=({resource:e,action:t,meta:r,legacy:o})=>St()({resource:e,action:t,meta:r,legacy:o});import ha,{useContext as va}from"react";var tt=()=>{let e=va(Oe);return e!=null&&e.Link?e.Link:({to:r,...o})=>ha.createElement("a",{href:r,...o})};import{useContext as Ua}from"react";import ts from"react";var He={useHistory:()=>!1,useLocation:()=>!1,useParams:()=>({}),Prompt:()=>null,Link:()=>null},Da=ts.createContext(He),wt=Da,rs=({children:e,useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n})=>ts.createElement(wt.Provider,{value:{useHistory:t!=null?t:He.useHistory,useLocation:r!=null?r:He.useLocation,useParams:o!=null?o:He.useParams,Prompt:s!=null?s:He.Prompt,Link:a!=null?a:He.Link,routes:n!=null?n:He.routes}},e);var W=()=>{let e=Ua(wt),{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}=e!=null?e:He;return{useHistory:t,useLocation:r,useParams:o,Prompt:s,Link:a,routes:n}};import{useQuery as Ea}from"@tanstack/react-query";import{useContext as La}from"react";import os from"react";var rt=os.createContext({}),ss=({can:e,children:t})=>os.createElement(rt.Provider,{value:{can:e}},t);var ns=e=>{let{icon:t,list:r,edit:o,create:s,show:a,clone:n,children:i,meta:m,options:d,...f}=e,{icon:c,...g}=m!=null?m:{},{icon:x,...U}=d!=null?d:{};return{...f,...m?{meta:g}:{},...d?{options:U}:{}}};var as=({action:e,resource:t,params:r,queryOptions:o})=>{let{can:s}=La(rt),{resource:a,...n}=r!=null?r:{},i=ns(a!=null?a:{}),m=Ea(["useCan",{action:e,resource:t,params:{...n,resource:i},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}}:m};import{useContext as Ia}from"react";var sT=()=>{let{can:e}=Ia(rt);return{can:e}};import{useCallback as is,useMemo as Ma,useState as Or}from"react";import Aa from"lodash/uniqBy";import Sa from"lodash/debounce";import rr from"lodash/get";var TT=e=>{var Qe,ae,Xe;let[t,r]=Or([]),[o,s]=Or([]),[a,n]=Or([]),{resource:i,sort:m,sorters:d,filters:f=[],optionLabel:c="title",optionValue:g="id",debounce:x=300,successNotification:U,errorNotification:T,defaultValueQueryOptions:u,queryOptions:l,fetchSize:R,pagination:b,hasPagination:h=!1,liveMode:y,defaultValue:p=[],onLiveEvent:C,onSearch:v,liveParams:D,meta:E,metaData:L,dataProviderName:M}=e,{resources:I}=w(),S=$(i,I),V=(Qe=S==null?void 0:S.name)!=null?Qe:i,N=Array.isArray(p)?p:[p],A=is(Z=>{n(Z.data.map(ce=>({label:rr(ce,c),value:rr(ce,g)})))},[c,g]),B=u!=null?u:l,O=Ir({resource:V,ids:N,queryOptions:{...B,enabled:N.length>0&&((ae=u==null?void 0:u.enabled)!=null?ae:!0),onSuccess:Z=>{var ce;A(Z),(ce=B==null?void 0:B.onSuccess)==null||ce.call(B,Z)}},meta:P(E,L),metaData:P(E,L),liveMode:"off",dataProviderName:M}),ye=is(Z=>{s(Z.data.map(ce=>({label:rr(ce,c),value:rr(ce,g)})))},[c,g]),he=Dt({resource:V,sorters:P(d,m),filters:f.concat(t),pagination:{current:b==null?void 0:b.current,pageSize:(Xe=b==null?void 0:b.pageSize)!=null?Xe:R,mode:b==null?void 0:b.mode},hasPagination:h,queryOptions:{...l,onSuccess:Z=>{var ce;ye(Z),(ce=l==null?void 0:l.onSuccess)==null||ce.call(l,Z)}},successNotification:U,errorNotification:T,meta:P(E,L),metaData:P(E,L),liveMode:y,liveParams:D,onLiveEvent:C,dataProviderName:M}),G=Z=>{if(v){r(v(Z));return}if(Z)r([{field:c,operator:"contains",value:Z}]);else{r([]);return}};return{queryResult:he,defaultValueQueryResult:O,options:Ma(()=>Aa([...o,...a],"value"),[o,a]),onSearch:Sa(G,x)}};import wa,{useState as or,useEffect as us}from"react";import cs from"qs";import sr from"lodash/differenceWith";import nr from"lodash/isEqual";import ka from"warn-once";var ps=[],ds=[];function LT({initialCurrent:e,initialPageSize:t,hasPagination:r=!0,pagination:o,initialSorter:s,permanentSorter:a=ds,defaultSetFilterBehavior:n,initialFilter:i,permanentFilter:m=ps,filters:d,sorters:f,syncWithLocation:c,resource:g,successNotification:x,errorNotification:U,queryOptions:T,liveMode:u,onLiveEvent:l,liveParams:R,meta:b,metaData:h,dataProviderName:y}={}){var _e,xt,_r,jr,Yr,Jr,Xr,Zr,qr,eo;let{syncWithLocation:p}=Br(),C=c!=null?c:p,v=Bo(u),D=F(),{useLocation:E}=W(),{search:L,pathname:M}=E(),I=z(),S=r===!1?"off":"server",V=((_e=o==null?void 0:o.mode)!=null?_e:S)!=="off",N=P(o==null?void 0:o.current,e),A=P(o==null?void 0:o.pageSize,t),B=P(b,h),{parsedCurrent:O,parsedPageSize:ye,parsedSorter:he,parsedFilters:G}=Kt(L!=null?L:"?"),Qe=P(d==null?void 0:d.initial,i),ae=(xt=P(d==null?void 0:d.permanent,m))!=null?xt:ps,Xe=P(f==null?void 0:f.initial,s),Z=(_r=P(f==null?void 0:f.permanent,a))!=null?_r:ds,ce=(jr=P(d==null?void 0:d.defaultBehavior,n))!=null?jr:"merge",Ze,nt,ve,De;C?(Ze=((Yr=I==null?void 0:I.params)==null?void 0:Yr.current)||O||N||1,nt=((Jr=I==null?void 0:I.params)==null?void 0:Jr.pageSize)||ye||A||10,ve=((Xr=I==null?void 0:I.params)==null?void 0:Xr.sorters)||(he.length?he:Xe),De=((Zr=I==null?void 0:I.params)==null?void 0:Zr.filters)||(G.length?G:Qe)):(Ze=N||1,nt=A||10,ve=Xe,De=Qe);let{replace:at}=ee(),Qt=te(),{resource:Rt}=w(g),it=Rt==null?void 0:Rt.name;wa.useEffect(()=>{ka(typeof it>"u","useTable: `resource` is not defined.")},[it]);let[Ue,Bt]=or(jt(Z,ve!=null?ve:[])),[$e,We]=or(_t(ae,De!=null?De:[])),[ut,ar]=or(Ze),[Ke,ir]=or(nt),zr=({pagination:{current:oe,pageSize:Re},sorter:Nt,filters:Ft})=>{var Ot;if(D==="new")return(Ot=Qt({type:"path",options:{keepHash:!0,keepQuery:!0},query:{...V?{current:oe,pageSize:Re}:{},sorters:Nt,filters:Ft,...se()}}))!=null?Ot:"";{let Ct=cs.parse(L==null?void 0:L.substring(1)),ur=Gt({pagination:{pageSize:Re,current:oe},sorters:Ue!=null?Ue:Nt,filters:Ft,...Ct});return`${M!=null?M:""}?${ur!=null?ur:""}`}};us(()=>{L===""&&(ar(Ze),ir(nt),Bt(jt(Z,ve!=null?ve:[])),We(_t(ae,De!=null?De:[])))},[L]);let se=()=>{var oe;if(D==="new"){let{sorters:Re,filters:Nt,pageSize:Ft,current:Ot,...Ct}=(oe=I==null?void 0:I.params)!=null?oe:{};return Ct}else{let{sorter:Re,filters:Nt,pageSize:Ft,current:Ot,...Ct}=cs.parse(L,{ignoreQueryPrefix:!0});return Ct}};us(()=>{if(C){let oe=se();if(D==="new")Qt({type:"replace",options:{keepQuery:!0},query:{...V?{pageSize:Ke,current:ut}:{},sorters:sr(Ue,Z,nr),filters:sr($e,ae,nr)}});else{let Re=Gt({...V?{pagination:{pageSize:Ke,current:ut}}:{},sorters:sr(Ue,Z,nr),filters:sr($e,ae,nr),...oe});return at==null?void 0:at(`${M}?${Re}`,void 0,{shallow:!0})}}},[C,ut,Ke,Ue,$e]);let Ee=Dt({resource:it,hasPagination:r,pagination:{current:ut,pageSize:Ke,mode:o==null?void 0:o.mode},filters:lt(ae,$e),sorters:zt(Z,Ue),queryOptions:T,successNotification:x,errorNotification:U,meta:B,metaData:B,liveMode:v,liveParams:R,onLiveEvent:l,dataProviderName:y}),Be=oe=>{We(Re=>lt(ae,oe,Re))},ct=oe=>{We(lt(ae,oe))},Le=oe=>{We(Re=>lt(ae,oe(Re)))},Ge=(oe,Re=ce)=>{typeof oe=="function"?Le(oe):Re==="replace"?ct(oe):Be(oe)},ze=oe=>{Bt(()=>zt(Z,oe))};return{tableQueryResult:Ee,sorters:Ue,setSorters:ze,sorter:Ue,setSorter:ze,filters:$e,setFilters:Ge,current:ut,setCurrent:ar,pageSize:Ke,setPageSize:ir,pageCount:Ke?Math.ceil(((eo=(qr=Ee.data)==null?void 0:qr.total)!=null?eo:0)/Ke):1,createLinkForSyncWithLocation:zr}}import{useContext as fs}from"react";import{useMutation as ys,useQueryClient as Va}from"@tanstack/react-query";import ls from"react";var ot=ls.createContext({}),ms=({create:e,get:t,update:r,children:o})=>ls.createElement(ot.Provider,{value:{create:e,get:t,update:r}},o);var Ce=({logMutationOptions:e,renameMutationOptions:t}={})=>{let r=Va(),o=fs(ot),s=H(),{resources:a}=fs(Ye),{data:n,refetch:i,isLoading:m}=cr({v3LegacyAuthProviderCompatible:Boolean(s==null?void 0:s.isLegacy),queryOptions:{enabled:!!o}}),d=ys(async c=>{var T,u,l,R,b;let g=$(c.resource,a),x=P((T=g==null?void 0:g.meta)==null?void 0:T.audit,(u=g==null?void 0:g.options)==null?void 0:u.audit,(R=(l=g==null?void 0:g.options)==null?void 0:l.auditLog)==null?void 0:R.permissions);if(x&&!Cr(x,c.action))return;let U;return m&&(U=await i()),await((b=o.create)==null?void 0:b.call(o,{...c,author:n!=null?n:U==null?void 0:U.data}))},e),f=ys(async c=>{var g;return await((g=o.update)==null?void 0:g.call(o,c))},{onSuccess:c=>{if(c!=null&&c.resource){let g=_(c==null?void 0:c.resource);r.invalidateQueries(g.logList())}},...t});return{log:d,rename:f}};import{useContext as Qa}from"react";import{useQuery as Ba}from"@tanstack/react-query";var YT=({resource:e,action:t,meta:r,author:o,metaData:s,queryOptions:a})=>{let{get:n}=Qa(ot),i=_(e,void 0,s);return Ba(i.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 Na}from"react";import{useQueryClient as Fa}from"@tanstack/react-query";var Pe=()=>{let{resources:e}=w(),t=Fa();return Na(({resource:o,dataProviderName:s,invalidates:a,id:n})=>{if(a===!1)return;let i=_(o,k(o,s,e));a.forEach(m=>{switch(m){case"all":t.invalidateQueries(i.all);break;case"list":t.invalidateQueries(i.list());break;case"many":t.invalidateQueries(i.many());break;case"resourceAll":t.invalidateQueries(i.resourceAll);break;case"detail":t.invalidateQueries(i.detail(n||""));break;default:break}})},[])};import{useContext as Oa}from"react";import Ha from"warn-once";var gR=({meta:e={}}={})=>{let t=F(),{i18nProvider:r}=Oa(Me),o=z(),s=Q(),{resources:a,resource:n,action:i}=w(),m=[];if(!(n!=null&&n.name))return{breadcrumbs:m};let d=f=>{var g,x,U,T,u,l,R,b;let c=typeof f=="string"?(g=$(f,a,t==="legacy"))!=null?g:{name:f}:f;if(c){let h=P((x=c==null?void 0:c.meta)==null?void 0:x.parent,c==null?void 0:c.parentName);h&&d(h);let y=ne(c,a,t==="legacy").find(v=>v.action==="list"),p=(U=y==null?void 0:y.resource)!=null&&U.list?y==null?void 0:y.route:void 0,C=p?t==="legacy"?p:pe(p,o,e):void 0;m.push({label:(l=P((T=c.meta)==null?void 0:T.label,(u=c.options)==null?void 0:u.label))!=null?l:s(`${c.name}.${c.name}`,qe(c.name)),href:C,icon:P((R=c.meta)==null?void 0:R.icon,(b=c.options)==null?void 0:b.icon,c.icon)})}};if(d(n),i&&i!=="list"){let f=`actions.${i}`,c=s(f);typeof r<"u"&&c===f?(Ha(!0,`[useBreadcrumb]: Breadcrumb missing translate key for the "${i}" action. Please add "actions.${i}" key to your translation file.
|
|
3
|
+
For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n-support`),m.push({label:s(`buttons.${i}`,qe(i))})):m.push({label:s(f,qe(i))})}return{breadcrumbs:m}};import Hr from"react";var yt=(e,t,r=!1)=>{let o=[],s=ge(e,t);for(;s;)o.push(s),s=ge(s,t);return o.reverse(),`/${[...o,e].map(n=>{var i,m;return ue((m=(i=r?n.route:void 0)!=null?i:n.identifier)!=null?m:n.name)}).join("/").replace(/^\//,"")}`};var gs=(e,t=!1)=>{let r={item:{name:"__root__"},children:{}};e.forEach(s=>{var d,f;let a=[],n=ge(s,e);for(;n;)a.push(n),n=ge(n,e);a.reverse();let i=r;a.forEach(c=>{var x,U;let g=(U=(x=t?c.route:void 0)!=null?x:c.identifier)!=null?U:c.name;i.children[g]||(i.children[g]={item:c,children:{}}),i=i.children[g]});let m=(f=(d=t?s.route:void 0)!=null?d:s.identifier)!=null?f:s.name;i.children[m]||(i.children[m]={item:s,children:{}})});let o=s=>{let a=[];return Object.keys(s.children).forEach(n=>{let i=yt(s.children[n].item,e,t),m={...s.children[n].item,key:i,children:o(s.children[n])};a.push(m)}),a};return o(r)};var Ts=e=>e.split("?")[0].split("#")[0].replace(/(.+)(\/$)/,"$1"),$a=({meta:e,hideOnMissingParameter:t}={hideOnMissingParameter:!0})=>{let r=Q(),o=St(),s=F(),{resource:a,resources:n}=w(),{pathname:i}=z(),{useLocation:m}=W(),{pathname:d}=m(),f=s==="legacy"?Ts(d):i?Ts(i):void 0,c=`/${(f!=null?f:"").replace(/^\//,"")}`,g=a?yt(a,n,s==="legacy"):c!=null?c:"",x=Hr.useMemo(()=>{if(!a)return[];let u=ge(a,n),l=[yt(a,n)];for(;u;)l.push(yt(u,n)),u=ge(u,n);return l},[]),U=Hr.useCallback(u=>{var R,b,h,y,p,C,v,D;if(((h=(R=u==null?void 0:u.meta)==null?void 0:R.hide)!=null?h:(b=u==null?void 0:u.options)==null?void 0:b.hide)||!(u!=null&&u.list)&&u.children.length===0)return;let l=u.list?o({resource:u,action:"list",legacy:s==="legacy",meta:e}):void 0;if(!(t&&l&&l.match(/(\/|^):(.+?)(\/|$){1}/)))return{...u,route:l,icon:P((y=u.meta)==null?void 0:y.icon,(p=u.options)==null?void 0:p.icon,u.icon),label:(D=P((C=u==null?void 0:u.meta)==null?void 0:C.label,(v=u==null?void 0:u.options)==null?void 0:v.label))!=null?D:r(`${u.name}.${u.name}`,mt(u.name,"plural"))}},[s,e,r,t]),T=Hr.useMemo(()=>{let u=gs(n,s==="legacy"),l=R=>R.flatMap(b=>{let h=l(b.children),y=U({...b,children:h});return y?[y]:[]});return l(u)},[n,s,U]);return{defaultOpenKeys:x,selectedKey:g,menuItems:T}};var Ga=()=>{let[e,t]=Ka(),r=Q(),{push:o}=ee(),s=te(),a=F(),{resource:n,action:i}=w();return Wa(()=>{n&&i&&t(r("pages.error.info",{action:i,resource:n==null?void 0:n.name},`You may have forgotten to add the "${i}" component to "${n==null?void 0:n.name}" resource.`))},[n,i]),kt.createElement(kt.Fragment,null,kt.createElement("h1",null,r("pages.error.404",void 0,"Sorry, the page you visited does not exist.")),e&&kt.createElement("p",null,e),kt.createElement("button",{onClick:()=>{a==="legacy"?o("/"):s({to:"/"})}},r("pages.error.backHome",void 0,"Back Home")))};import de,{useState as Rs}from"react";var Ur=()=>{let[e,t]=Rs(""),[r,o]=Rs(""),s=Q(),a=H(),{mutate:n}=Pt({v3LegacyAuthProviderCompatible:Boolean(a==null?void 0:a.isLegacy)});return de.createElement(de.Fragment,null,de.createElement("h1",null,s("pages.login.title","Sign in your account")),de.createElement("form",{onSubmit:i=>{i.preventDefault(),n({username:e,password:r})}},de.createElement("table",null,de.createElement("tbody",null,de.createElement("tr",null,de.createElement("td",null,s("pages.login.username",void 0,"username"),":"),de.createElement("td",null,de.createElement("input",{type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",autoFocus:!0,required:!0,value:e,onChange:i=>t(i.target.value)}))),de.createElement("tr",null,de.createElement("td",null,s("pages.login.password",void 0,"password"),":"),de.createElement("td",null,de.createElement("input",{type:"password",required:!0,size:20,value:r,onChange:i=>o(i.target.value)}))))),de.createElement("br",null),de.createElement("input",{type:"submit",value:"login"})))};import gt from"react";import re,{useState as $r}from"react";var xs=({providers:e,registerLink:t,forgotPasswordLink:r,rememberMe:o,contentProps:s,wrapperProps:a,renderContent:n,formProps:i,title:m=void 0})=>{let d=F(),f=tt(),{Link:c}=W(),g=d==="legacy"?c:f,[x,U]=$r(""),[T,u]=$r(""),[l,R]=$r(!1),b=Q(),h=H(),{mutate:y}=Pt({v3LegacyAuthProviderCompatible:Boolean(h==null?void 0:h.isLegacy)}),p=(D,E)=>D?typeof D=="string"?re.createElement(g,{to:D},E):D:null,C=()=>e?e.map(D=>{var E;return re.createElement("div",{key:D.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},re.createElement("button",{onClick:()=>y({providerName:D.name}),style:{display:"flex",alignItems:"center"}},D==null?void 0:D.icon,(E=D.label)!=null?E:re.createElement("label",null,D.label)))}):null,v=re.createElement("div",{...s},re.createElement("h1",{style:{textAlign:"center"}},b("pages.login.title","Sign in to your account")),C(),re.createElement("hr",null),re.createElement("form",{onSubmit:D=>{D.preventDefault(),y({email:x,password:T,remember:l})},...i},re.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},re.createElement("label",null,b("pages.login.fields.email","Email")),re.createElement("input",{name:"email",type:"text",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:x,onChange:D=>U(D.target.value)}),re.createElement("label",null,b("pages.login.fields.password","Password")),re.createElement("input",{type:"password",name:"password",required:!0,size:20,value:T,onChange:D=>u(D.target.value)}),o!=null?o:re.createElement(re.Fragment,null,re.createElement("label",null,b("pages.login.buttons.rememberMe","Remember me"),re.createElement("input",{name:"remember",type:"checkbox",size:20,checked:l,value:l.toString(),onChange:()=>{R(!l)}}))),re.createElement("br",null),r!=null?r:p("/forgot-password",b("pages.login.buttons.forgotPassword","Forgot password?")),re.createElement("input",{type:"submit",value:b("pages.login.signin","Sign in")}),t!=null?t:re.createElement("span",null,b("pages.login.buttons.noAccount","Don\u2019t have an account?")," ",p("/register",b("pages.login.register","Sign up"))))));return re.createElement("div",{...a},n?n(v,m):v)};import ie,{useState as Cs}from"react";var Ps=({providers:e,loginLink:t,wrapperProps:r,contentProps:o,renderContent:s,formProps:a,title:n=void 0})=>{let i=F(),m=tt(),{Link:d}=W(),f=i==="legacy"?d:m,[c,g]=Cs(""),[x,U]=Cs(""),T=Q(),u=H(),{mutate:l,isLoading:R}=mr({v3LegacyAuthProviderCompatible:Boolean(u==null?void 0:u.isLegacy)}),b=(p,C)=>p?typeof p=="string"?ie.createElement(f,{to:p},C):p:null,h=()=>e?e.map(p=>{var C;return ie.createElement("div",{key:p.name,style:{display:"flex",alignItems:"center",justifyContent:"center",marginBottom:"1rem"}},ie.createElement("button",{onClick:()=>l({providerName:p.name}),style:{display:"flex",alignItems:"center"}},p==null?void 0:p.icon,(C=p.label)!=null?C:ie.createElement("label",null,p.label)))}):null,y=ie.createElement("div",{...o},ie.createElement("h1",{style:{textAlign:"center"}},T("pages.register.title","Sign up for your account")),h(),ie.createElement("hr",null),ie.createElement("form",{onSubmit:p=>{p.preventDefault(),l({email:c,password:x})},...a},ie.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},ie.createElement("label",null,T("pages.register.fields.email","Email")),ie.createElement("input",{name:"email",type:"email",size:20,autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:p=>g(p.target.value)}),ie.createElement("label",null,T("pages.register.fields.password","Password")),ie.createElement("input",{name:"password",type:"password",required:!0,size:20,value:x,onChange:p=>U(p.target.value)}),ie.createElement("input",{type:"submit",value:T("pages.register.buttons.submit","Sign up"),disabled:R}),t!=null?t:ie.createElement(ie.Fragment,null,ie.createElement("span",null,T("pages.login.buttons.haveAccount","Have an account?")," ",b("/login",T("pages.login.signin","Sign in")))))));return ie.createElement("div",{...r},s?s(y,n):y)};import be,{useState as za}from"react";var bs=({loginLink:e,wrapperProps:t,contentProps:r,renderContent:o,formProps:s,title:a=void 0})=>{let n=Q(),i=F(),m=tt(),{Link:d}=W(),f=i==="legacy"?d:m,[c,g]=za(""),{mutate:x,isLoading:U}=yr(),T=(l,R)=>l?typeof l=="string"?be.createElement(f,{to:l},R):l:null,u=be.createElement("div",{...r},be.createElement("h1",{style:{textAlign:"center"}},n("pages.forgotPassword.title","Forgot your password?")),be.createElement("hr",null),be.createElement("form",{onSubmit:l=>{l.preventDefault(),x({email:c})},...s},be.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},be.createElement("label",null,n("pages.forgotPassword.fields.email","Email")),be.createElement("input",{name:"email",type:"mail",autoCorrect:"off",spellCheck:!1,autoCapitalize:"off",required:!0,value:c,onChange:l=>g(l.target.value)}),be.createElement("input",{type:"submit",disabled:U,value:n("pages.forgotPassword.buttons.submit","Send reset instructions")}),be.createElement("br",null),e!=null?e:be.createElement("span",null,n("pages.register.buttons.haveAccount","Have an account? ")," ",T("/login",n("pages.login.signin","Sign in"))))));return be.createElement("div",{...t},o?o(u,a):u)};import Ae,{useState as hs}from"react";var vs=({wrapperProps:e,contentProps:t,renderContent:r,formProps:o,title:s=void 0})=>{let a=Q(),n=H(),{mutate:i,isLoading:m}=Tr({v3LegacyAuthProviderCompatible:Boolean(n==null?void 0:n.isLegacy)}),[d,f]=hs(""),[c,g]=hs(""),x=Ae.createElement("div",{...t},Ae.createElement("h1",{style:{textAlign:"center"}},a("pages.updatePassword.title","Update Password")),Ae.createElement("hr",null),Ae.createElement("form",{onSubmit:U=>{U.preventDefault(),i({password:d,confirmPassword:c})},...o},Ae.createElement("div",{style:{display:"flex",flexDirection:"column",padding:25}},Ae.createElement("label",null,a("pages.updatePassword.fields.password","New Password")),Ae.createElement("input",{name:"password",type:"password",required:!0,size:20,value:d,onChange:U=>f(U.target.value)}),Ae.createElement("label",null,a("pages.updatePassword.fields.confirmPassword","Confirm New Password")),Ae.createElement("input",{name:"confirmPassword",type:"password",required:!0,size:20,value:c,onChange:U=>g(U.target.value)}),Ae.createElement("input",{type:"submit",disabled:m,value:a("pages.updatePassword.buttons.submit","Update")}))));return Ae.createElement("div",{...e},r?r(x,s):x)};var _a=e=>{let{type:t}=e;return gt.createElement(gt.Fragment,null,(()=>{switch(t){case"register":return gt.createElement(Ps,{...e});case"forgotPassword":return gt.createElement(bs,{...e});case"updatePassword":return gt.createElement(vs,{...e});default:return gt.createElement(xs,{...e})}})())};import fe from"react";var Wr=()=>fe.createElement(fe.Fragment,null,fe.createElement("h1",null,"Welcome on board"),fe.createElement("p",null,"Your configuration is completed."),fe.createElement("p",null,"Now you can get started by adding your resources to the"," ",fe.createElement("code",null,"`resources`")," property of ",fe.createElement("code",null,"`<Refine>`")),fe.createElement("div",{style:{display:"flex",gap:8}},fe.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Documentation")),fe.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Examples")),fe.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},fe.createElement("button",null,"Community"))));import Se from"react";var ja=()=>Se.createElement(Se.Fragment,null,Se.createElement("h1",null,"Welcome on board"),Se.createElement("p",null,"Your configuration is completed."),Se.createElement("div",{style:{display:"flex",gap:8}},Se.createElement("a",{href:"https://refine.dev",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Documentation")),Se.createElement("a",{href:"https://refine.dev/examples",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Examples")),Se.createElement("a",{href:"https://discord.gg/refine",target:"_blank",rel:"noreferrer"},Se.createElement("button",null,"Community"))));import X from"react";import{QueryClientProvider as Za,QueryClient as Ms}from"@tanstack/react-query";import{ReactQueryDevtools as qa}from"@tanstack/react-query-devtools";import{useEffect as Ja}from"react";import{useContext as st}from"react";var Ya="4.5.0",Ds=()=>{let e=Rr(),t=st(ot),r=st(Fe),o=st(wt),s=st(Lt),{i18nProvider:a}=st(Me),n=st(It),i=st(rt),{resources:m}=w(),d=!!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,g=!!s,x=!!(a!=null&&a.changeLocale)||!!(a!=null&&a.getLocale)||!!(a!=null&&a.translate),U=!!n.close||!!n.open,T=!!i.can;return{providers:{auth:e,auditLog:d,live:f,router:c,data:g,i18n:x,notification:U,accessControl:T},version:Ya,resourceCount:m.length}};var Xa=e=>{let t=JSON.stringify(e||{});return typeof btoa<"u"?btoa(t):Buffer.from(t).toString("base64")},Us=()=>{let e=Ds();return Ja(()=>{if(typeof window>"u"&&!Image)return;let t=new Image;t.src=`https://telemetry.refine.dev/telemetry?payload=${Xa(e)}`},[]),null};var Es=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 Ls from"react";var Is=e=>{let t=Ls.useRef(!1);Ls.useEffect(()=>{t.current===!1&&e&&Es(e)&&(t.current=!0)},[e])};var ei=({legacyAuthProvider:e,authProvider:t,dataProvider:r,legacyRouterProvider:o,routerProvider:s,notificationProvider:a,accessControlProvider:n,auditLogProvider:i,resources:m,DashboardPage:d,ReadyPage:f,LoginPage:c,catchAll:g,children:x,liveProvider:U,i18nProvider:T,Title:u,Layout:l,Sider:R,Header:b,Footer:h,OffLayoutArea:y,onLiveEvent:p,options:C})=>{let{optionsWithDefaults:v,disableTelemetryWithDefault:D,reactQueryWithDefaults:E}=Er({options:C}),L=tr(()=>{var V;return E.clientConfig instanceof Ms?E.clientConfig:new Ms({...E.clientConfig,defaultOptions:{...E.clientConfig.defaultOptions,queries:{refetchOnWindowFocus:!1,keepPreviousData:!0,...(V=E.clientConfig.defaultOptions)==null?void 0:V.queries}}})},[E.clientConfig]),I=X.useMemo(()=>typeof a=="function"?a:()=>a!=null?a:{},[a])();if(Is(s),o&&!s&&(m!=null?m:[]).length===0)return f?X.createElement(f,null):X.createElement(Wr,null);let{RouterComponent:S=X.Fragment}=s?{}:o!=null?o:{};return X.createElement(Za,{client:L},X.createElement(zo,{...I},X.createElement(ro,{...e!=null?e:{},isProvided:Boolean(e)},X.createElement(so,{...t!=null?t:{},isProvided:Boolean(t)},X.createElement(wo,{...r},X.createElement(Vo,{liveProvider:U},X.createElement(Wo,{value:o&&!s?"legacy":"new"},X.createElement(Go,{router:s},X.createElement(rs,{...o},X.createElement(Oo,{resources:m!=null?m:[]},X.createElement(jo,{i18nProvider:T},X.createElement(ss,{...n!=null?n:{}},X.createElement(ms,{...i!=null?i:{}},X.createElement(Sr,null,X.createElement(vo,{mutationMode:v.mutationMode,warnWhenUnsavedChanges:v.warnWhenUnsavedChanges,syncWithLocation:v.syncWithLocation,Title:u,undoableTimeout:v.undoableTimeout,catchAll:g,DashboardPage:d,LoginPage:c,Layout:l,Sider:R,Footer:h,Header:b,OffLayoutArea:y,hasDashboard:!!d,liveMode:v.liveMode,onLiveEvent:p,options:v},X.createElement(Jo,null,X.createElement(S,null,x,!D&&X.createElement(Us,null),X.createElement(Kr,null))))))))))))))))),E.devtoolConfig===!1?null:X.createElement(qa,{initialIsOpen:!1,position:"bottom-right",...E.devtoolConfig}))};import{useEffect as ti,useState as ri}from"react";var Eo=({notification:e})=>{let t=Q(),{notificationDispatch:r}=Ve(),{open:o}=me(),[s,a]=ri(),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:bt(e.seconds)},`You have ${bt(e.seconds)} seconds to undo`),cancelMutation:e.cancelMutation,undoableTimeout:bt(e.seconds)}),e.seconds>0)){s&&clearTimeout(s);let i=setTimeout(()=>{r({type:"DECREASE_NOTIFICATION_SECOND",payload:{id:e.id,seconds:e.seconds,resource:e.resource}})},1e3);a(i)}};return ti(()=>{n()},[e]),null};import Gr,{useEffect as oi}from"react";var si=({children:e,Layout:t,Sider:r,Header:o,Title:s,Footer:a,OffLayoutArea:n})=>{let{Layout:i,Footer:m,Header:d,Sider:f,Title:c,OffLayoutArea:g}=At(),x=t!=null?t:i;return Gr.createElement(x,{Sider:r!=null?r:f,Header:o!=null?o:d,Footer:a!=null?a:m,Title:s!=null?s:c,OffLayoutArea:n!=null?n:g},e,Gr.createElement(ni,null))},ni=()=>{let{Prompt:e}=W(),t=Q(),{warnWhen:r,setWarnWhen:o}=Mt(),s=a=>(a.preventDefault(),a.returnValue=t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),a.returnValue);return oi(()=>(r&&window.addEventListener("beforeunload",s),window.removeEventListener("beforeunload",s)),[r]),Gr.createElement(e,{when:r,message:t("warnWhenUnsavedChanges","Are you sure you want to leave? You have unsaved changes."),setWarnWhen:o})};import Te from"react";var ai=()=>{let e=te(),[t,r]=Te.useState(void 0);return Te.useEffect(()=>{t&&e(t)},[t]),Te.useCallback(s=>{t||r(s)},[t])};function ii({redirectOnFail:e=!0,appendCurrentPathToQuery:t=!0,children:r,fallback:o,loading:s}){var v;let a=H(),n=F(),i=Boolean(a==null?void 0:a.isProvided),m=Boolean(a==null?void 0:a.isLegacy),d=n==="legacy",f=z(),c=te(),g=ai(),{replace:x}=ee(),{useLocation:U}=W(),T=U(),{isLoading:u,isFetching:l,isSuccess:R,data:{authenticated:b,redirectTo:h}={},refetch:y}=$t({v3LegacyAuthProviderCompatible:m});Te.useEffect(()=>{y()},[r,o]);let p=Te.useRef({status:u?"initial":"pending",content:s!=null?s:null});l?p.current.status="pending":l||(p.current.status="settled");let C=i?m?R:b:!0;if(p.current.status==="settled")if(C)p.current.content=Te.createElement(Te.Fragment,null,r!=null?r:null);else if(typeof o<"u")p.current.content=Te.createElement(Te.Fragment,null,o);else{let D=`${d?T==null?void 0:T.pathname:f.pathname}`.replace(/(\?.*|#.*)$/,""),E=m?typeof e=="string"?e:"/login":typeof e=="string"?e:h;if(E)if(d){let L=t?`?to=${encodeURIComponent(D)}`:"";x(`${E}${L}`)}else g({to:E,query:t?{to:(v=f.params)!=null&&v.to?f.params.to:c({to:D,options:{keepQuery:!0},type:"path"})}:void 0,type:"replace"})}return i?Te.createElement(Te.Fragment,null,p.current.content):Te.createElement(Te.Fragment,null,r!=null?r:null)}import{useEffect as ui}from"react";var Kr=()=>{let{useLocation:e}=W(),{checkAuth:t}=j(),r=e();return ui(()=>{t==null||t().catch(()=>!1)},[r==null?void 0:r.pathname]),null};import Tt from"react";var ci=({resource:e,action:t,params:r,fallback:o,children:s,...a})=>{var y,p;let n=F(),{resources:i}=w(),{useParams:m}=W(),{resource:d,id:f,action:c}=z(),{resource:g,id:x,action:U}=m(),T=d==null?void 0:d.name,u=!e||e===(n==="legacy"?g:T)?(y=r==null?void 0:r.id)!=null?y:n==="legacy"?x:f:r==null?void 0:r.id,l=e!=null?e:n==="legacy"?g:T,R,b=Je();if(n==="legacy")l&&(R=b(l));else if(e){let C=$(e,i);C?R=C:R={name:e,route:e}}else if(typeof d=="string"){let C=$(d,i);C?R=C:R={name:d,route:d}}else R=d;let{data:h}=as({resource:e!=null?e:R==null?void 0:R.name,action:(p=t!=null?t:n==="legacy"?U:c)!=null?p:"",params:r!=null?r:{id:u,resource:R}});return h!=null&&h.can?Tt.isValidElement(s)?Tt.cloneElement(s,a):Tt.createElement(Tt.Fragment,null,s):(h==null?void 0:h.can)===!1?Tt.createElement(Tt.Fragment,null,o!=null?o:null):null};import Vt,{useEffect as pi}from"react";var As=[`
|
|
4
4
|
.banner::before,
|
|
5
5
|
.banner::after {
|
|
6
6
|
content: '';
|
|
@@ -52,5 +52,5 @@ For more information, see https://refine.dev/docs/core/hooks/useBreadcrumb/#i18n
|
|
|
52
52
|
text-decoration: none;
|
|
53
53
|
z-index: 9;
|
|
54
54
|
}
|
|
55
|
-
`];var
|
|
55
|
+
`];var di=()=>(pi(()=>{let e=document.createElement("style");document.head.appendChild(e),As.forEach(t=>{var r;return(r=e.sheet)==null?void 0:r.insertRule(t,e.sheet.cssRules.length)})},[]),Vt.createElement("div",{className:"banner",style:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",position:"relative",padding:"8px 16px",backgroundColor:"#0d0d0d",borderBottom:"1px solid rgba(255, 255, 255, 0.15)"}},Vt.createElement("a",{className:"gh-link",href:"https://s.refine.dev/github-support",target:"_blank",rel:"noreferrer"},Vt.createElement("div",{className:"content",style:{position:"relative",zIndex:2,color:"#fff",display:"flex",flexDirection:"row",gap:"8px"}},Vt.createElement("span",{className:"wizard",style:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",width:"32px",height:"32px",fontSize:"32px",lineHeight:"32px"}},"\u{1F9D9}\u200D\u2642\uFE0F"),Vt.createElement("span",{className:"text",style:{padding:"4px 0",fontSize:"16px",lineHeight:"24px",textShadow:"0px 0px 4px rgba(255, 255, 255, 0.5)"}},"Refine grants your wishes! Please give us a \u2B50\uFE0F on GitHub to keep the magic going.")))));export{_a as AuthPage,ii as Authenticated,ci as CanAccess,Ga as ErrorComponent,di as GitHubBanner,si as LayoutWrapper,Ur as LoginPage,Wr as ReadyPage,ei as Refine,Ye as ResourceContext,Kr as RouteChangeHandler,Eo as UndoableQueue,ja as WelcomePage,bo as createTreeView,zs as file2Base64,Gs as getDefaultFilter,Ks as getDefaultSortOrder,Xt as getNextPageParam,Zt as getPreviousPageParam,Co as handleUseParams,Wt as importCSVMapper,qt as legacyResourceTransform,vr as matchResourceFromRoute,Kt as parseTableParams,Ws as parseTableParamsFromQuery,P as pickNotDeprecated,Yt as routeGenerator,_t as setInitialFilters,jt as setInitialSorters,Gt as stringifyTableParams,lt as unionFilters,zt as unionSorters,H as useActiveAuthProvider,gn as useApiUrl,Ns as useAuthenticated,Nr as useBack,gR as useBreadcrumb,as as useCan,sT as useCanWithoutCache,Ve as useCancelNotification,Fs as useCheckError,Et as useCreate,kr as useCreateMany,Rn as useCustom,Cn as useCustomMutation,K as useDataProvider,nn as useDelete,yn as useDeleteMany,yy as useExport,yr as useForgotPassword,Ey as useForm,cr as useGetIdentity,ta as useGetLocale,St as useGetToPath,te as useGo,J as useHandleNotification,lg as useImport,Dn as useInfiniteList,Pe as useInvalidate,$t as useIsAuthenticated,Rr as useIsExistAuthentication,tt as useLink,Dt as useList,Bo as useLiveMode,Ce as useLog,YT as useLogList,Pt as useLogin,Ht as useLogout,Ir as useMany,$a as useMenu,yg as useModal,Ie as useMutationMode,ee as useNavigation,me as useNotification,Y as useOnError,Ut as useOne,Vr as useParse,z as useParsed,Ss as usePermissions,xe as usePublish,qo as useRedirectionAfterSubmission,At as useRefineContext,mr as useRegister,w as useResource,je as useResourceSubscription,Je as useResourceWithRoute,W as useRouterContext,F as useRouterType,TT as useSelect,Jn as useSetLocale,rg as useShow,gm as useSubscription,Br as useSyncWithLocation,LT as useTable,aa as useTitle,ba as useToPath,Q as useTranslate,wr as useUpdate,dn as useUpdateMany,Tr as useUpdatePassword,Mt as useWarnAboutChange,mt as userFriendlyResourceName};
|
|
56
56
|
//# sourceMappingURL=index.js.map
|