@orbe-agro/client-core 5.2.0 → 5.2.2

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.
Files changed (58) hide show
  1. package/dist/@ecme/assets/styles/app.css +1 -1
  2. package/dist/@ecme/assets/styles/tailwind/index.css +1 -1
  3. package/dist/@ecme/auth/AuthContext.js +10 -8
  4. package/dist/@ecme/auth/AuthContext.js.map +1 -1
  5. package/dist/@ecme/auth/AuthProvider.js +81 -62
  6. package/dist/@ecme/auth/AuthProvider.js.map +1 -1
  7. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js +32 -21
  8. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
  9. package/dist/@ecme/components/layouts/PostLoginLayout/components/Blank.js +3 -17
  10. package/dist/@ecme/components/layouts/PostLoginLayout/components/Blank.js.map +1 -1
  11. package/dist/@ecme/components/route/ProtectedRoute.js +6 -12
  12. package/dist/@ecme/components/route/ProtectedRoute.js.map +1 -1
  13. package/dist/@ecme/components/route/PublicRoute.js +7 -7
  14. package/dist/@ecme/components/route/PublicRoute.js.map +1 -1
  15. package/dist/@ecme/configs/app.config.js +4 -3
  16. package/dist/@ecme/configs/app.config.js.map +1 -1
  17. package/dist/@ecme/configs/routes.config/authRoute.js +3 -2
  18. package/dist/@ecme/configs/routes.config/authRoute.js.map +1 -1
  19. package/dist/@ecme/locales/lang/ptBR/pages.js +1 -1
  20. package/dist/@ecme/locales/lang/ptBR/pages.js.map +1 -1
  21. package/dist/@ecme/views/auth/ResetPassword/ResetPassword.js +54 -40
  22. package/dist/@ecme/views/auth/ResetPassword/ResetPassword.js.map +1 -1
  23. package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js +75 -82
  24. package/dist/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.js.map +1 -1
  25. package/dist/@ecme/views/auth/SignIn/components/SignInForm.js.map +1 -1
  26. package/dist/@types/@ecme/@types/auth.d.ts +3 -0
  27. package/dist/@types/@ecme/@types/auth.d.ts.map +1 -1
  28. package/dist/@types/@ecme/auth/AuthContext.d.ts +2 -1
  29. package/dist/@types/@ecme/auth/AuthContext.d.ts.map +1 -1
  30. package/dist/@types/@ecme/auth/AuthProvider.d.ts +2 -2
  31. package/dist/@types/@ecme/auth/AuthProvider.d.ts.map +1 -1
  32. package/dist/@types/@ecme/auth/useAuth.d.ts +1 -0
  33. package/dist/@types/@ecme/auth/useAuth.d.ts.map +1 -1
  34. package/dist/@types/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.d.ts.map +1 -1
  35. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/Blank.d.ts +1 -1
  36. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/Blank.d.ts.map +1 -1
  37. package/dist/@types/@ecme/components/route/ProtectedRoute.d.ts.map +1 -1
  38. package/dist/@types/@ecme/components/route/PublicRoute.d.ts.map +1 -1
  39. package/dist/@types/@ecme/configs/app.config.d.ts +1 -0
  40. package/dist/@types/@ecme/configs/app.config.d.ts.map +1 -1
  41. package/dist/@types/@ecme/configs/routes.config/authRoute.d.ts +1 -1
  42. package/dist/@types/@ecme/configs/routes.config/authRoute.d.ts.map +1 -1
  43. package/dist/@types/@ecme/views/auth/ResetPassword/ResetPassword.d.ts +3 -2
  44. package/dist/@types/@ecme/views/auth/ResetPassword/ResetPassword.d.ts.map +1 -1
  45. package/dist/@types/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.d.ts +4 -2
  46. package/dist/@types/@ecme/views/auth/ResetPassword/components/ResetPasswordForm.d.ts.map +1 -1
  47. package/dist/@types/@ecme/views/auth/SignIn/components/SignInForm.d.ts +2 -2
  48. package/dist/@types/@ecme/views/auth/SignIn/components/SignInForm.d.ts.map +1 -1
  49. package/dist/@types/base/@types/models/auth.d.ts +2 -2
  50. package/dist/@types/base/@types/models/auth.d.ts.map +1 -1
  51. package/dist/@types/base/components/routes/RoutesBase.d.ts +1 -1
  52. package/dist/@types/base/components/routes/RoutesBase.d.ts.map +1 -1
  53. package/dist/base/assets/styles/init.css +1 -1
  54. package/dist/base/components/routes/RoutesBase.js +25 -25
  55. package/dist/base/components/routes/RoutesBase.js.map +1 -1
  56. package/dist/base/configs/endpoints.config/adm/config/auth.js +2 -2
  57. package/dist/base/configs/endpoints.config/adm/config/auth.js.map +1 -1
  58. package/package.json +1 -1
