feat: button, calendar, datePicker, input, pagination, icons 추가

This commit is contained in:
2026-04-09 11:02:18 +09:00
parent 6da730f014
commit 34d5a56a80
19 changed files with 1048 additions and 27 deletions

View File

@@ -0,0 +1,23 @@
import { type SVGProps } from 'react';
export function CalendarIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
{...props}
>
<path d="M8 2v4" />
<path d="M16 2v4" />
<rect width="18" height="18" x="3" y="4" rx="2" />
<path d="M3 10h18" />
</svg>
);
}

View File

@@ -0,0 +1,20 @@
import { SVGProps } from 'react';
export function ChevronLeftIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
{...props}
>
<path d="m15 18-6-6 6-6" />
</svg>
);
}

View File

@@ -0,0 +1,20 @@
import { SVGProps } from 'react';
export function ChevronRightIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
{...props}
>
<path d="m9 18 6-6-6-6" />
</svg>
);
}

View File

@@ -0,0 +1,20 @@
import { type SVGProps } from 'react';
export function LoadingSpinnerIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke="currentColor" {...props}>
<circle cx="12" cy="12" r="10" strokeWidth="4" fill="none" className="opacity-25" />
<circle
cx="12"
cy="12"
r="10"
strokeWidth="4"
strokeLinecap="round"
fill="none"
pathLength="100"
strokeDasharray="60 140"
strokeDashoffset="0"
/>
</svg>
);
}

View File

@@ -0,0 +1,5 @@
export * from './Calendar';
export * from './ChevronLeft';
export * from './ChevronRight';
export * from './LoadingSpinner';