@intflow/edgesafe-ui 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/components/ActionTile/ActionTile.d.ts +7 -0
  2. package/dist/components/ActionTile/index.d.ts +2 -0
  3. package/dist/components/BasicButton/BasicButton.d.ts +22 -0
  4. package/dist/components/BasicButton/index.d.ts +2 -0
  5. package/dist/components/Button/Button.d.ts +20 -0
  6. package/dist/components/Button/index.d.ts +2 -0
  7. package/dist/components/CalendarButton/CalendarButton.d.ts +9 -0
  8. package/dist/components/CalendarButton/index.d.ts +2 -0
  9. package/dist/components/Chip/Chip.d.ts +9 -0
  10. package/dist/components/Chip/index.d.ts +2 -0
  11. package/dist/components/DashedButton/DashedButton.d.ts +7 -0
  12. package/dist/components/DashedButton/index.d.ts +2 -0
  13. package/dist/components/DropdownItem/DropdownItem.d.ts +9 -0
  14. package/dist/components/DropdownItem/index.d.ts +2 -0
  15. package/dist/components/IconButton/IconButton.d.ts +9 -0
  16. package/dist/components/IconButton/index.d.ts +2 -0
  17. package/dist/components/Pagination/Pagination.d.ts +18 -0
  18. package/dist/components/Pagination/index.d.ts +2 -0
  19. package/dist/components/ResetButton/ResetButton.d.ts +7 -0
  20. package/dist/components/ResetButton/index.d.ts +2 -0
  21. package/dist/components/SortButton/SortButton.d.ts +7 -0
  22. package/dist/components/SortButton/index.d.ts +2 -0
  23. package/dist/components/StatusBadge/StatusBadge.d.ts +8 -0
  24. package/dist/components/StatusBadge/index.d.ts +2 -0
  25. package/dist/icons/index.d.ts +26 -0
  26. package/dist/index.cjs +1 -0
  27. package/dist/index.d.ts +14 -0
  28. package/dist/index.js +618 -0
  29. package/dist/styles.css +1 -0
  30. package/package.json +55 -0
