@hua-labs/ui 1.0.0 → 1.1.0-alpha.0.2
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 +897 -210
- 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-627HOIRV.mjs +2 -0
- package/dist/chunk-627HOIRV.mjs.map +1 -0
- package/dist/chunk-ACEKLG37.mjs +2 -0
- package/dist/chunk-ACEKLG37.mjs.map +1 -0
- package/dist/chunk-E5PN4LUS.mjs +2 -0
- package/dist/chunk-E5PN4LUS.mjs.map +1 -0
- package/dist/chunk-KHEJZ3U4.mjs +2 -0
- package/dist/chunk-KHEJZ3U4.mjs.map +1 -0
- package/dist/chunk-MXGXBG63.mjs +2 -0
- package/dist/chunk-MXGXBG63.mjs.map +1 -0
- package/dist/chunk-R5KCFRYV.mjs +2 -0
- package/dist/chunk-R5KCFRYV.mjs.map +1 -0
- package/dist/chunk-UGSYQDR4.mjs +2 -0
- package/dist/chunk-UGSYQDR4.mjs.map +1 -0
- package/dist/chunk-UUHAXGMO.mjs +2 -0
- package/dist/chunk-UUHAXGMO.mjs.map +1 -0
- package/dist/chunk-VU264VFN.mjs +2 -0
- package/dist/chunk-VU264VFN.mjs.map +1 -0
- package/dist/chunk-ZFS4B5QT.mjs +2 -0
- package/dist/chunk-ZFS4B5QT.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 +559 -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 +92 -25
- 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,98 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
export type MerchantHealth = "normal" | "warning" | "critical";
|
|
4
|
+
/**
|
|
5
|
+
* 가맹점 리스트 아이템 인터페이스 / MerchantListItem interface
|
|
6
|
+
* @typedef {Object} MerchantListItem
|
|
7
|
+
* @property {string} id - 가맹점 고유 ID / Merchant unique ID
|
|
8
|
+
* @property {string} name - 가맹점 이름 / Merchant name
|
|
9
|
+
* @property {string} [status] - 상태 / Status
|
|
10
|
+
* @property {MerchantHealth} [health] - 건강 상태 / Health status
|
|
11
|
+
* @property {number} [approvalRate] - 승인률 (0-1) / Approval rate (0-1)
|
|
12
|
+
* @property {number} [volume] - 거래량 / Transaction volume
|
|
13
|
+
* @property {string} [currency] - 통화 / Currency
|
|
14
|
+
* @property {string} [category] - 카테고리 / Category
|
|
15
|
+
* @property {string} [region] - 지역 / Region
|
|
16
|
+
* @property {string | Date} [updatedAt] - 업데이트 시간 / Updated time
|
|
17
|
+
* @property {string} [tag] - 태그 / Tag
|
|
18
|
+
* @property {IconName | React.ReactNode} [icon] - 아이콘 / Icon
|
|
19
|
+
* @property {Array<{ label: string; value: React.ReactNode }>} [metadata] - 메타데이터 / Metadata
|
|
20
|
+
*/
|
|
21
|
+
export interface MerchantListItem {
|
|
22
|
+
id: string;
|
|
23
|
+
name: string;
|
|
24
|
+
status?: string;
|
|
25
|
+
health?: MerchantHealth;
|
|
26
|
+
approvalRate?: number;
|
|
27
|
+
volume?: number;
|
|
28
|
+
currency?: string;
|
|
29
|
+
category?: string;
|
|
30
|
+
region?: string;
|
|
31
|
+
updatedAt?: string | Date;
|
|
32
|
+
tag?: string;
|
|
33
|
+
icon?: IconName | React.ReactNode;
|
|
34
|
+
metadata?: Array<{
|
|
35
|
+
label: string;
|
|
36
|
+
value: React.ReactNode;
|
|
37
|
+
}>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* MerchantList 컴포넌트의 props / MerchantList component props
|
|
41
|
+
* @typedef {Object} MerchantListProps
|
|
42
|
+
* @property {MerchantListItem[]} items - 가맹점 아이템 배열 / Merchant items array
|
|
43
|
+
* @property {boolean} [isLoading=false] - 로딩 상태 / Loading state
|
|
44
|
+
* @property {React.ReactNode} [filters] - 필터 컴포넌트 / Filter component
|
|
45
|
+
* @property {React.ReactNode} [emptyState] - 빈 상태 컴포넌트 / Empty state component
|
|
46
|
+
* @property {(merchant: MerchantListItem) => void} [onMerchantSelect] - 가맹점 선택 핸들러 / Merchant selection handler
|
|
47
|
+
* @property {string} [locale="ko-KR"] - 로케일 / Locale
|
|
48
|
+
* @property {string} [defaultCurrency="KRW"] - 기본 통화 / Default currency
|
|
49
|
+
* @extends {Omit<React.HTMLAttributes<HTMLDivElement>, "onSelect">}
|
|
50
|
+
*/
|
|
51
|
+
export interface MerchantListProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onSelect"> {
|
|
52
|
+
items: MerchantListItem[];
|
|
53
|
+
isLoading?: boolean;
|
|
54
|
+
filters?: React.ReactNode;
|
|
55
|
+
emptyState?: React.ReactNode;
|
|
56
|
+
onMerchantSelect?: (merchant: MerchantListItem) => void;
|
|
57
|
+
locale?: string;
|
|
58
|
+
defaultCurrency?: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* MerchantList 컴포넌트
|
|
62
|
+
*
|
|
63
|
+
* 가맹점 목록을 표시하는 컴포넌트입니다.
|
|
64
|
+
* 가맹점 정보, 건강 상태, 승인률, 거래량 등을 카드 형태로 표시합니다.
|
|
65
|
+
*
|
|
66
|
+
* Component that displays a list of merchants.
|
|
67
|
+
* Shows merchant information, health status, approval rate, and transaction volume in card format.
|
|
68
|
+
*
|
|
69
|
+
* @component
|
|
70
|
+
* @example
|
|
71
|
+
* // 기본 사용 / Basic usage
|
|
72
|
+
* <MerchantList
|
|
73
|
+
* items={[
|
|
74
|
+
* {
|
|
75
|
+
* id: "1",
|
|
76
|
+
* name: "가맹점 A",
|
|
77
|
+
* health: "normal",
|
|
78
|
+
* approvalRate: 0.985,
|
|
79
|
+
* volume: 1000000,
|
|
80
|
+
* currency: "KRW"
|
|
81
|
+
* }
|
|
82
|
+
* ]}
|
|
83
|
+
* onMerchantSelect={(merchant) => console.log(merchant)}
|
|
84
|
+
* />
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* // 로딩 상태 / Loading state
|
|
88
|
+
* <MerchantList
|
|
89
|
+
* items={merchants}
|
|
90
|
+
* isLoading={true}
|
|
91
|
+
* filters={<FilterComponent />}
|
|
92
|
+
* />
|
|
93
|
+
*
|
|
94
|
+
* @param {MerchantListProps} props - MerchantList 컴포넌트의 props / MerchantList component props
|
|
95
|
+
* @returns {JSX.Element} MerchantList 컴포넌트 / MerchantList component
|
|
96
|
+
*/
|
|
97
|
+
export declare const MerchantList: React.FC<MerchantListProps>;
|
|
98
|
+
//# sourceMappingURL=MerchantList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerchantList.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/MerchantList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAE/D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC;CAC7D;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IAC/F,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA6HpD,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IconName } from "../../lib/icons";
|
|
3
|
+
import type { Color } from "../../lib/types/common";
|
|
4
|
+
/**
|
|
5
|
+
* MetricCard 컴포넌트의 props / MetricCard component props
|
|
6
|
+
* @typedef {Object} MetricCardProps
|
|
7
|
+
* @property {string} title - 카드 제목 / Card title
|
|
8
|
+
* @property {string | number} value - 메트릭 값 / Metric 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 {number[]} [chartData] - 차트 데이터 / Chart data
|
|
16
|
+
* @property {string[]} [chartLabels] - 차트 라벨 / Chart labels
|
|
17
|
+
* @property {"default" | "gradient" | "outline" | "elevated"} [variant="default"] - 카드 스타일 변형 / Card style variant
|
|
18
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color] - 카드 색상 / Card color
|
|
19
|
+
* @property {boolean} [loading] - 로딩 상태 / Loading state
|
|
20
|
+
* @property {boolean} [showChart] - 차트 표시 여부 / Show chart
|
|
21
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
22
|
+
*/
|
|
23
|
+
export interface MetricCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
24
|
+
title: string;
|
|
25
|
+
value: string | number;
|
|
26
|
+
description?: string;
|
|
27
|
+
icon?: IconName | React.ReactNode;
|
|
28
|
+
trend?: {
|
|
29
|
+
value: number;
|
|
30
|
+
label: string;
|
|
31
|
+
positive?: boolean;
|
|
32
|
+
};
|
|
33
|
+
chartData?: number[];
|
|
34
|
+
chartLabels?: string[];
|
|
35
|
+
variant?: "default" | "gradient" | "outline" | "elevated";
|
|
36
|
+
color?: Color;
|
|
37
|
+
loading?: boolean;
|
|
38
|
+
showChart?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* MetricCard 컴포넌트 / MetricCard component
|
|
42
|
+
*
|
|
43
|
+
* 메트릭 정보를 표시하는 카드 컴포넌트입니다.
|
|
44
|
+
* StatCard와 유사하지만 차트 데이터를 포함할 수 있습니다.
|
|
45
|
+
*
|
|
46
|
+
* Card component that displays metric information.
|
|
47
|
+
* Similar to StatCard but can include chart data.
|
|
48
|
+
*
|
|
49
|
+
* @component
|
|
50
|
+
* @example
|
|
51
|
+
* // 기본 사용 / Basic usage
|
|
52
|
+
* <MetricCard
|
|
53
|
+
* title="페이지뷰"
|
|
54
|
+
* value="10,234"
|
|
55
|
+
* description="오늘"
|
|
56
|
+
* icon="eye"
|
|
57
|
+
* />
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* // 차트 포함 / With chart
|
|
61
|
+
* <MetricCard
|
|
62
|
+
* title="방문자"
|
|
63
|
+
* value="5,678"
|
|
64
|
+
* chartData={[100, 200, 150, 300, 250]}
|
|
65
|
+
* chartLabels={["월", "화", "수", "목", "금"]}
|
|
66
|
+
* showChart
|
|
67
|
+
* color="blue"
|
|
68
|
+
* />
|
|
69
|
+
*
|
|
70
|
+
* @param {MetricCardProps} props - MetricCard 컴포넌트의 props / MetricCard component props
|
|
71
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
72
|
+
* @returns {JSX.Element} MetricCard 컴포넌트 / MetricCard component
|
|
73
|
+
*/
|
|
74
|
+
export declare const MetricCard: React.ForwardRefExoticComponent<MetricCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
75
|
+
//# sourceMappingURL=MetricCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetricCard.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/MetricCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAIhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,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,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,UAAU,wFA8ItB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { Color } from "../../lib/types/common";
|
|
3
|
+
/**
|
|
4
|
+
* MiniBarChart 컴포넌트의 props
|
|
5
|
+
* @typedef {Object} MiniBarChartProps
|
|
6
|
+
* @property {number[]} data - 차트 데이터 배열
|
|
7
|
+
* @property {string[]} [labels] - 라벨 배열
|
|
8
|
+
* @property {number} [maxValue] - 최대값 (자동 계산 시 생략)
|
|
9
|
+
* @property {number} [height=160] - 차트 높이 (px)
|
|
10
|
+
* @property {boolean} [showTooltip=true] - 툴팁 표시 여부
|
|
11
|
+
* @property {boolean} [showStats=true] - 통계 정보 표시 여부
|
|
12
|
+
* @property {"blue" | "purple" | "green" | "orange" | "red" | "indigo" | "pink" | "gray"} [color="blue"] - 색상
|
|
13
|
+
* @property {boolean} [highlightToday=true] - 오늘 항목 강조 여부
|
|
14
|
+
* @property {number} [todayIndex] - 오늘 인덱스 (기본값: 마지막 항목)
|
|
15
|
+
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
16
|
+
*/
|
|
17
|
+
export interface MiniBarChartProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
18
|
+
data: number[];
|
|
19
|
+
labels?: string[];
|
|
20
|
+
maxValue?: number;
|
|
21
|
+
height?: number;
|
|
22
|
+
showTooltip?: boolean;
|
|
23
|
+
showStats?: boolean;
|
|
24
|
+
color?: Color;
|
|
25
|
+
highlightToday?: boolean;
|
|
26
|
+
todayIndex?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* MiniBarChart 컴포넌트
|
|
30
|
+
*
|
|
31
|
+
* 작은 막대 그래프 차트 컴포넌트입니다.
|
|
32
|
+
* 간단한 데이터 시각화에 적합하며, 오늘 항목 강조 기능을 제공합니다.
|
|
33
|
+
*
|
|
34
|
+
* Small bar chart component for simple data visualization.
|
|
35
|
+
* Suitable for compact displays with today's item highlight feature.
|
|
36
|
+
*
|
|
37
|
+
* @component
|
|
38
|
+
* @example
|
|
39
|
+
* // 기본 사용 / Basic usage
|
|
40
|
+
* <MiniBarChart
|
|
41
|
+
* data={[10, 20, 15, 30, 25, 40, 35]}
|
|
42
|
+
* labels={["월", "화", "수", "목", "금", "토", "일"]}
|
|
43
|
+
* />
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* // 커스텀 색상과 통계 / Custom color and stats
|
|
47
|
+
* <MiniBarChart
|
|
48
|
+
* data={dailyData}
|
|
49
|
+
* color="purple"
|
|
50
|
+
* showStats={true}
|
|
51
|
+
* highlightToday={true}
|
|
52
|
+
* todayIndex={6}
|
|
53
|
+
* />
|
|
54
|
+
*
|
|
55
|
+
* @param {MiniBarChartProps} props - MiniBarChart 컴포넌트의 props / MiniBarChart component props
|
|
56
|
+
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
57
|
+
* @returns {JSX.Element} MiniBarChart 컴포넌트 / MiniBarChart component
|
|
58
|
+
*/
|
|
59
|
+
export declare const MiniBarChart: React.ForwardRefExoticComponent<MiniBarChartProps & React.RefAttributes<HTMLDivElement>>;
|
|
60
|
+
//# sourceMappingURL=MiniBarChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MiniBarChart.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/MiniBarChart.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAsCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,YAAY,0FAiIxB,CAAC"}
|
|
@@ -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
|