@orbe-agro/client-core 5.3.29 → 5.3.31
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/dist/@ecme/auth/AuthProvider.js +7 -6
- package/dist/@ecme/auth/AuthProvider.js.map +1 -1
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.js +29 -20
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.js.map +1 -1
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js +64 -66
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.js.map +1 -1
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.js +27 -28
- package/dist/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.js.map +1 -1
- package/dist/@ecme/store/authStore.js +25 -23
- package/dist/@ecme/store/authStore.js.map +1 -1
- package/dist/@types/@ecme/@types/auth.d.ts +2 -0
- package/dist/@types/@ecme/@types/auth.d.ts.map +1 -1
- package/dist/@types/@ecme/auth/AuthProvider.d.ts.map +1 -1
- package/dist/@types/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.d.ts +3 -3
- package/dist/@types/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.d.ts.map +1 -1
- package/dist/@types/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.d.ts.map +1 -1
- package/dist/@types/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.d.ts.map +1 -1
- package/dist/@types/@ecme/store/authStore.d.ts.map +1 -1
- package/dist/@types/base/@types/models/transportadora/controleDescarga.d.ts +10 -0
- package/dist/@types/base/@types/models/transportadora/controleDescarga.d.ts.map +1 -0
- package/dist/@types/base/@types/models/transportadora/controleEmbarque.d.ts +11 -0
- package/dist/@types/base/@types/models/transportadora/controleEmbarque.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +28 -0
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/transportadora/controleDescarga.d.ts +24 -0
- package/dist/@types/base/configs/endpoints.config/transportadora/controleDescarga.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/transportadora/controleEmbarque.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/transportadora/controleEmbarque.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/modules.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/Transportadora/pamcard.subMenu.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/Transportadora/relatorios.subMenu.navigation.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/Transportadora/relatorios.subMenu.navigation.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/Transportadora/transportadora.navigation.d.ts.map +1 -1
- package/dist/@types/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.d.ts +16 -0
- package/dist/@types/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.d.ts +12 -0
- package/dist/@types/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/transportadora/index.d.ts +2 -0
- package/dist/@types/base/services/modules/transportadora/index.d.ts.map +1 -1
- package/dist/base/@types/models/transportadora/controleDescarga.js +2 -0
- package/dist/base/@types/models/transportadora/controleDescarga.js.map +1 -0
- package/dist/base/@types/models/transportadora/controleEmbarque.js +2 -0
- package/dist/base/@types/models/transportadora/controleEmbarque.js.map +1 -0
- package/dist/base/configs/endpoints.config/endpoints.navigation.js +39 -35
- package/dist/base/configs/endpoints.config/endpoints.navigation.js.map +1 -1
- package/dist/base/configs/endpoints.config/transportadora/controleDescarga.js +11 -0
- package/dist/base/configs/endpoints.config/transportadora/controleDescarga.js.map +1 -0
- package/dist/base/configs/endpoints.config/transportadora/controleEmbarque.js +7 -0
- package/dist/base/configs/endpoints.config/transportadora/controleEmbarque.js.map +1 -0
- package/dist/base/configs/navigation.config/modules.navigation.js +18 -16
- package/dist/base/configs/navigation.config/modules.navigation.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/pamcard.subMenu.navigation.js +4 -14
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/pamcard.subMenu.navigation.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/relatorios.subMenu.navigation.js +49 -0
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/relatorios.subMenu.navigation.js.map +1 -0
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/transportadora.navigation.js +14 -3
- package/dist/base/configs/navigation.config/modules.submenu/Transportadora/transportadora.navigation.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/adm/config/roles.submenu.js +3 -3
- package/dist/base/configs/navigation.config/submenu/adm/config/roles.submenu.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/adm/config/users.submenu.js +1 -1
- package/dist/base/configs/navigation.config/submenu/adm/config/users.submenu.js.map +1 -1
- package/dist/base/index.js +128 -120
- package/dist/base/index.js.map +1 -1
- package/dist/base/services/index.js +96 -88
- package/dist/base/services/index.js.map +1 -1
- package/dist/base/services/modules/index.js +125 -117
- package/dist/base/services/modules/index.js.map +1 -1
- package/dist/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.js +55 -0
- package/dist/base/services/modules/transportadora/ControleDescarga/ControleDescargaService.js.map +1 -0
- package/dist/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.js +25 -0
- package/dist/base/services/modules/transportadora/ControleEmbarque/ControleEmbarqueService.js.map +1 -0
- package/dist/base/services/modules/transportadora/index.js +86 -78
- package/dist/base/services/modules/transportadora/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as S, Fragment as T, jsxs as P } from "react/jsx-runtime";
|
|
2
2
|
import p from "../configs/app.config.js";
|
|
3
3
|
import { REDIRECT_URL_KEY as E } from "../constants/app.constant.js";
|
|
4
4
|
import { apiSignIn as N, apiSignUp as j, apiSignOut as x } from "../services/AuthService.js";
|
|
@@ -10,19 +10,19 @@ const L = ({ ref: u }) => {
|
|
|
10
10
|
const a = b();
|
|
11
11
|
return O(u, () => ({
|
|
12
12
|
navigate: a
|
|
13
|
-
}), [a]), /* @__PURE__ */
|
|
13
|
+
}), [a]), /* @__PURE__ */ S(T, {});
|
|
14
14
|
};
|
|
15
15
|
function G({ children: u }) {
|
|
16
16
|
const a = c((s) => s.session.signedIn), g = c((s) => s.user), o = c((s) => s.setUser), f = c(
|
|
17
17
|
(s) => s.setSessionSignedIn
|
|
18
18
|
), { token: A, setToken: l } = C(), I = !!(A && a), i = D(null), m = (s) => {
|
|
19
|
-
var t,
|
|
19
|
+
var t, h;
|
|
20
20
|
if (s.primeiroAcesso) {
|
|
21
21
|
(t = i.current) == null || t.navigate(p.firstAccessPath);
|
|
22
22
|
return;
|
|
23
23
|
}
|
|
24
24
|
const n = window.location.search, e = new URLSearchParams(n).get(E);
|
|
25
|
-
(
|
|
25
|
+
(h = i.current) == null || h.navigate(
|
|
26
26
|
e || p.authenticatedEntryPath
|
|
27
27
|
);
|
|
28
28
|
}, d = (s) => {
|
|
@@ -38,7 +38,8 @@ function G({ children: u }) {
|
|
|
38
38
|
const t = {
|
|
39
39
|
userId: e.id.toString(),
|
|
40
40
|
userName: e.nome,
|
|
41
|
-
primeiroAcesso: e.primeiroAcesso
|
|
41
|
+
primeiroAcesso: e.primeiroAcesso,
|
|
42
|
+
authority: e.funcionalidades
|
|
42
43
|
};
|
|
43
44
|
return o(t), m(t), {
|
|
44
45
|
status: "success",
|
|
@@ -110,7 +111,7 @@ function G({ children: u }) {
|
|
|
110
111
|
},
|
|
111
112
|
children: [
|
|
112
113
|
u,
|
|
113
|
-
/* @__PURE__ */
|
|
114
|
+
/* @__PURE__ */ S(L, { ref: i })
|
|
114
115
|
]
|
|
115
116
|
}
|
|
116
117
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthProvider.js","sources":["../../../lib/@ecme/auth/AuthProvider.tsx"],"sourcesContent":["import type {\n AuthResult,\n OauthSignInCallbackPayload,\n SignInCredential,\n SignUpCredential,\n Token,\n} from \"@/@types/auth\";\nimport appConfig from \"@/configs/app.config\";\nimport { REDIRECT_URL_KEY } from \"@/constants/app.constant\";\nimport { apiSignIn, apiSignOut, apiSignUp } from \"@/services/AuthService\";\nimport { useSessionUser, useToken } from \"@/store/authStore\";\nimport { ReactNode, Ref, useImperativeHandle, useRef } from \"react\";\nimport { NavigateFunction, useNavigate } from \"react-router-dom\";\nimport AuthContext from \"./AuthContext\";\n\ntype AuthProviderProps = { children: ReactNode };\n\nexport type IsolatedNavigatorRef = {\n navigate: NavigateFunction;\n};\n\nconst IsolatedNavigator = ({ ref }: { ref: Ref<IsolatedNavigatorRef> }) => {\n const navigate = useNavigate();\n\n useImperativeHandle(ref, () => {\n return {\n navigate,\n };\n }, [navigate]);\n\n return <></>;\n};\n\nfunction AuthProvider({ children }: AuthProviderProps) {\n const signedIn = useSessionUser((state) => state.session.signedIn);\n const user = useSessionUser((state) => state.user);\n const setUser = useSessionUser((state) => state.setUser);\n const setSessionSignedIn = useSessionUser(\n (state) => state.setSessionSignedIn\n );\n const { token, setToken } = useToken();\n\n const authenticated = Boolean(token && signedIn);\n\n const navigatorRef = useRef<IsolatedNavigatorRef>(null);\n\n const redirect = (userData: { primeiroAcesso?: boolean }) => {\n if (userData.primeiroAcesso) {\n navigatorRef.current?.navigate(appConfig.firstAccessPath);\n return;\n }\n const search = window.location.search;\n const params = new URLSearchParams(search);\n const redirectUrl = params.get(REDIRECT_URL_KEY);\n\n navigatorRef.current?.navigate(\n redirectUrl ? redirectUrl : appConfig.authenticatedEntryPath\n );\n };\n\n const handleSignIn = (tokens: Token) => {\n setToken(tokens.accessToken);\n setSessionSignedIn(true);\n };\n\n const handleSignOut = () => {\n setToken(\"\");\n setUser({});\n setSessionSignedIn(false);\n };\n\n const signIn = async (values: SignInCredential): AuthResult => {\n try {\n const resp = await apiSignIn(values);\n\n if (resp) {\n handleSignIn({ accessToken: resp.jwtToken });\n // Armazenar ID e nome do usuário no estado\n const newUser = {\n userId: resp.id.toString(),\n userName: resp.nome,\n primeiroAcesso: resp.primeiroAcesso,\n };\n setUser(newUser);\n redirect(newUser);\n return {\n status: \"success\",\n message: \"\",\n };\n }\n return {\n status: \"failed\",\n message: \"Unable to sign in\",\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (errors: any) {\n console.error(\"ERRO NA CHAMADA DA API:\", errors);\n return {\n status: \"failed\",\n message: errors?.response?.data?.message || errors.toString(),\n };\n }\n };\n\n const signUp = async (values: SignUpCredential): AuthResult => {\n try {\n const resp = await apiSignUp(values);\n if (resp) {\n handleSignIn({ accessToken: resp.jwtToken });\n // Armazenar ID e nome do usuário no estado\n const newUser = {\n userId: resp.id.toString(),\n userName: resp.nome,\n primeiroAcesso: false,\n };\n setUser(newUser);\n redirect(newUser);\n return {\n status: \"success\",\n message: \"\",\n };\n }\n return {\n status: \"failed\",\n message: \"Unable to sign up\",\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (errors: any) {\n return {\n status: \"failed\",\n message: errors?.response?.data?.message || errors.toString(),\n };\n }\n };\n\n const signOut = async () => {\n try {\n await apiSignOut();\n } finally {\n handleSignOut();\n navigatorRef.current?.navigate(appConfig.unAuthenticatedEntryPath);\n }\n };\n const oAuthSignIn = (\n callback: (payload: OauthSignInCallbackPayload) => void\n ) => {\n callback({\n onSignIn: handleSignIn,\n redirect: () => redirect(user),\n });\n };\n\n const updateUserSession = (newUserData: Partial<typeof user>) => {\n setUser({ ...user, ...newUserData });\n };\n return (\n <AuthContext.Provider\n value={{\n authenticated,\n user,\n signIn,\n signUp,\n signOut,\n oAuthSignIn,\n updateUserSession,\n }}\n >\n {children}\n <IsolatedNavigator ref={navigatorRef} />\n </AuthContext.Provider>\n );\n}\n\nexport default AuthProvider;\n"],"names":["IsolatedNavigator","ref","navigate","useNavigate","useImperativeHandle","jsx","Fragment","AuthProvider","children","signedIn","useSessionUser","state","user","setUser","setSessionSignedIn","token","setToken","useToken","authenticated","navigatorRef","useRef","redirect","userData","_a","appConfig","search","redirectUrl","REDIRECT_URL_KEY","_b","handleSignIn","tokens","handleSignOut","signIn","values","resp","apiSignIn","newUser","errors","signUp","apiSignUp","signOut","apiSignOut","oAuthSignIn","callback","updateUserSession","newUserData","jsxs","AuthContext"],"mappings":";;;;;;;;AAqBA,MAAMA,IAAoB,CAAC,EAAE,KAAAC,QAA8C;AACzE,QAAMC,IAAWC,EAAA;AAEjB,SAAAC,EAAoBH,GAAK,OAChB;AAAA,IACL,UAAAC;AAAA,EAAA,IAED,CAACA,CAAQ,CAAC,GAEN,gBAAAG,EAAAC,GAAA,EAAE;AACX;AAEA,SAASC,EAAa,EAAE,UAAAC,KAA+B;AACrD,QAAMC,IAAWC,EAAe,CAACC,MAAUA,EAAM,QAAQ,QAAQ,GAC3DC,IAAOF,EAAe,CAACC,MAAUA,EAAM,IAAI,GAC3CE,IAAUH,EAAe,CAACC,MAAUA,EAAM,OAAO,GACjDG,IAAqBJ;AAAA,IACzB,CAACC,MAAUA,EAAM;AAAA,EAAA,GAEb,EAAE,OAAAI,GAAO,UAAAC,EAAA,IAAaC,EAAA,GAEtBC,IAAgB,GAAQH,KAASN,IAEjCU,IAAeC,EAA6B,IAAI,GAEhDC,IAAW,CAACC,MAA2C;;AAC3D,QAAIA,EAAS,gBAAgB;AAC3B,OAAAC,IAAAJ,EAAa,YAAb,QAAAI,EAAsB,SAASC,EAAU;AACzC;AAAA,IACF;AACA,UAAMC,IAAS,OAAO,SAAS,QAEzBC,IADS,IAAI,gBAAgBD,CAAM,EACd,IAAIE,CAAgB;AAE/C,KAAAC,IAAAT,EAAa,YAAb,QAAAS,EAAsB;AAAA,MACpBF,KAA4BF,EAAU;AAAA;AAAA,EAE1C,GAEMK,IAAe,CAACC,MAAkB;AACtC,IAAAd,EAASc,EAAO,WAAW,GAC3BhB,EAAmB,EAAI;AAAA,EACzB,GAEMiB,IAAgB,MAAM;AAC1B,IAAAf,EAAS,EAAE,GACXH,EAAQ,CAAA,CAAE,GACVC,EAAmB,EAAK;AAAA,EAC1B,GAEMkB,IAAS,OAAOC,MAAyC;;AAC7D,QAAI;AACF,YAAMC,IAAO,MAAMC,EAAUF,CAAM;AAEnC,UAAIC,GAAM;AACR,QAAAL,EAAa,EAAE,aAAaK,EAAK,SAAA,CAAU;AAE3C,cAAME,IAAU;AAAA,UACd,QAAQF,EAAK,GAAG,SAAA;AAAA,UAChB,UAAUA,EAAK;AAAA,UACf,gBAAgBA,EAAK;AAAA,QAAA;
|
|
1
|
+
{"version":3,"file":"AuthProvider.js","sources":["../../../lib/@ecme/auth/AuthProvider.tsx"],"sourcesContent":["import type {\n AuthResult,\n OauthSignInCallbackPayload,\n SignInCredential,\n SignUpCredential,\n Token,\n} from \"@/@types/auth\";\nimport appConfig from \"@/configs/app.config\";\nimport { REDIRECT_URL_KEY } from \"@/constants/app.constant\";\nimport { apiSignIn, apiSignOut, apiSignUp } from \"@/services/AuthService\";\nimport { useSessionUser, useToken } from \"@/store/authStore\";\nimport { ReactNode, Ref, useImperativeHandle, useRef } from \"react\";\nimport { NavigateFunction, useNavigate } from \"react-router-dom\";\nimport AuthContext from \"./AuthContext\";\n\ntype AuthProviderProps = { children: ReactNode };\n\nexport type IsolatedNavigatorRef = {\n navigate: NavigateFunction;\n};\n\nconst IsolatedNavigator = ({ ref }: { ref: Ref<IsolatedNavigatorRef> }) => {\n const navigate = useNavigate();\n\n useImperativeHandle(ref, () => {\n return {\n navigate,\n };\n }, [navigate]);\n\n return <></>;\n};\n\nfunction AuthProvider({ children }: AuthProviderProps) {\n const signedIn = useSessionUser((state) => state.session.signedIn);\n const user = useSessionUser((state) => state.user);\n const setUser = useSessionUser((state) => state.setUser);\n const setSessionSignedIn = useSessionUser(\n (state) => state.setSessionSignedIn\n );\n const { token, setToken } = useToken();\n\n const authenticated = Boolean(token && signedIn);\n\n const navigatorRef = useRef<IsolatedNavigatorRef>(null);\n\n const redirect = (userData: { primeiroAcesso?: boolean }) => {\n if (userData.primeiroAcesso) {\n navigatorRef.current?.navigate(appConfig.firstAccessPath);\n return;\n }\n const search = window.location.search;\n const params = new URLSearchParams(search);\n const redirectUrl = params.get(REDIRECT_URL_KEY);\n\n navigatorRef.current?.navigate(\n redirectUrl ? redirectUrl : appConfig.authenticatedEntryPath\n );\n };\n\n const handleSignIn = (tokens: Token) => {\n setToken(tokens.accessToken);\n setSessionSignedIn(true);\n };\n\n const handleSignOut = () => {\n setToken(\"\");\n setUser({});\n setSessionSignedIn(false);\n };\n\n const signIn = async (values: SignInCredential): AuthResult => {\n try {\n const resp = await apiSignIn(values);\n\n if (resp) {\n handleSignIn({ accessToken: resp.jwtToken });\n // Armazenar ID e nome do usuário no estado\n const newUser = {\n userId: resp.id.toString(),\n userName: resp.nome,\n primeiroAcesso: resp.primeiroAcesso,\n authority: resp.funcionalidades,\n };\n setUser(newUser);\n redirect(newUser);\n return {\n status: \"success\",\n message: \"\",\n };\n }\n return {\n status: \"failed\",\n message: \"Unable to sign in\",\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (errors: any) {\n console.error(\"ERRO NA CHAMADA DA API:\", errors);\n return {\n status: \"failed\",\n message: errors?.response?.data?.message || errors.toString(),\n };\n }\n };\n\n const signUp = async (values: SignUpCredential): AuthResult => {\n try {\n const resp = await apiSignUp(values);\n if (resp) {\n handleSignIn({ accessToken: resp.jwtToken });\n // Armazenar ID e nome do usuário no estado\n const newUser = {\n userId: resp.id.toString(),\n userName: resp.nome,\n primeiroAcesso: false,\n };\n setUser(newUser);\n redirect(newUser);\n return {\n status: \"success\",\n message: \"\",\n };\n }\n return {\n status: \"failed\",\n message: \"Unable to sign up\",\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (errors: any) {\n return {\n status: \"failed\",\n message: errors?.response?.data?.message || errors.toString(),\n };\n }\n };\n\n const signOut = async () => {\n try {\n await apiSignOut();\n } finally {\n handleSignOut();\n navigatorRef.current?.navigate(appConfig.unAuthenticatedEntryPath);\n }\n };\n const oAuthSignIn = (\n callback: (payload: OauthSignInCallbackPayload) => void\n ) => {\n callback({\n onSignIn: handleSignIn,\n redirect: () => redirect(user),\n });\n };\n\n const updateUserSession = (newUserData: Partial<typeof user>) => {\n setUser({ ...user, ...newUserData });\n };\n return (\n <AuthContext.Provider\n value={{\n authenticated,\n user,\n signIn,\n signUp,\n signOut,\n oAuthSignIn,\n updateUserSession,\n }}\n >\n {children}\n <IsolatedNavigator ref={navigatorRef} />\n </AuthContext.Provider>\n );\n}\n\nexport default AuthProvider;\n"],"names":["IsolatedNavigator","ref","navigate","useNavigate","useImperativeHandle","jsx","Fragment","AuthProvider","children","signedIn","useSessionUser","state","user","setUser","setSessionSignedIn","token","setToken","useToken","authenticated","navigatorRef","useRef","redirect","userData","_a","appConfig","search","redirectUrl","REDIRECT_URL_KEY","_b","handleSignIn","tokens","handleSignOut","signIn","values","resp","apiSignIn","newUser","errors","signUp","apiSignUp","signOut","apiSignOut","oAuthSignIn","callback","updateUserSession","newUserData","jsxs","AuthContext"],"mappings":"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"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { jsx as t, jsxs as
|
|
2
|
-
import { Menu as
|
|
3
|
-
import { Dropdown as
|
|
1
|
+
import { jsx as t, jsxs as d, Fragment as h } from "react/jsx-runtime";
|
|
2
|
+
import { Menu as p } from "../../ui/Menu/index.js";
|
|
3
|
+
import { Dropdown as y } from "../../ui/Dropdown/index.js";
|
|
4
4
|
import m from "./VerticalMenuIcon.js";
|
|
5
|
-
import
|
|
6
|
-
const { MenuItem: f, MenuCollapse: k } =
|
|
5
|
+
import a from "../../shared/AuthorityCheck.js";
|
|
6
|
+
const { MenuItem: f, MenuCollapse: k } = p, I = ({
|
|
7
7
|
nav: e,
|
|
8
8
|
indent: r,
|
|
9
9
|
dotIndent: o,
|
|
10
10
|
children: i,
|
|
11
|
-
userAuthority:
|
|
12
|
-
t:
|
|
13
|
-
}) => /* @__PURE__ */ t(
|
|
11
|
+
userAuthority: n,
|
|
12
|
+
t: l
|
|
13
|
+
}) => /* @__PURE__ */ t(
|
|
14
14
|
k,
|
|
15
15
|
{
|
|
16
|
-
label: /* @__PURE__ */ h
|
|
16
|
+
label: /* @__PURE__ */ d(h, { children: [
|
|
17
17
|
/* @__PURE__ */ t(m, { icon: e.icon }),
|
|
18
|
-
/* @__PURE__ */ t("span", { children:
|
|
18
|
+
/* @__PURE__ */ t("span", { children: l(e.translateKey, e.title) })
|
|
19
19
|
] }),
|
|
20
20
|
eventKey: e.key,
|
|
21
21
|
expanded: !1,
|
|
@@ -24,30 +24,39 @@ const { MenuItem: f, MenuCollapse: k } = a, I = ({
|
|
|
24
24
|
children: i
|
|
25
25
|
},
|
|
26
26
|
e.key
|
|
27
|
-
)
|
|
27
|
+
), M = ({
|
|
28
28
|
nav: e,
|
|
29
29
|
direction: r,
|
|
30
30
|
children: o,
|
|
31
31
|
t: i,
|
|
32
|
-
renderAsIcon:
|
|
33
|
-
userAuthority:
|
|
34
|
-
parentKeys:
|
|
32
|
+
renderAsIcon: n,
|
|
33
|
+
userAuthority: l,
|
|
34
|
+
parentKeys: c
|
|
35
35
|
}) => {
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
const s = /* @__PURE__ */ t(
|
|
37
|
+
f,
|
|
38
|
+
{
|
|
39
|
+
isActive: c == null ? void 0 : c.includes(e.key),
|
|
40
|
+
eventKey: e.key,
|
|
41
|
+
className: "mb-2",
|
|
42
|
+
children: /* @__PURE__ */ t(m, { icon: e.icon })
|
|
43
|
+
},
|
|
44
|
+
e.key
|
|
45
|
+
), u = /* @__PURE__ */ t("div", { children: i(e.translateKey, e.title) }, e.key);
|
|
46
|
+
return /* @__PURE__ */ t(a, { userAuthority: l, authority: e.authority, children: /* @__PURE__ */ t(
|
|
47
|
+
y,
|
|
39
48
|
{
|
|
40
49
|
trigger: "hover",
|
|
41
|
-
renderTitle:
|
|
50
|
+
renderTitle: n ? s : u,
|
|
42
51
|
placement: r === "rtl" ? "left-start" : "right-start",
|
|
43
52
|
children: o
|
|
44
53
|
}
|
|
45
54
|
) });
|
|
46
|
-
},
|
|
55
|
+
}, j = ({
|
|
47
56
|
sideCollapsed: e,
|
|
48
57
|
...r
|
|
49
58
|
}) => e ? /* @__PURE__ */ t(M, { ...r }) : /* @__PURE__ */ t(I, { ...r });
|
|
50
59
|
export {
|
|
51
|
-
|
|
60
|
+
j as default
|
|
52
61
|
};
|
|
53
62
|
//# sourceMappingURL=VerticalCollapsedMenuItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticalCollapsedMenuItem.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.tsx"],"sourcesContent":["import Menu from
|
|
1
|
+
{"version":3,"file":"VerticalCollapsedMenuItem.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalCollapsedMenuItem.tsx"],"sourcesContent":["import Menu from \"@/components/ui/Menu\";\nimport Dropdown from \"@/components/ui/Dropdown\";\nimport VerticalMenuIcon from \"./VerticalMenuIcon\";\nimport AuthorityCheck from \"@/components/shared/AuthorityCheck\";\nimport type { CommonProps, TraslationFn } from \"@/@types/common\";\nimport type { Direction } from \"@/@types/theme\";\nimport type { NavigationTree } from \"@/@types/navigation\";\n\ninterface DefaultItemProps extends CommonProps {\n nav: NavigationTree;\n onLinkClick?: (link: { key: string; title: string; path: string }) => void;\n t: TraslationFn;\n indent?: boolean;\n dotIndent?: boolean;\n userAuthority: string[];\n}\n\ninterface CollapsedItemProps extends DefaultItemProps {\n direction: Direction;\n renderAsIcon?: boolean;\n currentKey?: string;\n parentKeys?: string[];\n}\n\ninterface VerticalCollapsedMenuItemProps extends CollapsedItemProps {\n sideCollapsed?: boolean;\n}\n\nconst { MenuItem, MenuCollapse } = Menu;\n\nconst DefaultItem = ({\n nav,\n indent,\n dotIndent,\n children,\n userAuthority,\n t,\n}: DefaultItemProps) => {\n return (\n <MenuCollapse\n key={nav.key}\n label={\n <>\n <VerticalMenuIcon icon={nav.icon} />\n <span>{t(nav.translateKey, nav.title)}</span>\n </>\n }\n eventKey={nav.key}\n expanded={false}\n dotIndent={dotIndent}\n indent={indent}\n >\n {children}\n </MenuCollapse>\n );\n};\n\nconst CollapsedItem = ({\n nav,\n direction,\n children,\n t,\n renderAsIcon,\n userAuthority,\n parentKeys,\n}: CollapsedItemProps) => {\n const menuItem = (\n <MenuItem\n key={nav.key}\n isActive={parentKeys?.includes(nav.key)}\n eventKey={nav.key}\n className=\"mb-2\"\n >\n <VerticalMenuIcon icon={nav.icon} />\n </MenuItem>\n );\n\n const dropdownItem = (\n <div key={nav.key}>{t(nav.translateKey, nav.title)}</div>\n );\n\n return (\n <AuthorityCheck userAuthority={userAuthority} authority={nav.authority}>\n <Dropdown\n trigger=\"hover\"\n renderTitle={renderAsIcon ? menuItem : dropdownItem}\n placement={direction === \"rtl\" ? \"left-start\" : \"right-start\"}\n >\n {children}\n </Dropdown>\n </AuthorityCheck>\n );\n};\n\nconst VerticalCollapsedMenuItem = ({\n sideCollapsed,\n ...rest\n}: VerticalCollapsedMenuItemProps) => {\n return sideCollapsed ? (\n <CollapsedItem {...rest} />\n ) : (\n <DefaultItem {...rest} />\n );\n};\n\nexport default VerticalCollapsedMenuItem;\n"],"names":["MenuItem","MenuCollapse","Menu","DefaultItem","nav","indent","dotIndent","children","userAuthority","t","jsx","jsxs","Fragment","VerticalMenuIcon","CollapsedItem","direction","renderAsIcon","parentKeys","menuItem","dropdownItem","AuthorityCheck","Dropdown","VerticalCollapsedMenuItem","sideCollapsed","rest"],"mappings":";;;;;AA4BA,MAAM,EAAE,UAAAA,GAAU,cAAAC,EAAA,IAAiBC,GAE7BC,IAAc,CAAC;AAAA,EACnB,KAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,GAAAC;AACF,MAEI,gBAAAC;AAAA,EAACT;AAAA,EAAA;AAAA,IAEC,OACE,gBAAAU,EAAAC,GAAA,EACE,UAAA;AAAA,MAAA,gBAAAF,EAACG,GAAA,EAAiB,MAAMT,EAAI,KAAA,CAAM;AAAA,wBACjC,QAAA,EAAM,UAAAK,EAAEL,EAAI,cAAcA,EAAI,KAAK,EAAA,CAAE;AAAA,IAAA,GACxC;AAAA,IAEF,UAAUA,EAAI;AAAA,IACd,UAAU;AAAA,IACV,WAAAE;AAAA,IACA,QAAAD;AAAA,IAEC,UAAAE;AAAA,EAAA;AAAA,EAZIH,EAAI;AAAA,GAiBTU,IAAgB,CAAC;AAAA,EACrB,KAAAV;AAAA,EACA,WAAAW;AAAA,EACA,UAAAR;AAAA,EACA,GAAAE;AAAA,EACA,cAAAO;AAAA,EACA,eAAAR;AAAA,EACA,YAAAS;AACF,MAA0B;AACxB,QAAMC,IACJ,gBAAAR;AAAA,IAACV;AAAA,IAAA;AAAA,MAEC,UAAUiB,KAAA,gBAAAA,EAAY,SAASb,EAAI;AAAA,MACnC,UAAUA,EAAI;AAAA,MACd,WAAU;AAAA,MAEV,UAAA,gBAAAM,EAACG,GAAA,EAAiB,MAAMT,EAAI,KAAA,CAAM;AAAA,IAAA;AAAA,IAL7BA,EAAI;AAAA,EAAA,GASPe,IACJ,gBAAAT,EAAC,OAAA,EAAmB,UAAAD,EAAEL,EAAI,cAAcA,EAAI,KAAK,EAAA,GAAvCA,EAAI,GAAqC;AAGrD,SACE,gBAAAM,EAACU,GAAA,EAAe,eAAAZ,GAA8B,WAAWJ,EAAI,WAC3D,UAAA,gBAAAM;AAAA,IAACW;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,aAAaL,IAAeE,IAAWC;AAAA,MACvC,WAAWJ,MAAc,QAAQ,eAAe;AAAA,MAE/C,UAAAR;AAAA,IAAA;AAAA,EAAA,GAEL;AAEJ,GAEMe,IAA4B,CAAC;AAAA,EACjC,eAAAC;AAAA,EACA,GAAGC;AACL,MACSD,sBACJT,GAAA,EAAe,GAAGU,GAAM,IAEzB,gBAAAd,EAACP,GAAA,EAAa,GAAGqB,EAAA,CAAM;"}
|
|
@@ -1,95 +1,93 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { Menu as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { jsx as i, Fragment as A, jsxs as I } from "react/jsx-runtime";
|
|
2
|
+
import { useState as _, useEffect as x, Fragment as a } from "react";
|
|
3
|
+
import { Menu as K } from "../../ui/Menu/index.js";
|
|
4
|
+
import N from "./VerticalSingleMenuItem.js";
|
|
5
|
+
import L from "./VerticalCollapsedMenuItem.js";
|
|
6
|
+
import { themeConfig as S } from "../../../configs/theme.config.js";
|
|
7
|
+
import { NAV_ITEM_TYPE_ITEM as V, NAV_ITEM_TYPE_COLLAPSE as P, NAV_ITEM_TYPE_TITLE as w } from "../../../constants/navigation.constant.js";
|
|
8
|
+
import F from "../../../utils/hooks/useMenuActive.js";
|
|
9
|
+
import { useTranslation as Y } from "../../../utils/hooks/useTranslation.js";
|
|
10
|
+
const { MenuGroup: j } = K, k = (u, n) => u.reduce((o, t) => {
|
|
11
|
+
if (t.subMenu && t.subMenu.length > 0) {
|
|
12
|
+
const s = k(
|
|
13
|
+
t.subMenu,
|
|
14
|
+
n
|
|
15
|
+
);
|
|
16
|
+
s.length > 0 && o.push({ ...t, subMenu: s });
|
|
17
|
+
} else
|
|
18
|
+
(t.path && n.includes(t.path) || !t.path) && o.push(t);
|
|
19
|
+
return o;
|
|
20
|
+
}, []), Q = (u) => {
|
|
12
21
|
const {
|
|
13
|
-
collapsed:
|
|
14
|
-
routeKey:
|
|
15
|
-
navigationTree:
|
|
22
|
+
collapsed: n,
|
|
23
|
+
routeKey: o,
|
|
24
|
+
navigationTree: t = [],
|
|
16
25
|
onMenuItemClick: s,
|
|
17
|
-
direction:
|
|
18
|
-
translationSetup:
|
|
19
|
-
userAuthority:
|
|
20
|
-
linkRenderer:
|
|
21
|
-
} =
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
direction: M = S.direction,
|
|
27
|
+
translationSetup: T,
|
|
28
|
+
userAuthority: y,
|
|
29
|
+
linkRenderer: b
|
|
30
|
+
} = u, { t: f } = Y(!T), [m, g] = _([]), d = k(
|
|
31
|
+
t,
|
|
32
|
+
y
|
|
33
|
+
), { activedRoute: e } = F(d, o);
|
|
34
|
+
x(() => {
|
|
35
|
+
e != null && e.parentKey && g([e == null ? void 0 : e.parentKey]);
|
|
24
36
|
}, [e == null ? void 0 : e.parentKey]);
|
|
25
37
|
const E = () => {
|
|
26
38
|
s == null || s();
|
|
27
|
-
},
|
|
28
|
-
const
|
|
29
|
-
return /* @__PURE__ */
|
|
30
|
-
r.type ===
|
|
31
|
-
|
|
39
|
+
}, h = (c, l = 0, C) => {
|
|
40
|
+
const p = l + 1;
|
|
41
|
+
return /* @__PURE__ */ i(A, { children: c.map((r) => /* @__PURE__ */ I(a, { children: [
|
|
42
|
+
r.type === V && /* @__PURE__ */ i(
|
|
43
|
+
N,
|
|
32
44
|
{
|
|
33
45
|
currentKey: e == null ? void 0 : e.key,
|
|
34
|
-
parentKeys:
|
|
46
|
+
parentKeys: m,
|
|
35
47
|
nav: r,
|
|
36
|
-
sideCollapsed:
|
|
37
|
-
direction:
|
|
48
|
+
sideCollapsed: n,
|
|
49
|
+
direction: M,
|
|
38
50
|
indent: C,
|
|
39
|
-
renderAsIcon:
|
|
40
|
-
showIcon:
|
|
41
|
-
userAuthority:
|
|
42
|
-
showTitle: r.forceShowTitle ?? (
|
|
43
|
-
t:
|
|
51
|
+
renderAsIcon: l <= 0,
|
|
52
|
+
showIcon: l <= 0,
|
|
53
|
+
userAuthority: y,
|
|
54
|
+
showTitle: r.forceShowTitle ?? (n ? l >= 1 : l <= 1),
|
|
55
|
+
t: f,
|
|
44
56
|
onLinkClick: E,
|
|
45
|
-
linkRenderer:
|
|
57
|
+
linkRenderer: b
|
|
46
58
|
},
|
|
47
59
|
r.key
|
|
48
60
|
),
|
|
49
|
-
r.type ===
|
|
50
|
-
|
|
61
|
+
r.type === P && /* @__PURE__ */ i(
|
|
62
|
+
L,
|
|
51
63
|
{
|
|
52
64
|
currentKey: e == null ? void 0 : e.key,
|
|
53
|
-
parentKeys:
|
|
65
|
+
parentKeys: m,
|
|
54
66
|
nav: r,
|
|
55
|
-
sideCollapsed:
|
|
56
|
-
direction:
|
|
57
|
-
indent:
|
|
58
|
-
dotIndent:
|
|
59
|
-
renderAsIcon:
|
|
60
|
-
userAuthority:
|
|
61
|
-
t:
|
|
67
|
+
sideCollapsed: n,
|
|
68
|
+
direction: M,
|
|
69
|
+
indent: p >= 2,
|
|
70
|
+
dotIndent: p >= 2,
|
|
71
|
+
renderAsIcon: p <= 1,
|
|
72
|
+
userAuthority: y,
|
|
73
|
+
t: f,
|
|
62
74
|
onLinkClick: s,
|
|
63
|
-
children: r.subMenu && r.subMenu.length > 0 &&
|
|
75
|
+
children: r.subMenu && r.subMenu.length > 0 && h(r.subMenu, p, !0)
|
|
64
76
|
},
|
|
65
77
|
r.key
|
|
66
78
|
),
|
|
67
|
-
r.type ===
|
|
68
|
-
L,
|
|
69
|
-
{
|
|
70
|
-
userAuthority: i,
|
|
71
|
-
authority: r.authority,
|
|
72
|
-
children: /* @__PURE__ */ n(
|
|
73
|
-
Y,
|
|
74
|
-
{
|
|
75
|
-
label: p(r.translateKey) || r.title,
|
|
76
|
-
children: r.subMenu && r.subMenu.length > 0 && m(r.subMenu, t, !1)
|
|
77
|
-
},
|
|
78
|
-
r.key
|
|
79
|
-
)
|
|
80
|
-
}
|
|
81
|
-
)
|
|
79
|
+
r.type === w && /* @__PURE__ */ i(j, { label: f(r.translateKey) || r.title, children: r.subMenu && r.subMenu.length > 0 && h(r.subMenu, l, !1) }, r.key)
|
|
82
80
|
] }, r.key)) });
|
|
83
81
|
};
|
|
84
|
-
return /* @__PURE__ */
|
|
85
|
-
|
|
82
|
+
return /* @__PURE__ */ i(
|
|
83
|
+
K,
|
|
86
84
|
{
|
|
87
85
|
className: "px-4 pb-4",
|
|
88
|
-
sideCollapsed:
|
|
86
|
+
sideCollapsed: n,
|
|
89
87
|
defaultActiveKeys: e != null && e.key ? [e.key] : [],
|
|
90
|
-
defaultExpandedKeys:
|
|
88
|
+
defaultExpandedKeys: m,
|
|
91
89
|
defaultCollapseActiveKeys: e != null && e.parentKey ? [e.parentKey] : [],
|
|
92
|
-
children:
|
|
90
|
+
children: h(d, 0)
|
|
93
91
|
}
|
|
94
92
|
);
|
|
95
93
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticalMenuContent.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.tsx"],"sourcesContent":["import { useState, useEffect, Fragment } from \"react\";\nimport Menu from \"@/components/ui/Menu\";\nimport VerticalSingleMenuItem from \"./VerticalSingleMenuItem\";\nimport VerticalCollapsedMenuItem from \"./VerticalCollapsedMenuItem\";\nimport
|
|
1
|
+
{"version":3,"file":"VerticalMenuContent.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalMenuContent.tsx"],"sourcesContent":["import { useState, useEffect, Fragment } from \"react\";\nimport Menu from \"@/components/ui/Menu\";\nimport VerticalSingleMenuItem from \"./VerticalSingleMenuItem\";\nimport VerticalCollapsedMenuItem from \"./VerticalCollapsedMenuItem\";\nimport { themeConfig } from \"@/configs/theme.config\";\nimport {\n NAV_ITEM_TYPE_TITLE,\n NAV_ITEM_TYPE_COLLAPSE,\n NAV_ITEM_TYPE_ITEM,\n} from \"@/constants/navigation.constant\";\nimport useMenuActive from \"@/utils/hooks/useMenuActive\";\nimport useTranslation from \"@/utils/hooks/useTranslation\";\nimport { Direction } from \"@/@types/theme\";\nimport type { NavigationTree } from \"@/@types/navigation\";\nimport type { TraslationFn } from \"@/@types/common\";\nimport { LinkRenderer } from \"@/components/layouts/Layouts\";\n\nexport interface VerticalMenuContentProps {\n collapsed?: boolean;\n routeKey: string;\n navigationTree?: NavigationTree[];\n onMenuItemClick?: () => void;\n direction?: Direction;\n translationSetup?: boolean;\n userAuthority: string[];\n linkRenderer?: LinkRenderer;\n}\n\nconst { MenuGroup } = Menu;\n\nconst filterNavigationByAuthority = (\n navTree: NavigationTree[],\n userAuthority: string[]\n): NavigationTree[] => {\n return navTree.reduce((acc: NavigationTree[], nav) => {\n if (nav.subMenu && nav.subMenu.length > 0) {\n const filteredSubMenu = filterNavigationByAuthority(\n nav.subMenu,\n userAuthority\n );\n if (filteredSubMenu.length > 0) {\n acc.push({ ...nav, subMenu: filteredSubMenu });\n }\n } else {\n if ((nav.path && userAuthority.includes(nav.path)) || !nav.path) {\n acc.push(nav);\n }\n }\n return acc;\n }, []);\n};\n\nconst VerticalMenuContent = (props: VerticalMenuContentProps) => {\n const {\n collapsed,\n routeKey,\n navigationTree = [],\n onMenuItemClick,\n direction = themeConfig.direction,\n translationSetup,\n userAuthority,\n linkRenderer,\n } = props;\n\n const { t } = useTranslation(!translationSetup);\n const [defaulExpandKey, setDefaulExpandKey] = useState<string[]>([]);\n const filteredNavigationTree = filterNavigationByAuthority(\n navigationTree,\n userAuthority\n );\n\n const { activedRoute } = useMenuActive(filteredNavigationTree, routeKey);\n\n useEffect(() => {\n if (activedRoute?.parentKey) {\n setDefaulExpandKey([activedRoute?.parentKey]);\n }\n }, [activedRoute?.parentKey]);\n\n const handleLinkClick = () => {\n onMenuItemClick?.();\n };\n\n const renderNavigation = (\n navTree: NavigationTree[],\n cascade: number = 0,\n indent?: boolean\n ) => {\n const nextCascade = cascade + 1;\n\n return (\n <>\n {navTree.map((nav) => (\n <Fragment key={nav.key}>\n {nav.type === NAV_ITEM_TYPE_ITEM && (\n <VerticalSingleMenuItem\n key={nav.key}\n currentKey={activedRoute?.key}\n parentKeys={defaulExpandKey}\n nav={nav}\n sideCollapsed={collapsed}\n direction={direction}\n indent={indent}\n renderAsIcon={cascade <= 0}\n showIcon={cascade <= 0}\n userAuthority={userAuthority}\n showTitle={\n nav.forceShowTitle ??\n (collapsed ? cascade >= 1 : cascade <= 1)\n }\n t={t as TraslationFn}\n onLinkClick={handleLinkClick}\n linkRenderer={linkRenderer}\n />\n )}\n {nav.type === NAV_ITEM_TYPE_COLLAPSE && (\n <VerticalCollapsedMenuItem\n key={nav.key}\n currentKey={activedRoute?.key}\n parentKeys={defaulExpandKey}\n nav={nav}\n sideCollapsed={collapsed}\n direction={direction}\n indent={nextCascade >= 2}\n dotIndent={nextCascade >= 2}\n renderAsIcon={nextCascade <= 1}\n userAuthority={userAuthority}\n t={t as TraslationFn}\n onLinkClick={onMenuItemClick}\n >\n {nav.subMenu &&\n nav.subMenu.length > 0 &&\n renderNavigation(nav.subMenu, nextCascade, true)}\n </VerticalCollapsedMenuItem>\n )}\n {nav.type === NAV_ITEM_TYPE_TITLE && (\n <MenuGroup key={nav.key} label={t(nav.translateKey) || nav.title}>\n {nav.subMenu &&\n nav.subMenu.length > 0 &&\n renderNavigation(nav.subMenu, cascade, false)}\n </MenuGroup>\n )}\n </Fragment>\n ))}\n </>\n );\n };\n\n return (\n <Menu\n className=\"px-4 pb-4\"\n sideCollapsed={collapsed}\n defaultActiveKeys={activedRoute?.key ? [activedRoute.key] : []}\n defaultExpandedKeys={defaulExpandKey}\n defaultCollapseActiveKeys={\n activedRoute?.parentKey ? [activedRoute.parentKey] : []\n }\n >\n {renderNavigation(filteredNavigationTree, 0)}\n </Menu>\n );\n};\n\nexport default VerticalMenuContent;\n"],"names":["MenuGroup","Menu","filterNavigationByAuthority","navTree","userAuthority","acc","nav","filteredSubMenu","VerticalMenuContent","props","collapsed","routeKey","navigationTree","onMenuItemClick","direction","themeConfig","translationSetup","linkRenderer","t","useTranslation","defaulExpandKey","setDefaulExpandKey","useState","filteredNavigationTree","activedRoute","useMenuActive","useEffect","handleLinkClick","renderNavigation","cascade","indent","nextCascade","jsxs","Fragment","NAV_ITEM_TYPE_ITEM","jsx","VerticalSingleMenuItem","NAV_ITEM_TYPE_COLLAPSE","VerticalCollapsedMenuItem","NAV_ITEM_TYPE_TITLE"],"mappings":"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"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as n, jsxs as m, Fragment as f } from "react/jsx-runtime";
|
|
2
2
|
import "../../ui/Tooltip/index.js";
|
|
3
3
|
import { Menu as p } from "../../ui/Menu/index.js";
|
|
4
|
-
import y from "
|
|
5
|
-
import k from "
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
const a = (n) => {
|
|
4
|
+
import y from "./VerticalMenuIcon.js";
|
|
5
|
+
import { Link as k } from "react-router-dom";
|
|
6
|
+
import { Dropdown as b } from "../../ui/Dropdown/index.js";
|
|
7
|
+
import I from "../../ui/Tooltip/Tooltip.js";
|
|
8
|
+
const { MenuItem: w } = p;
|
|
9
|
+
const h = (r) => {
|
|
11
10
|
const {
|
|
12
11
|
nav: t,
|
|
13
12
|
onLinkClick: e,
|
|
@@ -15,13 +14,13 @@ const a = (n) => {
|
|
|
15
14
|
indent: l,
|
|
16
15
|
showIcon: o = !0,
|
|
17
16
|
userAuthority: s,
|
|
18
|
-
t:
|
|
17
|
+
t: d,
|
|
19
18
|
linkRenderer: c
|
|
20
|
-
} =
|
|
21
|
-
o && /* @__PURE__ */
|
|
22
|
-
i && /* @__PURE__ */
|
|
23
|
-
] }),
|
|
24
|
-
|
|
19
|
+
} = r, a = /* @__PURE__ */ m(f, { children: [
|
|
20
|
+
o && /* @__PURE__ */ n(y, { icon: t.icon }),
|
|
21
|
+
i && /* @__PURE__ */ n("span", { children: d(t.translateKey, t.title) })
|
|
22
|
+
] }), u = () => c ? c(t, a) : /* @__PURE__ */ n(
|
|
23
|
+
k,
|
|
25
24
|
{
|
|
26
25
|
to: t.path,
|
|
27
26
|
className: "flex h-full w-full items-center gap-2",
|
|
@@ -31,19 +30,19 @@ const a = (n) => {
|
|
|
31
30
|
title: t.title,
|
|
32
31
|
path: t.path
|
|
33
32
|
}),
|
|
34
|
-
children:
|
|
33
|
+
children: a
|
|
35
34
|
}
|
|
36
35
|
);
|
|
37
|
-
return /* @__PURE__ */
|
|
38
|
-
},
|
|
39
|
-
const { sideCollapsed: t, nav: e, t: i, userAuthority: l, onLinkClick: o, linkRenderer: s } =
|
|
40
|
-
return t ? /* @__PURE__ */
|
|
41
|
-
|
|
36
|
+
return /* @__PURE__ */ n(w, { eventKey: t.key, dotIndent: l, children: u() }, t.key);
|
|
37
|
+
}, C = (r) => {
|
|
38
|
+
const { sideCollapsed: t, nav: e, t: i, userAuthority: l, onLinkClick: o, linkRenderer: s } = r;
|
|
39
|
+
return t ? /* @__PURE__ */ n(
|
|
40
|
+
I,
|
|
42
41
|
{
|
|
43
42
|
title: i(e.translateKey, e.title),
|
|
44
|
-
placement:
|
|
45
|
-
children: /* @__PURE__ */
|
|
46
|
-
|
|
43
|
+
placement: r.direction === "rtl" ? "left" : "right",
|
|
44
|
+
children: /* @__PURE__ */ n(
|
|
45
|
+
h,
|
|
47
46
|
{
|
|
48
47
|
nav: e,
|
|
49
48
|
onLinkClick: o,
|
|
@@ -52,12 +51,12 @@ const a = (n) => {
|
|
|
52
51
|
linkRenderer: s,
|
|
53
52
|
showIcon: !0,
|
|
54
53
|
showTitle: !1,
|
|
55
|
-
indent:
|
|
54
|
+
indent: r.indent
|
|
56
55
|
}
|
|
57
56
|
)
|
|
58
57
|
}
|
|
59
|
-
) : /* @__PURE__ */
|
|
60
|
-
|
|
58
|
+
) : /* @__PURE__ */ n(
|
|
59
|
+
h,
|
|
61
60
|
{
|
|
62
61
|
nav: e,
|
|
63
62
|
onLinkClick: o,
|
|
@@ -66,11 +65,11 @@ const a = (n) => {
|
|
|
66
65
|
linkRenderer: s,
|
|
67
66
|
showIcon: !0,
|
|
68
67
|
showTitle: !0,
|
|
69
|
-
indent:
|
|
68
|
+
indent: r.indent
|
|
70
69
|
}
|
|
71
70
|
);
|
|
72
71
|
};
|
|
73
72
|
export {
|
|
74
|
-
|
|
73
|
+
C as default
|
|
75
74
|
};
|
|
76
75
|
//# sourceMappingURL=VerticalSingleMenuItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticalSingleMenuItem.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.tsx"],"sourcesContent":["import Tooltip from \"@/components/ui/Tooltip\";\nimport Menu from \"@/components/ui/Menu\";\nimport AuthorityCheck from \"@/components/shared/AuthorityCheck\";\nimport VerticalMenuIcon from \"./VerticalMenuIcon\";\nimport { Link } from \"react-router-dom\";\nimport Dropdown from \"@/components/ui/Dropdown\";\nimport type { CommonProps } from \"@/@types/common\";\nimport type { Direction } from \"@/@types/theme\";\nimport type { NavigationTree } from \"@/@types/navigation\";\n\nconst { MenuItem } = Menu;\n\ntype LinkRenderer = (\n nav: NavigationTree,\n children: React.ReactNode\n) => React.ReactNode;\n\ninterface CollapsedItemProps extends CommonProps {\n nav: NavigationTree;\n direction?: Direction;\n linkRenderer?: LinkRenderer;\n onLinkClick?: (link: { key: string; title: string; path: string }) => void;\n t: (\n key: string,\n fallback?: string | Record<string, string | number>\n ) => string;\n renderAsIcon?: boolean;\n userAuthority: string[];\n currentKey?: string;\n parentKeys?: string[];\n}\n\ninterface DefaultItemProps {\n nav: NavigationTree;\n onLinkClick?: (link: { key: string; title: string; path: string }) => void;\n sideCollapsed?: boolean;\n t: (\n key: string,\n fallback?: string | Record<string, string | number>\n ) => string;\n indent?: boolean;\n userAuthority: string[];\n showIcon?: boolean;\n showTitle?: boolean;\n linkRenderer?: LinkRenderer;\n}\n\ninterface VerticalMenuItemProps extends CollapsedItemProps, DefaultItemProps {}\n\nconst CollapsedItem = ({\n nav,\n children,\n direction,\n renderAsIcon,\n onLinkClick,\n userAuthority,\n t,\n currentKey,\n linkRenderer,\n}: CollapsedItemProps) => {\n const linkContent = <span>{t(nav.translateKey, nav.title)}</span>;\n\n const renderLink = () => {\n if (linkRenderer) {\n return linkRenderer(nav, linkContent);\n }\n\n return (\n <Link\n id={nav.path}\n className=\"flex h-full w-full items-center outline-none\"\n to={nav.path}\n target={nav.isExternalLink ? \"_blank\" : \"\"}\n onClick={() =>\n onLinkClick?.({\n key: nav.key,\n title: nav.title,\n path: nav.path,\n })\n }\n >\n {linkContent}\n </Link>\n );\n };\n\n return (\n <
|
|
1
|
+
{"version":3,"file":"VerticalSingleMenuItem.js","sources":["../../../../../lib/@ecme/components/template/VerticalMenuContent/VerticalSingleMenuItem.tsx"],"sourcesContent":["import Tooltip from \"@/components/ui/Tooltip\";\nimport Menu from \"@/components/ui/Menu\";\nimport AuthorityCheck from \"@/components/shared/AuthorityCheck\";\nimport VerticalMenuIcon from \"./VerticalMenuIcon\";\nimport { Link } from \"react-router-dom\";\nimport Dropdown from \"@/components/ui/Dropdown\";\nimport type { CommonProps } from \"@/@types/common\";\nimport type { Direction } from \"@/@types/theme\";\nimport type { NavigationTree } from \"@/@types/navigation\";\n\nconst { MenuItem } = Menu;\n\ntype LinkRenderer = (\n nav: NavigationTree,\n children: React.ReactNode\n) => React.ReactNode;\n\ninterface CollapsedItemProps extends CommonProps {\n nav: NavigationTree;\n direction?: Direction;\n linkRenderer?: LinkRenderer;\n onLinkClick?: (link: { key: string; title: string; path: string }) => void;\n t: (\n key: string,\n fallback?: string | Record<string, string | number>\n ) => string;\n renderAsIcon?: boolean;\n userAuthority: string[];\n currentKey?: string;\n parentKeys?: string[];\n}\n\ninterface DefaultItemProps {\n nav: NavigationTree;\n onLinkClick?: (link: { key: string; title: string; path: string }) => void;\n sideCollapsed?: boolean;\n t: (\n key: string,\n fallback?: string | Record<string, string | number>\n ) => string;\n indent?: boolean;\n userAuthority: string[];\n showIcon?: boolean;\n showTitle?: boolean;\n linkRenderer?: LinkRenderer;\n}\n\ninterface VerticalMenuItemProps extends CollapsedItemProps, DefaultItemProps {}\n\nconst CollapsedItem = ({\n nav,\n children,\n direction,\n renderAsIcon,\n onLinkClick,\n userAuthority,\n t,\n currentKey,\n linkRenderer,\n}: CollapsedItemProps) => {\n const linkContent = <span>{t(nav.translateKey, nav.title)}</span>;\n\n const renderLink = () => {\n if (linkRenderer) {\n return linkRenderer(nav, linkContent);\n }\n\n return (\n <Link\n id={nav.path}\n className=\"flex h-full w-full items-center outline-none\"\n to={nav.path}\n target={nav.isExternalLink ? \"_blank\" : \"\"}\n onClick={() =>\n onLinkClick?.({\n key: nav.key,\n title: nav.title,\n path: nav.path,\n })\n }\n >\n {linkContent}\n </Link>\n );\n };\n\n return (\n <Dropdown.Item active={currentKey === nav.key}>\n {nav.path ? renderLink() : <span>{t(nav.translateKey, nav.title)}</span>}\n </Dropdown.Item>\n );\n};\n\nconst DefaultItem = (props: DefaultItemProps) => {\n const {\n nav,\n onLinkClick,\n showTitle,\n indent,\n showIcon = true,\n userAuthority,\n t,\n linkRenderer,\n } = props;\n\n const linkContent = (\n <>\n {showIcon && <VerticalMenuIcon icon={nav.icon} />}\n {showTitle && <span>{t(nav.translateKey, nav.title)}</span>}\n </>\n );\n\n const renderLink = () => {\n if (linkRenderer) {\n return linkRenderer(nav, linkContent);\n }\n\n return (\n <Link\n to={nav.path}\n className=\"flex h-full w-full items-center gap-2\"\n target={nav.isExternalLink ? \"_blank\" : \"\"}\n onClick={() =>\n onLinkClick?.({\n key: nav.key,\n title: nav.title,\n path: nav.path,\n })\n }\n >\n {linkContent}\n </Link>\n );\n };\n\n return (\n <MenuItem key={nav.key} eventKey={nav.key} dotIndent={indent}>\n {renderLink()}\n </MenuItem>\n );\n};\nconst VerticalSingleMenuItem = (props: VerticalMenuItemProps) => {\n const { sideCollapsed, nav, t, userAuthority, onLinkClick, linkRenderer } =\n props;\n\n if (sideCollapsed) {\n return (\n <Tooltip\n title={t(nav.translateKey, nav.title)}\n placement={props.direction === \"rtl\" ? \"left\" : \"right\"}\n >\n <DefaultItem\n nav={nav}\n onLinkClick={onLinkClick}\n t={t}\n userAuthority={userAuthority}\n linkRenderer={linkRenderer}\n showIcon={true}\n showTitle={false}\n indent={props.indent}\n />\n </Tooltip>\n );\n }\n\n return (\n <DefaultItem\n nav={nav}\n onLinkClick={onLinkClick}\n t={t}\n userAuthority={userAuthority}\n linkRenderer={linkRenderer}\n showIcon={true}\n showTitle={true}\n indent={props.indent}\n />\n );\n};\nexport default VerticalSingleMenuItem;\n"],"names":["MenuItem","Menu","DefaultItem","props","nav","onLinkClick","showTitle","indent","showIcon","userAuthority","t","linkRenderer","linkContent","jsxs","Fragment","jsx","VerticalMenuIcon","renderLink","Link","VerticalSingleMenuItem","sideCollapsed","Tooltip"],"mappings":";;;;;;;AAUA,MAAM,EAAE,UAAAA,MAAaC;AAmFrB,MAAMC,IAAc,CAACC,MAA4B;AAC/C,QAAM;AAAA,IACJ,KAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,QAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,eAAAC;AAAA,IACA,GAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IACER,GAEES,IACJ,gBAAAC,EAAAC,GAAA,EACG,UAAA;AAAA,IAAAN,KAAY,gBAAAO,EAACC,GAAA,EAAiB,MAAMZ,EAAI,MAAM;AAAA,IAC9CE,uBAAc,QAAA,EAAM,UAAAI,EAAEN,EAAI,cAAcA,EAAI,KAAK,EAAA,CAAE;AAAA,EAAA,GACtD,GAGIa,IAAa,MACbN,IACKA,EAAaP,GAAKQ,CAAW,IAIpC,gBAAAG;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,IAAId,EAAI;AAAA,MACR,WAAU;AAAA,MACV,QAAQA,EAAI,iBAAiB,WAAW;AAAA,MACxC,SAAS,MACPC,KAAA,gBAAAA,EAAc;AAAA,QACZ,KAAKD,EAAI;AAAA,QACT,OAAOA,EAAI;AAAA,QACX,MAAMA,EAAI;AAAA,MAAA;AAAA,MAIb,UAAAQ;AAAA,IAAA;AAAA,EAAA;AAKP,SACE,gBAAAG,EAACf,GAAA,EAAuB,UAAUI,EAAI,KAAK,WAAWG,GACnD,UAAAU,EAAA,EAAW,GADCb,EAAI,GAEnB;AAEJ,GACMe,IAAyB,CAAChB,MAAiC;AAC/D,QAAM,EAAE,eAAAiB,GAAe,KAAAhB,GAAK,GAAAM,GAAG,eAAAD,GAAe,aAAAJ,GAAa,cAAAM,MACzDR;AAEF,SAAIiB,IAEA,gBAAAL;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,OAAOX,EAAEN,EAAI,cAAcA,EAAI,KAAK;AAAA,MACpC,WAAWD,EAAM,cAAc,QAAQ,SAAS;AAAA,MAEhD,UAAA,gBAAAY;AAAA,QAACb;AAAA,QAAA;AAAA,UACC,KAAAE;AAAA,UACA,aAAAC;AAAA,UACA,GAAAK;AAAA,UACA,eAAAD;AAAA,UACA,cAAAE;AAAA,UACA,UAAU;AAAA,UACV,WAAW;AAAA,UACX,QAAQR,EAAM;AAAA,QAAA;AAAA,MAAA;AAAA,IAChB;AAAA,EAAA,IAMJ,gBAAAY;AAAA,IAACb;AAAA,IAAA;AAAA,MACC,KAAAE;AAAA,MACA,aAAAC;AAAA,MACA,GAAAK;AAAA,MACA,eAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAU;AAAA,MACV,WAAW;AAAA,MACX,QAAQR,EAAM;AAAA,IAAA;AAAA,EAAA;AAGpB;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import n from "../utils/cookiesStorage.js";
|
|
2
|
-
import
|
|
2
|
+
import t from "../configs/app.config.js";
|
|
3
3
|
import { TOKEN_NAME_IN_STORAGE as r } from "../constants/api.constant.js";
|
|
4
|
-
import { create as
|
|
5
|
-
import { persist as
|
|
6
|
-
const
|
|
4
|
+
import { create as i } from "zustand";
|
|
5
|
+
import { persist as a, createJSONStorage as c } from "zustand/middleware";
|
|
6
|
+
const g = () => t.accessTokenPersistStrategy === "localStorage" ? localStorage : t.accessTokenPersistStrategy === "sessionStorage" ? sessionStorage : n, u = {
|
|
7
7
|
session: {
|
|
8
8
|
signedIn: !1
|
|
9
9
|
},
|
|
@@ -11,38 +11,40 @@ const c = () => o.accessTokenPersistStrategy === "localStorage" ? localStorage :
|
|
|
11
11
|
avatar: "",
|
|
12
12
|
userName: "",
|
|
13
13
|
email: "",
|
|
14
|
-
authority: []
|
|
14
|
+
authority: [],
|
|
15
|
+
funcionalidades: []
|
|
15
16
|
}
|
|
16
|
-
},
|
|
17
|
-
|
|
18
|
-
(
|
|
19
|
-
...
|
|
20
|
-
setSessionSignedIn: (
|
|
17
|
+
}, p = i()(
|
|
18
|
+
a(
|
|
19
|
+
(s) => ({
|
|
20
|
+
...u,
|
|
21
|
+
setSessionSignedIn: (o) => s((e) => ({
|
|
21
22
|
session: {
|
|
22
|
-
...
|
|
23
|
-
signedIn:
|
|
23
|
+
...e.session,
|
|
24
|
+
signedIn: o
|
|
24
25
|
}
|
|
25
26
|
})),
|
|
26
|
-
setUser: (
|
|
27
|
+
setUser: (o) => s((e) => ({
|
|
27
28
|
user: {
|
|
28
|
-
...
|
|
29
|
-
...
|
|
29
|
+
...e.user,
|
|
30
|
+
...o,
|
|
31
|
+
funcionalidades: o.funcionalidades || e.user.funcionalidades
|
|
30
32
|
}
|
|
31
33
|
}))
|
|
32
34
|
}),
|
|
33
|
-
{ name: "sessionUser", storage:
|
|
35
|
+
{ name: "sessionUser", storage: c(() => localStorage) }
|
|
34
36
|
)
|
|
35
|
-
),
|
|
36
|
-
const
|
|
37
|
+
), k = () => {
|
|
38
|
+
const s = g();
|
|
37
39
|
return {
|
|
38
|
-
setToken: (
|
|
39
|
-
|
|
40
|
+
setToken: (e) => {
|
|
41
|
+
s.setItem(r, e);
|
|
40
42
|
},
|
|
41
|
-
token:
|
|
43
|
+
token: s.getItem(r)
|
|
42
44
|
};
|
|
43
45
|
};
|
|
44
46
|
export {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
p as useSessionUser,
|
|
48
|
+
k as useToken
|
|
47
49
|
};
|
|
48
50
|
//# sourceMappingURL=authStore.js.map
|