@hua-labs/ui 1.0.0 → 1.1.0-alpha.0.1
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/README.md +891 -213
- package/dist/ComponentLayout-BxCenSAm.d.mts +73 -0
- package/dist/advanced/dashboard.d.ts +7 -0
- package/dist/advanced/dashboard.d.ts.map +1 -0
- package/dist/advanced/motion.d.ts +2 -0
- package/dist/advanced/motion.d.ts.map +1 -0
- package/dist/advanced-dashboard.d.mts +4 -0
- package/dist/advanced-dashboard.js +2 -0
- package/dist/advanced-dashboard.js.map +1 -0
- package/dist/advanced-dashboard.mjs +2 -0
- package/dist/advanced-dashboard.mjs.map +1 -0
- package/dist/advanced-motion.d.mts +93 -0
- package/dist/advanced-motion.js +2 -0
- package/dist/advanced-motion.js.map +1 -0
- package/dist/advanced-motion.mjs +2 -0
- package/dist/advanced-motion.mjs.map +1 -0
- package/dist/advanced.d.mts +734 -0
- package/dist/advanced.d.ts +17 -0
- package/dist/advanced.d.ts.map +1 -0
- package/dist/advanced.js +2 -0
- package/dist/advanced.js.map +1 -0
- package/dist/advanced.mjs +2 -0
- package/dist/advanced.mjs.map +1 -0
- package/dist/chunk-6NXF6ATP.mjs +2 -0
- package/dist/chunk-6NXF6ATP.mjs.map +1 -0
- package/dist/chunk-ACEKLG37.mjs +2 -0
- package/dist/chunk-ACEKLG37.mjs.map +1 -0
- package/dist/chunk-DMYT7RZ4.mjs +2 -0
- package/dist/chunk-DMYT7RZ4.mjs.map +1 -0
- package/dist/chunk-KHEJZ3U4.mjs +2 -0
- package/dist/chunk-KHEJZ3U4.mjs.map +1 -0
- package/dist/chunk-QXBMXCML.mjs +2 -0
- package/dist/chunk-QXBMXCML.mjs.map +1 -0
- package/dist/chunk-SGCVGEDR.mjs +2 -0
- package/dist/chunk-SGCVGEDR.mjs.map +1 -0
- package/dist/chunk-UUHAXGMO.mjs +2 -0
- package/dist/chunk-UUHAXGMO.mjs.map +1 -0
- package/dist/chunk-VPOFRDYL.mjs +2 -0
- package/dist/chunk-VPOFRDYL.mjs.map +1 -0
- package/dist/chunk-YY6ZBUVJ.mjs +2 -0
- package/dist/chunk-YY6ZBUVJ.mjs.map +1 -0
- package/dist/chunk-ZQAAB3P4.mjs +2 -0
- package/dist/chunk-ZQAAB3P4.mjs.map +1 -0
- package/dist/components/Accordion.d.ts +109 -1
- package/dist/components/Accordion.d.ts.map +1 -1
- package/dist/components/Action.d.ts +68 -0
- package/dist/components/Action.d.ts.map +1 -0
- package/dist/components/ActionToolbar.d.ts +65 -0
- package/dist/components/ActionToolbar.d.ts.map +1 -0
- package/dist/components/Alert.d.ts +49 -0
- package/dist/components/Alert.d.ts.map +1 -1
- package/dist/components/Autocomplete.d.ts +88 -0
- package/dist/components/Autocomplete.d.ts.map +1 -0
- package/dist/components/Avatar.d.ts +71 -1
- package/dist/components/Avatar.d.ts.map +1 -1
- package/dist/components/Badge.d.ts +32 -2
- package/dist/components/Badge.d.ts.map +1 -1
- package/dist/components/Bookmark.d.ts +49 -0
- package/dist/components/Bookmark.d.ts.map +1 -0
- package/dist/components/BottomSheet.d.ts +91 -1
- package/dist/components/BottomSheet.d.ts.map +1 -1
- package/dist/components/Breadcrumb.d.ts +73 -14
- package/dist/components/Breadcrumb.d.ts.map +1 -1
- package/dist/components/Button.d.ts +82 -7
- package/dist/components/Button.d.ts.map +1 -1
- package/dist/components/Card.d.ts +122 -5
- package/dist/components/Card.d.ts.map +1 -1
- package/dist/components/ChatMessage.d.ts +67 -1
- package/dist/components/ChatMessage.d.ts.map +1 -1
- package/dist/components/Checkbox.d.ts +48 -2
- package/dist/components/Checkbox.d.ts.map +1 -1
- package/dist/components/Command.d.ts +82 -1
- package/dist/components/Command.d.ts.map +1 -1
- package/dist/components/ComponentLayout.d.ts +72 -0
- package/dist/components/ComponentLayout.d.ts.map +1 -0
- package/dist/components/ConfirmModal.d.ts +66 -1
- package/dist/components/ConfirmModal.d.ts.map +1 -1
- package/dist/components/Container.d.ts +39 -0
- package/dist/components/Container.d.ts.map +1 -1
- package/dist/components/ContextMenu.d.ts +51 -1
- package/dist/components/ContextMenu.d.ts.map +1 -1
- package/dist/components/DatePicker.d.ts +62 -0
- package/dist/components/DatePicker.d.ts.map +1 -0
- package/dist/components/Divider.d.ts +13 -3
- package/dist/components/Divider.d.ts.map +1 -1
- package/dist/components/Drawer.d.ts +103 -1
- package/dist/components/Drawer.d.ts.map +1 -1
- package/dist/components/Dropdown.d.ts +51 -1
- package/dist/components/Dropdown.d.ts.map +1 -1
- package/dist/components/EmotionAnalysis.d.ts +59 -1
- package/dist/components/EmotionAnalysis.d.ts.map +1 -1
- package/dist/components/EmotionButton.d.ts +35 -1
- package/dist/components/EmotionButton.d.ts.map +1 -1
- package/dist/components/EmotionMeter.d.ts +38 -2
- package/dist/components/EmotionMeter.d.ts.map +1 -1
- package/dist/components/EmotionSelector.d.ts +51 -1
- package/dist/components/EmotionSelector.d.ts.map +1 -1
- package/dist/components/FeatureCard.d.ts +61 -0
- package/dist/components/FeatureCard.d.ts.map +1 -0
- package/dist/components/Form.d.ts +114 -0
- package/dist/components/Form.d.ts.map +1 -0
- package/dist/components/Grid.d.ts +42 -1
- package/dist/components/Grid.d.ts.map +1 -1
- package/dist/components/HeroSection.d.ts +77 -0
- package/dist/components/HeroSection.d.ts.map +1 -0
- package/dist/components/Icon/Icon.d.ts +159 -0
- package/dist/components/Icon/Icon.d.ts.map +1 -0
- package/dist/components/Icon/IconProvider.d.ts +94 -0
- package/dist/components/Icon/IconProvider.d.ts.map +1 -0
- package/dist/components/Icon/icon-store.d.ts +21 -0
- package/dist/components/Icon/icon-store.d.ts.map +1 -0
- package/dist/components/Icon/index.d.ts +10 -0
- package/dist/components/Icon/index.d.ts.map +1 -0
- package/dist/components/InfoCard.d.ts +48 -0
- package/dist/components/InfoCard.d.ts.map +1 -0
- package/dist/components/Input.d.ts +40 -8
- package/dist/components/Input.d.ts.map +1 -1
- package/dist/components/Label.d.ts +50 -0
- package/dist/components/Label.d.ts.map +1 -0
- package/dist/components/LanguageToggle.d.ts +41 -1
- package/dist/components/LanguageToggle.d.ts.map +1 -1
- package/dist/components/Link.d.ts +52 -0
- package/dist/components/Link.d.ts.map +1 -0
- package/dist/components/LoadingSpinner.d.ts +44 -5
- package/dist/components/LoadingSpinner.d.ts.map +1 -1
- package/dist/components/Menu.d.ts +92 -1
- package/dist/components/Menu.d.ts.map +1 -1
- package/dist/components/Modal.d.ts +67 -5
- package/dist/components/Modal.d.ts.map +1 -1
- package/dist/components/Navigation.d.ts +72 -0
- package/dist/components/Navigation.d.ts.map +1 -0
- package/dist/components/PageNavigation.d.ts +48 -0
- package/dist/components/PageNavigation.d.ts.map +1 -0
- package/dist/components/PageTransition.d.ts +44 -1
- package/dist/components/PageTransition.d.ts.map +1 -1
- package/dist/components/Pagination.d.ts +52 -1
- package/dist/components/Pagination.d.ts.map +1 -1
- package/dist/components/Panel.d.ts +99 -0
- package/dist/components/Panel.d.ts.map +1 -0
- package/dist/components/Popover.d.ts +46 -1
- package/dist/components/Popover.d.ts.map +1 -1
- package/dist/components/Progress.d.ts +52 -3
- package/dist/components/Progress.d.ts.map +1 -1
- package/dist/components/Radio.d.ts +44 -2
- package/dist/components/Radio.d.ts.map +1 -1
- package/dist/components/ScrollArea.d.ts +53 -1
- package/dist/components/ScrollArea.d.ts.map +1 -1
- package/dist/components/ScrollIndicator.d.ts +43 -1
- package/dist/components/ScrollIndicator.d.ts.map +1 -1
- package/dist/components/ScrollProgress.d.ts +37 -0
- package/dist/components/ScrollProgress.d.ts.map +1 -1
- package/dist/components/ScrollToTop.d.ts +48 -11
- package/dist/components/ScrollToTop.d.ts.map +1 -1
- package/dist/components/SectionHeader.d.ts +42 -0
- package/dist/components/SectionHeader.d.ts.map +1 -0
- package/dist/components/Select.d.ts +59 -2
- package/dist/components/Select.d.ts.map +1 -1
- package/dist/components/Skeleton.d.ts +44 -1
- package/dist/components/Skeleton.d.ts.map +1 -1
- package/dist/components/Slider.d.ts +75 -0
- package/dist/components/Slider.d.ts.map +1 -0
- package/dist/components/Stack.d.ts +42 -1
- package/dist/components/Stack.d.ts.map +1 -1
- package/dist/components/StatsPanel.d.ts +72 -0
- package/dist/components/StatsPanel.d.ts.map +1 -0
- package/dist/components/Switch.d.ts +48 -2
- package/dist/components/Switch.d.ts.map +1 -1
- package/dist/components/Table.d.ts +206 -0
- package/dist/components/Table.d.ts.map +1 -0
- package/dist/components/Tabs.d.ts +123 -10
- package/dist/components/Tabs.d.ts.map +1 -1
- package/dist/components/Textarea.d.ts +48 -2
- package/dist/components/Textarea.d.ts.map +1 -1
- package/dist/components/ThemeProvider.d.ts +67 -2
- package/dist/components/ThemeProvider.d.ts.map +1 -1
- package/dist/components/ThemeToggle.d.ts +44 -0
- package/dist/components/ThemeToggle.d.ts.map +1 -1
- package/dist/components/Toast.d.ts +75 -1
- package/dist/components/Toast.d.ts.map +1 -1
- package/dist/components/Toggle.d.ts +62 -0
- package/dist/components/Toggle.d.ts.map +1 -0
- package/dist/components/Tooltip.d.ts +48 -1
- package/dist/components/Tooltip.d.ts.map +1 -1
- package/dist/components/Upload.d.ts +87 -0
- package/dist/components/Upload.d.ts.map +1 -0
- package/dist/components/advanced/AdvancedPageTransition.d.ts +25 -0
- package/dist/components/advanced/AdvancedPageTransition.d.ts.map +1 -0
- package/dist/components/advanced/index.d.ts +4 -0
- package/dist/components/advanced/index.d.ts.map +1 -0
- package/dist/components/advanced/usePageTransition.d.ts +33 -0
- package/dist/components/advanced/usePageTransition.d.ts.map +1 -0
- package/dist/components/advanced/usePageTransitionManager.d.ts +44 -0
- package/dist/components/advanced/usePageTransitionManager.d.ts.map +1 -0
- package/dist/components/dashboard/ActivityFeed.d.ts +87 -0
- package/dist/components/dashboard/ActivityFeed.d.ts.map +1 -0
- package/dist/components/dashboard/BarChart.d.ts +82 -0
- package/dist/components/dashboard/BarChart.d.ts.map +1 -0
- package/dist/components/dashboard/DashboardGrid.d.ts +44 -0
- package/dist/components/dashboard/DashboardGrid.d.ts.map +1 -0
- package/dist/components/dashboard/DashboardSidebar.d.ts +105 -0
- package/dist/components/dashboard/DashboardSidebar.d.ts.map +1 -0
- package/dist/components/dashboard/DashboardToolbar.d.ts +120 -0
- package/dist/components/dashboard/DashboardToolbar.d.ts.map +1 -0
- package/dist/components/dashboard/EmptyState.d.ts +61 -0
- package/dist/components/dashboard/EmptyState.d.ts.map +1 -0
- package/dist/components/dashboard/MembershipBadge.d.ts +45 -0
- package/dist/components/dashboard/MembershipBadge.d.ts.map +1 -0
- package/dist/components/dashboard/MerchantList.d.ts +98 -0
- package/dist/components/dashboard/MerchantList.d.ts.map +1 -0
- package/dist/components/dashboard/MetricCard.d.ts +75 -0
- package/dist/components/dashboard/MetricCard.d.ts.map +1 -0
- package/dist/components/dashboard/MiniBarChart.d.ts +60 -0
- package/dist/components/dashboard/MiniBarChart.d.ts.map +1 -0
- package/dist/components/dashboard/NotificationCard.d.ts +89 -0
- package/dist/components/dashboard/NotificationCard.d.ts.map +1 -0
- package/dist/components/dashboard/ProfileCard.d.ts +82 -0
- package/dist/components/dashboard/ProfileCard.d.ts.map +1 -0
- package/dist/components/dashboard/ProgressCard.d.ts +71 -0
- package/dist/components/dashboard/ProgressCard.d.ts.map +1 -0
- package/dist/components/dashboard/QuickActionCard.d.ts +63 -0
- package/dist/components/dashboard/QuickActionCard.d.ts.map +1 -0
- package/dist/components/dashboard/RoutingBreakdownCard.d.ts +88 -0
- package/dist/components/dashboard/RoutingBreakdownCard.d.ts.map +1 -0
- package/dist/components/dashboard/SettlementTimeline.d.ts +90 -0
- package/dist/components/dashboard/SettlementTimeline.d.ts.map +1 -0
- package/dist/components/dashboard/StatCard.d.ts +70 -0
- package/dist/components/dashboard/StatCard.d.ts.map +1 -0
- package/dist/components/dashboard/SummaryCard.d.ts +73 -0
- package/dist/components/dashboard/SummaryCard.d.ts.map +1 -0
- package/dist/components/dashboard/TransactionDetailDrawer.d.ts +183 -0
- package/dist/components/dashboard/TransactionDetailDrawer.d.ts.map +1 -0
- package/dist/components/dashboard/TransactionsTable.d.ts +137 -0
- package/dist/components/dashboard/TransactionsTable.d.ts.map +1 -0
- package/dist/components/dashboard/TrendChart.d.ts +75 -0
- package/dist/components/dashboard/TrendChart.d.ts.map +1 -0
- package/dist/components/dashboard/index.d.ts +41 -0
- package/dist/components/dashboard/index.d.ts.map +1 -0
- package/dist/components/scrollbar/scrollbar.d.ts +12 -0
- package/dist/components/scrollbar/scrollbar.d.ts.map +1 -0
- package/dist/dashboard-QMssHf5j.d.mts +1801 -0
- package/dist/feedback.d.mts +103 -0
- package/dist/feedback.d.ts +21 -0
- package/dist/feedback.d.ts.map +1 -0
- package/dist/feedback.js +2 -0
- package/dist/feedback.js.map +1 -0
- package/dist/feedback.mjs +2 -0
- package/dist/feedback.mjs.map +1 -0
- package/dist/form.d.mts +803 -0
- package/dist/form.d.ts +42 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +2 -0
- package/dist/form.js.map +1 -0
- package/dist/form.mjs +2 -0
- package/dist/form.mjs.map +1 -0
- package/dist/hooks/useScrollToggle.d.ts +12 -0
- package/dist/hooks/useScrollToggle.d.ts.map +1 -0
- package/dist/icons-DoSGIez_.d.mts +135 -0
- package/dist/index.d.mts +3770 -0
- package/dist/index.d.ts +76 -38
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -49
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +37 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/icon-aliases.d.ts +24 -0
- package/dist/lib/icon-aliases.d.ts.map +1 -0
- package/dist/lib/icon-names.d.ts +47 -0
- package/dist/lib/icon-names.d.ts.map +1 -0
- package/dist/lib/icon-providers.d.ts +560 -0
- package/dist/lib/icon-providers.d.ts.map +1 -0
- package/dist/lib/icons.d.ts +113 -24
- package/dist/lib/icons.d.ts.map +1 -1
- package/dist/lib/phosphor-icons.d.ts +6 -0
- package/dist/lib/phosphor-icons.d.ts.map +1 -0
- package/dist/lib/styles/colors.d.ts +131 -0
- package/dist/lib/styles/colors.d.ts.map +1 -0
- package/dist/lib/styles/index.d.ts +8 -0
- package/dist/lib/styles/index.d.ts.map +1 -0
- package/dist/lib/styles/utils.d.ts +87 -0
- package/dist/lib/styles/utils.d.ts.map +1 -0
- package/dist/lib/styles/variants.d.ts +79 -0
- package/dist/lib/styles/variants.d.ts.map +1 -0
- package/dist/lib/types/common.d.ts +80 -0
- package/dist/lib/types/common.d.ts.map +1 -0
- package/dist/lib/types/index.d.ts +6 -0
- package/dist/lib/types/index.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +73 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/navigation.d.mts +105 -0
- package/dist/navigation.d.ts +22 -0
- package/dist/navigation.d.ts.map +1 -0
- package/dist/navigation.js +2 -0
- package/dist/navigation.js.map +1 -0
- package/dist/navigation.mjs +2 -0
- package/dist/navigation.mjs.map +1 -0
- package/package.json +85 -19
- package/src/styles/toast.css +23 -0
- package/dist/components/Accordion.js +0 -84
- package/dist/components/Alert.js +0 -61
- package/dist/components/Avatar.js +0 -18
- package/dist/components/Badge.js +0 -15
- package/dist/components/BottomSheet.js +0 -96
- package/dist/components/Breadcrumb.js +0 -47
- package/dist/components/Button.js +0 -23
- package/dist/components/Card.js +0 -18
- package/dist/components/ChatMessage.js +0 -59
- package/dist/components/Checkbox.js +0 -30
- package/dist/components/Command.js +0 -119
- package/dist/components/ConfirmModal.js +0 -53
- package/dist/components/Container.js +0 -23
- package/dist/components/ContextMenu.js +0 -110
- package/dist/components/Divider.js +0 -39
- package/dist/components/Drawer.js +0 -79
- package/dist/components/Dropdown.js +0 -174
- package/dist/components/EmotionAnalysis.js +0 -40
- package/dist/components/EmotionButton.js +0 -16
- package/dist/components/EmotionMeter.js +0 -21
- package/dist/components/EmotionSelector.js +0 -46
- package/dist/components/Grid.js +0 -44
- package/dist/components/Icon.d.ts +0 -26
- package/dist/components/Icon.d.ts.map +0 -1
- package/dist/components/Icon.js +0 -48
- package/dist/components/Input.js +0 -25
- package/dist/components/LanguageToggle.js +0 -61
- package/dist/components/LoadingSpinner.js +0 -37
- package/dist/components/Menu.js +0 -122
- package/dist/components/Modal.js +0 -62
- package/dist/components/PageTransition.js +0 -39
- package/dist/components/Pagination.js +0 -87
- package/dist/components/Popover.js +0 -159
- package/dist/components/Progress.js +0 -51
- package/dist/components/Radio.js +0 -29
- package/dist/components/ScrollArea.js +0 -42
- package/dist/components/ScrollIndicator.js +0 -60
- package/dist/components/ScrollProgress.js +0 -39
- package/dist/components/ScrollToTop.js +0 -46
- package/dist/components/Select.js +0 -29
- package/dist/components/Skeleton.js +0 -71
- package/dist/components/Stack.js +0 -34
- package/dist/components/Switch.js +0 -29
- package/dist/components/Tabs.js +0 -117
- package/dist/components/Textarea.js +0 -31
- package/dist/components/ThemeProvider.js +0 -76
- package/dist/components/ThemeToggle.js +0 -49
- package/dist/components/Toast.js +0 -138
- package/dist/components/Tooltip.js +0 -102
- package/dist/lib/icons.js +0 -321
- package/dist/lib/utils.js +0 -5
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
/**
|
|
4
|
+
* NotificationItem 인터페이스
|
|
5
|
+
* @typedef {Object} NotificationItem
|
|
6
|
+
* @property {string} id - 알림 고유 ID
|
|
7
|
+
* @property {string} title - 알림 제목
|
|
8
|
+
* @property {string} message - 알림 메시지
|
|
9
|
+
* @property {Date | string} timestamp - 알림 타임스탬프
|
|
10
|
+
* @property {"info" | "warning" | "error" | "success"} [type] - 알림 타입
|
|
11
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘
|
|
12
|
+
* @property {() => void} [onClick] - 클릭 핸들러
|
|
13
|
+
* @property {string} [href] - 링크 URL
|
|
14
|
+
*/
|
|
15
|
+
export interface NotificationItem {
|
|
16
|
+
id: string;
|
|
17
|
+
title: string;
|
|
18
|
+
message: string;
|
|
19
|
+
timestamp: Date | string;
|
|
20
|
+
type?: "info" | "warning" | "error" | "success";
|
|
21
|
+
icon?: IconName | React.ReactNode;
|
|
22
|
+
onClick?: () => void;
|
|
23
|
+
href?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* NotificationCard 컴포넌트의 props / NotificationCard component props
|
|
27
|
+
* @typedef {Object} NotificationCardProps
|
|
28
|
+
* @property {string} [title="알림 및 공지"] - 카드 제목 / Card title
|
|
29
|
+
* @property {NotificationItem[]} items - 알림 항목 배열 / Notification items array
|
|
30
|
+
* @property {string} [emptyMessage="알림이 없습니다."] - 빈 상태 메시지 / Empty state message
|
|
31
|
+
* @property {number} [maxItems] - 최대 표시 항목 수 / Maximum items to display
|
|
32
|
+
* @property {() => void} [onViewAll] - 전체 보기 핸들러 / View all handler
|
|
33
|
+
* @property {string} [viewAllLabel="모든 알림 보기"] - 전체 보기 라벨 / View all label
|
|
34
|
+
* @property {boolean} [showHeader=true] - 헤더 표시 여부 / Show header
|
|
35
|
+
* @property {boolean} [showCount=true] - 개수 표시 여부 / Show count
|
|
36
|
+
* @property {React.ReactNode} [emptyState] - 빈 상태 컴포넌트 / Empty state component
|
|
37
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
38
|
+
*/
|
|
39
|
+
export interface NotificationCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
40
|
+
title?: string;
|
|
41
|
+
items: NotificationItem[];
|
|
42
|
+
emptyMessage?: string;
|
|
43
|
+
maxItems?: number;
|
|
44
|
+
onViewAll?: () => void;
|
|
45
|
+
viewAllLabel?: string;
|
|
46
|
+
showHeader?: boolean;
|
|
47
|
+
showCount?: boolean;
|
|
48
|
+
emptyState?: React.ReactNode;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* NotificationCard 컴포넌트 / NotificationCard component
|
|
52
|
+
*
|
|
53
|
+
* 알림 목록을 표시하는 카드 컴포넌트입니다.
|
|
54
|
+
* 여러 알림 항목을 표시하며, 타입별로 다른 스타일을 적용할 수 있습니다.
|
|
55
|
+
*
|
|
56
|
+
* Card component that displays a list of notifications.
|
|
57
|
+
* Shows multiple notification items and can apply different styles by type.
|
|
58
|
+
*
|
|
59
|
+
* @component
|
|
60
|
+
* @example
|
|
61
|
+
* // 기본 사용 / Basic usage
|
|
62
|
+
* <NotificationCard
|
|
63
|
+
* items={[
|
|
64
|
+
* {
|
|
65
|
+
* id: "1",
|
|
66
|
+
* title: "새 주문",
|
|
67
|
+
* message: "주문 #1234가 생성되었습니다",
|
|
68
|
+
* timestamp: new Date(),
|
|
69
|
+
* type: "success"
|
|
70
|
+
* }
|
|
71
|
+
* ]}
|
|
72
|
+
* />
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* // 최대 항목 수 제한 / Maximum items limit
|
|
76
|
+
* <NotificationCard
|
|
77
|
+
* title="최근 알림"
|
|
78
|
+
* items={notifications}
|
|
79
|
+
* maxItems={5}
|
|
80
|
+
* onViewAll={() => navigate("/notifications")}
|
|
81
|
+
* showCount
|
|
82
|
+
* />
|
|
83
|
+
*
|
|
84
|
+
* @param {NotificationCardProps} props - NotificationCard 컴포넌트의 props / NotificationCard component props
|
|
85
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
86
|
+
* @returns {JSX.Element} NotificationCard 컴포넌트 / NotificationCard component
|
|
87
|
+
*/
|
|
88
|
+
export declare const NotificationCard: React.ForwardRefExoticComponent<NotificationCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
89
|
+
//# sourceMappingURL=NotificationCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotificationCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/NotificationCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAChD,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B;AA+BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,gBAAgB,8FAuI5B,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* 멤버십 등급 인터페이스
|
|
4
|
+
* @typedef {Object} MembershipTier
|
|
5
|
+
* @property {"basic" | "pro" | "premium" | "admin"} tier - 등급
|
|
6
|
+
* @property {string} label - 등급 라벨
|
|
7
|
+
*/
|
|
8
|
+
export interface MembershipTier {
|
|
9
|
+
tier: "basic" | "pro" | "premium" | "admin";
|
|
10
|
+
label: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* ProfileCard 컴포넌트의 props / ProfileCard component props
|
|
14
|
+
* @typedef {Object} ProfileCardProps
|
|
15
|
+
* @property {string} name - 사용자 이름 / User name
|
|
16
|
+
* @property {string} [email] - 이메일 / Email
|
|
17
|
+
* @property {string} [avatar] - 아바타 이미지 URL / Avatar image URL
|
|
18
|
+
* @property {string} [avatarAlt] - 아바타 대체 텍스트 / Avatar alt text
|
|
19
|
+
* @property {string} [greeting] - 인사말 / Greeting
|
|
20
|
+
* @property {Date | string} [memberSince] - 가입일 / Member since date
|
|
21
|
+
* @property {MembershipTier["tier"]} [membershipTier] - 멤버십 등급 / Membership tier
|
|
22
|
+
* @property {string} [membershipLabel] - 멤버십 라벨 / Membership label
|
|
23
|
+
* @property {() => void} [onSettingsClick] - 설정 클릭 핸들러 / Settings click handler
|
|
24
|
+
* @property {string} [settingsHref] - 설정 링크 URL / Settings link URL
|
|
25
|
+
* @property {"default" | "gradient" | "minimal"} [variant="default"] - 스타일 변형 / Style variant
|
|
26
|
+
* @property {boolean} [showAvatar=true] - 아바타 표시 여부 / Show avatar
|
|
27
|
+
* @property {boolean} [showMembership=true] - 멤버십 표시 여부 / Show membership
|
|
28
|
+
* @property {boolean} [showSettings=true] - 설정 버튼 표시 여부 / Show settings button
|
|
29
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
30
|
+
*/
|
|
31
|
+
export interface ProfileCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
32
|
+
name: string;
|
|
33
|
+
email?: string;
|
|
34
|
+
avatar?: string;
|
|
35
|
+
avatarAlt?: string;
|
|
36
|
+
greeting?: string;
|
|
37
|
+
memberSince?: Date | string;
|
|
38
|
+
membershipTier?: MembershipTier["tier"];
|
|
39
|
+
membershipLabel?: string;
|
|
40
|
+
onSettingsClick?: () => void;
|
|
41
|
+
settingsHref?: string;
|
|
42
|
+
variant?: "default" | "gradient" | "minimal";
|
|
43
|
+
showAvatar?: boolean;
|
|
44
|
+
showMembership?: boolean;
|
|
45
|
+
showSettings?: boolean;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* ProfileCard 컴포넌트
|
|
49
|
+
*
|
|
50
|
+
* 사용자 프로필 정보를 표시하는 카드 컴포넌트입니다.
|
|
51
|
+
* 아바타, 이름, 이메일, 멤버십 등급 등을 표시할 수 있습니다.
|
|
52
|
+
*
|
|
53
|
+
* Card component that displays user profile information.
|
|
54
|
+
* Can show avatar, name, email, membership tier, and more.
|
|
55
|
+
*
|
|
56
|
+
* @component
|
|
57
|
+
* @example
|
|
58
|
+
* // 기본 사용 / Basic usage
|
|
59
|
+
* <ProfileCard
|
|
60
|
+
* name="홍길동"
|
|
61
|
+
* email="hong@example.com"
|
|
62
|
+
* avatar="/avatar.jpg"
|
|
63
|
+
* membershipTier="premium"
|
|
64
|
+
* memberSince={new Date("2024-01-01")}
|
|
65
|
+
* />
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* // 그라디언트 스타일 / Gradient style
|
|
69
|
+
* <ProfileCard
|
|
70
|
+
* name="김철수"
|
|
71
|
+
* greeting="안녕하세요"
|
|
72
|
+
* variant="gradient"
|
|
73
|
+
* membershipTier="pro"
|
|
74
|
+
* onSettingsClick={() => navigate("/settings")}
|
|
75
|
+
* />
|
|
76
|
+
*
|
|
77
|
+
* @param {ProfileCardProps} props - ProfileCard 컴포넌트의 props / ProfileCard component props
|
|
78
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
79
|
+
* @returns {JSX.Element} ProfileCard 컴포넌트 / ProfileCard component
|
|
80
|
+
*/
|
|
81
|
+
export declare const ProfileCard: React.ForwardRefExoticComponent<ProfileCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
82
|
+
//# sourceMappingURL=ProfileCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/ProfileCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,WAAW,yFA0KvB,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
import type { Color } from "../../lib/types/common";
|
|
4
|
+
/**
|
|
5
|
+
* ProgressCard 컴포넌트의 props / ProgressCard component props
|
|
6
|
+
* @typedef {Object} ProgressCardProps
|
|
7
|
+
* @property {string} title - 카드 제목 / Card title
|
|
8
|
+
* @property {number} current - 현재 값 / Current value
|
|
9
|
+
* @property {number} total - 전체 값 / Total value
|
|
10
|
+
* @property {string} [unit] - 단위 / Unit
|
|
11
|
+
* @property {string} [description] - 카드 설명 / Card description
|
|
12
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘 / Icon
|
|
13
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color] - 카드 색상 / Card color
|
|
14
|
+
* @property {"default" | "gradient" | "outline" | "elevated"} [variant="default"] - 카드 스타일 변형 / Card style variant
|
|
15
|
+
* @property {boolean} [showPercentage] - 퍼센트 표시 여부 / Show percentage
|
|
16
|
+
* @property {boolean} [showLabel] - 라벨 표시 여부 / Show label
|
|
17
|
+
* @property {"sm" | "md" | "lg"} [size="md"] - 카드 크기 / Card size
|
|
18
|
+
* @property {boolean} [loading] - 로딩 상태 / Loading state
|
|
19
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
20
|
+
*/
|
|
21
|
+
export interface ProgressCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
22
|
+
title: string;
|
|
23
|
+
current: number;
|
|
24
|
+
total: number;
|
|
25
|
+
unit?: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
icon?: IconName | React.ReactNode;
|
|
28
|
+
color?: Color;
|
|
29
|
+
variant?: "default" | "gradient" | "outline" | "elevated";
|
|
30
|
+
showPercentage?: boolean;
|
|
31
|
+
showLabel?: boolean;
|
|
32
|
+
size?: "sm" | "md" | "lg";
|
|
33
|
+
loading?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* ProgressCard 컴포넌트 / ProgressCard component
|
|
37
|
+
*
|
|
38
|
+
* 진행률을 표시하는 카드 컴포넌트입니다.
|
|
39
|
+
* 현재 값과 전체 값을 비교하여 진행률을 시각적으로 표시합니다.
|
|
40
|
+
*
|
|
41
|
+
* Card component that displays progress.
|
|
42
|
+
* Compares current value with total value to visually display progress.
|
|
43
|
+
*
|
|
44
|
+
* @component
|
|
45
|
+
* @example
|
|
46
|
+
* // 기본 사용 / Basic usage
|
|
47
|
+
* <ProgressCard
|
|
48
|
+
* title="목표 달성률"
|
|
49
|
+
* current={75}
|
|
50
|
+
* total={100}
|
|
51
|
+
* unit="%"
|
|
52
|
+
* description="이번 달 목표"
|
|
53
|
+
* />
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* // 퍼센트 표시 / Show percentage
|
|
57
|
+
* <ProgressCard
|
|
58
|
+
* title="판매 진행률"
|
|
59
|
+
* current={150}
|
|
60
|
+
* total={200}
|
|
61
|
+
* showPercentage
|
|
62
|
+
* color="green"
|
|
63
|
+
* variant="gradient"
|
|
64
|
+
* />
|
|
65
|
+
*
|
|
66
|
+
* @param {ProgressCardProps} props - ProgressCard 컴포넌트의 props / ProgressCard component props
|
|
67
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
68
|
+
* @returns {JSX.Element} ProgressCard 컴포넌트 / ProgressCard component
|
|
69
|
+
*/
|
|
70
|
+
export declare const ProgressCard: React.ForwardRefExoticComponent<ProgressCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
71
|
+
//# sourceMappingURL=ProgressCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/ProgressCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,YAAY,0FA8JxB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
import type { Color } from "../../lib/types/common";
|
|
4
|
+
/**
|
|
5
|
+
* QuickActionCard 컴포넌트의 props / QuickActionCard component props
|
|
6
|
+
* @typedef {Object} QuickActionCardProps
|
|
7
|
+
* @property {string} title - 카드 제목 / Card title
|
|
8
|
+
* @property {string} [description] - 카드 설명 / Card description
|
|
9
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘 / Icon
|
|
10
|
+
* @property {string} [href] - 링크 URL / Link URL
|
|
11
|
+
* @property {() => void} [onClick] - 클릭 핸들러 / Click handler
|
|
12
|
+
* @property {"gradient" | "outline" | "solid"} [variant="gradient"] - 카드 스타일 변형 / Card style variant
|
|
13
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color="blue"] - 카드 색상 / Card color
|
|
14
|
+
* @property {boolean} [loading] - 로딩 상태 / Loading state
|
|
15
|
+
* @extends {React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>}
|
|
16
|
+
*/
|
|
17
|
+
export interface QuickActionCardProps extends React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement> {
|
|
18
|
+
title: string;
|
|
19
|
+
description?: string;
|
|
20
|
+
icon?: IconName | React.ReactNode;
|
|
21
|
+
href?: string;
|
|
22
|
+
onClick?: () => void;
|
|
23
|
+
variant?: "gradient" | "outline" | "solid";
|
|
24
|
+
color?: Color;
|
|
25
|
+
loading?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* QuickActionCard 컴포넌트 / QuickActionCard component
|
|
29
|
+
*
|
|
30
|
+
* 빠른 액션을 수행하는 카드 컴포넌트입니다.
|
|
31
|
+
* 링크나 버튼으로 동작하며, 클릭 가능한 액션 카드로 사용됩니다.
|
|
32
|
+
*
|
|
33
|
+
* Card component for quick actions.
|
|
34
|
+
* Works as a link or button, used as a clickable action card.
|
|
35
|
+
*
|
|
36
|
+
* @component
|
|
37
|
+
* @example
|
|
38
|
+
* // 링크 카드 / Link card
|
|
39
|
+
* <QuickActionCard
|
|
40
|
+
* title="새 주문 생성"
|
|
41
|
+
* description="주문을 빠르게 생성하세요"
|
|
42
|
+
* icon="plus"
|
|
43
|
+
* href="/orders/new"
|
|
44
|
+
* color="blue"
|
|
45
|
+
* />
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* // 버튼 카드 / Button card
|
|
49
|
+
* <QuickActionCard
|
|
50
|
+
* title="리포트 다운로드"
|
|
51
|
+
* description="최신 리포트를 다운로드하세요"
|
|
52
|
+
* icon="download"
|
|
53
|
+
* onClick={handleDownload}
|
|
54
|
+
* variant="outline"
|
|
55
|
+
* color="green"
|
|
56
|
+
* />
|
|
57
|
+
*
|
|
58
|
+
* @param {QuickActionCardProps} props - QuickActionCard 컴포넌트의 props / QuickActionCard component props
|
|
59
|
+
* @param {React.Ref<HTMLAnchorElement | HTMLButtonElement>} ref - anchor 또는 button 요소 ref / anchor or button element ref
|
|
60
|
+
* @returns {JSX.Element} QuickActionCard 컴포넌트 / QuickActionCard component
|
|
61
|
+
*/
|
|
62
|
+
export declare const QuickActionCard: React.ForwardRefExoticComponent<QuickActionCardProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
|
|
63
|
+
//# sourceMappingURL=QuickActionCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuickActionCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/QuickActionCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACvG,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IAC3C,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,eAAe,oHAgI3B,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type RoutingStatus = "normal" | "warning" | "critical";
|
|
3
|
+
/**
|
|
4
|
+
* 라우팅 분할 세그먼트 인터페이스 / RoutingBreakdownSegment interface
|
|
5
|
+
* @typedef {Object} RoutingBreakdownSegment
|
|
6
|
+
* @property {string} id - 세그먼트 고유 ID / Segment unique ID
|
|
7
|
+
* @property {string} label - 세그먼트 라벨 / Segment label
|
|
8
|
+
* @property {number} value - 세그먼트 값 / Segment value
|
|
9
|
+
* @property {string} [color] - 커스텀 색상 / Custom color
|
|
10
|
+
* @property {RoutingStatus} [status] - 상태 / Status
|
|
11
|
+
* @property {string} [icon] - 아이콘 이름 / Icon name
|
|
12
|
+
* @property {string} [detail] - 상세 정보 / Detail information
|
|
13
|
+
*/
|
|
14
|
+
export interface RoutingBreakdownSegment {
|
|
15
|
+
id: string;
|
|
16
|
+
label: string;
|
|
17
|
+
value: number;
|
|
18
|
+
color?: string;
|
|
19
|
+
status?: RoutingStatus;
|
|
20
|
+
icon?: string;
|
|
21
|
+
detail?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* RoutingBreakdownCard 컴포넌트의 props / RoutingBreakdownCard component props
|
|
25
|
+
* @typedef {Object} RoutingBreakdownCardProps
|
|
26
|
+
* @property {string} [title="PG / 결제수단 비중"] - 카드 제목 / Card title
|
|
27
|
+
* @property {string} [description="라우팅별 처리 비율과 상태"] - 카드 설명 / Card description
|
|
28
|
+
* @property {RoutingBreakdownSegment[]} segments - 세그먼트 배열 / Segments array
|
|
29
|
+
* @property {string} [totalLabel="총 거래"] - 총계 라벨 / Total label
|
|
30
|
+
* @property {React.ReactNode} [totalValue] - 총계 값 / Total value
|
|
31
|
+
* @property {string} [highlightId] - 강조할 세그먼트 ID / Highlighted segment ID
|
|
32
|
+
* @property {React.ReactNode} [actions] - 액션 컴포넌트 / Actions component
|
|
33
|
+
* @property {React.ReactNode} [emptyState] - 빈 상태 컴포넌트 / Empty state component
|
|
34
|
+
* @property {(segment: RoutingBreakdownSegment, percentage: number) => React.ReactNode} [formatter] - 커스텀 포맷터 / Custom formatter
|
|
35
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
36
|
+
*/
|
|
37
|
+
export interface RoutingBreakdownCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
38
|
+
title?: string;
|
|
39
|
+
description?: string;
|
|
40
|
+
segments: RoutingBreakdownSegment[];
|
|
41
|
+
totalLabel?: string;
|
|
42
|
+
totalValue?: React.ReactNode;
|
|
43
|
+
highlightId?: string;
|
|
44
|
+
actions?: React.ReactNode;
|
|
45
|
+
emptyState?: React.ReactNode;
|
|
46
|
+
formatter?: (segment: RoutingBreakdownSegment, percentage: number) => React.ReactNode;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* RoutingBreakdownCard 컴포넌트
|
|
50
|
+
*
|
|
51
|
+
* PG 라우팅 또는 결제수단별 비중을 표시하는 카드 컴포넌트입니다.
|
|
52
|
+
* 진행 바와 세그먼트별 상세 정보를 제공합니다.
|
|
53
|
+
*
|
|
54
|
+
* Card component that displays PG routing or payment method breakdown.
|
|
55
|
+
* Provides progress bar and detailed information for each segment.
|
|
56
|
+
*
|
|
57
|
+
* @component
|
|
58
|
+
* @example
|
|
59
|
+
* // 기본 사용 / Basic usage
|
|
60
|
+
* <RoutingBreakdownCard
|
|
61
|
+
* title="PG 라우팅 비중"
|
|
62
|
+
* segments={[
|
|
63
|
+
* { id: "pg1", label: "PG A", value: 5000, status: "normal" },
|
|
64
|
+
* { id: "pg2", label: "PG B", value: 3000, status: "warning" },
|
|
65
|
+
* { id: "pg3", label: "PG C", value: 2000, status: "normal" }
|
|
66
|
+
* ]}
|
|
67
|
+
* totalValue="10,000"
|
|
68
|
+
* />
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* // 강조 기능 / Highlight feature
|
|
72
|
+
* <RoutingBreakdownCard
|
|
73
|
+
* segments={segments}
|
|
74
|
+
* highlightId="pg1"
|
|
75
|
+
* formatter={(segment, percentage) => (
|
|
76
|
+
* <div>
|
|
77
|
+
* <span>{segment.value.toLocaleString()}</span>
|
|
78
|
+
* <span>{percentage}%</span>
|
|
79
|
+
* </div>
|
|
80
|
+
* )}
|
|
81
|
+
* />
|
|
82
|
+
*
|
|
83
|
+
* @param {RoutingBreakdownCardProps} props - RoutingBreakdownCard 컴포넌트의 props / RoutingBreakdownCard component props
|
|
84
|
+
* @returns {JSX.Element} RoutingBreakdownCard 컴포넌트 / RoutingBreakdownCard component
|
|
85
|
+
*/
|
|
86
|
+
export declare const RoutingBreakdownCard: React.FC<RoutingBreakdownCardProps>;
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=RoutingBreakdownCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RoutingBreakdownCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/RoutingBreakdownCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAEvD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,yBAA0B,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;CACvF;AAeD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA8HpE,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
export type SettlementTimelineStatus = "pending" | "processing" | "completed" | "failed";
|
|
4
|
+
/**
|
|
5
|
+
* 정산 타임라인 아이템 인터페이스 / SettlementTimelineItem interface
|
|
6
|
+
* @typedef {Object} SettlementTimelineItem
|
|
7
|
+
* @property {string} id - 아이템 고유 ID / Item unique ID
|
|
8
|
+
* @property {string} title - 제목 / Title
|
|
9
|
+
* @property {string} [description] - 설명 / Description
|
|
10
|
+
* @property {SettlementTimelineStatus} status - 상태 / Status
|
|
11
|
+
* @property {number} [amount] - 금액 / Amount
|
|
12
|
+
* @property {string} [currency] - 통화 / Currency
|
|
13
|
+
* @property {string | Date} [date] - 날짜 / Date
|
|
14
|
+
* @property {string} [meta] - 메타 정보 / Meta information
|
|
15
|
+
* @property {IconName} [icon] - 아이콘 / Icon
|
|
16
|
+
*/
|
|
17
|
+
export interface SettlementTimelineItem {
|
|
18
|
+
id: string;
|
|
19
|
+
title: string;
|
|
20
|
+
description?: string;
|
|
21
|
+
status: SettlementTimelineStatus;
|
|
22
|
+
amount?: number;
|
|
23
|
+
currency?: string;
|
|
24
|
+
date?: string | Date;
|
|
25
|
+
meta?: string;
|
|
26
|
+
icon?: IconName;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* SettlementTimeline 컴포넌트의 props / SettlementTimeline component props
|
|
30
|
+
* @typedef {Object} SettlementTimelineProps
|
|
31
|
+
* @property {SettlementTimelineItem[]} items - 타임라인 아이템 배열 / Timeline items array
|
|
32
|
+
* @property {string} [highlightedId] - 강조할 아이템 ID / Highlighted item ID
|
|
33
|
+
* @property {string} [locale="ko-KR"] - 로케일 / Locale
|
|
34
|
+
* @property {string} [defaultCurrency="KRW"] - 기본 통화 / Default currency
|
|
35
|
+
* @property {React.ReactNode} [emptyState] - 빈 상태 컴포넌트 / Empty state component
|
|
36
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
37
|
+
*/
|
|
38
|
+
export interface SettlementTimelineProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
39
|
+
items: SettlementTimelineItem[];
|
|
40
|
+
highlightedId?: string;
|
|
41
|
+
locale?: string;
|
|
42
|
+
defaultCurrency?: string;
|
|
43
|
+
emptyState?: React.ReactNode;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* SettlementTimeline 컴포넌트
|
|
47
|
+
*
|
|
48
|
+
* 정산 처리 단계를 타임라인 형태로 표시하는 컴포넌트입니다.
|
|
49
|
+
* 각 단계의 상태, 금액, 날짜를 시각적으로 표시합니다.
|
|
50
|
+
*
|
|
51
|
+
* Timeline component that displays settlement processing stages.
|
|
52
|
+
* Visually shows status, amount, and date for each stage.
|
|
53
|
+
*
|
|
54
|
+
* @component
|
|
55
|
+
* @example
|
|
56
|
+
* // 기본 사용 / Basic usage
|
|
57
|
+
* <SettlementTimeline
|
|
58
|
+
* items={[
|
|
59
|
+
* {
|
|
60
|
+
* id: "1",
|
|
61
|
+
* title: "정산 요청",
|
|
62
|
+
* status: "completed",
|
|
63
|
+
* amount: 1000000,
|
|
64
|
+
* currency: "KRW",
|
|
65
|
+
* date: new Date("2024-01-01")
|
|
66
|
+
* },
|
|
67
|
+
* {
|
|
68
|
+
* id: "2",
|
|
69
|
+
* title: "처리 중",
|
|
70
|
+
* status: "processing",
|
|
71
|
+
* amount: 1000000,
|
|
72
|
+
* currency: "KRW"
|
|
73
|
+
* }
|
|
74
|
+
* ]}
|
|
75
|
+
* />
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* // 강조 기능 / Highlight feature
|
|
79
|
+
* <SettlementTimeline
|
|
80
|
+
* items={timelineItems}
|
|
81
|
+
* highlightedId="2"
|
|
82
|
+
* locale="en-US"
|
|
83
|
+
* defaultCurrency="USD"
|
|
84
|
+
* />
|
|
85
|
+
*
|
|
86
|
+
* @param {SettlementTimelineProps} props - SettlementTimeline 컴포넌트의 props / SettlementTimeline component props
|
|
87
|
+
* @returns {JSX.Element} SettlementTimeline 컴포넌트 / SettlementTimeline component
|
|
88
|
+
*/
|
|
89
|
+
export declare const SettlementTimeline: React.FC<SettlementTimelineProps>;
|
|
90
|
+
//# sourceMappingURL=SettlementTimeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettlementTimeline.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/SettlementTimeline.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzF;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,wBAAwB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACnF,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA8GhE,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
import type { Color } from "../../lib/types/common";
|
|
4
|
+
/**
|
|
5
|
+
* StatCard 컴포넌트의 props / StatCard component props
|
|
6
|
+
* @typedef {Object} StatCardProps
|
|
7
|
+
* @property {string} title - 카드 제목 / Card title
|
|
8
|
+
* @property {string | number | null | undefined} value - 통계 값 / Statistic value
|
|
9
|
+
* @property {string} [description] - 카드 설명 / Card description
|
|
10
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘 / Icon
|
|
11
|
+
* @property {Object} [trend] - 추세 정보 / Trend information
|
|
12
|
+
* @property {number} trend.value - 추세 값 / Trend value
|
|
13
|
+
* @property {string} trend.label - 추세 라벨 / Trend label
|
|
14
|
+
* @property {boolean} [trend.positive] - 긍정적 추세 여부 / Positive trend
|
|
15
|
+
* @property {"default" | "gradient" | "outline" | "elevated"} [variant="default"] - 카드 스타일 변형 / Card style variant
|
|
16
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color] - 카드 색상 / Card color
|
|
17
|
+
* @property {boolean} [loading] - 로딩 상태 / Loading state
|
|
18
|
+
* @property {React.ReactNode} [emptyState] - 빈 상태 컴포넌트 / Empty state component
|
|
19
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
20
|
+
*/
|
|
21
|
+
export interface StatCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
22
|
+
title: string;
|
|
23
|
+
value: string | number | null | undefined;
|
|
24
|
+
description?: string;
|
|
25
|
+
icon?: IconName | React.ReactNode;
|
|
26
|
+
trend?: {
|
|
27
|
+
value: number;
|
|
28
|
+
label: string;
|
|
29
|
+
positive?: boolean;
|
|
30
|
+
};
|
|
31
|
+
variant?: "default" | "gradient" | "outline" | "elevated";
|
|
32
|
+
color?: Color;
|
|
33
|
+
loading?: boolean;
|
|
34
|
+
emptyState?: React.ReactNode;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* StatCard 컴포넌트 / StatCard component
|
|
38
|
+
*
|
|
39
|
+
* 통계 정보를 표시하는 카드 컴포넌트입니다.
|
|
40
|
+
* 제목, 값, 설명, 아이콘, 추세 정보를 포함할 수 있습니다.
|
|
41
|
+
*
|
|
42
|
+
* Card component that displays statistic information.
|
|
43
|
+
* Can include title, value, description, icon, and trend information.
|
|
44
|
+
*
|
|
45
|
+
* @component
|
|
46
|
+
* @example
|
|
47
|
+
* // 기본 사용 / Basic usage
|
|
48
|
+
* <StatCard
|
|
49
|
+
* title="총 사용자"
|
|
50
|
+
* value="1,234"
|
|
51
|
+
* description="지난 달 대비"
|
|
52
|
+
* icon="users"
|
|
53
|
+
* />
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* // 추세 정보 포함 / With trend information
|
|
57
|
+
* <StatCard
|
|
58
|
+
* title="매출"
|
|
59
|
+
* value="₩1,000,000"
|
|
60
|
+
* trend={{ value: 12.5, label: "전월 대비", positive: true }}
|
|
61
|
+
* color="green"
|
|
62
|
+
* variant="gradient"
|
|
63
|
+
* />
|
|
64
|
+
*
|
|
65
|
+
* @param {StatCardProps} props - StatCard 컴포넌트의 props / StatCard component props
|
|
66
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
67
|
+
* @returns {JSX.Element} StatCard 컴포넌트 / StatCard component
|
|
68
|
+
*/
|
|
69
|
+
export declare const StatCard: React.ForwardRefExoticComponent<StatCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
70
|
+
//# sourceMappingURL=StatCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/StatCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B;AAGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,QAAQ,sFA4IpB,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
import type { Color } from "../../lib/types/common";
|
|
4
|
+
/**
|
|
5
|
+
* SummaryCard 컴포넌트의 props
|
|
6
|
+
* @typedef {Object} SummaryCardProps
|
|
7
|
+
* @property {string} title - 카드 제목
|
|
8
|
+
* @property {string | number} value - 요약 값
|
|
9
|
+
* @property {string} [subtitle] - 부제목
|
|
10
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘
|
|
11
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color] - 카드 색상
|
|
12
|
+
* @property {"default" | "gradient" | "outline"} [variant="default"] - 카드 스타일 변형
|
|
13
|
+
* @property {string} [href] - 링크 URL
|
|
14
|
+
* @property {() => void} [onClick] - 클릭 핸들러
|
|
15
|
+
* @property {boolean} [loading] - 로딩 상태
|
|
16
|
+
* @property {string | React.ReactNode} [badge] - 배지
|
|
17
|
+
* @property {React.ReactNode} [footer] - 푸터 콘텐츠
|
|
18
|
+
* @property {boolean} [showAction] - 액션 버튼 표시 여부
|
|
19
|
+
* @property {string} [actionLabel] - 액션 버튼 라벨
|
|
20
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
21
|
+
*/
|
|
22
|
+
export interface SummaryCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
23
|
+
title: string;
|
|
24
|
+
value: string | number;
|
|
25
|
+
subtitle?: string;
|
|
26
|
+
icon?: IconName | React.ReactNode;
|
|
27
|
+
color?: Color;
|
|
28
|
+
variant?: "default" | "gradient" | "outline";
|
|
29
|
+
href?: string;
|
|
30
|
+
onClick?: () => void;
|
|
31
|
+
loading?: boolean;
|
|
32
|
+
badge?: string | React.ReactNode;
|
|
33
|
+
footer?: React.ReactNode;
|
|
34
|
+
showAction?: boolean;
|
|
35
|
+
actionLabel?: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* SummaryCard 컴포넌트 / SummaryCard component
|
|
39
|
+
*
|
|
40
|
+
* 요약 정보를 표시하는 카드 컴포넌트입니다.
|
|
41
|
+
* 제목, 값, 부제목, 아이콘을 포함하며, 클릭 가능한 링크나 액션 버튼을 지원합니다.
|
|
42
|
+
*
|
|
43
|
+
* Card component that displays summary information.
|
|
44
|
+
* Includes title, value, subtitle, icon, and supports clickable links or action buttons.
|
|
45
|
+
*
|
|
46
|
+
* @component
|
|
47
|
+
* @example
|
|
48
|
+
* // 기본 사용 / Basic usage
|
|
49
|
+
* <SummaryCard
|
|
50
|
+
* title="총 매출"
|
|
51
|
+
* value="₩10,000,000"
|
|
52
|
+
* subtitle="이번 달"
|
|
53
|
+
* icon="dollarSign"
|
|
54
|
+
* />
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* // 클릭 가능한 카드 / Clickable card
|
|
58
|
+
* <SummaryCard
|
|
59
|
+
* title="주문"
|
|
60
|
+
* value="1,234"
|
|
61
|
+
* href="/orders"
|
|
62
|
+
* showAction
|
|
63
|
+
* actionLabel="자세히 보기"
|
|
64
|
+
* color="blue"
|
|
65
|
+
* variant="gradient"
|
|
66
|
+
* />
|
|
67
|
+
*
|
|
68
|
+
* @param {SummaryCardProps} props - SummaryCard 컴포넌트의 props / SummaryCard component props
|
|
69
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
70
|
+
* @returns {JSX.Element} SummaryCard 컴포넌트 / SummaryCard component
|
|
71
|
+
*/
|
|
72
|
+
export declare const SummaryCard: React.ForwardRefExoticComponent<SummaryCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
73
|
+
//# sourceMappingURL=SummaryCard.d.ts.map
|