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() {
@@ -70,11 +74,11 @@ export function LoginPageClient() {
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) {
-
-
-
+
+
+
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 (
+
+
+
+
+
+
+
+
+ {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 && }
-
- ))}
-
-
-
-
- )
-}