@mondrianai/runyourai-design-system 0.0.12 → 0.0.14
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.
- package/dist/index.d.mts +15 -30
- package/dist/index.d.ts +15 -30
- package/dist/index.js +92 -69
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +363 -346
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -133,34 +133,13 @@ interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement>, V
|
|
|
133
133
|
}
|
|
134
134
|
declare function Button({ className, variant, size, asChild, loading, iconStart, iconEnd, disabled, children, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
135
135
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
interface CardProps {
|
|
145
|
-
/** 예약 유형 배지 — reserved 또는 on-demand (필수) */
|
|
146
|
-
machineType: MachineType;
|
|
147
|
-
/** 이용 상태 배지 — available(대여가능) 또는 rented(대여중) (필수) */
|
|
148
|
-
availability: AvailabilityStatus;
|
|
149
|
-
/** 머신 이름 (예: "NVIDIA B300 x 8") */
|
|
150
|
-
machineName: string;
|
|
151
|
-
/** 머신 이름 앞 이니셜 박스에 표시할 문자 (예: "B") */
|
|
152
|
-
machineInitial: string;
|
|
153
|
-
/** 스펙 태그 목록 (예: ["4x8x", "000GB VRAM", "B-Series"]) */
|
|
154
|
-
tags?: string[];
|
|
155
|
-
/** 스펙 상세 목록 (예: [{ label: "CPU", value: "128 Core" }]) */
|
|
156
|
-
specs?: CardSpec[];
|
|
157
|
-
/** 머신 선택 버튼 클릭 핸들러 */
|
|
158
|
-
onSelect?: () => void;
|
|
159
|
-
/** 버튼 텍스트 (기본값: "머신 선택") */
|
|
160
|
-
selectLabel?: string;
|
|
161
|
-
className?: string;
|
|
162
|
-
}
|
|
163
|
-
declare function Card({ machineType, availability, machineName, machineInitial, tags, specs, onSelect, selectLabel, className, }: CardProps): react_jsx_runtime.JSX.Element;
|
|
136
|
+
declare function Card({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
137
|
+
declare function CardHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
138
|
+
declare function CardTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
139
|
+
declare function CardDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
140
|
+
declare function CardAction({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
141
|
+
declare function CardContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
142
|
+
declare function CardFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
164
143
|
|
|
165
144
|
interface DataSectionProps {
|
|
166
145
|
/** 섹션 제목 */
|
|
@@ -733,6 +712,8 @@ type SidebarMainMenuItem = {
|
|
|
733
712
|
type?: 'item';
|
|
734
713
|
id: string;
|
|
735
714
|
title: string;
|
|
715
|
+
/** 서브메뉴 패널 헤더 영역을 커스텀할 ReactNode. 미지정 시 title 문자열을 기본 스타일로 표시합니다. */
|
|
716
|
+
panelHeader?: React$1.ReactNode;
|
|
736
717
|
href: string;
|
|
737
718
|
icon: React$1.ReactNode;
|
|
738
719
|
isActive?: boolean;
|
|
@@ -817,13 +798,17 @@ interface TabsProps<T extends string = string> {
|
|
|
817
798
|
* "pill" — 회색 배경 컨테이너 + 흰 배경 active (segment control 스타일)
|
|
818
799
|
* "underline" — 하단 밑줄 active (default)
|
|
819
800
|
*/
|
|
820
|
-
variant?:
|
|
801
|
+
variant?: "pill" | "underline";
|
|
821
802
|
/** 컨테이너를 w-full로 펼치고 각 탭 버튼을 균등 분할(flex-1)합니다 */
|
|
822
803
|
block?: boolean;
|
|
823
804
|
/** Tailwind height 클래스 (e.g. "h-[36px]"). 지정 시 내부 버튼 패딩도 자동 조정됩니다. */
|
|
824
805
|
height?: string;
|
|
825
806
|
className?: string;
|
|
826
807
|
}
|
|
808
|
+
/**
|
|
809
|
+
* 디자인 시스템에서는 동일 뷰의 데이터 전환을 위해 ToggleGroup 대신 Tabs를 사용합니다.
|
|
810
|
+
* Tabs의 원래 목적으로도 사용하며, 한 화면에 두 가지의 의미로 Tabs를 사용하지 않습니다.
|
|
811
|
+
*/
|
|
827
812
|
declare function Tabs<T extends string = string>({ allTabs, current, onTabChange, variant, block, height, className, }: TabsProps<T>): react_jsx_runtime.JSX.Element;
|
|
828
813
|
|
|
829
814
|
interface ToggleProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick'> {
|
|
@@ -1540,4 +1525,4 @@ declare function WordFileIcon({ className }: {
|
|
|
1540
1525
|
className?: string;
|
|
1541
1526
|
}): react_jsx_runtime.JSX.Element;
|
|
1542
1527
|
|
|
1543
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AgentBlogIcon, AgentCsIcon, AgentDataIcon, AgentHrIcon, AgentMailIcon, AgentTrendIcon, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon,
|
|
1528
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AgentBlogIcon, AgentCsIcon, AgentDataIcon, AgentHrIcon, AgentMailIcon, AgentTrendIcon, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarProps, type AvatarSize, BADGE_VARIANT_STYLES, Badge, type BadgeProps, type BadgeVariant, BlockquoteIcon, BoldIcon, BookOpenIcon, BookUpIcon, Breadcrumb, Button, type ButtonProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxProps, ChevronsUpDownIcon, ChoiceCardGroup, type ChoiceCardGroupProps, ChoiceCardItem, type ChoiceCardItemProps, CircleCheckFillIcon, CircleHelpIcon, CircleIndicator, type CircleIndicatorProps, CircleOutlineIcon, ClaudeIcon, CodeIcon, CodeSquareIcon, Collapsible, CollapsibleContent, type CollapsibleProps, CollapsibleRoot, CollapsibleTrigger, type CollapsibleWorkspace, Combobox, type ComboboxOption, type ComboboxProps, CreditIcon, DataSection, type DataSectionProps, DatePicker, type DatePickerLocale, type DatePickerMode, type DatePickerProps, DeepSeekIcon, DownloadIcon, Drawer, type DrawerProps, DriveIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyTrayIcon, Field, FieldDivider, type FieldProps, FieldRow, type FieldRowProps, FieldSection, type FieldSectionProps, FileCodeIcon, FileSearchIcon, FileTypeCornerIcon, FolderAmberIcon, FolderBlueIcon, FolderClosedIcon, FolderGreenIcon, FolderVioletIcon, GeminiIcon, GoogleIcon, HangulFileIcon, Header, type HeaderNavItem, type HeaderProps, HeadingIcon, HtmlFileIcon, ICON_NODES, Icon, type IconProps, ImageIcon, ImportIcon, IndentIcon, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, ItalicIcon, KbCard, type KbCardMetadataItem, type KbCardProps, KeyRoundIcon, type LanguageItem, LayersIcon, LayoutGridIcon, LineChartIcon, LinkIcon, ListIcon, ListOrderedIcon, MarkdownFileIcon, MarkdownMessage, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MessageCircleIcon, MessageFooter, type MessageFooterProps, MessagesSquareIcon, Modal, type ModalProps, MyPageIcon, type NavDropdownItem, type NotificationItem, NumberBadge, type NumberBadgeProps, OpenAiIcon, OutdentIcon, Pagination, PanelLeftIcon, PdfFileIcon, PenLineIcon, PencilLineIcon, PresentationIcon, Progress, type ProgressProps, type ProgressThreshold, Providers, RefreshCwIcon, RyaiLogoIcon, SearchInput, type SearchInputProps, SegmentedControl, Select, type SelectGroup, type SelectOption, type SelectProps, Sheet, SheetFileIcon, ShoppingBagIcon, Sidebar, SidebarLink, type SidebarMainMenuItem, type SidebarSubMenuItem, type SidebarUtilityItem, Skeleton, type SkeletonProps, SlideFileIcon, Slider, SmileIcon, type SortDirection, SortIcon, SparklesIcon, SquareCheckIcon, SquareCheckOutlineIcon, StarIcon, Stepper, type StepperProps, StrikethroughIcon, Switch, SwitchField, type SwitchFieldProps, type TabItem, Table, type TableColumn, type TablePaginationConfig, TablePropertiesIcon, type TableProps, type TableSortingItem, Tabs, type TabsProps, Toggle, ToggleGroup, type ToggleGroupItemData, type ToggleGroupProps, type ToggleProps, Tooltip, type TooltipProps, TooltipProvider, TooltipWithIcon, type TooltipWithIconProps, TrashIcon, UpstageIcon, type UserMenuSection, type UserMenuSectionItem, UserMessageBubble, WandSparklesIcon, WordFileIcon, buttonVariants, toggleBaseClasses, toggleSizeClasses };
|
package/dist/index.d.ts
CHANGED
|
@@ -133,34 +133,13 @@ interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement>, V
|
|
|
133
133
|
}
|
|
134
134
|
declare function Button({ className, variant, size, asChild, loading, iconStart, iconEnd, disabled, children, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
135
135
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
interface CardProps {
|
|
145
|
-
/** 예약 유형 배지 — reserved 또는 on-demand (필수) */
|
|
146
|
-
machineType: MachineType;
|
|
147
|
-
/** 이용 상태 배지 — available(대여가능) 또는 rented(대여중) (필수) */
|
|
148
|
-
availability: AvailabilityStatus;
|
|
149
|
-
/** 머신 이름 (예: "NVIDIA B300 x 8") */
|
|
150
|
-
machineName: string;
|
|
151
|
-
/** 머신 이름 앞 이니셜 박스에 표시할 문자 (예: "B") */
|
|
152
|
-
machineInitial: string;
|
|
153
|
-
/** 스펙 태그 목록 (예: ["4x8x", "000GB VRAM", "B-Series"]) */
|
|
154
|
-
tags?: string[];
|
|
155
|
-
/** 스펙 상세 목록 (예: [{ label: "CPU", value: "128 Core" }]) */
|
|
156
|
-
specs?: CardSpec[];
|
|
157
|
-
/** 머신 선택 버튼 클릭 핸들러 */
|
|
158
|
-
onSelect?: () => void;
|
|
159
|
-
/** 버튼 텍스트 (기본값: "머신 선택") */
|
|
160
|
-
selectLabel?: string;
|
|
161
|
-
className?: string;
|
|
162
|
-
}
|
|
163
|
-
declare function Card({ machineType, availability, machineName, machineInitial, tags, specs, onSelect, selectLabel, className, }: CardProps): react_jsx_runtime.JSX.Element;
|
|
136
|
+
declare function Card({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
137
|
+
declare function CardHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
138
|
+
declare function CardTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
139
|
+
declare function CardDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
140
|
+
declare function CardAction({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
141
|
+
declare function CardContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
142
|
+
declare function CardFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
164
143
|
|
|
165
144
|
interface DataSectionProps {
|
|
166
145
|
/** 섹션 제목 */
|
|
@@ -733,6 +712,8 @@ type SidebarMainMenuItem = {
|
|
|
733
712
|
type?: 'item';
|
|
734
713
|
id: string;
|
|
735
714
|
title: string;
|
|
715
|
+
/** 서브메뉴 패널 헤더 영역을 커스텀할 ReactNode. 미지정 시 title 문자열을 기본 스타일로 표시합니다. */
|
|
716
|
+
panelHeader?: React$1.ReactNode;
|
|
736
717
|
href: string;
|
|
737
718
|
icon: React$1.ReactNode;
|
|
738
719
|
isActive?: boolean;
|
|
@@ -817,13 +798,17 @@ interface TabsProps<T extends string = string> {
|
|
|
817
798
|
* "pill" — 회색 배경 컨테이너 + 흰 배경 active (segment control 스타일)
|
|
818
799
|
* "underline" — 하단 밑줄 active (default)
|
|
819
800
|
*/
|
|
820
|
-
variant?:
|
|
801
|
+
variant?: "pill" | "underline";
|
|
821
802
|
/** 컨테이너를 w-full로 펼치고 각 탭 버튼을 균등 분할(flex-1)합니다 */
|
|
822
803
|
block?: boolean;
|
|
823
804
|
/** Tailwind height 클래스 (e.g. "h-[36px]"). 지정 시 내부 버튼 패딩도 자동 조정됩니다. */
|
|
824
805
|
height?: string;
|
|
825
806
|
className?: string;
|
|
826
807
|
}
|
|
808
|
+
/**
|
|
809
|
+
* 디자인 시스템에서는 동일 뷰의 데이터 전환을 위해 ToggleGroup 대신 Tabs를 사용합니다.
|
|
810
|
+
* Tabs의 원래 목적으로도 사용하며, 한 화면에 두 가지의 의미로 Tabs를 사용하지 않습니다.
|
|
811
|
+
*/
|
|
827
812
|
declare function Tabs<T extends string = string>({ allTabs, current, onTabChange, variant, block, height, className, }: TabsProps<T>): react_jsx_runtime.JSX.Element;
|
|
828
813
|
|
|
829
814
|
interface ToggleProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick'> {
|
|
@@ -1540,4 +1525,4 @@ declare function WordFileIcon({ className }: {
|
|
|
1540
1525
|
className?: string;
|
|
1541
1526
|
}): react_jsx_runtime.JSX.Element;
|
|
1542
1527
|
|
|
1543
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AgentBlogIcon, AgentCsIcon, AgentDataIcon, AgentHrIcon, AgentMailIcon, AgentTrendIcon, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon,
|
|
1528
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AgentBlogIcon, AgentCsIcon, AgentDataIcon, AgentHrIcon, AgentMailIcon, AgentTrendIcon, AiAgentIcon, AiBuilderIcon, AiCloudIcon, AiDatacenterIcon, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlignJustifyIcon, AlignLeftIcon, ArrowDownIcon, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarProps, type AvatarSize, BADGE_VARIANT_STYLES, Badge, type BadgeProps, type BadgeVariant, BlockquoteIcon, BoldIcon, BookOpenIcon, BookUpIcon, Breadcrumb, Button, type ButtonProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxProps, ChevronsUpDownIcon, ChoiceCardGroup, type ChoiceCardGroupProps, ChoiceCardItem, type ChoiceCardItemProps, CircleCheckFillIcon, CircleHelpIcon, CircleIndicator, type CircleIndicatorProps, CircleOutlineIcon, ClaudeIcon, CodeIcon, CodeSquareIcon, Collapsible, CollapsibleContent, type CollapsibleProps, CollapsibleRoot, CollapsibleTrigger, type CollapsibleWorkspace, Combobox, type ComboboxOption, type ComboboxProps, CreditIcon, DataSection, type DataSectionProps, DatePicker, type DatePickerLocale, type DatePickerMode, type DatePickerProps, DeepSeekIcon, DownloadIcon, Drawer, type DrawerProps, DriveIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyTrayIcon, Field, FieldDivider, type FieldProps, FieldRow, type FieldRowProps, FieldSection, type FieldSectionProps, FileCodeIcon, FileSearchIcon, FileTypeCornerIcon, FolderAmberIcon, FolderBlueIcon, FolderClosedIcon, FolderGreenIcon, FolderVioletIcon, GeminiIcon, GoogleIcon, HangulFileIcon, Header, type HeaderNavItem, type HeaderProps, HeadingIcon, HtmlFileIcon, ICON_NODES, Icon, type IconProps, ImageIcon, ImportIcon, IndentIcon, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, ItalicIcon, KbCard, type KbCardMetadataItem, type KbCardProps, KeyRoundIcon, type LanguageItem, LayersIcon, LayoutGridIcon, LineChartIcon, LinkIcon, ListIcon, ListOrderedIcon, MarkdownFileIcon, MarkdownMessage, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarMenu, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MessageCircleIcon, MessageFooter, type MessageFooterProps, MessagesSquareIcon, Modal, type ModalProps, MyPageIcon, type NavDropdownItem, type NotificationItem, NumberBadge, type NumberBadgeProps, OpenAiIcon, OutdentIcon, Pagination, PanelLeftIcon, PdfFileIcon, PenLineIcon, PencilLineIcon, PresentationIcon, Progress, type ProgressProps, type ProgressThreshold, Providers, RefreshCwIcon, RyaiLogoIcon, SearchInput, type SearchInputProps, SegmentedControl, Select, type SelectGroup, type SelectOption, type SelectProps, Sheet, SheetFileIcon, ShoppingBagIcon, Sidebar, SidebarLink, type SidebarMainMenuItem, type SidebarSubMenuItem, type SidebarUtilityItem, Skeleton, type SkeletonProps, SlideFileIcon, Slider, SmileIcon, type SortDirection, SortIcon, SparklesIcon, SquareCheckIcon, SquareCheckOutlineIcon, StarIcon, Stepper, type StepperProps, StrikethroughIcon, Switch, SwitchField, type SwitchFieldProps, type TabItem, Table, type TableColumn, type TablePaginationConfig, TablePropertiesIcon, type TableProps, type TableSortingItem, Tabs, type TabsProps, Toggle, ToggleGroup, type ToggleGroupItemData, type ToggleGroupProps, type ToggleProps, Tooltip, type TooltipProps, TooltipProvider, TooltipWithIcon, type TooltipWithIconProps, TrashIcon, UpstageIcon, type UserMenuSection, type UserMenuSectionItem, UserMessageBubble, WandSparklesIcon, WordFileIcon, buttonVariants, toggleBaseClasses, toggleSizeClasses };
|
package/dist/index.js
CHANGED
|
@@ -102,6 +102,12 @@ __export(components_exports, {
|
|
|
102
102
|
Breadcrumb: () => Breadcrumb,
|
|
103
103
|
Button: () => Button,
|
|
104
104
|
Card: () => Card,
|
|
105
|
+
CardAction: () => CardAction,
|
|
106
|
+
CardContent: () => CardContent,
|
|
107
|
+
CardDescription: () => CardDescription,
|
|
108
|
+
CardFooter: () => CardFooter,
|
|
109
|
+
CardHeader: () => CardHeader,
|
|
110
|
+
CardTitle: () => CardTitle,
|
|
105
111
|
Checkbox: () => Checkbox,
|
|
106
112
|
CheckboxCard: () => CheckboxCard,
|
|
107
113
|
ChevronsUpDownIcon: () => ChevronsUpDownIcon2,
|
|
@@ -1252,72 +1258,83 @@ function Dropdown({ middle }) {
|
|
|
1252
1258
|
|
|
1253
1259
|
// src/components/ui/card.tsx
|
|
1254
1260
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
};
|
|
1259
|
-
var MACHINE_TYPE_BADGE = {
|
|
1260
|
-
reserved: {
|
|
1261
|
-
variant: "success",
|
|
1262
|
-
label: "Reserved",
|
|
1263
|
-
icon: "calendar"
|
|
1264
|
-
},
|
|
1265
|
-
"on-demand": { variant: "warning", label: "On-demand", icon: "zap" }
|
|
1266
|
-
};
|
|
1267
|
-
function Card({
|
|
1268
|
-
machineType,
|
|
1269
|
-
availability,
|
|
1270
|
-
machineName,
|
|
1271
|
-
machineInitial,
|
|
1272
|
-
tags = [],
|
|
1273
|
-
specs = [],
|
|
1274
|
-
onSelect,
|
|
1275
|
-
selectLabel = "\uBA38\uC2E0 \uC120\uD0DD",
|
|
1276
|
-
className
|
|
1277
|
-
}) {
|
|
1278
|
-
var _a;
|
|
1279
|
-
const avail = AVAILABILITY_BADGE[availability];
|
|
1280
|
-
const mtype = MACHINE_TYPE_BADGE[machineType];
|
|
1281
|
-
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
1261
|
+
function Card(_a) {
|
|
1262
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1263
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1282
1264
|
"div",
|
|
1283
|
-
{
|
|
1265
|
+
__spreadValues({
|
|
1266
|
+
"data-slot": "card",
|
|
1284
1267
|
className: cn(
|
|
1285
|
-
"flex
|
|
1268
|
+
"flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",
|
|
1286
1269
|
className
|
|
1287
|
-
)
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1270
|
+
)
|
|
1271
|
+
}, props)
|
|
1272
|
+
);
|
|
1273
|
+
}
|
|
1274
|
+
function CardHeader(_a) {
|
|
1275
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1276
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1277
|
+
"div",
|
|
1278
|
+
__spreadValues({
|
|
1279
|
+
"data-slot": "card-header",
|
|
1280
|
+
className: cn(
|
|
1281
|
+
"@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
|
|
1282
|
+
className
|
|
1283
|
+
)
|
|
1284
|
+
}, props)
|
|
1285
|
+
);
|
|
1286
|
+
}
|
|
1287
|
+
function CardTitle(_a) {
|
|
1288
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1289
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1290
|
+
"div",
|
|
1291
|
+
__spreadValues({
|
|
1292
|
+
"data-slot": "card-title",
|
|
1293
|
+
className: cn("leading-none font-semibold", className)
|
|
1294
|
+
}, props)
|
|
1295
|
+
);
|
|
1296
|
+
}
|
|
1297
|
+
function CardDescription(_a) {
|
|
1298
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1299
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1300
|
+
"div",
|
|
1301
|
+
__spreadValues({
|
|
1302
|
+
"data-slot": "card-description",
|
|
1303
|
+
className: cn("text-sm text-muted-foreground", className)
|
|
1304
|
+
}, props)
|
|
1305
|
+
);
|
|
1306
|
+
}
|
|
1307
|
+
function CardAction(_a) {
|
|
1308
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1309
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1310
|
+
"div",
|
|
1311
|
+
__spreadValues({
|
|
1312
|
+
"data-slot": "card-action",
|
|
1313
|
+
className: cn(
|
|
1314
|
+
"col-start-2 row-span-2 row-start-1 self-start justify-self-end",
|
|
1315
|
+
className
|
|
1316
|
+
)
|
|
1317
|
+
}, props)
|
|
1318
|
+
);
|
|
1319
|
+
}
|
|
1320
|
+
function CardContent(_a) {
|
|
1321
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1322
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1323
|
+
"div",
|
|
1324
|
+
__spreadValues({
|
|
1325
|
+
"data-slot": "card-content",
|
|
1326
|
+
className: cn("px-6", className)
|
|
1327
|
+
}, props)
|
|
1328
|
+
);
|
|
1329
|
+
}
|
|
1330
|
+
function CardFooter(_a) {
|
|
1331
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1332
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1333
|
+
"div",
|
|
1334
|
+
__spreadValues({
|
|
1335
|
+
"data-slot": "card-footer",
|
|
1336
|
+
className: cn("flex items-center px-6 [.border-t]:pt-6", className)
|
|
1337
|
+
}, props)
|
|
1321
1338
|
);
|
|
1322
1339
|
}
|
|
1323
1340
|
|
|
@@ -3063,7 +3080,7 @@ function Input(_a) {
|
|
|
3063
3080
|
type,
|
|
3064
3081
|
"data-slot": "input",
|
|
3065
3082
|
className: cn(
|
|
3066
|
-
"h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base
|
|
3083
|
+
"h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30",
|
|
3067
3084
|
"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
|
|
3068
3085
|
"aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",
|
|
3069
3086
|
className
|
|
@@ -3101,7 +3118,7 @@ function InputGroup(_a) {
|
|
|
3101
3118
|
"data-slot": "input-group",
|
|
3102
3119
|
role: "group",
|
|
3103
3120
|
className: cn(
|
|
3104
|
-
"group/input-group relative flex w-full items-center rounded-md border border-input
|
|
3121
|
+
"group/input-group relative flex w-full items-center rounded-md border border-input transition-[color,box-shadow] outline-none dark:bg-input/30",
|
|
3105
3122
|
"h-9 min-w-0 has-[>textarea]:h-auto",
|
|
3106
3123
|
// Variants based on alignment.
|
|
3107
3124
|
"has-[>[data-align=inline-start]]:[&>input]:pl-2",
|
|
@@ -4968,7 +4985,7 @@ function Sidebar({
|
|
|
4968
4985
|
className,
|
|
4969
4986
|
LinkComponent
|
|
4970
4987
|
}) {
|
|
4971
|
-
var _a;
|
|
4988
|
+
var _a, _b, _c;
|
|
4972
4989
|
const [isPanelOpen, setIsPanelOpen] = React22.useState(true);
|
|
4973
4990
|
const activeMenu = React22.useMemo(
|
|
4974
4991
|
() => {
|
|
@@ -5051,7 +5068,7 @@ function Sidebar({
|
|
|
5051
5068
|
}
|
|
5052
5069
|
) }),
|
|
5053
5070
|
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex flex-col flex-1 items-center justify-end min-h-0 min-w-0 px-4 py-3 gap-3 w-full", children: utilities == null ? void 0 : utilities.map((util) => {
|
|
5054
|
-
var _a2,
|
|
5071
|
+
var _a2, _b2;
|
|
5055
5072
|
if (util.popover) {
|
|
5056
5073
|
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(React22.Fragment, { children: util.popover }, util.id);
|
|
5057
5074
|
}
|
|
@@ -5096,7 +5113,7 @@ function Sidebar({
|
|
|
5096
5113
|
}
|
|
5097
5114
|
)
|
|
5098
5115
|
},
|
|
5099
|
-
(
|
|
5116
|
+
(_b2 = util.id) != null ? _b2 : util.label
|
|
5100
5117
|
);
|
|
5101
5118
|
}) }),
|
|
5102
5119
|
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex items-center justify-center pt-3 pb-5 shrink-0 w-full", children: avatar })
|
|
@@ -5117,7 +5134,7 @@ function Sidebar({
|
|
|
5117
5134
|
className: "flex items-center justify-between pl-2 pr-0.5 py-2 w-full",
|
|
5118
5135
|
style: { height: "36px" },
|
|
5119
5136
|
children: [
|
|
5120
|
-
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex items-center gap-1.5 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-sm font-semibold leading-5 text-foreground tracking-tight truncate", children: (activeMenu == null ? void 0 : activeMenu.title)
|
|
5137
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex items-center gap-1.5 min-w-0", children: (_c = activeMenu == null ? void 0 : activeMenu.panelHeader) != null ? _c : /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-sm font-semibold leading-5 text-foreground tracking-tight truncate", children: (_b = activeMenu == null ? void 0 : activeMenu.title) != null ? _b : "-" }) }),
|
|
5121
5138
|
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
5122
5139
|
"button",
|
|
5123
5140
|
{
|
|
@@ -9520,6 +9537,12 @@ function WordFileIcon({ className }) {
|
|
|
9520
9537
|
Breadcrumb,
|
|
9521
9538
|
Button,
|
|
9522
9539
|
Card,
|
|
9540
|
+
CardAction,
|
|
9541
|
+
CardContent,
|
|
9542
|
+
CardDescription,
|
|
9543
|
+
CardFooter,
|
|
9544
|
+
CardHeader,
|
|
9545
|
+
CardTitle,
|
|
9523
9546
|
Checkbox,
|
|
9524
9547
|
CheckboxCard,
|
|
9525
9548
|
ChevronsUpDownIcon,
|