ultisuite-client/components/gmail/contacts/contacts-panel-logo.tsx
R3D347HR4Y 6ec95262af Add OnlyOffice integration and update project configurations
- Updated .env.example to include configuration for OnlyOffice Document Server.
- Modified the workspace configuration to remove the drive-suite path.
- Adjusted TypeScript environment imports for consistency.
- Enhanced Next.js configuration to disable canvas in Webpack.
- Updated package.json to include new dependencies for OnlyOffice and PDF.js.
- Added global styles for OnlyOffice theme integration in the CSS.
- Created new layout and page components for the Drive feature, including public sharing and editing functionalities.
- Updated metadata handling across various layouts to reflect the new app structure.
2026-06-07 15:49:21 +02:00

45 lines
1.1 KiB
TypeScript

"use client"
import { cn } from "@/lib/utils"
import { suitePublicAsset } from "@/lib/suite/suite-public-asset"
import {
CONTACTS_PANEL_TITLE_CLASS,
} from "@/lib/contacts-chrome-classes"
const CONTACTS_MARK_SRC = suitePublicAsset("/contacts-mark.svg")
type ContactsPanelLogoProps = {
onClick: () => void
className?: string
titleClassName?: string
markClassName?: string
}
export function ContactsPanelLogo({
onClick,
className,
titleClassName = CONTACTS_PANEL_TITLE_CLASS,
markClassName = "h-8 w-8",
}: ContactsPanelLogoProps) {
return (
<button
type="button"
onClick={onClick}
className={cn(
"flex min-w-0 items-center gap-2 rounded-full px-1 py-0.5 text-left transition-colors hover:bg-accent",
className,
)}
aria-label="Liste des contacts"
>
<img
src={CONTACTS_MARK_SRC}
alt=""
className={cn("shrink-0 object-contain", markClassName)}
draggable={false}
aria-hidden
/>
<span className={cn("truncate", titleClassName)}>Contacts</span>
</button>
)
}