diff --git a/.env b/.env index 1d44286e25..84782451fa 100644 --- a/.env +++ b/.env @@ -18,9 +18,9 @@ STACK_NAME=full-stack-fastapi-project # Backend BACKEND_CORS_ORIGINS="http://localhost,http://localhost:5173,https://localhost,https://localhost:5173,http://localhost.tiangolo.com" -SECRET_KEY=changethis -FIRST_SUPERUSER=admin@example.com -FIRST_SUPERUSER_PASSWORD=changethis +SECRET_KEY=kjadhflkafaskjdfhakjfsd +FIRST_SUPERUSER=marcelomizuno@me.com +FIRST_SUPERUSER_PASSWORD=admin123 # Emails SMTP_HOST= @@ -32,11 +32,11 @@ SMTP_SSL=False SMTP_PORT=587 # Postgres -POSTGRES_SERVER=localhost +POSTGRES_SERVER=db POSTGRES_PORT=5432 POSTGRES_DB=app POSTGRES_USER=postgres -POSTGRES_PASSWORD=changethis +POSTGRES_PASSWORD=univesp SENTRY_DSN= diff --git a/docker-compose.yml b/docker-compose.yml index c92d5d4451..e292b55d52 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -59,7 +59,7 @@ services: environment: - DOMAIN=${DOMAIN} - FRONTEND_HOST=${FRONTEND_HOST?Variable not set} - - ENVIRONMENT=${ENVIRONMENT} + - ENVIRONMENT=local - BACKEND_CORS_ORIGINS=${BACKEND_CORS_ORIGINS} - SECRET_KEY=${SECRET_KEY?Variable not set} - FIRST_SUPERUSER=${FIRST_SUPERUSER?Variable not set} @@ -92,7 +92,7 @@ services: environment: - DOMAIN=${DOMAIN} - FRONTEND_HOST=${FRONTEND_HOST?Variable not set} - - ENVIRONMENT=${ENVIRONMENT} + - ENVIRONMENT=local - BACKEND_CORS_ORIGINS=${BACKEND_CORS_ORIGINS} - SECRET_KEY=${SECRET_KEY?Variable not set} - FIRST_SUPERUSER=${FIRST_SUPERUSER?Variable not set} diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 275b7a6d71..edf47f8180 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -7,6 +7,7 @@ "": { "name": "frontend", "version": "0.0.0", + "license": "ISC", "dependencies": { "@chakra-ui/react": "^3.8.0", "@emotion/react": "^11.14.0", diff --git a/frontend/package.json b/frontend/package.json index 4452d0edae..6a619701cf 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -38,5 +38,12 @@ "dotenv": "^16.4.5", "typescript": "^5.2.2", "vite": "^5.4.14" - } + }, + "description": "The frontend is built with [Vite](https://vitejs.dev/), [React](https://reactjs.org/), [TypeScript](https://www.typescriptlang.org/), [TanStack Query](https://tanstack.com/query), [TanStack Router](https://tanstack.com/router) and [Chakra UI](https://chakra-ui.com/).", + "main": "index.js", + "directories": { + "test": "tests" + }, + "author": "", + "license": "ISC" } diff --git a/frontend/src/components/Common/SidebarItems.tsx b/frontend/src/components/Common/SidebarItems.tsx index 13f71495f5..9afb4c2cf0 100644 --- a/frontend/src/components/Common/SidebarItems.tsx +++ b/frontend/src/components/Common/SidebarItems.tsx @@ -5,11 +5,14 @@ import { FiBriefcase, FiHome, FiSettings, FiUsers } from "react-icons/fi" import type { IconType } from "react-icons/lib" import type { UserPublic } from "@/client" +import { BsTicketDetailedFill } from "react-icons/bs" const items = [ + //Adicionando mais menus ( ticket), e renomeando seções { icon: FiHome, title: "Dashboard", path: "/" }, { icon: FiBriefcase, title: "Items", path: "/items" }, - { icon: FiSettings, title: "User Settings", path: "/settings" }, + { icon: FiSettings, title: "Configurações do Usuário", path: "/settings" }, + { icon: BsTicketDetailedFill, title: "Tickets", path: "/tickets" }, ] interface SidebarItemsProps { diff --git a/frontend/src/routeTree.gen.ts b/frontend/src/routeTree.gen.ts index 0e78c9ba20..4692f575d9 100644 --- a/frontend/src/routeTree.gen.ts +++ b/frontend/src/routeTree.gen.ts @@ -17,6 +17,7 @@ import { Route as RecoverPasswordImport } from './routes/recover-password' import { Route as LoginImport } from './routes/login' import { Route as LayoutImport } from './routes/_layout' import { Route as LayoutIndexImport } from './routes/_layout/index' +import { Route as LayoutTicketsImport } from './routes/_layout/tickets' import { Route as LayoutSettingsImport } from './routes/_layout/settings' import { Route as LayoutItemsImport } from './routes/_layout/items' import { Route as LayoutAdminImport } from './routes/_layout/admin' @@ -53,6 +54,11 @@ const LayoutIndexRoute = LayoutIndexImport.update({ getParentRoute: () => LayoutRoute, } as any) +const LayoutTicketsRoute = LayoutTicketsImport.update({ + path: '/tickets', + getParentRoute: () => LayoutRoute, +} as any) + const LayoutSettingsRoute = LayoutSettingsImport.update({ path: '/settings', getParentRoute: () => LayoutRoute, @@ -104,6 +110,10 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof LayoutSettingsImport parentRoute: typeof LayoutImport } + '/_layout/tickets': { + preLoaderRoute: typeof LayoutTicketsImport + parentRoute: typeof LayoutImport + } '/_layout/': { preLoaderRoute: typeof LayoutIndexImport parentRoute: typeof LayoutImport @@ -118,6 +128,7 @@ export const routeTree = rootRoute.addChildren([ LayoutAdminRoute, LayoutItemsRoute, LayoutSettingsRoute, + LayoutTicketsRoute, LayoutIndexRoute, ]), LoginRoute, diff --git a/frontend/src/routes/_layout/tickets.tsx b/frontend/src/routes/_layout/tickets.tsx new file mode 100644 index 0000000000..f4b0d2960a --- /dev/null +++ b/frontend/src/routes/_layout/tickets.tsx @@ -0,0 +1,34 @@ +import { Box, Container, Text } from "@chakra-ui/react" +import { createFileRoute } from "@tanstack/react-router" + +//import useAuth from "@/hooks/useAuth" + +export const Route = createFileRoute("/_layout/tickets")({ + component: Tickets, +}) + +function Tickets() { + //const { user: currentUser } = useAuth() + + return ( + <> + + + +
    +
      Página de Listagem de Tickets
    +
  • - Exibição dos tickets cadastrados em formato de tabela ou lista com informações resumidas (título, status, prioridade, data de criação)
  • +
  • - Campo de busca para filtrar por palavra-chave
  • +
  • - Filtros para status, data, prioridade e categoria
  • +
  • - Opções de ordenação e paginação para facilitar a navegação
  • +
+
+ +
+
+ + ) +} + + +