feat: initialize monorepo structure with Bun and Turborepo
- Add package.json for the root with workspace configuration and scripts - Create @gruperly/config package with TypeScript configuration - Establish shared package @gruperly/shared with Zod schemas for validation - Implement group, student, and payment schemas using Zod - Set up TypeScript configuration for shared package - Document stack architecture and technical specifications in stack.md - Configure Turborepo with build, dev, lint, and typecheck tasks
This commit is contained in:
39
apps/web/src/components/brand/LogoIcon.tsx
Normal file
39
apps/web/src/components/brand/LogoIcon.tsx
Normal file
@@ -0,0 +1,39 @@
|
||||
import { forwardRef, type SVGProps } from 'react'
|
||||
import { cn } from '../../lib/utils'
|
||||
|
||||
export type LogoIconProps = SVGProps<SVGSVGElement> & {
|
||||
className?: string
|
||||
}
|
||||
|
||||
export const LogoIcon = forwardRef<SVGSVGElement, LogoIconProps>(
|
||||
({ className, ...props }, ref) => {
|
||||
return (
|
||||
<svg
|
||||
ref={ref}
|
||||
viewBox="0 0 40 40"
|
||||
fill="none"
|
||||
role="img"
|
||||
aria-label="Gruperly"
|
||||
className={cn('size-8', className)}
|
||||
{...props}
|
||||
>
|
||||
<rect
|
||||
width="40"
|
||||
height="40"
|
||||
rx="10"
|
||||
className="fill-accent-soft"
|
||||
/>
|
||||
<path
|
||||
d="M17 14.5c0-1.4 3-1.4 3 0V27.5c0 3-2.5 6-6.5 6-3.6 0-6-2.1-6-5 0-1.4 3-1.4 3 0 0 1 .6 2 3 2 2 0 3-1.2 3-3V17z"
|
||||
className="fill-accent"
|
||||
/>
|
||||
<path
|
||||
d="M20 15.5c0-1.4 3-1.4 3 0v6c0 3 2 5 5.5 5 1.4 0 3-1.2 3-3 0-1.4 3-1.4 3 0 0 3-2.6 4.6-6.5 4.6-4 0-5-3-5-6.6v-6z"
|
||||
className="fill-accent"
|
||||
/>
|
||||
</svg>
|
||||
)
|
||||
},
|
||||
)
|
||||
|
||||
LogoIcon.displayName = 'LogoIcon'
|
||||
Reference in New Issue
Block a user