diff --git a/apps/desktop/src-tauri/icons/128x128.png b/apps/desktop/src-tauri/icons/128x128.png index 5f7c295..ea1b4de 100644 Binary files a/apps/desktop/src-tauri/icons/128x128.png and b/apps/desktop/src-tauri/icons/128x128.png differ diff --git a/apps/desktop/src-tauri/icons/128x128@2x.png b/apps/desktop/src-tauri/icons/128x128@2x.png index b2492e1..89582e7 100644 Binary files a/apps/desktop/src-tauri/icons/128x128@2x.png and b/apps/desktop/src-tauri/icons/128x128@2x.png differ diff --git a/apps/desktop/src-tauri/icons/32x32.png b/apps/desktop/src-tauri/icons/32x32.png index 8198d04..96fd42a 100644 Binary files a/apps/desktop/src-tauri/icons/32x32.png and b/apps/desktop/src-tauri/icons/32x32.png differ diff --git a/apps/desktop/src-tauri/icons/64x64.png b/apps/desktop/src-tauri/icons/64x64.png index 3551a05..bcd4b9c 100644 Binary files a/apps/desktop/src-tauri/icons/64x64.png and b/apps/desktop/src-tauri/icons/64x64.png differ diff --git a/apps/desktop/src-tauri/icons/Raven.png b/apps/desktop/src-tauri/icons/Raven.png index 7cb85e9..ab005ba 100644 Binary files a/apps/desktop/src-tauri/icons/Raven.png and b/apps/desktop/src-tauri/icons/Raven.png differ diff --git a/apps/desktop/src-tauri/icons/Square107x107Logo.png b/apps/desktop/src-tauri/icons/Square107x107Logo.png index 0c6bc5e..0a503d5 100644 Binary files a/apps/desktop/src-tauri/icons/Square107x107Logo.png and b/apps/desktop/src-tauri/icons/Square107x107Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square142x142Logo.png b/apps/desktop/src-tauri/icons/Square142x142Logo.png index 137f727..31765ac 100644 Binary files a/apps/desktop/src-tauri/icons/Square142x142Logo.png and b/apps/desktop/src-tauri/icons/Square142x142Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square150x150Logo.png b/apps/desktop/src-tauri/icons/Square150x150Logo.png index 0f0f358..8a666ce 100644 Binary files a/apps/desktop/src-tauri/icons/Square150x150Logo.png and b/apps/desktop/src-tauri/icons/Square150x150Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square284x284Logo.png b/apps/desktop/src-tauri/icons/Square284x284Logo.png index 410a66c..9bbef05 100644 Binary files a/apps/desktop/src-tauri/icons/Square284x284Logo.png and b/apps/desktop/src-tauri/icons/Square284x284Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square30x30Logo.png b/apps/desktop/src-tauri/icons/Square30x30Logo.png index 1f7216d..df1c649 100644 Binary files a/apps/desktop/src-tauri/icons/Square30x30Logo.png and b/apps/desktop/src-tauri/icons/Square30x30Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square310x310Logo.png b/apps/desktop/src-tauri/icons/Square310x310Logo.png index b9a10ac..c277c69 100644 Binary files a/apps/desktop/src-tauri/icons/Square310x310Logo.png and b/apps/desktop/src-tauri/icons/Square310x310Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square44x44Logo.png b/apps/desktop/src-tauri/icons/Square44x44Logo.png index 46a575a..4608b37 100644 Binary files a/apps/desktop/src-tauri/icons/Square44x44Logo.png and b/apps/desktop/src-tauri/icons/Square44x44Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square71x71Logo.png b/apps/desktop/src-tauri/icons/Square71x71Logo.png index a595168..e98ccdc 100644 Binary files a/apps/desktop/src-tauri/icons/Square71x71Logo.png and b/apps/desktop/src-tauri/icons/Square71x71Logo.png differ diff --git a/apps/desktop/src-tauri/icons/Square89x89Logo.png b/apps/desktop/src-tauri/icons/Square89x89Logo.png index 535a8cc..c0b6c70 100644 Binary files a/apps/desktop/src-tauri/icons/Square89x89Logo.png and b/apps/desktop/src-tauri/icons/Square89x89Logo.png differ diff --git a/apps/desktop/src-tauri/icons/StoreLogo.png b/apps/desktop/src-tauri/icons/StoreLogo.png index b40a8ad..6b3ea98 100644 Binary files a/apps/desktop/src-tauri/icons/StoreLogo.png and b/apps/desktop/src-tauri/icons/StoreLogo.png differ diff --git a/apps/desktop/src-tauri/icons/icon.icns b/apps/desktop/src-tauri/icons/icon.icns index 1e87022..9c729c7 100644 Binary files a/apps/desktop/src-tauri/icons/icon.icns and b/apps/desktop/src-tauri/icons/icon.icns differ diff --git a/apps/desktop/src-tauri/icons/icon.ico b/apps/desktop/src-tauri/icons/icon.ico index b1471cf..b56f21d 100644 Binary files a/apps/desktop/src-tauri/icons/icon.ico and b/apps/desktop/src-tauri/icons/icon.ico differ diff --git a/apps/desktop/src-tauri/icons/icon.png b/apps/desktop/src-tauri/icons/icon.png index b1c7cf7..ab005ba 100644 Binary files a/apps/desktop/src-tauri/icons/icon.png and b/apps/desktop/src-tauri/icons/icon.png differ diff --git a/apps/desktop/src-tauri/icons/logo-raven-fund-azul.png b/apps/desktop/src-tauri/icons/logo-raven-fund-azul.png new file mode 100644 index 0000000..9b95662 Binary files /dev/null and b/apps/desktop/src-tauri/icons/logo-raven-fund-azul.png differ diff --git a/apps/desktop/src-tauri/icons/logo-raven.png b/apps/desktop/src-tauri/icons/logo-raven.png new file mode 100644 index 0000000..62b264e Binary files /dev/null and b/apps/desktop/src-tauri/icons/logo-raven.png differ diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index b1471cf..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/icon.png b/public/icon.png deleted file mode 100644 index b1c7cf7..0000000 Binary files a/public/icon.png and /dev/null differ diff --git a/public/logo-raven-fund-azul.png b/public/logo-raven-fund-azul.png new file mode 100644 index 0000000..9b95662 Binary files /dev/null and b/public/logo-raven-fund-azul.png differ diff --git a/public/logo-raven.png b/public/logo-raven.png new file mode 100644 index 0000000..62b264e Binary files /dev/null and b/public/logo-raven.png differ diff --git a/src/app/favicon.ico b/src/app/favicon.ico index 718d6fe..b56f21d 100644 Binary files a/src/app/favicon.ico and b/src/app/favicon.ico differ diff --git a/src/app/icon.png b/src/app/icon.png index b1c7cf7..ab005ba 100644 Binary files a/src/app/icon.png and b/src/app/icon.png differ diff --git a/src/app/login/login-page-client.tsx b/src/app/login/login-page-client.tsx index b8a8963..1bd509a 100644 --- a/src/app/login/login-page-client.tsx +++ b/src/app/login/login-page-client.tsx @@ -5,7 +5,6 @@ import Image from "next/image" import Link from "next/link" import { useRouter, useSearchParams } from "next/navigation" import dynamic from "next/dynamic" -import { GalleryVerticalEnd } from "lucide-react" import { LoginForm } from "@/components/login-form" import { useSession } from "@/lib/auth-client" @@ -57,9 +56,14 @@ export function LoginPageClient() {
-
- -
+ Logotipo Raven Raven
@@ -70,11 +74,11 @@ export function LoginPageClient() {
Logotipo Rever Tecnologia
diff --git a/src/components/app-sidebar.tsx b/src/components/app-sidebar.tsx index 0bf23f4..a4b4b0d 100644 --- a/src/components/app-sidebar.tsx +++ b/src/components/app-sidebar.tsx @@ -25,7 +25,7 @@ import { usePathname } from "next/navigation" import Link from "next/link" import { SearchForm } from "@/components/search-form" -import { VersionSwitcher } from "@/components/version-switcher" +import { SidebarBrand } from "@/components/sidebar-brand" import { Sidebar, SidebarContent, @@ -63,57 +63,54 @@ type NavigationGroup = { items: NavigationItem[] } -const navigation: { versions: string[]; navMain: NavigationGroup[] } = { - versions: ["Rever Tecnologia"], - navMain: [ - { - title: "Operação", - items: [ - { title: "Dashboard", url: "/dashboard", icon: LayoutDashboard, requiredRole: "staff" }, - { - title: "Tickets", - url: "/tickets", - icon: Ticket, - requiredRole: "staff", - children: [{ title: "Resolvidos", url: "/tickets/resolved", icon: ShieldCheck, requiredRole: "staff" }], - }, - { title: "Visualizações", url: "/views", icon: PanelsTopLeft, requiredRole: "staff" }, - { title: "Modo Play", url: "/play", icon: PlayCircle, requiredRole: "staff" }, - ], - }, - { - title: "Relatórios", - requiredRole: "staff", - items: [ - { title: "SLA e produtividade", url: "/reports/sla", icon: TrendingUp, requiredRole: "staff" }, - { title: "Qualidade (CSAT)", url: "/reports/csat", icon: LifeBuoy, requiredRole: "staff" }, - { title: "Backlog", url: "/reports/backlog", icon: BarChart3, requiredRole: "staff" }, - { title: "Horas por cliente", url: "/reports/hours", icon: Clock4, requiredRole: "staff" }, - ], - }, - { - title: "Administração", - requiredRole: "admin", - items: [ - { - title: "Convites e acessos", - url: "/admin", - icon: UserPlus, - requiredRole: "admin", - exact: true, - }, - { title: "Canais & roteamento", url: "/admin/channels", icon: Waypoints, requiredRole: "admin" }, - { title: "Times & papéis", url: "/admin/teams", icon: UserCog, requiredRole: "admin" }, - { title: "Empresas & clientes", url: "/admin/companies", icon: Building2, requiredRole: "admin" }, - { title: "Máquinas", url: "/admin/machines", icon: MonitorCog, requiredRole: "admin" }, - { title: "Campos personalizados", url: "/admin/fields", icon: Layers3, requiredRole: "admin" }, - { title: "SLAs", url: "/admin/slas", icon: Timer, requiredRole: "admin" }, - { title: "Alertas enviados", url: "/admin/alerts", icon: BellRing, requiredRole: "admin" }, - ], - }, - // Removido grupo "Conta" (Configurações) para evitar redundância com o menu do usuário no rodapé - ], -} +const navigation: NavigationGroup[] = [ + { + title: "Operação", + items: [ + { title: "Dashboard", url: "/dashboard", icon: LayoutDashboard, requiredRole: "staff" }, + { + title: "Tickets", + url: "/tickets", + icon: Ticket, + requiredRole: "staff", + children: [{ title: "Resolvidos", url: "/tickets/resolved", icon: ShieldCheck, requiredRole: "staff" }], + }, + { title: "Visualizações", url: "/views", icon: PanelsTopLeft, requiredRole: "staff" }, + { title: "Modo Play", url: "/play", icon: PlayCircle, requiredRole: "staff" }, + ], + }, + { + title: "Relatórios", + requiredRole: "staff", + items: [ + { title: "SLA e produtividade", url: "/reports/sla", icon: TrendingUp, requiredRole: "staff" }, + { title: "Qualidade (CSAT)", url: "/reports/csat", icon: LifeBuoy, requiredRole: "staff" }, + { title: "Backlog", url: "/reports/backlog", icon: BarChart3, requiredRole: "staff" }, + { title: "Horas por cliente", url: "/reports/hours", icon: Clock4, requiredRole: "staff" }, + ], + }, + { + title: "Administração", + requiredRole: "admin", + items: [ + { + title: "Convites e acessos", + url: "/admin", + icon: UserPlus, + requiredRole: "admin", + exact: true, + }, + { title: "Canais & roteamento", url: "/admin/channels", icon: Waypoints, requiredRole: "admin" }, + { title: "Times & papéis", url: "/admin/teams", icon: UserCog, requiredRole: "admin" }, + { title: "Empresas & clientes", url: "/admin/companies", icon: Building2, requiredRole: "admin" }, + { title: "Máquinas", url: "/admin/machines", icon: MonitorCog, requiredRole: "admin" }, + { title: "Campos personalizados", url: "/admin/fields", icon: Layers3, requiredRole: "admin" }, + { title: "SLAs", url: "/admin/slas", icon: Timer, requiredRole: "admin" }, + { title: "Alertas enviados", url: "/admin/alerts", icon: BellRing, requiredRole: "admin" }, + ], + }, + // Removido grupo "Conta" (Configurações) para evitar redundância com o menu do usuário no rodapé +] export function AppSidebar({ ...props }: React.ComponentProps) { const pathname = usePathname() @@ -130,7 +127,7 @@ export function AppSidebar({ ...props }: React.ComponentProps) { ) const initialExpanded = React.useMemo(() => { const open = new Set() - navigation.navMain.forEach((group) => { + navigation.forEach((group) => { group.items.forEach((item) => { if (!item.children || item.children.length === 0) return const shouldOpen = item.children.some((child) => { @@ -213,15 +210,16 @@ export function AppSidebar({ ...props }: React.ComponentProps) { return ( - - {navigation.navMain.map((group) => { + {navigation.map((group) => { if (!canAccess(group.requiredRole)) return null const visibleItems = group.items.filter((item) => canAccess(item.requiredRole)) if (visibleItems.length === 0) return null diff --git a/src/components/portal/portal-shell.tsx b/src/components/portal/portal-shell.tsx index 076fda0..1136603 100644 --- a/src/components/portal/portal-shell.tsx +++ b/src/components/portal/portal-shell.tsx @@ -1,9 +1,10 @@ "use client" import { type ReactNode, useMemo, useState } from "react" +import Image from "next/image" import Link from "next/link" import { usePathname, useRouter } from "next/navigation" -import { GalleryVerticalEnd, LogOut, PlusCircle } from "lucide-react" +import { LogOut, PlusCircle } from "lucide-react" import { toast } from "sonner" import { Button } from "@/components/ui/button" @@ -76,9 +77,16 @@ export function PortalShell({ children }: PortalShellProps) {
- - - +
+ Logotipo Raven +
Portal do Cliente diff --git a/src/components/sidebar-brand.tsx b/src/components/sidebar-brand.tsx new file mode 100644 index 0000000..7cc2cdf --- /dev/null +++ b/src/components/sidebar-brand.tsx @@ -0,0 +1,47 @@ +"use client" + +import Image from "next/image" + +import { + SidebarMenu, + SidebarMenuButton, + SidebarMenuItem, +} from "@/components/ui/sidebar" + +interface SidebarBrandProps { + logoSrc: string + logoAlt: string + title: string + subtitle: string +} + +export function SidebarBrand({ logoSrc, logoAlt, title, subtitle }: SidebarBrandProps) { + return ( + + + +
+
+ {logoAlt} +
+
+ {title} + {subtitle} +
+
+
+
+
+ ) +} diff --git a/src/components/version-switcher.tsx b/src/components/version-switcher.tsx deleted file mode 100644 index d8b2531..0000000 --- a/src/components/version-switcher.tsx +++ /dev/null @@ -1,67 +0,0 @@ -"use client" - -import * as React from "react" -import { Check, ChevronsUpDown, GalleryVerticalEnd } from "lucide-react" - -import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu" -import { - SidebarMenu, - SidebarMenuButton, - SidebarMenuItem, -} from "@/components/ui/sidebar" - -type VersionSwitcherProps = { - versions: string[] - defaultVersion: string - label?: string -} - -export function VersionSwitcher({ - versions, - defaultVersion, - label = "Documentation", -}: VersionSwitcherProps) { - const [selectedVersion, setSelectedVersion] = React.useState(defaultVersion) - - return ( - - - - - -
- -
-
- {label} - {selectedVersion} -
- -
-
- - {versions.map((version) => ( - setSelectedVersion(version)} - > - {version} {version === selectedVersion && } - - ))} - -
-
-
- ) -}