erp-platform/ui/src/views/public/Logo.tsx

40 lines
984 B
TypeScript
Raw Normal View History

2025-08-11 06:34:44 +00:00
import classNames from 'classnames'
import { APP_NAME } from '@/constants/app.constant'
import type { CommonProps } from '@/@types/common'
import { Mode } from '@/@types/theme'
import { Link } from 'react-router-dom'
import { ROUTES_ENUM } from '@/routes/route.constant'
interface LogoProps extends CommonProps {
type?: 'full' | 'streamline'
mode?: Mode
imgClass?: string
logoWidth?: number | string
}
const LOGO_SRC_PATH = '/img/logo/'
const Logo = (props: LogoProps) => {
const { type = 'full', mode = 'light', className, imgClass, style, logoWidth = 'auto' } = props
return (
<div
className={classNames('logo', 'my-1', className)}
style={{
...style,
...{ width: logoWidth },
}}
>
<Link to={ROUTES_ENUM.public.home}>
<img
className={imgClass}
src={`${LOGO_SRC_PATH}logo-${mode}-${type}.png`}
alt={`${APP_NAME} logo`}
/>
</Link>
</div>
)
}
export default Logo