@@ -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 = () => {\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 if (resp) {\n handleSignIn({ accessToken: resp.jwtToken })\n // Armazenar ID e nome do usuário no estado\n setUser({\n userId: resp.id.toString(),\n userName: resp.nome\n })\n redirect()\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 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 setUser({\n userId: resp.id.toString(),\n userName: resp.nome\n })\n redirect()\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,\n })\n }\n\n return (\n <AuthContext.Provider\n value={{\n authenticated,\n user,\n signIn,\n signUp,\n signOut,\n oAuthSignIn,\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","search","redirectUrl","REDIRECT_URL_KEY","_a","appConfig","handleSignIn","tokens","handleSignOut","signIn","values","resp","apiSignIn","errors","_b","signUp","apiSignUp","signOut","apiSignOut","oAuthSignIn","callback","jsxs","AuthContext"],"mappings":"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"}
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":"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"}
@@ -1,29 +1,40 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { lazy as o, Suspense as p } from "react";
3
- import { LAYOUT_BLANK as A, LAYOUT_CONTENT_OVERLAY as a, LAYOUT_FRAMELESS_SIDE as l, LAYOUT_TOP_BAR_CLASSIC as s, LAYOUT_STACKED_SIDE as _, LAYOUT_COLLAPSIBLE_SIDE as O } from "../../../constants/theme.constant.js";
4
- import n from "../../shared/Loading.js";
5
- const r = {
6
- [O]: o(() => import("./components/CollapsibleSide.js")),
7
- [_]: o(() => import("./components/StackedSide.js")),
8
- [s]: o(() => import("./components/TopBarClassic.js")),
9
- [l]: o(() => import("./components/FrameLessSide.js")),
10
- [a]: o(() => import("./components/ContentOverlay.js")),
11
- [A]: o(() => import("./components/Blank.js"))
12
- }, E = ({
13
- layoutType: L,
14
- children: i,
15
- linkRenderer: m
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { lazy as o, useMemo as L, Suspense as u } from "react";
3
+ import { LAYOUT_BLANK as f, LAYOUT_CONTENT_OVERLAY as A, LAYOUT_FRAMELESS_SIDE as _, LAYOUT_TOP_BAR_CLASSIC as O, LAYOUT_STACKED_SIDE as S, LAYOUT_COLLAPSIBLE_SIDE as E } from "../../../constants/theme.constant.js";
4
+ import T from "../../shared/Loading.js";
5
+ import { useLocation as d } from "react-router-dom";
6
+ import "../../../configs/index.js";
7
+ import { protectedRoutes as h, publicRoutes as Y } from "../../../configs/routes.config/routes.config.js";
8
+ const m = {
9
+ [E]: o(() => import("./components/CollapsibleSide.js")),
10
+ [S]: o(() => import("./components/StackedSide.js")),
11
+ [O]: o(() => import("./components/TopBarClassic.js")),
12
+ [_]: o(() => import("./components/FrameLessSide.js")),
13
+ [A]: o(() => import("./components/ContentOverlay.js")),
14
+ [f]: o(() => import("./components/Blank.js"))
15
+ }, y = (t, a) => {
16
+ for (const r of a)
17
+ if (r.path === t)
18
+ return r;
19
+ }, N = ({
20
+ layoutType: t,
21
+ children: a,
22
+ linkRenderer: r
16
23
  }) => {
17
- const e = r[L] ?? r[Object.keys(r)[0]];
18
- return /* @__PURE__ */ t(
19
- p,
24
+ const s = d(), p = L(() => {
25
+ var n;
26
+ const c = [...h, ...Y], i = y(s.pathname, c), l = ((n = i == null ? void 0 : i.meta) == null ? void 0 : n.layout) ?? t;
27
+ return m[l] ?? m[Object.keys(m)[0]];
28
+ }, [s.pathname, t]);
29
+ return /* @__PURE__ */ e(
30
+ u,
20
31
  {
21
- fallback: /* @__PURE__ */ t("div", { className: "flex flex-auto flex-col h-[100vh]", children: /* @__PURE__ */ t(n, { loading: !0 }) }),
22
- children: /* @__PURE__ */ t(e, { linkRenderer: m, children: i })
32
+ fallback: /* @__PURE__ */ e("div", { className: "flex flex-auto flex-col h-[100vh]", children: /* @__PURE__ */ e(T, { loading: !0 }) }),
33
+ children: /* @__PURE__ */ e(p, { linkRenderer: r, children: a })
23
34
  }
24
35
  );
25
36
  };
26
37
  export {
27
- E as default
38
+ N as default
28
39
  };
29
40
  //# sourceMappingURL=PostLoginLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostLoginLayout.js","sources":["../../../../../lib/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.tsx"],"sourcesContent":["import { lazy, Suspense } from \"react\";\nimport {\n LAYOUT_COLLAPSIBLE_SIDE,\n LAYOUT_STACKED_SIDE,\n LAYOUT_TOP_BAR_CLASSIC,\n LAYOUT_FRAMELESS_SIDE,\n LAYOUT_CONTENT_OVERLAY,\n LAYOUT_BLANK,\n} from \"@/constants/theme.constant\";\nimport Loading from \"@/components/shared/Loading\";\nimport type { CommonProps } from \"@/@types/common\";\nimport type { LazyExoticComponent, JSX } from \"react\";\nimport type { LayoutType } from \"@/@types/theme\";\nimport { LinkRenderer } from \"../Layouts\";\n\ntype Layouts = Record<\n string,\n LazyExoticComponent<<T extends CommonProps>(props: T) => JSX.Element>\n>;\n\ninterface PostLoginLayoutProps extends CommonProps {\n layoutType: LayoutType;\n linkRenderer?: LinkRenderer;\n}\n\nconst layouts: Layouts = {\n [LAYOUT_COLLAPSIBLE_SIDE]: lazy(() => import(\"./components/CollapsibleSide\")),\n [LAYOUT_STACKED_SIDE]: lazy(() => import(\"./components/StackedSide\")),\n [LAYOUT_TOP_BAR_CLASSIC]: lazy(() => import(\"./components/TopBarClassic\")),\n [LAYOUT_FRAMELESS_SIDE]: lazy(() => import(\"./components/FrameLessSide\")),\n [LAYOUT_CONTENT_OVERLAY]: lazy(() => import(\"./components/ContentOverlay\")),\n [LAYOUT_BLANK]: lazy(() => import(\"./components/Blank\")),\n};\n\nconst PostLoginLayout = ({\n layoutType,\n children,\n linkRenderer,\n}: PostLoginLayoutProps) => {\n const AppLayout = layouts[layoutType] ?? layouts[Object.keys(layouts)[0]];\n\n return (\n <Suspense\n fallback={\n <div className=\"flex flex-auto flex-col h-[100vh]\">\n <Loading loading={true} />\n </div>\n }\n >\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <AppLayout linkRenderer={linkRenderer}>{children}</AppLayout>\n </Suspense>\n );\n};\n\nexport default PostLoginLayout;\n"],"names":["layouts","LAYOUT_COLLAPSIBLE_SIDE","lazy","LAYOUT_STACKED_SIDE","LAYOUT_TOP_BAR_CLASSIC","LAYOUT_FRAMELESS_SIDE","LAYOUT_CONTENT_OVERLAY","LAYOUT_BLANK","PostLoginLayout","layoutType","children","linkRenderer","AppLayout","jsx","Suspense","Loading"],"mappings":";;;;AAyBA,MAAMA,IAAmB;AAAA,EACvB,CAACC,CAAuB,GAAGC,EAAK,MAAM,OAAO,iCAA8B,CAAC;AAAA,EAC5E,CAACC,CAAmB,GAAGD,EAAK,MAAM,OAAO,6BAA0B,CAAC;AAAA,EACpE,CAACE,CAAsB,GAAGF,EAAK,MAAM,OAAO,+BAA4B,CAAC;AAAA,EACzE,CAACG,CAAqB,GAAGH,EAAK,MAAM,OAAO,+BAA4B,CAAC;AAAA,EACxE,CAACI,CAAsB,GAAGJ,EAAK,MAAM,OAAO,gCAA6B,CAAC;AAAA,EAC1E,CAACK,CAAY,GAAGL,EAAK,MAAM,OAAO,uBAAoB,CAAC;AACzD,GAEMM,IAAkB,CAAC;AAAA,EACvB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AACF,MAA4B;AAC1B,QAAMC,IAAYZ,EAAQS,CAAU,KAAKT,EAAQ,OAAO,KAAKA,CAAO,EAAE,CAAC,CAAC;AAExE,SACE,gBAAAa;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,4BACG,OAAA,EAAI,WAAU,qCACb,UAAA,gBAAAD,EAACE,GAAA,EAAQ,SAAS,GAAA,CAAM,EAAA,CAC1B;AAAA,MAKF,UAAA,gBAAAF,EAACD,GAAA,EAAU,cAAAD,GAA6B,UAAAD,EAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAGvD;"}
1
+ {"version":3,"file":"PostLoginLayout.js","sources":["../../../../../lib/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.tsx"],"sourcesContent":["import { lazy, Suspense, useMemo } from \"react\";\nimport {\n LAYOUT_COLLAPSIBLE_SIDE,\n LAYOUT_STACKED_SIDE,\n LAYOUT_TOP_BAR_CLASSIC,\n LAYOUT_FRAMELESS_SIDE,\n LAYOUT_CONTENT_OVERLAY,\n LAYOUT_BLANK,\n} from \"@/constants/theme.constant\";\nimport Loading from \"@/components/shared/Loading\";\nimport type { CommonProps } from \"@/@types/common\";\nimport type { LazyExoticComponent, JSX } from \"react\";\nimport type { LayoutType } from \"@/@types/theme\";\nimport { LinkRenderer } from \"../Layouts\";\nimport { useLocation } from \"react-router-dom\";\nimport { Routes } from \"@/@types\";\nimport { protectedRoutes, publicRoutes } from \"@/configs\";\n\ntype Layouts = Record<\n string,\n LazyExoticComponent<<T extends CommonProps>(props: T) => JSX.Element>\n>;\n\ninterface PostLoginLayoutProps extends CommonProps {\n layoutType: LayoutType;\n linkRenderer?: LinkRenderer;\n}\n\nconst layouts: Layouts = {\n [LAYOUT_COLLAPSIBLE_SIDE]: lazy(() => import(\"./components/CollapsibleSide\")),\n [LAYOUT_STACKED_SIDE]: lazy(() => import(\"./components/StackedSide\")),\n [LAYOUT_TOP_BAR_CLASSIC]: lazy(() => import(\"./components/TopBarClassic\")),\n [LAYOUT_FRAMELESS_SIDE]: lazy(() => import(\"./components/FrameLessSide\")),\n [LAYOUT_CONTENT_OVERLAY]: lazy(() => import(\"./components/ContentOverlay\")),\n [LAYOUT_BLANK]: lazy(() => import(\"./components/Blank\")),\n};\n\nconst findRouteByPath = (\n path: string,\n routes: Routes\n): Routes[0] | undefined => {\n for (const route of routes) {\n if (route.path === path) {\n return route;\n }\n }\n};\n\nconst PostLoginLayout = ({\n layoutType,\n children,\n linkRenderer,\n}: PostLoginLayoutProps) => {\n const location = useLocation();\n const AppLayout = useMemo(() => {\n const allRoutes = [...protectedRoutes, ...publicRoutes];\n const currentRoute = findRouteByPath(location.pathname, allRoutes);\n const layout = currentRoute?.meta?.layout ?? layoutType;\n return layouts[layout] ?? layouts[Object.keys(layouts)[0]];\n }, [location.pathname, layoutType]);\n\n return (\n <Suspense\n fallback={\n <div className=\"flex flex-auto flex-col h-[100vh]\">\n <Loading loading={true} />\n </div>\n }\n >\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <AppLayout linkRenderer={linkRenderer}>{children}</AppLayout>\n </Suspense>\n );\n};\n\nexport default PostLoginLayout;\n"],"names":["layouts","LAYOUT_COLLAPSIBLE_SIDE","lazy","LAYOUT_STACKED_SIDE","LAYOUT_TOP_BAR_CLASSIC","LAYOUT_FRAMELESS_SIDE","LAYOUT_CONTENT_OVERLAY","LAYOUT_BLANK","findRouteByPath","path","routes","route","PostLoginLayout","layoutType","children","linkRenderer","location","useLocation","AppLayout","useMemo","allRoutes","protectedRoutes","publicRoutes","currentRoute","layout","_a","jsx","Suspense","Loading"],"mappings":";;;;;;;AA4BA,MAAMA,IAAmB;AAAA,EACvB,CAACC,CAAuB,GAAGC,EAAK,MAAM,OAAO,iCAA8B,CAAC;AAAA,EAC5E,CAACC,CAAmB,GAAGD,EAAK,MAAM,OAAO,6BAA0B,CAAC;AAAA,EACpE,CAACE,CAAsB,GAAGF,EAAK,MAAM,OAAO,+BAA4B,CAAC;AAAA,EACzE,CAACG,CAAqB,GAAGH,EAAK,MAAM,OAAO,+BAA4B,CAAC;AAAA,EACxE,CAACI,CAAsB,GAAGJ,EAAK,MAAM,OAAO,gCAA6B,CAAC;AAAA,EAC1E,CAACK,CAAY,GAAGL,EAAK,MAAM,OAAO,uBAAoB,CAAC;AACzD,GAEMM,IAAkB,CACtBC,GACAC,MAC0B;AAC1B,aAAWC,KAASD;AAClB,QAAIC,EAAM,SAASF;AACjB,aAAOE;AAGb,GAEMC,IAAkB,CAAC;AAAA,EACvB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AACF,MAA4B;AAC1B,QAAMC,IAAWC,EAAA,GACXC,IAAYC,EAAQ,MAAM;;AAC9B,UAAMC,IAAY,CAAC,GAAGC,GAAiB,GAAGC,CAAY,GAChDC,IAAef,EAAgBQ,EAAS,UAAUI,CAAS,GAC3DI,MAASC,IAAAF,KAAA,gBAAAA,EAAc,SAAd,gBAAAE,EAAoB,WAAUZ;AAC7C,WAAOb,EAAQwB,CAAM,KAAKxB,EAAQ,OAAO,KAAKA,CAAO,EAAE,CAAC,CAAC;AAAA,EAAA,GACxD,CAACgB,EAAS,UAAUH,CAAU,CAAC;AAElC,SACE,gBAAAa;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,4BACG,OAAA,EAAI,WAAU,qCACb,UAAA,gBAAAD,EAACE,GAAA,EAAQ,SAAS,GAAA,CAAM,EAAA,CAC1B;AAAA,MAKF,UAAA,gBAAAF,EAACR,GAAA,EAAU,cAAAH,GAA6B,UAAAD,EAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAGvD;"}
@@ -1,20 +1,6 @@
1
- import { jsx as r, jsxs as t } from "react/jsx-runtime";
2
- import l from "../../../template/LayoutBase.js";
3
- import "../../../template/SidePanel/index.js";
4
- import { LAYOUT_BLANK as o } from "../../../../constants/theme.constant.js";
5
- import a from "../../../template/SidePanel/SidePanel.js";
6
- const s = ({ children: e }) => /* @__PURE__ */ r(
7
- l,
8
- {
9
- type: o,
10
- className: "app-layout-blank flex flex-auto flex-col h-[100vh]",
11
- children: /* @__PURE__ */ t("div", { className: "flex min-w-0 w-full flex-1", children: [
12
- e,
13
- /* @__PURE__ */ r(a, { className: "fixed ltr:right-0 rtl:left-0 top-96 p-3 rounded-none ltr:rounded-tl-lg ltr:rounded-bl-lg rtl:rounded-tr-lg rtl:rounded-br-lg text-white text-xl cursor-pointer select-none bg-primary hover:!bg-primary hover:text-white" })
14
- ] })
15
- }
16
- );
1
+ import { jsx as t, Fragment as a } from "react/jsx-runtime";
2
+ const n = ({ children: r }) => /* @__PURE__ */ t(a, { children: r });
17
3
  export {
18
- s as default
4
+ n as default
19
5
  };
20
6
  //# sourceMappingURL=Blank.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Blank.js","sources":["../../../../../../lib/@ecme/components/layouts/PostLoginLayout/components/Blank.tsx"],"sourcesContent":["import { CommonProps } from '@/@types/common'\nimport LayoutBase from '@/components//template/LayoutBase'\nimport SidePanel from '@/components//template/SidePanel'\nimport { LAYOUT_BLANK } from '@/constants/theme.constant'\n\nconst Blank = ({ children }: CommonProps) => {\n return (\n <LayoutBase\n type={LAYOUT_BLANK}\n className=\"app-layout-blank flex flex-auto flex-col h-[100vh]\"\n >\n <div className=\"flex min-w-0 w-full flex-1\">\n {children}\n <SidePanel className=\"fixed ltr:right-0 rtl:left-0 top-96 p-3 rounded-none ltr:rounded-tl-lg ltr:rounded-bl-lg rtl:rounded-tr-lg rtl:rounded-br-lg text-white text-xl cursor-pointer select-none bg-primary hover:!bg-primary hover:text-white\" />\n </div>\n </LayoutBase>\n )\n}\n\nexport default Blank\n"],"names":["Blank","children","jsx","LayoutBase","LAYOUT_BLANK","jsxs","SidePanel"],"mappings":";;;;;AAKA,MAAMA,IAAQ,CAAC,EAAE,UAAAC,QAET,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACG,MAAMC;AAAA,IACN,WAAU;AAAA,IAEV,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,8BACV,UAAA;AAAA,MAAAJ;AAAA,MACD,gBAAAC,EAACI,GAAA,EAAU,WAAU,2NAAA,CAA2N;AAAA,IAAA,EAAA,CACpP;AAAA,EAAA;AAAA;"}
1
+ {"version":3,"file":"Blank.js","sources":["../../../../../../lib/@ecme/components/layouts/PostLoginLayout/components/Blank.tsx"],"sourcesContent":["import { CommonProps } from \"@/@types/common\";\n\nconst Blank = ({ children }: CommonProps) => {\n return <>{children}</>;\n};\n\nexport default Blank;\n"],"names":["Blank","children"],"mappings":";AAEA,MAAMA,IAAQ,CAAC,EAAE,UAAAC,+BACL,UAAAA,GAAS;"}
@@ -1,18 +1,12 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import a from "../../configs/app.config.js";
3
- import { REDIRECT_URL_KEY as n } from "../../constants/app.constant.js";
4
- import { useLocation as m, Navigate as i, Outlet as p } from "react-router-dom";
2
+ import c from "../../configs/app.config.js";
3
+ import { REDIRECT_URL_KEY as m } from "../../constants/app.constant.js";
4
+ import { useLocation as p, Navigate as e, Outlet as s } from "react-router-dom";
5
5
  import "../../auth/index.js";
6
6
  import u from "../../auth/useAuth.js";
7
- const { unAuthenticatedEntryPath: c } = a, R = () => {
8
- const { authenticated: o } = u(), { pathname: e } = m(), r = e === "/" ? "" : `?${n}=${location.pathname}`;
9
- return o ? /* @__PURE__ */ t(p, {}) : /* @__PURE__ */ t(
10
- i,
11
- {
12
- replace: !0,
13
- to: `${c}${r}`
14
- }
15
- );
7
+ const { unAuthenticatedEntryPath: f, firstAccessPath: o } = c, R = () => {
8
+ const { authenticated: r, user: a } = u(), { pathname: n } = p(), i = n === "/" ? "" : `?${m}=${location.pathname}`;
9
+ return r ? a.primeiroAcesso && location.pathname !== o ? /* @__PURE__ */ t(e, { to: o, replace: !0 }) : /* @__PURE__ */ t(s, {}) : /* @__PURE__ */ t(e, { replace: !0, to: `${f}${i}` });
16
10
  };
17
11
  export {
18
12
  R as default
@@ -1 +1 @@
1
- {"version":3,"file":"ProtectedRoute.js","sources":["../../../../lib/@ecme/components/route/ProtectedRoute.tsx"],"sourcesContent":["import appConfig from '@/configs/app.config'\nimport { REDIRECT_URL_KEY } from '@/constants/app.constant'\nimport { Navigate, Outlet, useLocation } from 'react-router-dom'\nimport { useAuth } from '@/auth'\n\nconst { unAuthenticatedEntryPath } = appConfig\n\nconst ProtectedRoute = () => {\n const { authenticated } = useAuth()\n\n const { pathname } = useLocation()\n\n const getPathName =\n pathname === '/' ? '' : `?${REDIRECT_URL_KEY}=${location.pathname}`\n\n if (!authenticated) {\n return (\n <Navigate\n replace\n to={`${unAuthenticatedEntryPath}${getPathName}`}\n />\n )\n }\n\n return <Outlet />\n}\n\nexport default ProtectedRoute\n"],"names":["unAuthenticatedEntryPath","appConfig","ProtectedRoute","authenticated","useAuth","pathname","useLocation","getPathName","REDIRECT_URL_KEY","Outlet","jsx","Navigate"],"mappings":";;;;;;AAKA,MAAM,EAAE,0BAAAA,MAA6BC,GAE/BC,IAAiB,MAAM;AACzB,QAAM,EAAE,eAAAC,EAAA,IAAkBC,EAAA,GAEpB,EAAE,UAAAC,EAAA,IAAaC,EAAA,GAEfC,IACFF,MAAa,MAAM,KAAK,IAAIG,CAAgB,IAAI,SAAS,QAAQ;AAErE,SAAKL,sBASGM,GAAA,EAAO,IAPP,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,SAAO;AAAA,MACP,IAAI,GAAGX,CAAwB,GAAGO,CAAW;AAAA,IAAA;AAAA,EAAA;AAM7D;"}
1
+ {"version":3,"file":"ProtectedRoute.js","sources":["../../../../lib/@ecme/components/route/ProtectedRoute.tsx"],"sourcesContent":["import appConfig from \"@/configs/app.config\";\nimport { REDIRECT_URL_KEY } from \"@/constants/app.constant\";\nimport { Navigate, Outlet, useLocation } from \"react-router-dom\";\nimport { useAuth } from \"@/auth\";\n\nconst { unAuthenticatedEntryPath, firstAccessPath } = appConfig;\n\nconst ProtectedRoute = () => {\n const { authenticated, user } = useAuth();\n\n const { pathname } = useLocation();\n\n const getPathName =\n pathname === \"/\" ? \"\" : `?${REDIRECT_URL_KEY}=${location.pathname}`;\n\n if (!authenticated) {\n return (\n <Navigate replace to={`${unAuthenticatedEntryPath}${getPathName}`} />\n );\n }\n\n if (user.primeiroAcesso && location.pathname !== firstAccessPath) {\n return <Navigate to={firstAccessPath} replace />;\n }\n\n return <Outlet />;\n};\n\nexport default ProtectedRoute;\n"],"names":["unAuthenticatedEntryPath","firstAccessPath","appConfig","ProtectedRoute","authenticated","user","useAuth","pathname","useLocation","getPathName","REDIRECT_URL_KEY","jsx","Navigate","Outlet"],"mappings":";;;;;;AAKA,MAAM,EAAE,0BAAAA,GAA0B,iBAAAC,EAAA,IAAoBC,GAEhDC,IAAiB,MAAM;AAC3B,QAAM,EAAE,eAAAC,GAAe,MAAAC,EAAA,IAASC,EAAA,GAE1B,EAAE,UAAAC,EAAA,IAAaC,EAAA,GAEfC,IACJF,MAAa,MAAM,KAAK,IAAIG,CAAgB,IAAI,SAAS,QAAQ;AAEnE,SAAKN,IAMDC,EAAK,kBAAkB,SAAS,aAAaJ,IACxC,gBAAAU,EAACC,GAAA,EAAS,IAAIX,GAAiB,SAAO,IAAC,sBAGxCY,GAAA,EAAO,IARX,gBAAAF,EAACC,KAAS,SAAO,IAAC,IAAI,GAAGZ,CAAwB,GAAGS,CAAW,GAAA,CAAI;AASzE;"}
@@ -1,13 +1,13 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { Navigate as r, Outlet as e } from "react-router-dom";
3
- import a from "../../configs/app.config.js";
2
+ import { Navigate as e, Outlet as i } from "react-router-dom";
3
+ import u from "../../configs/app.config.js";
4
4
  import "../../auth/index.js";
5
- import i from "../../auth/useAuth.js";
6
- const { authenticatedEntryPath: m } = a, s = () => {
7
- const { authenticated: o } = i();
8
- return o ? /* @__PURE__ */ t(r, { to: m }) : /* @__PURE__ */ t(e, {});
5
+ import a from "../../auth/useAuth.js";
6
+ const { authenticatedEntryPath: m } = u, h = () => {
7
+ const { authenticated: o, user: r } = a();
8
+ return o && !r.primeiroAcesso ? /* @__PURE__ */ t(e, { to: m }) : /* @__PURE__ */ t(i, {});
9
9
  };
10
10
  export {
11
- s as default
11
+ h as default
12
12
  };
13
13
  //# sourceMappingURL=PublicRoute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PublicRoute.js","sources":["../../../../lib/@ecme/components/route/PublicRoute.tsx"],"sourcesContent":["import { Navigate, Outlet } from 'react-router-dom'\nimport appConfig from '@/configs/app.config'\nimport { useAuth } from '@/auth'\n\nconst { authenticatedEntryPath } = appConfig\n\nconst PublicRoute = () => {\n const { authenticated } = useAuth()\n\n return authenticated ? <Navigate to={authenticatedEntryPath} /> : <Outlet />\n}\n\nexport default PublicRoute\n"],"names":["authenticatedEntryPath","appConfig","PublicRoute","authenticated","useAuth","jsx","Navigate","Outlet"],"mappings":";;;;;AAIA,MAAM,EAAE,wBAAAA,MAA2BC,GAE7BC,IAAc,MAAM;AACtB,QAAM,EAAE,eAAAC,EAAA,IAAkBC,EAAA;AAE1B,SAAOD,IAAgB,gBAAAE,EAACC,GAAA,EAAS,IAAIN,EAAA,CAAwB,sBAAMO,GAAA,EAAO;AAC9E;"}
1
+ {"version":3,"file":"PublicRoute.js","sources":["../../../../lib/@ecme/components/route/PublicRoute.tsx"],"sourcesContent":["import { Navigate, Outlet } from \"react-router-dom\";\nimport appConfig from \"@/configs/app.config\";\nimport { useAuth } from \"@/auth\";\n\nconst { authenticatedEntryPath } = appConfig;\n\nconst PublicRoute = () => {\n const { authenticated, user } = useAuth();\n\n if (authenticated && !user.primeiroAcesso) {\n return <Navigate to={authenticatedEntryPath} />;\n }\n\n return <Outlet />;\n};\n\nexport default PublicRoute;\n"],"names":["authenticatedEntryPath","appConfig","PublicRoute","authenticated","user","useAuth","jsx","Navigate","Outlet"],"mappings":";;;;;AAIA,MAAM,EAAE,wBAAAA,MAA2BC,GAE7BC,IAAc,MAAM;AACxB,QAAM,EAAE,eAAAC,GAAe,MAAAC,EAAA,IAASC,EAAA;AAEhC,SAAIF,KAAiB,CAACC,EAAK,iBAClB,gBAAAE,EAACC,GAAA,EAAS,IAAIP,EAAA,CAAwB,sBAGvCQ,GAAA,EAAO;AACjB;"}
@@ -1,4 +1,4 @@
1
- const a = {
1
+ const t = {
2
2
  apiPrefix: "/api",
3
3
  orgName: "orbe-agro",
4
4
  authenticatedEntryPath: "/",
@@ -6,9 +6,10 @@ const a = {
6
6
  locale: "ptBR",
7
7
  accessTokenPersistStrategy: "localStorage",
8
8
  enableMock: !0,
9
- activeNavTranslation: !0
9
+ activeNavTranslation: !0,
10
+ firstAccessPath: "/primeiro-login"
10
11
  };
11
12
  export {
12
- a as default
13
+ t as default
13
14
  };
14
15
  //# sourceMappingURL=app.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.config.js","sources":["../../../lib/@ecme/configs/app.config.ts"],"sourcesContent":["export type AppConfig = {\n apiPrefix: string\n orgName: string\n authenticatedEntryPath: string\n unAuthenticatedEntryPath: string\n locale: string\n accessTokenPersistStrategy: 'localStorage' | 'sessionStorage' | 'cookies'\n enableMock: boolean\n activeNavTranslation: boolean\n}\n\nconst appConfig: AppConfig = {\n apiPrefix: '/api',\n orgName: 'orbe-agro',\n authenticatedEntryPath: '/',\n unAuthenticatedEntryPath: '/sign-in',\n locale: 'ptBR',\n accessTokenPersistStrategy: 'localStorage',\n enableMock: true,\n activeNavTranslation: true,\n}\n\nexport default appConfig\n"],"names":["appConfig"],"mappings":"AAWA,MAAMA,IAAuB;AAAA,EACzB,WAAW;AAAA,EACX,SAAS;AAAA,EACT,wBAAwB;AAAA,EACxB,0BAA0B;AAAA,EAC1B,QAAQ;AAAA,EACR,4BAA4B;AAAA,EAC5B,YAAY;AAAA,EACZ,sBAAsB;AAC1B;"}
1
+ {"version":3,"file":"app.config.js","sources":["../../../lib/@ecme/configs/app.config.ts"],"sourcesContent":["export type AppConfig = {\n apiPrefix: string\n orgName: string\n authenticatedEntryPath: string\n unAuthenticatedEntryPath: string\n locale: string\n accessTokenPersistStrategy: 'localStorage' | 'sessionStorage' | 'cookies'\n enableMock: boolean\n activeNavTranslation: boolean\n firstAccessPath: string\n}\n\nconst appConfig: AppConfig = {\n apiPrefix: '/api',\n orgName: 'orbe-agro',\n authenticatedEntryPath: '/',\n unAuthenticatedEntryPath: '/sign-in',\n locale: 'ptBR',\n accessTokenPersistStrategy: 'localStorage',\n enableMock: true,\n activeNavTranslation: true,\n firstAccessPath: '/primeiro-login',\n}\n\nexport default appConfig\n"],"names":["appConfig"],"mappings":"AAYA,MAAMA,IAAuB;AAAA,EACzB,WAAW;AAAA,EACX,SAAS;AAAA,EACT,wBAAwB;AAAA,EACxB,0BAA0B;AAAA,EAC1B,QAAQ;AAAA,EACR,4BAA4B;AAAA,EAC5B,YAAY;AAAA,EACZ,sBAAsB;AAAA,EACtB,iBAAiB;AACrB;"}
@@ -27,8 +27,9 @@ const i = [
27
27
  {
28
28
  key: "primeiroLogin",
29
29
  path: "/primeiro-login",
30
- component: o(() => import("../../views/auth/FirstLogin/index.js")),
31
- authority: []
30
+ component: o(() => import("../../views/auth-demo/ResetPasswordDemoSimple/index.js")),
31
+ authority: [],
32
+ meta: { layout: "blank" }
32
33
  },
33
34
  {
34
35
  key: "otpVerification",
@@ -1 +1 @@
1
- {"version":3,"file":"authRoute.js","sources":["../../../../lib/@ecme/configs/routes.config/authRoute.ts"],"sourcesContent":["import { lazy } from 'react'\nimport type { Routes } from '@/@types/routes'\n\nconst authRoute: Routes = [\n {\n key: 'signIn',\n path: `/sign-in`,\n component: lazy(() => import('@/views/auth/SignIn')),\n authority: [],\n },\n {\n key: 'signUp',\n path: `/sign-up`,\n component: lazy(() => import('@/views/auth/SignUp')),\n authority: [],\n },\n {\n key: 'forgotPassword',\n path: `/forgot-password`,\n component: lazy(() => import('@/views/auth/ForgotPassword')),\n authority: [],\n },\n {\n key: 'resetPassword',\n path: `/reset-password`,\n component: lazy(() => import('@/views/auth/ResetPassword')),\n authority: [],\n },\n {\n key: 'primeiroLogin',\n path: `/primeiro-login`,\n component: lazy(() => import('@/views/auth/FirstLogin')),\n authority: [],\n },\n {\n key: 'otpVerification',\n path: `/otp-verification`,\n component: lazy(() => import('@/views/auth/OtpVerification')),\n authority: [],\n },\n]\n\nexport default authRoute\n"],"names":["authRoute","lazy"],"mappings":";AAGA,MAAMA,IAAoB;AAAA,EACtB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWC,EAAK,MAAM,OAAO,kCAAqB,CAAC;AAAA,IACnD,WAAW,CAAA;AAAA,EAAC;AAAA,EAEhB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,kCAAqB,CAAC;AAAA,IACnD,WAAW,CAAA;AAAA,EAAC;AAAA,EAEhB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,0CAA6B,CAAC;AAAA,IAC3D,WAAW,CAAA;AAAA,EAAC;AAAA,EAEhB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,yCAA4B,CAAC;AAAA,IAC1D,WAAW,CAAA;AAAA,EAAC;AAAA,EAEhB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,sCAAyB,CAAC;AAAA,IACvD,WAAW,CAAA;AAAA,EAAC;AAAA,EAEhB;AAAA,IACI,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,2CAA8B,CAAC;AAAA,IAC5D,WAAW,CAAA;AAAA,EAAC;AAEpB;"}
1
+ {"version":3,"file":"authRoute.js","sources":["../../../../lib/@ecme/configs/routes.config/authRoute.ts"],"sourcesContent":["import { lazy } from \"react\";\nimport type { Routes } from \"@/@types/routes\";\n\nconst authRoute: Routes = [\n {\n key: \"signIn\",\n path: `/sign-in`,\n component: lazy(() => import(\"@/views/auth/SignIn\")),\n authority: [],\n },\n {\n key: \"signUp\",\n path: `/sign-up`,\n component: lazy(() => import(\"@/views/auth/SignUp\")),\n authority: [],\n },\n {\n key: \"forgotPassword\",\n path: `/forgot-password`,\n component: lazy(() => import(\"@/views/auth/ForgotPassword\")),\n authority: [],\n },\n {\n key: \"resetPassword\",\n path: `/reset-password`,\n component: lazy(() => import(\"@/views/auth/ResetPassword\")),\n authority: [],\n },\n {\n key: \"primeiroLogin\",\n path: `/primeiro-login`,\n component: lazy(() => import(\"@/views/auth-demo/ResetPasswordDemoSimple\")),\n authority: [],\n meta: { layout: \"blank\" },\n },\n {\n key: \"otpVerification\",\n path: `/otp-verification`,\n component: lazy(() => import(\"@/views/auth/OtpVerification\")),\n authority: [],\n },\n];\n\nexport default authRoute;\n"],"names":["authRoute","lazy"],"mappings":";AAGA,MAAMA,IAAoB;AAAA,EACxB;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWC,EAAK,MAAM,OAAO,kCAAqB,CAAC;AAAA,IACnD,WAAW,CAAA;AAAA,EAAC;AAAA,EAEd;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,kCAAqB,CAAC;AAAA,IACnD,WAAW,CAAA;AAAA,EAAC;AAAA,EAEd;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,0CAA6B,CAAC;AAAA,IAC3D,WAAW,CAAA;AAAA,EAAC;AAAA,EAEd;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,yCAA4B,CAAC;AAAA,IAC1D,WAAW,CAAA;AAAA,EAAC;AAAA,EAEd;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,wDAA2C,CAAC;AAAA,IACzE,WAAW,CAAA;AAAA,IACX,MAAM,EAAE,QAAQ,QAAA;AAAA,EAAQ;AAAA,EAE1B;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAWA,EAAK,MAAM,OAAO,2CAA8B,CAAC;AAAA,IAC5D,WAAW,CAAA;AAAA,EAAC;AAEhB;"}
@@ -3,7 +3,7 @@ const e = {
3
3
  auth: {
4
4
  forgotPassword: {
5
5
  title: "Recuperar Senha",
6
- desc: "Por favor, insira seu email para receber um código de verificação.",
6
+ desc: "Por favor, insira seu email para receber um link de recuperação.",
7
7
  mailSent: "Verifique seu email",
8
8
  mailSentDesc: "Enviamos uma recuperação de senha para seu email"
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sources":["../../../../../lib/@ecme/locales/lang/ptBR/pages.ts"],"sourcesContent":["import EnPages from '../en/pages'\n\nexport default {\n pages: {\n auth: {\n forgotPassword: {\n title: 'Recuperar Senha',\n desc: 'Por favor, insira seu email para receber um código de verificação.',\n mailSent: 'Verifique seu email',\n mailSentDesc:\n 'Enviamos uma recuperação de senha para seu email',\n },\n },\n },\n} as typeof EnPages\n"],"names":["pages"],"mappings":"AAEA,MAAAA,IAAe;AAAA,EACX,OAAO;AAAA,IACH,MAAM;AAAA,MACF,gBAAgB;AAAA,QACZ,OAAO;AAAA,QACP,MAAM;AAAA,QACN,UAAU;AAAA,QACV,cACI;AAAA,MAAA;AAAA,IACR;AAAA,EACJ;AAER;"}
1
+ {"version":3,"file":"pages.js","sources":["../../../../../lib/@ecme/locales/lang/ptBR/pages.ts"],"sourcesContent":["import EnPages from '../en/pages'\n\nexport default {\n pages: {\n auth: {\n forgotPassword: {\n title: 'Recuperar Senha',\n desc: 'Por favor, insira seu email para receber um link de recuperação.',\n mailSent: 'Verifique seu email',\n mailSentDesc:\n 'Enviamos uma recuperação de senha para seu email',\n },\n },\n },\n} as typeof EnPages\n"],"names":["pages"],"mappings":"AAEA,MAAAA,IAAe;AAAA,EACX,OAAO;AAAA,IACH,MAAM;AAAA,MACF,gBAAgB;AAAA,QACZ,OAAO;AAAA,QACP,MAAM;AAAA,QACN,UAAU;AAAA,QACV,cACI;AAAA,MAAA;AAAA,IACR;AAAA,EACJ;AAER;"}
@@ -1,65 +1,79 @@
1
- import { jsxs as s, jsx as e, Fragment as a } from "react/jsx-runtime";
2
- import { useState as c } from "react";
1
+ import { jsxs as a, jsx as e, Fragment as n } from "react/jsx-runtime";
2
+ import { useState as c, useEffect as p } from "react";
3
3
  import "../../../components/ui/Alert/index.js";
4
4
  import "../../../components/ui/Button/index.js";
5
- import d from "../../../components/shared/ActionLink.js";
6
- import h from "./components/ResetPasswordForm.js";
7
- import f from "../../../utils/hooks/useTimeOutMessage.js";
8
- import { useNavigate as p } from "react-router-dom";
9
- import u from "../../../components/ui/Alert/Alert.js";
10
- import N from "../../../components/ui/Button/Button.js";
11
- const b = ({
12
- signInUrl: t = "/sign-in",
13
- type: o
5
+ import g from "../../../components/shared/ActionLink.js";
6
+ import N from "./components/ResetPasswordForm.js";
7
+ import b from "../../../utils/hooks/useTimeOutMessage.js";
8
+ import { useNavigate as v, useSearchParams as x } from "react-router-dom";
9
+ import C from "../../../components/template/Logo.js";
10
+ import "../../../../base/utils/index.js";
11
+ import "../../../store/index.js";
12
+ import "../../../auth/index.js";
13
+ import { useThemeStore as k } from "../../../store/themeStore.js";
14
+ import R from "../../../auth/useAuth.js";
15
+ import { getLogoFilename as A } from "../../../../base/utils/logo.js";
16
+ import E from "../../../components/ui/Alert/Alert.js";
17
+ import P from "../../../components/ui/Button/Button.js";
18
+ const S = ({
19
+ signInUrl: o = "/sign-in",
20
+ type: r,
21
+ token: i
14
22
  }) => {
15
- const [i, n] = c(!1), [r, l] = f(), m = p();
16
- return /* @__PURE__ */ s("div", { children: [
17
- /* @__PURE__ */ e("div", { className: "mb-12 flex flex-col items-center", children: i ? /* @__PURE__ */ s(a, { children: [
23
+ const [t, m] = c(!1), [s, l] = b(), d = v(), h = () => {
24
+ d(o);
25
+ }, { mode: u } = k(), { user: f } = R();
26
+ return /* @__PURE__ */ a("div", { children: [
27
+ /* @__PURE__ */ e("div", { className: "mb-12 flex flex-col items-center", children: t ? /* @__PURE__ */ a(n, { children: [
18
28
  /* @__PURE__ */ e("h3", { className: "mb-2 text-success", children: "Operação finalizada" }),
19
29
  /* @__PURE__ */ e("p", { className: "font-semibold", children: "Sua senha foi alterada com sucesso!" })
20
- ] }) : /* @__PURE__ */ e(a, { children: o === "RECUPERARSENHA" ? /* @__PURE__ */ s(a, { children: [
21
- /* @__PURE__ */ e("h3", { className: "mb-2", children: "Digite uma nova senha" }),
22
- /* @__PURE__ */ e("p", { className: "font-semibold", children: "Um código de verificação foi enviado para o seu e-mail." })
23
- ] }) : /* @__PURE__ */ s(a, { children: [
30
+ ] }) : /* @__PURE__ */ e(n, { children: r === "RECUPERARSENHA" ? /* @__PURE__ */ a(n, { children: [
31
+ /* @__PURE__ */ e("h3", { className: "mb-2", children: "Crie sua nova senha" }),
32
+ /* @__PURE__ */ e("p", { className: "font-semibold", children: "Digite e confirme sua nova senha abaixo." })
33
+ ] }) : /* @__PURE__ */ a(n, { children: [
34
+ /* @__PURE__ */ e(
35
+ C,
36
+ {
37
+ imgClass: "mb-6 max-h-20",
38
+ name: A(!0, u)
39
+ }
40
+ ),
24
41
  /* @__PURE__ */ e("h3", { className: "mb-2", children: "Primeiro Acesso" }),
25
42
  " ",
26
43
  /* @__PURE__ */ e("p", { className: "font-semibold", children: "Digite uma nova senha." })
27
44
  ] }) }) }),
28
- r && /* @__PURE__ */ e(u, { showIcon: !0, className: "mb-4", type: "danger", children: /* @__PURE__ */ e("span", { className: "break-all", children: r }) }),
45
+ s && /* @__PURE__ */ e(E, { showIcon: !0, className: "mb-4", type: "danger", children: /* @__PURE__ */ e("span", { className: "break-all", children: s }) }),
29
46
  /* @__PURE__ */ e(
30
- h,
47
+ N,
31
48
  {
32
- resetComplete: i,
49
+ resetComplete: t,
33
50
  setMessage: l,
34
- setResetComplete: n,
35
- type: o,
36
- children: /* @__PURE__ */ e(
37
- N,
38
- {
39
- block: !0,
40
- variant: "solid",
41
- type: "button",
42
- onClick: () => {
43
- m(t);
44
- },
45
- children: "Continuar"
46
- }
47
- )
51
+ setResetComplete: m,
52
+ type: r,
53
+ userId: f.userId ?? void 0,
54
+ token: i,
55
+ children: /* @__PURE__ */ e(P, { block: !0, variant: "solid", type: "button", onClick: h, children: "Continuar" })
48
56
  }
49
57
  ),
50
58
  /* @__PURE__ */ e("div", { className: "mt-4 text-center", children: /* @__PURE__ */ e(
51
- d,
59
+ g,
52
60
  {
53
- to: t,
61
+ to: o,
54
62
  className: "heading-text font-bold",
55
63
  themeColor: !1,
56
64
  children: "Voltar"
57
65
  }
58
66
  ) })
59
67
  ] });
60
- }, j = () => /* @__PURE__ */ e(b, { type: "RECUPERARSENHA" });
68
+ }, J = () => {
69
+ const [o] = x(), [r, i] = c(null), [t, m] = c(null);
70
+ return p(() => {
71
+ const s = o.get("token");
72
+ s ? i(s) : m("Link de redefinição inválido ou token não encontrado.");
73
+ }, [o]), t ? /* @__PURE__ */ e("div", { className: "text-center text-red-500", children: t }) : r ? /* @__PURE__ */ e(S, { type: "RECUPERARSENHA", token: r }) : /* @__PURE__ */ e("div", { className: "text-center", children: "Carregando..." });
74
+ };
61
75
  export {
62
- b as ResetPasswordBase,
63
- j as default
76
+ S as ResetPasswordBase,
77
+ J as default
64
78
  };
65
79
  //# sourceMappingURL=ResetPassword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResetPassword.js","sources":["../../../../../lib/@ecme/views/auth/ResetPassword/ResetPassword.tsx"],"sourcesContent":["import { useState } from 'react'\nimport Alert from '@/components/ui/Alert'\nimport Button from '@/components/ui/Button'\nimport ActionLink from '@/components/shared/ActionLink'\nimport ResetPasswordForm from './components/ResetPasswordForm'\nimport useTimeOutMessage from '@/utils/hooks/useTimeOutMessage'\nimport { useNavigate } from 'react-router-dom'\nimport { TAlterarPasswordType } from '@base/@types/models/auth'\n\ntype ResetPasswordProps = {\n signInUrl?: string\n type: TAlterarPasswordType\n}\n\nexport const ResetPasswordBase = ({\n signInUrl = '/sign-in',\n type,\n}: ResetPasswordProps) => {\n const [resetComplete, setResetComplete] = useState(false)\n\n const [message, setMessage] = useTimeOutMessage()\n\n const navigate = useNavigate()\n\n const handleContinue = () => {\n navigate(signInUrl)\n }\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center\">\n {resetComplete ? (\n <>\n <h3 className=\"mb-2 text-success\">\n Operação finalizada\n </h3>\n <p className=\"font-semibold\">\n Sua senha foi alterada com sucesso!\n </p>\n </>\n ) : (\n <>\n {type === 'RECUPERARSENHA' ? (\n <>\n <h3 className=\"mb-2\">Digite uma nova senha</h3>\n <p className=\"font-semibold\">\n Um código de verificação foi enviado para o\n seu e-mail.\n </p>\n </>\n ) : (\n <>\n <h3 className=\"mb-2\">Primeiro Acesso</h3>{' '}\n <p className=\"font-semibold\">\n Digite uma nova senha.\n </p>\n </>\n )}\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ResetPasswordForm\n resetComplete={resetComplete}\n setMessage={setMessage}\n setResetComplete={setResetComplete}\n type={type}\n >\n <Button\n block\n variant=\"solid\"\n type=\"button\"\n onClick={handleContinue}\n >\n Continuar\n </Button>\n </ResetPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n Voltar\n </ActionLink>\n </div>\n </div>\n )\n}\n\nconst ResetPassword = () => {\n return <ResetPasswordBase type=\"RECUPERARSENHA\" />\n}\n\nexport default ResetPassword\n"],"names":["ResetPasswordBase","signInUrl","type","resetComplete","setResetComplete","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","jsx","jsxs","Fragment","Alert","ResetPasswordForm","Button","ActionLink","ResetPassword"],"mappings":";;;;;;;;;;AAcO,MAAMA,IAAoB,CAAC;AAAA,EAC9B,WAAAC,IAAY;AAAA,EACZ,MAAAC;AACJ,MAA0B;AACtB,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAS,EAAK,GAElD,CAACC,GAASC,CAAU,IAAIC,EAAA,GAExBC,IAAWC,EAAA;AAMjB,2BACK,OAAA,EACG,UAAA;AAAA,IAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,oCACV,UAAAR,IACG,gBAAAS,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAF,EAAC,MAAA,EAAG,WAAU,qBAAoB,UAAA,uBAElC;AAAA,MACA,gBAAAA,EAAC,KAAA,EAAE,WAAU,iBAAgB,UAAA,sCAAA,CAE7B;AAAA,IAAA,EAAA,CACJ,IAEA,gBAAAA,EAAAE,GAAA,EACK,UAAAX,MAAS,mBACN,gBAAAU,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAF,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,yBAAqB;AAAA,MAC1C,gBAAAA,EAAC,KAAA,EAAE,WAAU,iBAAgB,UAAA,0DAAA,CAG7B;AAAA,IAAA,EAAA,CACJ,IAEA,gBAAAC,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAF,EAAC,MAAA,EAAG,WAAU,QAAO,UAAA,mBAAe;AAAA,MAAM;AAAA,MAC1C,gBAAAA,EAAC,KAAA,EAAE,WAAU,iBAAgB,UAAA,yBAAA,CAE7B;AAAA,IAAA,EAAA,CACJ,GAER,GAER;AAAA,IACCL,KACG,gBAAAK,EAACG,GAAA,EAAM,UAAQ,IAAC,WAAU,QAAO,MAAK,UAClC,UAAA,gBAAAH,EAAC,QAAA,EAAK,WAAU,aAAa,aAAQ,GACzC;AAAA,IAEJ,gBAAAA;AAAA,MAACI;AAAA,MAAA;AAAA,QACG,eAAAZ;AAAA,QACA,YAAAI;AAAA,QACA,kBAAAH;AAAA,QACA,MAAAF;AAAA,QAEA,UAAA,gBAAAS;AAAA,UAACK;AAAA,UAAA;AAAA,YACG,OAAK;AAAA,YACL,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,SApDO,MAAM;AACzB,cAAAP,EAASR,CAAS;AAAA,YAAA;AAAA,YAoDT,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAEJ,gBAAAU,EAAC,OAAA,EAAI,WAAU,oBACX,UAAA,gBAAAA;AAAA,MAACM;AAAA,MAAA;AAAA,QACG,IAAIhB;AAAA,QACJ,WAAU;AAAA,QACV,YAAY;AAAA,QACf,UAAA;AAAA,MAAA;AAAA,IAAA,EAED,CACJ;AAAA,EAAA,GACJ;AAER,GAEMiB,IAAgB,MACX,gBAAAP,EAACX,GAAA,EAAkB,MAAK,iBAAA,CAAiB;"}
1
+ {"version":3,"file":"ResetPassword.js","sources":["../../../../../lib/@ecme/views/auth/ResetPassword/ResetPassword.tsx"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport Alert from \"@/components/ui/Alert\";\nimport Button from \"@/components/ui/Button\";\nimport ActionLink from \"@/components/shared/ActionLink\";\nimport ResetPasswordForm from \"./components/ResetPasswordForm\";\nimport useTimeOutMessage from \"@/utils/hooks/useTimeOutMessage\";\nimport { useNavigate, useSearchParams } from \"react-router-dom\";\nimport { TAlterarPasswordType } from \"@base/@types/models/auth\";\nimport Logo from \"@/components/template/Logo\";\nimport { getLogoFilename } from \"@base/utils\";\nimport { useThemeStore } from \"@/store\";\nimport { useAuth } from \"@/auth\";\n\ntype ResetPasswordProps = {\n signInUrl?: string;\n type: TAlterarPasswordType;\n token?: string;\n};\n\nexport const ResetPasswordBase = ({\n signInUrl = \"/sign-in\",\n type,\n token,\n}: ResetPasswordProps) => {\n const [resetComplete, setResetComplete] = useState(false);\n\n const [message, setMessage] = useTimeOutMessage();\n\n const navigate = useNavigate();\n\n const handleContinue = () => {\n navigate(signInUrl);\n };\n\n const { mode } = useThemeStore();\n const { user } = useAuth();\n\n return (\n <div>\n <div className=\"mb-12 flex flex-col items-center\">\n {resetComplete ? (\n <>\n <h3 className=\"mb-2 text-success\">Operação finalizada</h3>\n <p className=\"font-semibold\">Sua senha foi alterada com sucesso!</p>\n </>\n ) : (\n <>\n {type === \"RECUPERARSENHA\" ? (\n <>\n <h3 className=\"mb-2\">Crie sua nova senha</h3>\n <p className=\"font-semibold\">\n Digite e confirme sua nova senha abaixo.\n </p>\n </>\n ) : (\n <>\n <Logo\n imgClass=\"mb-6 max-h-20\"\n name={getLogoFilename(true, mode)}\n />\n <h3 className=\"mb-2\">Primeiro Acesso</h3>{\" \"}\n <p className=\"font-semibold\">Digite uma nova senha.</p>\n </>\n )}\n </>\n )}\n </div>\n {message && (\n <Alert showIcon className=\"mb-4\" type=\"danger\">\n <span className=\"break-all\">{message}</span>\n </Alert>\n )}\n <ResetPasswordForm\n resetComplete={resetComplete}\n setMessage={setMessage}\n setResetComplete={setResetComplete}\n type={type}\n userId={user.userId ?? undefined}\n token={token}\n >\n <Button block variant=\"solid\" type=\"button\" onClick={handleContinue}>\n Continuar\n </Button>\n </ResetPasswordForm>\n <div className=\"mt-4 text-center\">\n <ActionLink\n to={signInUrl}\n className=\"heading-text font-bold\"\n themeColor={false}\n >\n Voltar\n </ActionLink>\n </div>\n </div>\n );\n};\n\nconst ResetPassword = () => {\n const [searchParams] = useSearchParams();\n const [token, setToken] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n const tokenFromUrl = searchParams.get(\"token\");\n\n if (tokenFromUrl) {\n setToken(tokenFromUrl);\n } else {\n setError(\"Link de redefinição inválido ou token não encontrado.\");\n }\n }, [searchParams]);\n\n if (error) {\n return <div className=\"text-center text-red-500\">{error}</div>;\n }\n\n if (!token) {\n return <div className=\"text-center\">Carregando...</div>;\n }\n\n return <ResetPasswordBase type=\"RECUPERARSENHA\" token={token} />;\n};\n\nexport default ResetPassword;\n"],"names":["ResetPasswordBase","signInUrl","type","token","resetComplete","setResetComplete","useState","message","setMessage","useTimeOutMessage","navigate","useNavigate","handleContinue","mode","useThemeStore","user","useAuth","jsx","jsxs","Fragment","Logo","getLogoFilename","Alert","ResetPasswordForm","Button","ActionLink","ResetPassword","searchParams","useSearchParams","setToken","error","setError","useEffect","tokenFromUrl"],"mappings":"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"}