@@ -0,0 +1,7 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface ActionTileProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 라벨 위 아이콘 (24px 권장) */
4
+ icon?: ReactNode;
5
+ }
6
+ /** es/BTN_ActionTile — 아이콘 + 라벨 세로 배치 타일 버튼 */
7
+ export declare const ActionTile: import("react").ForwardRefExoticComponent<ActionTileProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { ActionTile } from './ActionTile';
2
+ export type { ActionTileProps } from './ActionTile';
@@ -0,0 +1,22 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export type BasicButtonVariant = 'solid' | 'line';
3
+ /**
4
+ * 유효 조합 (Figma es/BTN/Basic):
5
+ * - solid: primary | primary50 | orange | red | black
6
+ * - line: primary | white
7
+ */
8
+ export type BasicButtonColor = 'primary' | 'primary50' | 'orange' | 'red' | 'black' | 'white';
9
+ export interface BasicButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
10
+ variant?: BasicButtonVariant;
11
+ color?: BasicButtonColor;
12
+ /** 라벨 왼쪽 아이콘 (16~20px 권장) */
13
+ icon?: ReactNode;
14
+ /** 아이콘 전용 정사각 버튼 */
15
+ iconOnly?: boolean;
16
+ }
17
+ /**
18
+ * es/BTN/Basic — 컴팩트(높이 32) 범용 버튼.
19
+ * hover/pressed 는 디자인 가이드의 Interaction 오버레이(#303030,
20
+ * hover 8% → pressed 12% = ×1.5 가중치)로 표현한다.
21
+ */
22
+ export declare const BasicButton: import("react").ForwardRefExoticComponent<BasicButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { BasicButton } from './BasicButton';
2
+ export type { BasicButtonProps, BasicButtonVariant, BasicButtonColor, } from './BasicButton';
@@ -0,0 +1,20 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ /**
3
+ * - `primary` — es/BTN_56·48·40 (Filled), size 'sm'이면 es/BTN_Small_Primary_R8
4
+ * - `danger` — es/BTN_Danger
5
+ * - `grey` — es/BTN_Grey_48·40
6
+ * - `white` — es/BNT_White_Big·48, es/BTN_White_40
7
+ * - `outline` — es/BTN_Small_R8 (중립 아웃라인)
8
+ */
9
+ export type ButtonVariant = 'primary' | 'danger' | 'grey' | 'white' | 'outline';
10
+ /** 56·48·40: 고정 높이 폼 버튼. 'sm': 내용에 맞는 높이 40 버튼 (Small_R8 계열) */
11
+ export type ButtonSize = 56 | 48 | 40 | 'sm';
12
+ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
13
+ variant?: ButtonVariant;
14
+ size?: ButtonSize;
15
+ /** 컨테이너 가로폭에 맞춰 늘림 */
16
+ fullWidth?: boolean;
17
+ /** 라벨 왼쪽 아이콘 (24px 권장) */
18
+ icon?: ReactNode;
19
+ }
20
+ export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { Button } from './Button';
2
+ export type { ButtonProps, ButtonVariant, ButtonSize } from './Button';
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface CalendarButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 달력 팝오버가 열려 있는 등 선택된 상태 */
4
+ selected?: boolean;
5
+ /** 라벨 오른쪽 아이콘 (기본: 캘린더 아이콘) */
6
+ icon?: ReactNode;
7
+ }
8
+ /** es/BTN_Calendar — 기간 선택 트리거 버튼 */
9
+ export declare const CalendarButton: import("react").ForwardRefExoticComponent<CalendarButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { CalendarButton } from './CalendarButton';
2
+ export type { CalendarButtonProps } from './CalendarButton';
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface ChipProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 선택 시 프라이머리 배경으로 채워짐 */
4
+ selected?: boolean;
5
+ /** 라벨 오른쪽 아이콘 (20px 권장) */
6
+ icon?: ReactNode;
7
+ }
8
+ /** es/BTN_32 — 텍스트(+아이콘) 토글 칩. 선택 시 프라이머리로 채워진다. */
9
+ export declare const Chip: import("react").ForwardRefExoticComponent<ChipProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { Chip } from './Chip';
2
+ export type { ChipProps } from './Chip';
@@ -0,0 +1,7 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface DashedButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 라벨 왼쪽 아이콘 (기본: ⊕ 추가 아이콘) */
4
+ icon?: ReactNode;
5
+ }
6
+ /** es/BTN_Dash — 항목 추가용 대시 보더 버튼 (기본 100% 폭) */
7
+ export declare const DashedButton: import("react").ForwardRefExoticComponent<DashedButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { DashedButton } from './DashedButton';
2
+ export type { DashedButtonProps } from './DashedButton';
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes } from 'react';
2
+ export interface DropdownItemProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 현재 선택된 옵션 (텍스트가 프라이머리 색으로 표시) */
4
+ selected?: boolean;
5
+ /** 체크박스 표시 (멀티 선택 목록) — true면 체크 아이콘이 보임 */
6
+ checked?: boolean;
7
+ }
8
+ /** es/BTN/Dropdown/Small — 드롭다운 목록의 옵션 행 */
9
+ export declare const DropdownItem: import("react").ForwardRefExoticComponent<DropdownItemProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { DropdownItem } from './DropdownItem';
2
+ export type { DropdownItemProps } from './DropdownItem';
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface IconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
3
+ /** 스크린리더용 라벨 (필수) */
4
+ label: string;
5
+ /** 24px 아이콘 */
6
+ children: ReactNode;
7
+ }
8
+ /** es/BTN_icon — 32×32 히트 영역의 아이콘 버튼 */
9
+ export declare const IconButton: import("react").ForwardRefExoticComponent<IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { IconButton } from './IconButton';
2
+ export type { IconButtonProps } from './IconButton';
@@ -0,0 +1,18 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes } from 'react';
2
+ export interface PaginationItemProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ selected?: boolean;
4
+ }
5
+ export declare const PaginationItem: import("react").ForwardRefExoticComponent<PaginationItemProps & import("react").RefAttributes<HTMLButtonElement>>;
6
+ export interface PaginationArrowProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
7
+ direction?: 'prev' | 'next';
8
+ }
9
+ export declare const PaginationArrow: import("react").ForwardRefExoticComponent<PaginationArrowProps & import("react").RefAttributes<HTMLButtonElement>>;
10
+ export interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, 'onChange'> {
11
+ /** 현재 페이지 (1부터 시작) */
12
+ page: number;
13
+ totalPages: number;
14
+ onPageChange?: (page: number) => void;
15
+ /** 한 번에 보여줄 페이지 번호 수 (기본 5) */
16
+ maxVisible?: number;
17
+ }
18
+ export declare const Pagination: import("react").ForwardRefExoticComponent<PaginationProps & import("react").RefAttributes<HTMLElement>>;
@@ -0,0 +1,2 @@
1
+ export { Pagination, PaginationItem, PaginationArrow } from './Pagination';
2
+ export type { PaginationProps, PaginationItemProps, PaginationArrowProps, } from './Pagination';
@@ -0,0 +1,7 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ export interface ResetButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 라벨 왼쪽 아이콘 (기본: 초기화 아이콘) */
4
+ icon?: ReactNode;
5
+ }
6
+ /** es/BTN_Reset — 필터 초기화 등 보조 액션용 고스트 버튼 */
7
+ export declare const ResetButton: import("react").ForwardRefExoticComponent<ResetButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { ResetButton } from './ResetButton';
2
+ export type { ResetButtonProps } from './ResetButton';
@@ -0,0 +1,7 @@
1
+ import { type ButtonHTMLAttributes } from 'react';
2
+ export interface SortButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ /** 현재 적용 중인 정렬이면 true */
4
+ selected?: boolean;
5
+ }
6
+ /** ef/BTN_Sort — 목록 정렬 기준 선택 버튼 (높이 28) */
7
+ export declare const SortButton: import("react").ForwardRefExoticComponent<SortButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { SortButton } from './SortButton';
2
+ export type { SortButtonProps } from './SortButton';
@@ -0,0 +1,8 @@
1
+ import { type HTMLAttributes } from 'react';
2
+ export type StatusBadgeStatus = 'normal' | 'abnormal';
3
+ export interface StatusBadgeProps extends HTMLAttributes<HTMLSpanElement> {
4
+ /** normal(정상, 초록) | abnormal(이상, 빨강) */
5
+ status?: StatusBadgeStatus;
6
+ }
7
+ /** es/BTN_28 — 정상/이상 상태 배지 (비인터랙티브) */
8
+ export declare const StatusBadge: import("react").ForwardRefExoticComponent<StatusBadgeProps & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,2 @@
1
+ export { StatusBadge } from './StatusBadge';
2
+ export type { StatusBadgeProps, StatusBadgeStatus } from './StatusBadge';
@@ -0,0 +1,26 @@
1
+ import type { SVGProps } from 'react';
2
+ /**
3
+ * Figma edgesafe 아이콘 세트에서 추출한 SVG 아이콘.
4
+ * 패스 데이터는 Figma 익스포트 원본 그대로이며, 색상만 currentColor로
5
+ * 치환해 버튼 상태(hover/pressed/disabled)에 따라 색이 상속되도록 했다.
6
+ */
7
+ export interface IconProps extends SVGProps<SVGSVGElement> {
8
+ /** 아이콘 한 변의 크기(px). 기본값은 디자인 원본 크기 */
9
+ size?: number;
10
+ }
11
+ /** es / Icon_24 / General_Logout */
12
+ export declare function IconLogout({ size, ...props }: IconProps): import("react").JSX.Element;
13
+ /** es / Icon_20 / General_Square Top Down (새 창으로 이동) */
14
+ export declare function IconSquareTopDown({ size, ...props }: IconProps): import("react").JSX.Element;
15
+ /** es / Icon_24 / General_Arrow Down (원형 + 추가 아이콘 — BTN_Dash에 사용) */
16
+ export declare function IconAddCircle({ size, ...props }: IconProps): import("react").JSX.Element;
17
+ /** es / Icon_24 / Report_Calendar (검색 루페가 있는 캘린더) */
18
+ export declare function IconCalendar({ size, ...props }: IconProps): import("react").JSX.Element;
19
+ /** es / Icon_24 / Report_Restart (초기화) */
20
+ export declare function IconRestart({ size, ...props }: IconProps): import("react").JSX.Element;
21
+ /** es / Icon_24 / General_Refresh Square 2 (구독 관리 타일) */
22
+ export declare function IconRefreshSquare({ size, ...props }: IconProps): import("react").JSX.Element;
23
+ /** es / Icon_24 / General_Round Arrow Right (페이지네이션 화살표) */
24
+ export declare function IconCircleArrowRight({ size, ...props }: IconProps): import("react").JSX.Element;
25
+ /** ef / Icon_24 / General_Check / On (체크박스 켜짐 — 박스는 currentColor, 체크 표시는 흰색) */
26
+ export declare function IconCheckOn({ size, ...props }: IconProps): import("react").JSX.Element;
package/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),c=require("react");function l(...e){return e.filter(Boolean).join(" ")}const A="_button_1o7nk_1",H="_icon_1o7nk_65",q="_label_1o7nk_75",Z="_fullWidth_1o7nk_83",D="_white_1o7nk_123",P="_grey_1o7nk_125",O="_primary_1o7nk_153",T="_danger_1o7nk_219",z="_outline_1o7nk_365",_={button:A,icon:H,label:q,fullWidth:Z,"size-56":"_size-56_1o7nk_93","size-48":"_size-48_1o7nk_101","size-40":"_size-40_1o7nk_109",white:D,grey:P,"size-sm":"_size-sm_1o7nk_137",primary:O,danger:T,outline:z},E=c.forwardRef(function({variant:n="primary",size:r=48,fullWidth:o=!1,icon:s,className:i,children:a,type:d="button",...u},C){return t.jsxs("button",{ref:C,type:d,className:l(_.button,_[n],_[`size-${r}`],o&&_.fullWidth,i),...u,children:[s!=null&&t.jsx("span",{className:_.icon,"aria-hidden":"true",children:s}),a!=null&&t.jsx("span",{className:_.label,children:a})]})}),F="_basic_1awue_1",G="_icon_1awue_103",J="_iconOnly_1awue_113",f={basic:F,icon:G,iconOnly:J,"solid-primary":"_solid-primary_1awue_125","solid-primary50":"_solid-primary50_1awue_135","solid-orange":"_solid-orange_1awue_145","solid-red":"_solid-red_1awue_155","solid-black":"_solid-black_1awue_165","line-primary":"_line-primary_1awue_195","line-white":"_line-white_1awue_207"},K=c.forwardRef(function({variant:n="solid",color:r="primary",icon:o,iconOnly:s=!1,className:i,children:a,type:d="button",...u},C){return t.jsxs("button",{ref:C,type:d,className:l(f.basic,f[`${n}-${r}`]??f["solid-primary"],s&&f.iconOnly,i),...u,children:[o!=null&&t.jsx("span",{className:f.icon,"aria-hidden":"true",children:o}),!s&&a!=null&&t.jsx("span",{children:a})]})}),Q="_iconButton_6190a_1",U={iconButton:Q},X=c.forwardRef(function({label:n,className:r,children:o,type:s="button",...i},a){return t.jsx("button",{ref:a,type:s,"aria-label":n,className:l(U.iconButton,r),...i,children:o})}),Y="_chip_1p0ad_1",t1="_icon_1p0ad_55",n1="_selected_1p0ad_93",w={chip:Y,icon:t1,selected:n1},e1=c.forwardRef(function({selected:n=!1,icon:r,className:o,children:s,type:i="button",...a},d){return t.jsxs("button",{ref:d,type:i,"aria-pressed":n,className:l(w.chip,n&&w.selected,o),...a,children:[t.jsx("span",{children:s}),r!=null&&t.jsx("span",{className:w.icon,"aria-hidden":"true",children:r})]})}),o1="_badge_1l3tz_1",r1="_normal_1l3tz_37",s1="_abnormal_1l3tz_45",k={badge:o1,normal:r1,abnormal:s1},i1=c.forwardRef(function({status:n="normal",className:r,children:o,...s},i){return t.jsx("span",{ref:i,className:l(k.badge,k[n],r),...s,children:o??(n==="normal"?"정상":"이상")})});function a1({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("path",{d:"M5.46967 12.5303C5.17678 12.2374 5.17678 11.7626 5.46967 11.4697L7.46967 9.46967C7.76257 9.17678 8.23744 9.17678 8.53033 9.46967C8.82323 9.76256 8.82323 10.2374 8.53033 10.5303L7.81066 11.25L15 11.25C15.4142 11.25 15.75 11.5858 15.75 12C15.75 12.4142 15.4142 12.75 15 12.75L7.81066 12.75L8.53033 13.4697C8.82323 13.7626 8.82323 14.2374 8.53033 14.5303C8.23744 14.8232 7.76257 14.8232 7.46967 14.5303L5.46967 12.5303Z",fill:"currentColor"}),t.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.9453 1.25H15.0551C16.4227 1.24998 17.525 1.24996 18.392 1.36652C19.2921 1.48754 20.05 1.74643 20.6519 2.34835C21.2538 2.95027 21.5127 3.70814 21.6337 4.60825C21.7503 5.47522 21.7502 6.57754 21.7502 7.94513V16.0549C21.7502 17.4225 21.7503 18.5248 21.6337 19.3918C21.5127 20.2919 21.2538 21.0497 20.6519 21.6517C20.05 22.2536 19.2921 22.5125 18.392 22.6335C17.525 22.75 16.4227 22.75 15.0551 22.75H13.9453C12.5778 22.75 11.4754 22.75 10.6085 22.6335C9.70836 22.5125 8.95048 22.2536 8.34857 21.6517C7.94963 21.2527 7.70068 20.7844 7.54305 20.2498C6.59168 20.2486 5.79906 20.2381 5.15689 20.1518C4.39294 20.0491 3.7306 19.8268 3.20191 19.2981C2.67321 18.7694 2.45093 18.1071 2.34822 17.3431C2.24996 16.6123 2.24998 15.6865 2.25 14.5537V9.44631C2.24998 8.31349 2.24996 7.38774 2.34822 6.65689C2.45093 5.89294 2.67321 5.2306 3.20191 4.7019C3.7306 4.17321 4.39294 3.95093 5.15689 3.84822C5.79906 3.76188 6.59168 3.75142 7.54305 3.75017C7.70068 3.21562 7.94963 2.74729 8.34857 2.34835C8.95048 1.74643 9.70836 1.48754 10.6085 1.36652C11.4754 1.24996 12.5778 1.24998 13.9453 1.25ZM7.25197 17.0042C7.25555 17.6487 7.2662 18.2293 7.30285 18.7491C6.46836 18.7459 5.848 18.7312 5.35676 18.6652C4.75914 18.5848 4.46611 18.441 4.26257 18.2374C4.05903 18.0339 3.91519 17.7409 3.83484 17.1432C3.7516 16.5241 3.75 15.6997 3.75 14.5V9.5C3.75 8.30029 3.7516 7.47595 3.83484 6.85676C3.91519 6.25914 4.05903 5.9661 4.26257 5.76256C4.46611 5.55902 4.75914 5.41519 5.35676 5.33484C5.848 5.2688 6.46836 5.25415 7.30285 5.25091C7.2662 5.77073 7.25555 6.35129 7.25197 6.99583C7.24966 7.41003 7.58357 7.74768 7.99778 7.74999C8.41199 7.7523 8.74964 7.41838 8.75194 7.00418C8.75803 5.91068 8.78643 5.1356 8.89448 4.54735C8.9986 3.98054 9.16577 3.65246 9.40923 3.40901C9.68599 3.13225 10.0746 2.9518 10.8083 2.85315C11.5637 2.75159 12.5648 2.75 14.0002 2.75H15.0002C16.4356 2.75 17.4367 2.75159 18.1921 2.85315C18.9259 2.9518 19.3144 3.13225 19.5912 3.40901C19.868 3.68577 20.0484 4.07435 20.1471 4.80812C20.2486 5.56347 20.2502 6.56459 20.2502 8V16C20.2502 17.4354 20.2486 18.4365 20.1471 19.1919C20.0484 19.9257 19.868 20.3142 19.5912 20.591C19.3144 20.8678 18.9259 21.0482 18.1921 21.1469C17.4367 21.2484 16.4356 21.25 15.0002 21.25H14.0002C12.5648 21.25 11.5637 21.2484 10.8083 21.1469C10.0746 21.0482 9.68599 20.8678 9.40923 20.591C9.16577 20.3475 8.9986 20.0195 8.89448 19.4527C8.78643 18.8644 8.75803 18.0893 8.75194 16.9958C8.74964 16.5816 8.41199 16.2477 7.99778 16.25C7.58357 16.2523 7.24966 16.59 7.25197 17.0042Z",fill:"currentColor"})]})}function c1({size:e=20,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 20 20",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("path",{d:"M10 8.75L17.5 2.5M17.5 6.21094V2.5H13.0469",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),t.jsx("path",{d:"M17.5 10C17.5 13.5355 17.5 15.3033 16.4017 16.4017C15.3033 17.5 13.5355 17.5 10 17.5C6.46447 17.5 4.6967 17.5 3.59835 16.4017C2.5 15.3033 2.5 13.5355 2.5 10C2.5 6.46447 2.5 4.6967 3.59835 3.59835C4.6967 2.5 6.46447 2.5 10 2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function B({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("path",{d:"M15 12L12 12M12 12L9 12M12 12L12 9M12 12L12 15",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function y({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("path",{d:"M22 14V12C22 8.22876 22 6.34315 20.8284 5.17157C19.6569 4 17.7712 4 14 4H10C6.22876 4 4.34315 4 3.17157 5.17157C2 6.34315 2 8.22876 2 12V14C2 17.7712 2 19.6569 3.17157 20.8284C4.34315 22 6.22876 22 10 22H14",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),t.jsx("path",{d:"M7 4V2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),t.jsx("path",{d:"M17 4V2.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),t.jsx("circle",{cx:"18",cy:"18",r:"3",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("path",{d:"M20.5 20.5L22 22",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),t.jsx("path",{d:"M2.5 9H21.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function M({size:e=24,...n}){return t.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:t.jsx("path",{d:"M18.364 8.05026L17.6569 7.34315C14.5327 4.21896 9.46734 4.21896 6.34315 7.34315C3.21895 10.4673 3.21895 15.5327 6.34315 18.6569C9.46734 21.7811 14.5327 21.7811 17.6569 18.6569C19.4737 16.84 20.234 14.3668 19.9377 12.0005M18.364 3.80762V8.05026H14.1213",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}function R({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("path",{d:"M6.71275 10.6736C7.16723 8.15492 9.38539 6.25 12.0437 6.25C13.6212 6.25 15.0431 6.9209 16.0328 7.9907C16.3141 8.29476 16.2956 8.76927 15.9915 9.05055C15.6875 9.33183 15.213 9.31337 14.9317 9.0093C14.2154 8.23504 13.1879 7.75 12.0437 7.75C10.2056 7.75 8.66974 9.00212 8.24452 10.6853L8.48095 10.4586C8.77994 10.172 9.25471 10.182 9.54137 10.4809C9.82804 10.7799 9.81805 11.2547 9.51905 11.5414L7.89662 13.0969C7.74932 13.2381 7.55084 13.3133 7.34695 13.3049C7.14306 13.2966 6.95137 13.2056 6.81608 13.0528L5.43852 11.4972C5.16391 11.1871 5.19267 10.7131 5.50277 10.4385C5.81286 10.1639 6.28686 10.1927 6.56148 10.5028L6.71275 10.6736Z",fill:"currentColor"}),t.jsx("path",{d:"M16.6485 10.6959C16.8523 10.704 17.044 10.7947 17.1795 10.9472L18.5607 12.5019C18.8358 12.8115 18.8078 13.2856 18.4981 13.5607C18.1885 13.8358 17.7144 13.8078 17.4393 13.4981L17.2841 13.3234C16.8295 15.8458 14.6011 17.7509 11.9348 17.7509C10.3635 17.7509 8.94543 17.0895 7.95312 16.0322C7.66966 15.7302 7.68472 15.2555 7.98675 14.9721C8.28879 14.6886 8.76342 14.7037 9.04688 15.0057C9.76546 15.7714 10.792 16.2509 11.9348 16.2509C13.7819 16.2509 15.322 14.9991 15.7503 13.3193L15.5195 13.5409C15.2208 13.8278 14.746 13.8183 14.4591 13.5195C14.1721 13.2208 14.1817 12.746 14.4805 12.4591L16.0993 10.9044C16.2464 10.7631 16.4447 10.6878 16.6485 10.6959Z",fill:"currentColor"}),t.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.9426 1.25C9.63423 1.24999 7.82519 1.24998 6.4137 1.43975C4.96897 1.63399 3.82895 2.03933 2.93414 2.93414C2.03933 3.82895 1.63399 4.96897 1.43975 6.41371C1.24998 7.82519 1.24999 9.63423 1.25 11.9426V12.0574C1.24999 14.3658 1.24998 16.1748 1.43975 17.5863C1.63399 19.031 2.03933 20.1711 2.93414 21.0659C3.82895 21.9607 4.96897 22.366 6.4137 22.5603C7.82519 22.75 9.63423 22.75 11.9426 22.75H12.0574C14.3658 22.75 16.1748 22.75 17.5863 22.5603C19.031 22.366 20.1711 21.9607 21.0659 21.0659C21.9607 20.1711 22.366 19.031 22.5603 17.5863C22.75 16.1748 22.75 14.3658 22.75 12.0574V11.9426C22.75 9.63423 22.75 7.82519 22.5603 6.41371C22.366 4.96897 21.9607 3.82895 21.0659 2.93414C20.1711 2.03933 19.031 1.63399 17.5863 1.43975C16.1748 1.24998 14.3658 1.24999 12.0574 1.25H11.9426ZM3.9948 3.9948C4.56445 3.42514 5.33517 3.09825 6.61358 2.92637C7.91356 2.75159 9.62177 2.75 12 2.75C14.3782 2.75 16.0864 2.75159 17.3864 2.92637C18.6648 3.09825 19.4355 3.42514 20.0052 3.9948C20.5749 4.56445 20.9018 5.33517 21.0736 6.61358C21.2484 7.91356 21.25 9.62178 21.25 12C21.25 14.3782 21.2484 16.0864 21.0736 17.3864C20.9018 18.6648 20.5749 19.4355 20.0052 20.0052C19.4355 20.5749 18.6648 20.9018 17.3864 21.0736C16.0864 21.2484 14.3782 21.25 12 21.25C9.62177 21.25 7.91356 21.2484 6.61358 21.0736C5.33517 20.9018 4.56445 20.5749 3.9948 20.0052C3.42514 19.4355 3.09825 18.6648 2.92637 17.3864C2.75159 16.0864 2.75 14.3782 2.75 12C2.75 9.62178 2.75159 7.91356 2.92637 6.61358C3.09825 5.33517 3.42514 4.56445 3.9948 3.9948Z",fill:"currentColor"})]})}function $({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("path",{d:"M10.5 9L13.5 12L10.5 15",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}function I({size:e=24,...n}){return t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",...n,children:[t.jsx("path",{d:"M2 12C2 7.28595 2 4.92893 3.46447 3.46447C4.92893 2 7.28595 2 12 2C16.714 2 19.0711 2 20.5355 3.46447C22 4.92893 22 7.28595 22 12C22 16.714 22 19.0711 20.5355 20.5355C19.0711 22 16.714 22 12 22C7.28595 22 4.92893 22 3.46447 20.5355C2 19.0711 2 16.714 2 12Z",fill:"currentColor"}),t.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M18.4933 6.93501C18.8053 7.20742 18.8374 7.6812 18.565 7.99324L10.7079 16.9932C10.5654 17.1564 10.3594 17.25 10.1429 17.25C9.9263 17.25 9.72031 17.1564 9.57788 16.9932L6.43502 13.3932C6.16261 13.0812 6.19473 12.6074 6.50677 12.335C6.8188 12.0626 7.29259 12.0947 7.565 12.4068L10.1429 15.3596L17.435 7.00675C17.7074 6.69472 18.1812 6.6626 18.4933 6.93501Z",fill:"#ffffff"})]})}const l1="_dashed_coh50_1",d1="_icon_coh50_53",g={dashed:l1,icon:d1},u1=c.forwardRef(function({icon:n=t.jsx(B,{}),className:r,children:o,type:s="button",...i},a){return t.jsxs("button",{ref:a,type:s,className:l(g.dashed,r),...i,children:[n!=null&&t.jsx("span",{className:g.icon,"aria-hidden":"true",children:n}),t.jsx("span",{children:o})]})}),C1="_calendar_1q4or_1",_1="_icon_1q4or_53",h1="_selected_1q4or_93",m={calendar:C1,icon:_1,selected:h1},f1=c.forwardRef(function({selected:n=!1,icon:r=t.jsx(y,{}),className:o,children:s,type:i="button",...a},d){return t.jsxs("button",{ref:d,type:i,"aria-expanded":n,className:l(m.calendar,n&&m.selected,o),...a,children:[t.jsx("span",{children:s}),r!=null&&t.jsx("span",{className:m.icon,"aria-hidden":"true",children:r})]})}),x1="_reset_tyfcd_1",p1="_icon_tyfcd_51",b={reset:x1,icon:p1},w1=c.forwardRef(function({icon:n=t.jsx(M,{}),className:r,children:o="초기화",type:s="button",...i},a){return t.jsxs("button",{ref:a,type:s,className:l(b.reset,r),...i,children:[n!=null&&t.jsx("span",{className:b.icon,"aria-hidden":"true",children:n}),t.jsx("span",{children:o})]})}),m1="_pagination_n4t9a_1",j1="_item_n4t9a_15",k1="_selected_n4t9a_83",g1="_arrow_n4t9a_97",b1="_prev_n4t9a_165",x={pagination:m1,item:j1,selected:k1,arrow:g1,prev:b1},N=c.forwardRef(function({selected:n=!1,className:r,children:o,type:s="button",...i},a){return t.jsx("button",{ref:a,type:s,"aria-current":n?"page":void 0,className:l(x.item,n&&x.selected,r),...i,children:o})}),j=c.forwardRef(function({direction:n="next",className:r,type:o="button",...s},i){return t.jsx("button",{ref:i,type:o,"aria-label":n==="prev"?"이전 페이지":"다음 페이지",className:l(x.arrow,n==="prev"&&x.prev,r),...s,children:t.jsx($,{})})}),v1=c.forwardRef(function({page:n,totalPages:r,onPageChange:o,maxVisible:s=5,className:i,...a},d){const u=Math.max(1,r),C=Math.min(s,u),W=Math.min(Math.max(1,n-Math.floor(C/2)),u-C+1),S=Array.from({length:C},(h,V)=>W+V);return t.jsxs("nav",{ref:d,"aria-label":"페이지네이션",className:l(x.pagination,i),...a,children:[t.jsx(j,{direction:"prev",disabled:n<=1,onClick:()=>o?.(n-1)}),S.map(h=>t.jsx(N,{selected:h===n,onClick:()=>o?.(h),children:h},h)),t.jsx(j,{direction:"next",disabled:n>=u,onClick:()=>o?.(n+1)})]})}),L1="_sort_r6mnc_1",B1="_selected_r6mnc_85",v={sort:L1,selected:B1},y1=c.forwardRef(function({selected:n=!1,className:r,children:o,type:s="button",...i},a){return t.jsx("button",{ref:a,type:s,"aria-pressed":n,className:l(v.sort,n&&v.selected,r),...i,children:o})}),M1="_item_1cc0o_1",R1="_label_1cc0o_51",$1="_check_1cc0o_69",I1="_selected_1cc0o_111",p={item:M1,label:R1,check:$1,selected:I1},N1=c.forwardRef(function({selected:n=!1,checked:r,className:o,children:s,type:i="button",...a},d){return t.jsxs("button",{ref:d,type:i,"data-selected":n||void 0,className:l(p.item,n&&p.selected,o),...a,children:[r&&t.jsx("span",{className:p.check,"aria-hidden":"true",children:t.jsx(I,{})}),t.jsx("span",{className:p.label,children:s})]})}),W1="_tile_rg4j9_1",S1="_icon_rg4j9_51",L={tile:W1,icon:S1},V1=c.forwardRef(function({icon:n=t.jsx(R,{}),className:r,children:o,type:s="button",...i},a){return t.jsxs("button",{ref:a,type:s,className:l(L.tile,r),...i,children:[n!=null&&t.jsx("span",{className:L.icon,"aria-hidden":"true",children:n}),t.jsx("span",{children:o})]})});exports.ActionTile=V1;exports.BasicButton=K;exports.Button=E;exports.CalendarButton=f1;exports.Chip=e1;exports.DashedButton=u1;exports.DropdownItem=N1;exports.IconAddCircle=B;exports.IconButton=X;exports.IconCalendar=y;exports.IconCheckOn=I;exports.IconCircleArrowRight=$;exports.IconLogout=a1;exports.IconRefreshSquare=R;exports.IconRestart=M;exports.IconSquareTopDown=c1;exports.Pagination=v1;exports.PaginationArrow=j;exports.PaginationItem=N;exports.ResetButton=w1;exports.SortButton=y1;exports.StatusBadge=i1;
@@ -0,0 +1,14 @@
1
+ import './styles/base.css';
2
+ export * from './components/Button';
3
+ export * from './components/BasicButton';
4
+ export * from './components/IconButton';
5
+ export * from './components/Chip';
6
+ export * from './components/StatusBadge';
7
+ export * from './components/DashedButton';
8
+ export * from './components/CalendarButton';
9
+ export * from './components/ResetButton';
10
+ export * from './components/Pagination';
11
+ export * from './components/SortButton';
12
+ export * from './components/DropdownItem';
13
+ export * from './components/ActionTile';
14
+ export * from './icons';
package/dist/index.js ADDED
@@ -0,0 +1,618 @@
1
+ import { jsxs as a, jsx as n } from "react/jsx-runtime";
2
+ import { forwardRef as l } from "react";
3
+ function d(...e) {
4
+ return e.filter(Boolean).join(" ");
5
+ }
6
+ const W = "_button_1o7nk_1", I = "_icon_1o7nk_65", R = "_label_1o7nk_75", V = "_fullWidth_1o7nk_83", H = "_white_1o7nk_123", Z = "_grey_1o7nk_125", j = "_primary_1o7nk_153", A = "_danger_1o7nk_219", S = "_outline_1o7nk_365", h = {
7
+ button: W,
8
+ icon: I,
9
+ label: R,
10
+ fullWidth: V,
11
+ "size-56": "_size-56_1o7nk_93",
12
+ "size-48": "_size-48_1o7nk_101",
13
+ "size-40": "_size-40_1o7nk_109",
14
+ white: H,
15
+ grey: Z,
16
+ "size-sm": "_size-sm_1o7nk_137",
17
+ primary: j,
18
+ danger: A,
19
+ outline: S
20
+ }, B1 = l(
21
+ function({
22
+ variant: t = "primary",
23
+ size: r = 48,
24
+ fullWidth: o = !1,
25
+ icon: i,
26
+ className: s,
27
+ children: c,
28
+ type: u = "button",
29
+ ...C
30
+ }, _) {
31
+ return /* @__PURE__ */ a(
32
+ "button",
33
+ {
34
+ ref: _,
35
+ type: u,
36
+ className: d(
37
+ h.button,
38
+ h[t],
39
+ h[`size-${r}`],
40
+ o && h.fullWidth,
41
+ s
42
+ ),
43
+ ...C,
44
+ children: [
45
+ i != null && /* @__PURE__ */ n("span", { className: h.icon, "aria-hidden": "true", children: i }),
46
+ c != null && /* @__PURE__ */ n("span", { className: h.label, children: c })
47
+ ]
48
+ }
49
+ );
50
+ }
51
+ ), q = "_basic_1awue_1", D = "_icon_1awue_103", z = "_iconOnly_1awue_113", m = {
52
+ basic: q,
53
+ icon: D,
54
+ iconOnly: z,
55
+ "solid-primary": "_solid-primary_1awue_125",
56
+ "solid-primary50": "_solid-primary50_1awue_135",
57
+ "solid-orange": "_solid-orange_1awue_145",
58
+ "solid-red": "_solid-red_1awue_155",
59
+ "solid-black": "_solid-black_1awue_165",
60
+ "line-primary": "_line-primary_1awue_195",
61
+ "line-white": "_line-white_1awue_207"
62
+ }, M1 = l(
63
+ function({
64
+ variant: t = "solid",
65
+ color: r = "primary",
66
+ icon: o,
67
+ iconOnly: i = !1,
68
+ className: s,
69
+ children: c,
70
+ type: u = "button",
71
+ ...C
72
+ }, _) {
73
+ return /* @__PURE__ */ a(
74
+ "button",
75
+ {
76
+ ref: _,
77
+ type: u,
78
+ className: d(
79
+ m.basic,
80
+ m[`${t}-${r}`] ?? m["solid-primary"],
81
+ i && m.iconOnly,
82
+ s
83
+ ),
84
+ ...C,
85
+ children: [
86
+ o != null && /* @__PURE__ */ n("span", { className: m.icon, "aria-hidden": "true", children: o }),
87
+ !i && c != null && /* @__PURE__ */ n("span", { children: c })
88
+ ]
89
+ }
90
+ );
91
+ }
92
+ ), O = "_iconButton_6190a_1", P = {
93
+ iconButton: O
94
+ }, x1 = l(
95
+ function({ label: t, className: r, children: o, type: i = "button", ...s }, c) {
96
+ return /* @__PURE__ */ n(
97
+ "button",
98
+ {
99
+ ref: c,
100
+ type: i,
101
+ "aria-label": t,
102
+ className: d(P.iconButton, r),
103
+ ...s,
104
+ children: o
105
+ }
106
+ );
107
+ }
108
+ ), T = "_chip_1p0ad_1", E = "_icon_1p0ad_55", F = "_selected_1p0ad_93", k = {
109
+ chip: T,
110
+ icon: E,
111
+ selected: F
112
+ }, $1 = l(function({ selected: t = !1, icon: r, className: o, children: i, type: s = "button", ...c }, u) {
113
+ return /* @__PURE__ */ a(
114
+ "button",
115
+ {
116
+ ref: u,
117
+ type: s,
118
+ "aria-pressed": t,
119
+ className: d(k.chip, t && k.selected, o),
120
+ ...c,
121
+ children: [
122
+ /* @__PURE__ */ n("span", { children: i }),
123
+ r != null && /* @__PURE__ */ n("span", { className: k.icon, "aria-hidden": "true", children: r })
124
+ ]
125
+ }
126
+ );
127
+ }), G = "_badge_1l3tz_1", J = "_normal_1l3tz_37", K = "_abnormal_1l3tz_45", g = {
128
+ badge: G,
129
+ normal: J,
130
+ abnormal: K
131
+ }, N1 = l(
132
+ function({ status: t = "normal", className: r, children: o, ...i }, s) {
133
+ return /* @__PURE__ */ n(
134
+ "span",
135
+ {
136
+ ref: s,
137
+ className: d(g.badge, g[t], r),
138
+ ...i,
139
+ children: o ?? (t === "normal" ? "정상" : "이상")
140
+ }
141
+ );
142
+ }
143
+ );
144
+ function W1({ size: e = 24, ...t }) {
145
+ return /* @__PURE__ */ a(
146
+ "svg",
147
+ {
148
+ width: e,
149
+ height: e,
150
+ viewBox: "0 0 24 24",
151
+ fill: "none",
152
+ "aria-hidden": "true",
153
+ xmlns: "http://www.w3.org/2000/svg",
154
+ ...t,
155
+ children: [
156
+ /* @__PURE__ */ n(
157
+ "path",
158
+ {
159
+ d: "M5.46967 12.5303C5.17678 12.2374 5.17678 11.7626 5.46967 11.4697L7.46967 9.46967C7.76257 9.17678 8.23744 9.17678 8.53033 9.46967C8.82323 9.76256 8.82323 10.2374 8.53033 10.5303L7.81066 11.25L15 11.25C15.4142 11.25 15.75 11.5858 15.75 12C15.75 12.4142 15.4142 12.75 15 12.75L7.81066 12.75L8.53033 13.4697C8.82323 13.7626 8.82323 14.2374 8.53033 14.5303C8.23744 14.8232 7.76257 14.8232 7.46967 14.5303L5.46967 12.5303Z",
160
+ fill: "currentColor"
161
+ }
162
+ ),
163
+ /* @__PURE__ */ n(
164
+ "path",
165
+ {
166
+ fillRule: "evenodd",
167
+ clipRule: "evenodd",
168
+ d: "M13.9453 1.25H15.0551C16.4227 1.24998 17.525 1.24996 18.392 1.36652C19.2921 1.48754 20.05 1.74643 20.6519 2.34835C21.2538 2.95027 21.5127 3.70814 21.6337 4.60825C21.7503 5.47522 21.7502 6.57754 21.7502 7.94513V16.0549C21.7502 17.4225 21.7503 18.5248 21.6337 19.3918C21.5127 20.2919 21.2538 21.0497 20.6519 21.6517C20.05 22.2536 19.2921 22.5125 18.392 22.6335C17.525 22.75 16.4227 22.75 15.0551 22.75H13.9453C12.5778 22.75 11.4754 22.75 10.6085 22.6335C9.70836 22.5125 8.95048 22.2536 8.34857 21.6517C7.94963 21.2527 7.70068 20.7844 7.54305 20.2498C6.59168 20.2486 5.79906 20.2381 5.15689 20.1518C4.39294 20.0491 3.7306 19.8268 3.20191 19.2981C2.67321 18.7694 2.45093 18.1071 2.34822 17.3431C2.24996 16.6123 2.24998 15.6865 2.25 14.5537V9.44631C2.24998 8.31349 2.24996 7.38774 2.34822 6.65689C2.45093 5.89294 2.67321 5.2306 3.20191 4.7019C3.7306 4.17321 4.39294 3.95093 5.15689 3.84822C5.79906 3.76188 6.59168 3.75142 7.54305 3.75017C7.70068 3.21562 7.94963 2.74729 8.34857 2.34835C8.95048 1.74643 9.70836 1.48754 10.6085 1.36652C11.4754 1.24996 12.5778 1.24998 13.9453 1.25ZM7.25197 17.0042C7.25555 17.6487 7.2662 18.2293 7.30285 18.7491C6.46836 18.7459 5.848 18.7312 5.35676 18.6652C4.75914 18.5848 4.46611 18.441 4.26257 18.2374C4.05903 18.0339 3.91519 17.7409 3.83484 17.1432C3.7516 16.5241 3.75 15.6997 3.75 14.5V9.5C3.75 8.30029 3.7516 7.47595 3.83484 6.85676C3.91519 6.25914 4.05903 5.9661 4.26257 5.76256C4.46611 5.55902 4.75914 5.41519 5.35676 5.33484C5.848 5.2688 6.46836 5.25415 7.30285 5.25091C7.2662 5.77073 7.25555 6.35129 7.25197 6.99583C7.24966 7.41003 7.58357 7.74768 7.99778 7.74999C8.41199 7.7523 8.74964 7.41838 8.75194 7.00418C8.75803 5.91068 8.78643 5.1356 8.89448 4.54735C8.9986 3.98054 9.16577 3.65246 9.40923 3.40901C9.68599 3.13225 10.0746 2.9518 10.8083 2.85315C11.5637 2.75159 12.5648 2.75 14.0002 2.75H15.0002C16.4356 2.75 17.4367 2.75159 18.1921 2.85315C18.9259 2.9518 19.3144 3.13225 19.5912 3.40901C19.868 3.68577 20.0484 4.07435 20.1471 4.80812C20.2486 5.56347 20.2502 6.56459 20.2502 8V16C20.2502 17.4354 20.2486 18.4365 20.1471 19.1919C20.0484 19.9257 19.868 20.3142 19.5912 20.591C19.3144 20.8678 18.9259 21.0482 18.1921 21.1469C17.4367 21.2484 16.4356 21.25 15.0002 21.25H14.0002C12.5648 21.25 11.5637 21.2484 10.8083 21.1469C10.0746 21.0482 9.68599 20.8678 9.40923 20.591C9.16577 20.3475 8.9986 20.0195 8.89448 19.4527C8.78643 18.8644 8.75803 18.0893 8.75194 16.9958C8.74964 16.5816 8.41199 16.2477 7.99778 16.25C7.58357 16.2523 7.24966 16.59 7.25197 17.0042Z",
169
+ fill: "currentColor"
170
+ }
171
+ )
172
+ ]
173
+ }
174
+ );
175
+ }
176
+ function I1({ size: e = 20, ...t }) {
177
+ return /* @__PURE__ */ a(
178
+ "svg",
179
+ {
180
+ width: e,
181
+ height: e,
182
+ viewBox: "0 0 20 20",
183
+ fill: "none",
184
+ "aria-hidden": "true",
185
+ xmlns: "http://www.w3.org/2000/svg",
186
+ ...t,
187
+ children: [
188
+ /* @__PURE__ */ n(
189
+ "path",
190
+ {
191
+ d: "M10 8.75L17.5 2.5M17.5 6.21094V2.5H13.0469",
192
+ stroke: "currentColor",
193
+ strokeWidth: "1.5",
194
+ strokeLinecap: "round",
195
+ strokeLinejoin: "round"
196
+ }
197
+ ),
198
+ /* @__PURE__ */ n(
199
+ "path",
200
+ {
201
+ d: "M17.5 10C17.5 13.5355 17.5 15.3033 16.4017 16.4017C15.3033 17.5 13.5355 17.5 10 17.5C6.46447 17.5 4.6967 17.5 3.59835 16.4017C2.5 15.3033 2.5 13.5355 2.5 10C2.5 6.46447 2.5 4.6967 3.59835 3.59835C4.6967 2.5 6.46447 2.5 10 2.5",
202
+ stroke: "currentColor",
203
+ strokeWidth: "1.5",
204
+ strokeLinecap: "round"
205
+ }
206
+ )
207
+ ]
208
+ }
209
+ );
210
+ }
211
+ function Q({ size: e = 24, ...t }) {
212
+ return /* @__PURE__ */ a(
213
+ "svg",
214
+ {
215
+ width: e,
216
+ height: e,
217
+ viewBox: "0 0 24 24",
218
+ fill: "none",
219
+ "aria-hidden": "true",
220
+ xmlns: "http://www.w3.org/2000/svg",
221
+ ...t,
222
+ children: [
223
+ /* @__PURE__ */ n("circle", { cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "1.5" }),
224
+ /* @__PURE__ */ n(
225
+ "path",
226
+ {
227
+ d: "M15 12L12 12M12 12L9 12M12 12L12 9M12 12L12 15",
228
+ stroke: "currentColor",
229
+ strokeWidth: "1.5",
230
+ strokeLinecap: "round"
231
+ }
232
+ )
233
+ ]
234
+ }
235
+ );
236
+ }
237
+ function U({ size: e = 24, ...t }) {
238
+ return /* @__PURE__ */ a(
239
+ "svg",
240
+ {
241
+ width: e,
242
+ height: e,
243
+ viewBox: "0 0 24 24",
244
+ fill: "none",
245
+ "aria-hidden": "true",
246
+ xmlns: "http://www.w3.org/2000/svg",
247
+ ...t,
248
+ children: [
249
+ /* @__PURE__ */ n(
250
+ "path",
251
+ {
252
+ d: "M22 14V12C22 8.22876 22 6.34315 20.8284 5.17157C19.6569 4 17.7712 4 14 4H10C6.22876 4 4.34315 4 3.17157 5.17157C2 6.34315 2 8.22876 2 12V14C2 17.7712 2 19.6569 3.17157 20.8284C4.34315 22 6.22876 22 10 22H14",
253
+ stroke: "currentColor",
254
+ strokeWidth: "1.5",
255
+ strokeLinecap: "round"
256
+ }
257
+ ),
258
+ /* @__PURE__ */ n("path", { d: "M7 4V2.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }),
259
+ /* @__PURE__ */ n("path", { d: "M17 4V2.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }),
260
+ /* @__PURE__ */ n("circle", { cx: "18", cy: "18", r: "3", stroke: "currentColor", strokeWidth: "1.5" }),
261
+ /* @__PURE__ */ n("path", { d: "M20.5 20.5L22 22", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }),
262
+ /* @__PURE__ */ n("path", { d: "M2.5 9H21.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
263
+ ]
264
+ }
265
+ );
266
+ }
267
+ function X({ size: e = 24, ...t }) {
268
+ return /* @__PURE__ */ n(
269
+ "svg",
270
+ {
271
+ width: e,
272
+ height: e,
273
+ viewBox: "0 0 24 24",
274
+ fill: "none",
275
+ "aria-hidden": "true",
276
+ xmlns: "http://www.w3.org/2000/svg",
277
+ ...t,
278
+ children: /* @__PURE__ */ n(
279
+ "path",
280
+ {
281
+ d: "M18.364 8.05026L17.6569 7.34315C14.5327 4.21896 9.46734 4.21896 6.34315 7.34315C3.21895 10.4673 3.21895 15.5327 6.34315 18.6569C9.46734 21.7811 14.5327 21.7811 17.6569 18.6569C19.4737 16.84 20.234 14.3668 19.9377 12.0005M18.364 3.80762V8.05026H14.1213",
282
+ stroke: "currentColor",
283
+ strokeWidth: "1.5",
284
+ strokeLinecap: "round",
285
+ strokeLinejoin: "round"
286
+ }
287
+ )
288
+ }
289
+ );
290
+ }
291
+ function Y({ size: e = 24, ...t }) {
292
+ return /* @__PURE__ */ a(
293
+ "svg",
294
+ {
295
+ width: e,
296
+ height: e,
297
+ viewBox: "0 0 24 24",
298
+ fill: "none",
299
+ "aria-hidden": "true",
300
+ xmlns: "http://www.w3.org/2000/svg",
301
+ ...t,
302
+ children: [
303
+ /* @__PURE__ */ n(
304
+ "path",
305
+ {
306
+ d: "M6.71275 10.6736C7.16723 8.15492 9.38539 6.25 12.0437 6.25C13.6212 6.25 15.0431 6.9209 16.0328 7.9907C16.3141 8.29476 16.2956 8.76927 15.9915 9.05055C15.6875 9.33183 15.213 9.31337 14.9317 9.0093C14.2154 8.23504 13.1879 7.75 12.0437 7.75C10.2056 7.75 8.66974 9.00212 8.24452 10.6853L8.48095 10.4586C8.77994 10.172 9.25471 10.182 9.54137 10.4809C9.82804 10.7799 9.81805 11.2547 9.51905 11.5414L7.89662 13.0969C7.74932 13.2381 7.55084 13.3133 7.34695 13.3049C7.14306 13.2966 6.95137 13.2056 6.81608 13.0528L5.43852 11.4972C5.16391 11.1871 5.19267 10.7131 5.50277 10.4385C5.81286 10.1639 6.28686 10.1927 6.56148 10.5028L6.71275 10.6736Z",
307
+ fill: "currentColor"
308
+ }
309
+ ),
310
+ /* @__PURE__ */ n(
311
+ "path",
312
+ {
313
+ d: "M16.6485 10.6959C16.8523 10.704 17.044 10.7947 17.1795 10.9472L18.5607 12.5019C18.8358 12.8115 18.8078 13.2856 18.4981 13.5607C18.1885 13.8358 17.7144 13.8078 17.4393 13.4981L17.2841 13.3234C16.8295 15.8458 14.6011 17.7509 11.9348 17.7509C10.3635 17.7509 8.94543 17.0895 7.95312 16.0322C7.66966 15.7302 7.68472 15.2555 7.98675 14.9721C8.28879 14.6886 8.76342 14.7037 9.04688 15.0057C9.76546 15.7714 10.792 16.2509 11.9348 16.2509C13.7819 16.2509 15.322 14.9991 15.7503 13.3193L15.5195 13.5409C15.2208 13.8278 14.746 13.8183 14.4591 13.5195C14.1721 13.2208 14.1817 12.746 14.4805 12.4591L16.0993 10.9044C16.2464 10.7631 16.4447 10.6878 16.6485 10.6959Z",
314
+ fill: "currentColor"
315
+ }
316
+ ),
317
+ /* @__PURE__ */ n(
318
+ "path",
319
+ {
320
+ fillRule: "evenodd",
321
+ clipRule: "evenodd",
322
+ d: "M11.9426 1.25C9.63423 1.24999 7.82519 1.24998 6.4137 1.43975C4.96897 1.63399 3.82895 2.03933 2.93414 2.93414C2.03933 3.82895 1.63399 4.96897 1.43975 6.41371C1.24998 7.82519 1.24999 9.63423 1.25 11.9426V12.0574C1.24999 14.3658 1.24998 16.1748 1.43975 17.5863C1.63399 19.031 2.03933 20.1711 2.93414 21.0659C3.82895 21.9607 4.96897 22.366 6.4137 22.5603C7.82519 22.75 9.63423 22.75 11.9426 22.75H12.0574C14.3658 22.75 16.1748 22.75 17.5863 22.5603C19.031 22.366 20.1711 21.9607 21.0659 21.0659C21.9607 20.1711 22.366 19.031 22.5603 17.5863C22.75 16.1748 22.75 14.3658 22.75 12.0574V11.9426C22.75 9.63423 22.75 7.82519 22.5603 6.41371C22.366 4.96897 21.9607 3.82895 21.0659 2.93414C20.1711 2.03933 19.031 1.63399 17.5863 1.43975C16.1748 1.24998 14.3658 1.24999 12.0574 1.25H11.9426ZM3.9948 3.9948C4.56445 3.42514 5.33517 3.09825 6.61358 2.92637C7.91356 2.75159 9.62177 2.75 12 2.75C14.3782 2.75 16.0864 2.75159 17.3864 2.92637C18.6648 3.09825 19.4355 3.42514 20.0052 3.9948C20.5749 4.56445 20.9018 5.33517 21.0736 6.61358C21.2484 7.91356 21.25 9.62178 21.25 12C21.25 14.3782 21.2484 16.0864 21.0736 17.3864C20.9018 18.6648 20.5749 19.4355 20.0052 20.0052C19.4355 20.5749 18.6648 20.9018 17.3864 21.0736C16.0864 21.2484 14.3782 21.25 12 21.25C9.62177 21.25 7.91356 21.2484 6.61358 21.0736C5.33517 20.9018 4.56445 20.5749 3.9948 20.0052C3.42514 19.4355 3.09825 18.6648 2.92637 17.3864C2.75159 16.0864 2.75 14.3782 2.75 12C2.75 9.62178 2.75159 7.91356 2.92637 6.61358C3.09825 5.33517 3.42514 4.56445 3.9948 3.9948Z",
323
+ fill: "currentColor"
324
+ }
325
+ )
326
+ ]
327
+ }
328
+ );
329
+ }
330
+ function t1({ size: e = 24, ...t }) {
331
+ return /* @__PURE__ */ a(
332
+ "svg",
333
+ {
334
+ width: e,
335
+ height: e,
336
+ viewBox: "0 0 24 24",
337
+ fill: "none",
338
+ "aria-hidden": "true",
339
+ xmlns: "http://www.w3.org/2000/svg",
340
+ ...t,
341
+ children: [
342
+ /* @__PURE__ */ n("circle", { cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "1.5" }),
343
+ /* @__PURE__ */ n(
344
+ "path",
345
+ {
346
+ d: "M10.5 9L13.5 12L10.5 15",
347
+ stroke: "currentColor",
348
+ strokeWidth: "1.5",
349
+ strokeLinecap: "round",
350
+ strokeLinejoin: "round"
351
+ }
352
+ )
353
+ ]
354
+ }
355
+ );
356
+ }
357
+ function n1({ size: e = 24, ...t }) {
358
+ return /* @__PURE__ */ a(
359
+ "svg",
360
+ {
361
+ width: e,
362
+ height: e,
363
+ viewBox: "0 0 24 24",
364
+ fill: "none",
365
+ "aria-hidden": "true",
366
+ xmlns: "http://www.w3.org/2000/svg",
367
+ ...t,
368
+ children: [
369
+ /* @__PURE__ */ n(
370
+ "path",
371
+ {
372
+ d: "M2 12C2 7.28595 2 4.92893 3.46447 3.46447C4.92893 2 7.28595 2 12 2C16.714 2 19.0711 2 20.5355 3.46447C22 4.92893 22 7.28595 22 12C22 16.714 22 19.0711 20.5355 20.5355C19.0711 22 16.714 22 12 22C7.28595 22 4.92893 22 3.46447 20.5355C2 19.0711 2 16.714 2 12Z",
373
+ fill: "currentColor"
374
+ }
375
+ ),
376
+ /* @__PURE__ */ n(
377
+ "path",
378
+ {
379
+ fillRule: "evenodd",
380
+ clipRule: "evenodd",
381
+ d: "M18.4933 6.93501C18.8053 7.20742 18.8374 7.6812 18.565 7.99324L10.7079 16.9932C10.5654 17.1564 10.3594 17.25 10.1429 17.25C9.9263 17.25 9.72031 17.1564 9.57788 16.9932L6.43502 13.3932C6.16261 13.0812 6.19473 12.6074 6.50677 12.335C6.8188 12.0626 7.29259 12.0947 7.565 12.4068L10.1429 15.3596L17.435 7.00675C17.7074 6.69472 18.1812 6.6626 18.4933 6.93501Z",
382
+ fill: "#ffffff"
383
+ }
384
+ )
385
+ ]
386
+ }
387
+ );
388
+ }
389
+ const e1 = "_dashed_coh50_1", o1 = "_icon_coh50_53", v = {
390
+ dashed: e1,
391
+ icon: o1
392
+ }, R1 = l(
393
+ function({ icon: t = /* @__PURE__ */ n(Q, {}), className: r, children: o, type: i = "button", ...s }, c) {
394
+ return /* @__PURE__ */ a(
395
+ "button",
396
+ {
397
+ ref: c,
398
+ type: i,
399
+ className: d(v.dashed, r),
400
+ ...s,
401
+ children: [
402
+ t != null && /* @__PURE__ */ n("span", { className: v.icon, "aria-hidden": "true", children: t }),
403
+ /* @__PURE__ */ n("span", { children: o })
404
+ ]
405
+ }
406
+ );
407
+ }
408
+ ), r1 = "_calendar_1q4or_1", i1 = "_icon_1q4or_53", s1 = "_selected_1q4or_93", b = {
409
+ calendar: r1,
410
+ icon: i1,
411
+ selected: s1
412
+ }, V1 = l(function({
413
+ selected: t = !1,
414
+ icon: r = /* @__PURE__ */ n(U, {}),
415
+ className: o,
416
+ children: i,
417
+ type: s = "button",
418
+ ...c
419
+ }, u) {
420
+ return /* @__PURE__ */ a(
421
+ "button",
422
+ {
423
+ ref: u,
424
+ type: s,
425
+ "aria-expanded": t,
426
+ className: d(b.calendar, t && b.selected, o),
427
+ ...c,
428
+ children: [
429
+ /* @__PURE__ */ n("span", { children: i }),
430
+ r != null && /* @__PURE__ */ n("span", { className: b.icon, "aria-hidden": "true", children: r })
431
+ ]
432
+ }
433
+ );
434
+ }), c1 = "_reset_tyfcd_1", a1 = "_icon_tyfcd_51", L = {
435
+ reset: c1,
436
+ icon: a1
437
+ }, H1 = l(
438
+ function({ icon: t = /* @__PURE__ */ n(X, {}), className: r, children: o = "초기화", type: i = "button", ...s }, c) {
439
+ return /* @__PURE__ */ a(
440
+ "button",
441
+ {
442
+ ref: c,
443
+ type: i,
444
+ className: d(L.reset, r),
445
+ ...s,
446
+ children: [
447
+ t != null && /* @__PURE__ */ n("span", { className: L.icon, "aria-hidden": "true", children: t }),
448
+ /* @__PURE__ */ n("span", { children: o })
449
+ ]
450
+ }
451
+ );
452
+ }
453
+ ), l1 = "_pagination_n4t9a_1", d1 = "_item_n4t9a_15", u1 = "_selected_n4t9a_83", C1 = "_arrow_n4t9a_97", _1 = "_prev_n4t9a_165", w = {
454
+ pagination: l1,
455
+ item: d1,
456
+ selected: u1,
457
+ arrow: C1,
458
+ prev: _1
459
+ }, h1 = l(function({ selected: t = !1, className: r, children: o, type: i = "button", ...s }, c) {
460
+ return /* @__PURE__ */ n(
461
+ "button",
462
+ {
463
+ ref: c,
464
+ type: i,
465
+ "aria-current": t ? "page" : void 0,
466
+ className: d(w.item, t && w.selected, r),
467
+ ...s,
468
+ children: o
469
+ }
470
+ );
471
+ }), y = l(function({ direction: t = "next", className: r, type: o = "button", ...i }, s) {
472
+ return /* @__PURE__ */ n(
473
+ "button",
474
+ {
475
+ ref: s,
476
+ type: o,
477
+ "aria-label": t === "prev" ? "이전 페이지" : "다음 페이지",
478
+ className: d(
479
+ w.arrow,
480
+ t === "prev" && w.prev,
481
+ r
482
+ ),
483
+ ...i,
484
+ children: /* @__PURE__ */ n(t1, {})
485
+ }
486
+ );
487
+ }), Z1 = l(
488
+ function({ page: t, totalPages: r, onPageChange: o, maxVisible: i = 5, className: s, ...c }, u) {
489
+ const C = Math.max(1, r), _ = Math.min(i, C), x = Math.min(
490
+ Math.max(1, t - Math.floor(_ / 2)),
491
+ C - _ + 1
492
+ ), $ = Array.from({ length: _ }, (p, N) => x + N);
493
+ return /* @__PURE__ */ a(
494
+ "nav",
495
+ {
496
+ ref: u,
497
+ "aria-label": "페이지네이션",
498
+ className: d(w.pagination, s),
499
+ ...c,
500
+ children: [
501
+ /* @__PURE__ */ n(
502
+ y,
503
+ {
504
+ direction: "prev",
505
+ disabled: t <= 1,
506
+ onClick: () => o?.(t - 1)
507
+ }
508
+ ),
509
+ $.map((p) => /* @__PURE__ */ n(
510
+ h1,
511
+ {
512
+ selected: p === t,
513
+ onClick: () => o?.(p),
514
+ children: p
515
+ },
516
+ p
517
+ )),
518
+ /* @__PURE__ */ n(
519
+ y,
520
+ {
521
+ direction: "next",
522
+ disabled: t >= C,
523
+ onClick: () => o?.(t + 1)
524
+ }
525
+ )
526
+ ]
527
+ }
528
+ );
529
+ }
530
+ ), p1 = "_sort_r6mnc_1", m1 = "_selected_r6mnc_85", B = {
531
+ sort: p1,
532
+ selected: m1
533
+ }, j1 = l(
534
+ function({ selected: t = !1, className: r, children: o, type: i = "button", ...s }, c) {
535
+ return /* @__PURE__ */ n(
536
+ "button",
537
+ {
538
+ ref: c,
539
+ type: i,
540
+ "aria-pressed": t,
541
+ className: d(B.sort, t && B.selected, r),
542
+ ...s,
543
+ children: o
544
+ }
545
+ );
546
+ }
547
+ ), w1 = "_item_1cc0o_1", f1 = "_label_1cc0o_51", k1 = "_check_1cc0o_69", b1 = "_selected_1cc0o_111", f = {
548
+ item: w1,
549
+ label: f1,
550
+ check: k1,
551
+ selected: b1
552
+ }, A1 = l(
553
+ function({ selected: t = !1, checked: r, className: o, children: i, type: s = "button", ...c }, u) {
554
+ return /* @__PURE__ */ a(
555
+ "button",
556
+ {
557
+ ref: u,
558
+ type: s,
559
+ "data-selected": t || void 0,
560
+ className: d(f.item, t && f.selected, o),
561
+ ...c,
562
+ children: [
563
+ r && /* @__PURE__ */ n("span", { className: f.check, "aria-hidden": "true", children: /* @__PURE__ */ n(n1, {}) }),
564
+ /* @__PURE__ */ n("span", { className: f.label, children: i })
565
+ ]
566
+ }
567
+ );
568
+ }
569
+ ), g1 = "_tile_rg4j9_1", v1 = "_icon_rg4j9_51", M = {
570
+ tile: g1,
571
+ icon: v1
572
+ }, S1 = l(
573
+ function({
574
+ icon: t = /* @__PURE__ */ n(Y, {}),
575
+ className: r,
576
+ children: o,
577
+ type: i = "button",
578
+ ...s
579
+ }, c) {
580
+ return /* @__PURE__ */ a(
581
+ "button",
582
+ {
583
+ ref: c,
584
+ type: i,
585
+ className: d(M.tile, r),
586
+ ...s,
587
+ children: [
588
+ t != null && /* @__PURE__ */ n("span", { className: M.icon, "aria-hidden": "true", children: t }),
589
+ /* @__PURE__ */ n("span", { children: o })
590
+ ]
591
+ }
592
+ );
593
+ }
594
+ );
595
+ export {
596
+ S1 as ActionTile,
597
+ M1 as BasicButton,
598
+ B1 as Button,
599
+ V1 as CalendarButton,
600
+ $1 as Chip,
601
+ R1 as DashedButton,
602
+ A1 as DropdownItem,
603
+ Q as IconAddCircle,
604
+ x1 as IconButton,
605
+ U as IconCalendar,
606
+ n1 as IconCheckOn,
607
+ t1 as IconCircleArrowRight,
608
+ W1 as IconLogout,
609
+ Y as IconRefreshSquare,
610
+ X as IconRestart,
611
+ I1 as IconSquareTopDown,
612
+ Z1 as Pagination,
613
+ y as PaginationArrow,
614
+ h1 as PaginationItem,
615
+ H1 as ResetButton,
616
+ j1 as SortButton,
617
+ N1 as StatusBadge
618
+ };
@@ -0,0 +1 @@
1
+ :root{--if-primary-50: #f5faff;--if-primary-300: #819ac2;--if-primary-500: #033687;--if-primary-900: #052454;--if-neutral-white: #ffffff;--if-neutral-50: #f8f8f8;--if-neutral-100: #f4f4f4;--if-neutral-150: #dedede;--if-neutral-200: #c9c9c9;--if-neutral-300: #b3b3b3;--if-neutral-400: #9d9d9d;--if-neutral-500: #878787;--if-neutral-600: #727272;--if-neutral-700: #5c5c5c;--if-neutral-800: #464646;--if-neutral-900: #303030;--if-state-green-500: #37b24d;--if-state-red-500: #f03e3e;--if-state-orange-500: #f76707;--if-shadow-main: 6px 6px 15px 0 rgba(14, 44, 74, .08);--if-radius-sm: 4px;--if-radius-md: 8px;--if-font-family: "Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--if-letter-spacing: -.025em}:root{--es-secondary-400: #ff9893;--es-secondary-500: #ff6861;--es-secondary-900: #973e38;--es-text-main-size: 16px;--es-text-main-line: 24px;--es-text-main-weight: 400;--es-text-main-bold-weight: 500;--es-text-sub-size: 14px;--es-text-sub-line: 20px;--es-text-sub-bold-weight: 500}._button_1o7nk_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid transparent;border-radius:var(--if-radius-md);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}._button_1o7nk_1:focus-visible{outline:none}._button_1o7nk_1:disabled{cursor:default}._icon_1o7nk_65{display:inline-flex;flex-shrink:0}._label_1o7nk_75{display:inline-flex}._fullWidth_1o7nk_83{width:100%}._size-56_1o7nk_93{height:56px}._size-48_1o7nk_101{height:48px}._size-40_1o7nk_109{height:40px;font-size:14px;line-height:20px}._white_1o7nk_123._size-40_1o7nk_109,._grey_1o7nk_125._size-40_1o7nk_109{font-size:16px;line-height:24px}._size-sm_1o7nk_137{height:40px;font-size:16px;font-weight:400;line-height:24px}._primary_1o7nk_153{background:var(--if-primary-500);color:var(--if-neutral-white)}._primary_1o7nk_153:hover:not(:disabled){background:var(--if-primary-900)}._primary_1o7nk_153:active:not(:disabled){background:var(--if-primary-500)}._primary_1o7nk_153:focus-visible{border-color:var(--if-primary-900)}._primary_1o7nk_153:disabled{background:var(--if-neutral-300)}._primary_1o7nk_153._size-sm_1o7nk_137:hover:not(:disabled){background:var(--if-primary-300);box-shadow:var(--if-shadow-main)}._primary_1o7nk_153._size-sm_1o7nk_137:active:not(:disabled){background:var(--if-primary-300);box-shadow:none}._danger_1o7nk_219{background:var(--es-secondary-500);color:var(--if-neutral-white)}._danger_1o7nk_219:hover:not(:disabled){background:var(--es-secondary-900)}._danger_1o7nk_219:active:not(:disabled){background:var(--es-secondary-400)}._danger_1o7nk_219:focus-visible{background:var(--es-secondary-500);border-color:var(--if-primary-900)}._danger_1o7nk_219:disabled{background:var(--if-neutral-300)}._grey_1o7nk_125{background:var(--if-neutral-600);color:var(--if-neutral-white)}._grey_1o7nk_125:hover:not(:disabled){background:var(--if-neutral-800)}._grey_1o7nk_125:active:not(:disabled){background:var(--if-neutral-600)}._grey_1o7nk_125:focus-visible{background:var(--if-neutral-600);border-color:var(--if-neutral-900)}._grey_1o7nk_125:disabled{background:var(--if-neutral-300)}._white_1o7nk_123{background:var(--if-neutral-white);border-color:var(--if-primary-500);color:var(--if-primary-500)}._white_1o7nk_123:hover:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500)}._white_1o7nk_123:active:not(:disabled){background:var(--if-neutral-white);border-color:var(--if-primary-300)}._white_1o7nk_123:focus-visible{border-color:var(--if-primary-900)}._white_1o7nk_123:disabled{background:var(--if-neutral-50);border-color:var(--if-neutral-300);color:var(--if-neutral-300)}._outline_1o7nk_365{background:var(--if-neutral-white);border-color:var(--if-neutral-900);color:var(--if-neutral-900);font-weight:400}._outline_1o7nk_365:hover:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500);box-shadow:var(--if-shadow-main)}._outline_1o7nk_365:active:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500);color:var(--if-primary-500);box-shadow:none}._outline_1o7nk_365:focus-visible{background:var(--if-neutral-white);border-color:var(--if-primary-500)}._outline_1o7nk_365:disabled{background:var(--if-neutral-white);border-color:var(--if-neutral-300);color:var(--if-neutral-300)}._basic_1awue_1{position:relative;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:32px;padding:0 14px;border:1px solid transparent;border-radius:var(--if-radius-md);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:14px;font-weight:500;line-height:20px;white-space:nowrap;cursor:pointer;transition:opacity .12s ease;-webkit-tap-highlight-color:transparent}._basic_1awue_1:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:var(--if-neutral-900);opacity:0;pointer-events:none;transition:opacity .12s ease}._basic_1awue_1:hover:not(:disabled):after{opacity:.08}._basic_1awue_1:active:not(:disabled):after{opacity:.12}._basic_1awue_1:focus-visible{outline:1px solid var(--if-primary-900);outline-offset:1px}._basic_1awue_1:disabled{cursor:default}._icon_1awue_103{display:inline-flex;flex-shrink:0}._iconOnly_1awue_113{width:32px;padding:0}._solid-primary_1awue_125{background:var(--if-primary-500);color:var(--if-neutral-white)}._solid-primary50_1awue_135{background:var(--if-primary-50);color:var(--if-primary-500)}._solid-orange_1awue_145{background:var(--if-state-orange-500);color:var(--if-neutral-white)}._solid-red_1awue_155{background:var(--if-state-red-500);color:var(--if-neutral-white)}._solid-black_1awue_165{background:var(--if-neutral-700);color:var(--if-neutral-white)}._solid-primary_1awue_125:disabled,._solid-primary50_1awue_135:disabled,._solid-orange_1awue_145:disabled,._solid-red_1awue_155:disabled,._solid-black_1awue_165:disabled{background:var(--if-neutral-100);color:var(--if-neutral-400)}._line-primary_1awue_195{background:var(--if-primary-50);border-color:var(--if-primary-500);color:var(--if-primary-900)}._line-white_1awue_207{background:var(--if-neutral-white);border-color:var(--if-neutral-150);color:var(--if-neutral-700)}._line-primary_1awue_195:disabled,._line-white_1awue_207:disabled{background:var(--if-neutral-100);border-color:var(--if-neutral-150);color:var(--if-neutral-400)}._iconButton_6190a_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:5px;background:transparent;color:var(--if-neutral-900);cursor:pointer;-webkit-tap-highlight-color:transparent}._iconButton_6190a_1:focus-visible{outline:1px solid var(--if-neutral-900);outline-offset:0}._iconButton_6190a_1:disabled{color:var(--if-neutral-300);cursor:default}._chip_1p0ad_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:2px;height:32px;padding:0 16px;border:none;border-radius:var(--if-radius-md);background:transparent;font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;color:var(--if-neutral-700);white-space:nowrap;cursor:pointer;box-shadow:inset 0 0 0 1px transparent;transition:background-color .12s ease,box-shadow .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}._icon_1p0ad_55{display:inline-flex;flex-shrink:0}._chip_1p0ad_1:hover{box-shadow:inset 0 0 0 1px var(--if-neutral-700)}._chip_1p0ad_1:active{box-shadow:inset 0 0 0 1px var(--if-neutral-400);color:var(--if-neutral-400)}._chip_1p0ad_1:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--if-primary-900)}._selected_1p0ad_93,._selected_1p0ad_93:hover,._selected_1p0ad_93:active{background:var(--if-primary-500);color:var(--if-neutral-white);box-shadow:none}._badge_1l3tz_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:28px;padding:0 8px;border:1px solid currentColor;border-radius:var(--if-radius-sm);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:14px;font-weight:500;line-height:20px;white-space:nowrap}._normal_1l3tz_37{color:var(--if-state-green-500)}._abnormal_1l3tz_45{color:var(--if-state-red-500)}._dashed_coh50_1{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;padding:8px 16px;border:1px dashed var(--if-neutral-500);border-radius:var(--if-radius-md);background:var(--if-neutral-white);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;color:var(--if-neutral-900);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}._icon_coh50_53{display:inline-flex;flex-shrink:0;color:var(--if-neutral-700)}._dashed_coh50_1:hover:not(:disabled){background:var(--if-primary-50);box-shadow:var(--if-shadow-main)}._dashed_coh50_1:active:not(:disabled){background:var(--if-primary-50);box-shadow:none}._dashed_coh50_1:focus-visible{outline:none;border-style:solid;border-color:var(--if-neutral-900);background:var(--if-neutral-white)}._dashed_coh50_1:disabled{border-color:var(--if-neutral-300);color:var(--if-neutral-300);background:var(--if-neutral-white);cursor:default}._dashed_coh50_1:disabled ._icon_coh50_53{color:var(--if-neutral-300)}._calendar_1q4or_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:56px;padding:0 20px;border:1px solid var(--if-neutral-150);border-radius:var(--if-radius-md);background:var(--if-neutral-white);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;color:var(--if-neutral-900);white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}._icon_1q4or_53{display:inline-flex;flex-shrink:0}._calendar_1q4or_1:hover:not(:disabled){border-color:var(--if-primary-500);box-shadow:var(--if-shadow-main)}._calendar_1q4or_1:active:not(:disabled){border-color:var(--if-primary-500);box-shadow:none}._calendar_1q4or_1:focus-visible{outline:none;border-color:var(--if-primary-500)}._selected_1q4or_93,._selected_1q4or_93:hover:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500)}._calendar_1q4or_1:disabled{background:var(--if-neutral-50);border-color:var(--if-neutral-150);color:var(--if-neutral-300);cursor:default}._reset_tyfcd_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:56px;padding:0 8px;border:1px solid transparent;border-radius:var(--if-radius-md);background:transparent;font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:400;line-height:24px;color:var(--if-neutral-900);white-space:nowrap;cursor:pointer;transition:background-color .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}._icon_tyfcd_51{display:inline-flex;flex-shrink:0}._reset_tyfcd_1:hover:not(:disabled){background:var(--if-neutral-50)}._reset_tyfcd_1:active:not(:disabled){background:transparent;color:var(--if-neutral-500)}._reset_tyfcd_1:focus-visible{outline:none;border-color:#000}._reset_tyfcd_1:disabled{color:var(--if-neutral-300);cursor:default}._pagination_n4t9a_1{display:inline-flex;align-items:center;gap:20px}._item_n4t9a_15{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 2px;border:none;background:transparent;font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;color:var(--if-neutral-300);cursor:pointer;transition:color .12s ease;-webkit-tap-highlight-color:transparent}._item_n4t9a_15:hover{color:var(--if-neutral-700)}._item_n4t9a_15:active{color:var(--if-neutral-300)}._item_n4t9a_15:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--if-neutral-900)}._selected_n4t9a_83,._selected_n4t9a_83:hover,._selected_n4t9a_83:active{color:var(--if-primary-500)}._arrow_n4t9a_97{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--if-neutral-600);cursor:pointer;transition:color .12s ease;-webkit-tap-highlight-color:transparent}._arrow_n4t9a_97:hover:not(:disabled){color:var(--if-neutral-900)}._arrow_n4t9a_97:active:not(:disabled){color:var(--if-neutral-600)}._arrow_n4t9a_97:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--if-neutral-900)}._arrow_n4t9a_97:disabled{color:var(--if-neutral-150);cursor:default}._prev_n4t9a_165{transform:rotate(180deg)}._sort_r6mnc_1{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:80px;height:28px;padding:0 12px;border:1px solid var(--if-neutral-200);border-radius:var(--if-radius-sm);background:var(--if-neutral-white);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:14px;font-weight:500;line-height:20px;color:var(--if-neutral-500);white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}._sort_r6mnc_1:hover:not(:disabled){border-color:var(--if-primary-500);color:var(--if-primary-500)}._sort_r6mnc_1:active:not(:disabled){background:var(--if-neutral-50);border-color:var(--if-primary-500);color:var(--if-primary-500)}._sort_r6mnc_1:focus-visible{outline:none;border-color:var(--if-neutral-900)}._selected_r6mnc_85,._selected_r6mnc_85:hover:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500);color:var(--if-primary-500)}._sort_r6mnc_1:disabled{background:var(--if-neutral-50);border-color:var(--if-neutral-150);color:var(--if-neutral-300);cursor:default}._item_1cc0o_1{box-sizing:border-box;display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;border:none;background:var(--if-neutral-white);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:400;line-height:24px;color:var(--if-neutral-900);text-align:left;cursor:pointer;box-shadow:inset 0 0 0 1px transparent;transition:background-color .12s ease,color .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}._label_1cc0o_51{flex:1 0 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._check_1cc0o_69{display:inline-flex;flex-shrink:0;color:var(--if-primary-500)}._item_1cc0o_1:hover:not(:disabled){background:var(--if-primary-50)}._item_1cc0o_1:active:not(:disabled){background:var(--if-primary-50);color:var(--if-neutral-600)}._item_1cc0o_1:focus-visible{outline:none;background:var(--if-neutral-white);box-shadow:inset 0 0 0 1px var(--if-primary-500)}._selected_1cc0o_111,._selected_1cc0o_111:hover:not(:disabled){background:var(--if-primary-50);color:var(--if-primary-500)}._item_1cc0o_1:disabled{background:var(--if-neutral-50);color:var(--if-neutral-500);cursor:default}._tile_rg4j9_1{box-sizing:border-box;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px;border:1px solid var(--if-neutral-150);border-radius:var(--if-radius-md);background:var(--if-neutral-white);font-family:var(--if-font-family);letter-spacing:var(--if-letter-spacing);font-size:16px;font-weight:500;line-height:24px;color:var(--if-neutral-900);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}._icon_rg4j9_51{display:inline-flex}._tile_rg4j9_1:hover:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500);box-shadow:var(--if-shadow-main)}._tile_rg4j9_1:active:not(:disabled){background:var(--if-primary-50);border-color:var(--if-primary-500);box-shadow:none}._tile_rg4j9_1:focus-visible{outline:none;background:var(--if-neutral-white);border-color:var(--if-primary-500)}._tile_rg4j9_1:disabled{background:var(--if-neutral-white);border-color:var(--if-neutral-300);color:var(--if-neutral-300);cursor:default}
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@intflow/edgesafe-ui",
3
+ "version": "0.2.0",
4
+ "description": "edgesafe 축 공통 UI 컴포넌트 (intflow 디자인 시스템)",
5
+ "type": "module",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/intflow/intflow-design.git",
12
+ "directory": "packages/edgesafe"
13
+ },
14
+ "main": "./dist/index.cjs",
15
+ "module": "./dist/index.js",
16
+ "types": "./dist/index.d.ts",
17
+ "exports": {
18
+ ".": {
19
+ "types": "./dist/index.d.ts",
20
+ "import": "./dist/index.js",
21
+ "require": "./dist/index.cjs"
22
+ },
23
+ "./styles.css": "./dist/styles.css"
24
+ },
25
+ "files": [
26
+ "dist"
27
+ ],
28
+ "sideEffects": [
29
+ "*.css"
30
+ ],
31
+ "scripts": {
32
+ "build": "vite build && tsc -p tsconfig.build.json",
33
+ "prepublishOnly": "npm run build",
34
+ "typecheck": "tsc -p tsconfig.json --noEmit"
35
+ },
36
+ "dependencies": {
37
+ "@intflow/tokens": "^0.2.0"
38
+ },
39
+ "peerDependencies": {
40
+ "react": "^18.0.0 || ^19.0.0",
41
+ "react-dom": "^18.0.0 || ^19.0.0"
42
+ },
43
+ "devDependencies": {
44
+ "@intflow/ui-core": "^0.2.0",
45
+ "@storybook/react-vite": "^9.1.0",
46
+ "@types/react": "^19.1.0",
47
+ "@types/react-dom": "^19.1.0",
48
+ "@vitejs/plugin-react": "^4.7.0",
49
+ "react": "^19.1.0",
50
+ "react-dom": "^19.1.0",
51
+ "storybook": "^9.1.0",
52
+ "typescript": "^5.8.3",
53
+ "vite": "^7.0.0"
54
+ }
55
+ }