shared-design-system 1.21.0 → 1.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/components/Alert.d.ts +1 -1
- package/dist/src/components/Alert.js +34 -20
- package/dist/src/components/Alert.js.map +1 -1
- package/dist/src/components/Avatar.d.ts +7 -2
- package/dist/src/components/Avatar.js +15 -12
- package/dist/src/components/Avatar.js.map +1 -1
- package/dist/src/components/Badge.d.ts +1 -1
- package/dist/src/components/Badge.js +113 -89
- package/dist/src/components/Badge.js.map +1 -1
- package/dist/src/components/Breadcrumbs.d.ts +1 -1
- package/dist/src/components/Breadcrumbs.js +7 -9
- package/dist/src/components/Breadcrumbs.js.map +1 -1
- package/dist/src/components/Button.d.ts +2 -1
- package/dist/src/components/Button.js +6 -4
- package/dist/src/components/Button.js.map +1 -1
- package/dist/src/components/Card.d.ts +2 -0
- package/dist/src/components/Card.js +6 -6
- package/dist/src/components/Card.js.map +1 -1
- package/dist/src/components/ConfigProvider.d.ts +17 -0
- package/dist/src/components/ConfigProvider.js +54 -0
- package/dist/src/components/ConfigProvider.js.map +1 -0
- package/dist/src/components/ConfirmModal.d.ts +1 -1
- package/dist/src/components/ConfirmModal.js +82 -72
- package/dist/src/components/ConfirmModal.js.map +1 -1
- package/dist/src/components/DatePicker.d.ts +1 -1
- package/dist/src/components/DatePicker.js +33 -10
- package/dist/src/components/DatePicker.js.map +1 -1
- package/dist/src/components/Descriptions.d.ts +15 -0
- package/dist/src/components/Descriptions.js +44 -0
- package/dist/src/components/Descriptions.js.map +1 -0
- package/dist/src/components/Divider.d.ts +2 -1
- package/dist/src/components/Divider.js +23 -17
- package/dist/src/components/Divider.js.map +1 -1
- package/dist/src/components/Drawer.d.ts +1 -1
- package/dist/src/components/Drawer.js +81 -68
- package/dist/src/components/Drawer.js.map +1 -1
- package/dist/src/components/Dropdown.d.ts +17 -0
- package/dist/src/components/Dropdown.js +129 -0
- package/dist/src/components/Dropdown.js.map +1 -0
- package/dist/src/components/InputComponents.d.ts +4 -4
- package/dist/src/components/InputComponents.js +57 -26
- package/dist/src/components/InputComponents.js.map +1 -1
- package/dist/src/components/ListComponents.d.ts +4 -2
- package/dist/src/components/ListComponents.js +36 -15
- package/dist/src/components/ListComponents.js.map +1 -1
- package/dist/src/components/Modal.d.ts +1 -1
- package/dist/src/components/Modal.js +90 -77
- package/dist/src/components/Modal.js.map +1 -1
- package/dist/src/components/MultiSelect.d.ts +1 -1
- package/dist/src/components/MultiSelect.js +65 -20
- package/dist/src/components/MultiSelect.js.map +1 -1
- package/dist/src/components/Popconfirm.d.ts +12 -0
- package/dist/src/components/Popconfirm.js +24 -0
- package/dist/src/components/Popconfirm.js.map +1 -0
- package/dist/src/components/Popover.d.ts +10 -0
- package/dist/src/components/Popover.js +123 -0
- package/dist/src/components/Popover.js.map +1 -0
- package/dist/src/components/Portal.d.ts +11 -0
- package/dist/src/components/Portal.js +30 -0
- package/dist/src/components/Portal.js.map +1 -0
- package/dist/src/components/Radio.d.ts +14 -4
- package/dist/src/components/Radio.js +13 -7
- package/dist/src/components/Radio.js.map +1 -1
- package/dist/src/components/Result.d.ts +9 -0
- package/dist/src/components/Result.js +52 -0
- package/dist/src/components/Result.js.map +1 -0
- package/dist/src/components/Select.d.ts +1 -1
- package/dist/src/components/Select.js +70 -19
- package/dist/src/components/Select.js.map +1 -1
- package/dist/src/components/Skeleton.d.ts +1 -1
- package/dist/src/components/Skeleton.js +10 -7
- package/dist/src/components/Skeleton.js.map +1 -1
- package/dist/src/components/Steps.d.ts +2 -1
- package/dist/src/components/Steps.js +18 -15
- package/dist/src/components/Steps.js.map +1 -1
- package/dist/src/components/Switch.d.ts +1 -1
- package/dist/src/components/Switch.js +6 -6
- package/dist/src/components/Switch.js.map +1 -1
- package/dist/src/components/Table.d.ts +20 -7
- package/dist/src/components/Table.js +140 -113
- package/dist/src/components/Table.js.map +1 -1
- package/dist/src/components/Tabs.d.ts +4 -2
- package/dist/src/components/Tabs.js +15 -10
- package/dist/src/components/Tabs.js.map +1 -1
- package/dist/src/components/Tag.d.ts +3 -1
- package/dist/src/components/Tag.js +17 -8
- package/dist/src/components/Tag.js.map +1 -1
- package/dist/src/components/Timeline.d.ts +13 -0
- package/dist/src/components/Timeline.js +35 -0
- package/dist/src/components/Timeline.js.map +1 -0
- package/dist/src/components/Tooltip.d.ts +1 -1
- package/dist/src/components/Tooltip.js +17 -10
- package/dist/src/components/Tooltip.js.map +1 -1
- package/dist/src/components/Typography.d.ts +5 -5
- package/dist/src/components/Typography.js +38 -23
- package/dist/src/components/Typography.js.map +1 -1
- package/dist/src/index.d.ts +19 -4
- package/dist/src/index.js +12 -5
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,111 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from 'react';
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
3
|
import { tokens } from '../tokens';
|
|
4
|
-
|
|
4
|
+
// ─── Sub-components ────────────────────────────────────────────────────────────
|
|
5
|
+
export const TablePagination = ({ current, pageSize, total, onChange, style = {}, }) => {
|
|
6
|
+
const totalPages = Math.ceil(total / pageSize);
|
|
7
|
+
if (totalPages <= 1)
|
|
8
|
+
return null;
|
|
9
|
+
const getPageNumbers = () => {
|
|
10
|
+
const pages = [];
|
|
11
|
+
const maxVisible = 5;
|
|
12
|
+
let start = Math.max(1, current - Math.floor(maxVisible / 2));
|
|
13
|
+
let end = Math.min(totalPages, start + maxVisible - 1);
|
|
14
|
+
if (end - start + 1 < maxVisible) {
|
|
15
|
+
start = Math.max(1, end - maxVisible + 1);
|
|
16
|
+
}
|
|
17
|
+
for (let i = start; i <= end; i++) {
|
|
18
|
+
pages.push(i);
|
|
19
|
+
}
|
|
20
|
+
return pages;
|
|
21
|
+
};
|
|
22
|
+
return (_jsxs("nav", { "aria-label": "Table pagination", style: {
|
|
23
|
+
display: 'flex',
|
|
24
|
+
alignItems: 'center',
|
|
25
|
+
justifyContent: 'space-between',
|
|
26
|
+
gap: tokens.spacing[4],
|
|
27
|
+
...style,
|
|
28
|
+
}, children: [_jsxs("div", { style: { fontSize: tokens.font.sm, color: tokens.color.slate500 }, children: ["Hi\u1EC3n th\u1ECB ", _jsx("b", { children: Math.min(total, (current - 1) * pageSize + 1) }), " - ", _jsx("b", { children: Math.min(total, current * pageSize) }), " tr\u00EAn ", _jsx("b", { children: total }), " b\u1EA3n ghi"] }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: tokens.spacing[1] }, children: [_jsx("button", { "aria-label": "Previous page", disabled: current === 1, onClick: () => onChange(current - 1, pageSize), style: {
|
|
29
|
+
padding: '6px 10px',
|
|
30
|
+
borderRadius: tokens.radius.lg,
|
|
31
|
+
border: `1px solid ${tokens.color.slate200}`,
|
|
32
|
+
backgroundColor: tokens.color.white,
|
|
33
|
+
cursor: current === 1 ? 'not-allowed' : 'pointer',
|
|
34
|
+
opacity: current === 1 ? 0.5 : 1,
|
|
35
|
+
display: 'flex',
|
|
36
|
+
alignItems: 'center',
|
|
37
|
+
}, children: _jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: _jsx("polyline", { points: "15 18 9 12 15 6" }) }) }), getPageNumbers().map((p) => (_jsx("button", { "aria-label": `Page ${p}`, "aria-current": p === current ? 'page' : undefined, onClick: () => onChange(p, pageSize), style: {
|
|
38
|
+
minWidth: '34px',
|
|
39
|
+
height: '34px',
|
|
40
|
+
borderRadius: tokens.radius.lg,
|
|
41
|
+
border: `1px solid ${p === current ? tokens.color.primary : tokens.color.slate200}`,
|
|
42
|
+
backgroundColor: p === current ? tokens.color.primary : tokens.color.white,
|
|
43
|
+
color: p === current ? tokens.color.white : tokens.color.slate600,
|
|
44
|
+
fontWeight: p === current ? tokens.font.weightBold : tokens.font.weightMedium,
|
|
45
|
+
cursor: 'pointer',
|
|
46
|
+
transition: tokens.transition.fast,
|
|
47
|
+
}, children: p }, p))), _jsx("button", { "aria-label": "Next page", disabled: current === totalPages, onClick: () => onChange(current + 1, pageSize), style: {
|
|
48
|
+
padding: '6px 10px',
|
|
49
|
+
borderRadius: tokens.radius.lg,
|
|
50
|
+
border: `1px solid ${tokens.color.slate200}`,
|
|
51
|
+
backgroundColor: tokens.color.white,
|
|
52
|
+
cursor: current === totalPages ? 'not-allowed' : 'pointer',
|
|
53
|
+
opacity: current === totalPages ? 0.5 : 1,
|
|
54
|
+
display: 'flex',
|
|
55
|
+
alignItems: 'center',
|
|
56
|
+
}, children: _jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: _jsx("polyline", { points: "9 18 15 12 9 6" }) }) })] })] }));
|
|
57
|
+
};
|
|
58
|
+
TablePagination.displayName = 'Table.Pagination';
|
|
59
|
+
export const TableContainer = React.forwardRef(({ children, className = '', style = {}, bordered = false, ...props }, ref) => (_jsx("div", { ref: ref, ...props, style: {
|
|
60
|
+
width: '100%',
|
|
61
|
+
backgroundColor: tokens.color.white,
|
|
62
|
+
borderRadius: tokens.radius['2xl'],
|
|
63
|
+
border: `1px solid ${bordered ? tokens.color.slate200 : tokens.color.slate100}`,
|
|
64
|
+
boxShadow: tokens.shadow.sm,
|
|
65
|
+
position: 'relative',
|
|
66
|
+
overflow: 'hidden',
|
|
67
|
+
...style,
|
|
68
|
+
}, className: `ds-table-container ${className}`, children: children })));
|
|
69
|
+
TableContainer.displayName = 'Table.Container';
|
|
70
|
+
export const THead = React.forwardRef(({ children, style = {}, ...props }, ref) => (_jsx("thead", { ref: ref, ...props, style: {
|
|
71
|
+
backgroundColor: tokens.color.slate50,
|
|
72
|
+
borderBottom: `2px solid ${tokens.color.slate100}`,
|
|
73
|
+
...style,
|
|
74
|
+
}, children: children })));
|
|
75
|
+
THead.displayName = 'Table.Head';
|
|
76
|
+
export const TBody = React.forwardRef(({ children, style = {}, ...props }, ref) => (_jsx("tbody", { ref: ref, ...props, style: { backgroundColor: tokens.color.white, ...style }, children: children })));
|
|
77
|
+
TBody.displayName = 'Table.Body';
|
|
78
|
+
export const TR = React.forwardRef(({ children, onClick, active = false, header = false, style = {}, ...props }, ref) => (_jsx("tr", { ref: ref, ...props, onClick: onClick, style: {
|
|
79
|
+
borderBottom: `1px solid ${tokens.color.slate100}`,
|
|
80
|
+
backgroundColor: active ? tokens.color.primaryLight : 'transparent',
|
|
81
|
+
transition: tokens.transition.fast,
|
|
82
|
+
cursor: onClick ? 'pointer' : 'default',
|
|
83
|
+
...style,
|
|
84
|
+
}, children: children })));
|
|
85
|
+
TR.displayName = 'Table.Row';
|
|
86
|
+
export const TH = React.forwardRef(({ children, style = {}, ...props }, ref) => (_jsx("th", { ref: ref, ...props, style: {
|
|
87
|
+
padding: `${tokens.spacing[3]} ${tokens.spacing[5]}`,
|
|
88
|
+
fontWeight: tokens.font.weightBold,
|
|
89
|
+
color: tokens.color.slate500,
|
|
90
|
+
textTransform: 'uppercase',
|
|
91
|
+
letterSpacing: '0.08em',
|
|
92
|
+
fontSize: '11px',
|
|
93
|
+
whiteSpace: 'nowrap',
|
|
94
|
+
...style,
|
|
95
|
+
}, children: children })));
|
|
96
|
+
TH.displayName = 'Table.HeaderCell';
|
|
97
|
+
export const TD = React.forwardRef(({ children, style = {}, ...props }, ref) => (_jsx("td", { ref: ref, ...props, style: {
|
|
98
|
+
padding: `${tokens.spacing[4]} ${tokens.spacing[5]}`,
|
|
99
|
+
color: tokens.color.slate600,
|
|
100
|
+
verticalAlign: 'middle',
|
|
101
|
+
fontSize: tokens.font.sm,
|
|
102
|
+
fontWeight: tokens.font.weightMedium,
|
|
103
|
+
lineHeight: 1.5,
|
|
104
|
+
...style,
|
|
105
|
+
}, children: children })));
|
|
106
|
+
TD.displayName = 'Table.Cell';
|
|
107
|
+
// ─── Main Component ────────────────────────────────────────────────────────────
|
|
108
|
+
const TableInner = ({ columns, data, onRowClick, className = '', style = {}, headerStyle = {}, rowStyle = {}, emptyText = 'Không tìm thấy dữ liệu', striped = true, bordered = false, loading = false, rowKey, activeKey, pagination, selection, stickyHeader, }, ref) => {
|
|
5
109
|
const [sortKey, setSortKey] = useState(null);
|
|
6
110
|
const [sortDir, setSortDir] = useState('asc');
|
|
7
111
|
const [hoveredRow, setHoveredRow] = useState(null);
|
|
@@ -21,7 +125,7 @@ export const Table = ({ columns, data, onRowClick, className = '', style = {}, h
|
|
|
21
125
|
if (!selection)
|
|
22
126
|
return;
|
|
23
127
|
if (checked) {
|
|
24
|
-
const allKeys =
|
|
128
|
+
const allKeys = data.map((r, i) => getRowKey(r, i));
|
|
25
129
|
selection.onChange(allKeys);
|
|
26
130
|
}
|
|
27
131
|
else {
|
|
@@ -43,7 +147,6 @@ export const Table = ({ columns, data, onRowClick, className = '', style = {}, h
|
|
|
43
147
|
selection.onChange(selection.selectedRowKeys.filter((k) => k !== key));
|
|
44
148
|
}
|
|
45
149
|
};
|
|
46
|
-
// Optional client-side sort
|
|
47
150
|
const handleSort = (col) => {
|
|
48
151
|
if (!col.sortable)
|
|
49
152
|
return;
|
|
@@ -68,7 +171,7 @@ export const Table = ({ columns, data, onRowClick, className = '', style = {}, h
|
|
|
68
171
|
return sortDir === 'asc' ? cmp : -cmp;
|
|
69
172
|
});
|
|
70
173
|
}
|
|
71
|
-
return (_jsxs(TableContainer, { className: className, style: style, bordered: bordered, children: [loading && (_jsxs("div", { style: {
|
|
174
|
+
return (_jsxs(TableContainer, { ref: ref, className: className, style: style, bordered: bordered, role: "table", children: [loading && (_jsxs("div", { style: {
|
|
72
175
|
position: 'absolute',
|
|
73
176
|
inset: 0,
|
|
74
177
|
display: 'flex',
|
|
@@ -90,7 +193,15 @@ export const Table = ({ columns, data, onRowClick, className = '', style = {}, h
|
|
|
90
193
|
overflowX: 'auto',
|
|
91
194
|
maxHeight: stickyHeader ? '400px' : undefined,
|
|
92
195
|
overflowY: stickyHeader ? 'auto' : undefined,
|
|
93
|
-
}, children: _jsxs("table", { style: {
|
|
196
|
+
}, children: _jsxs("table", { style: {
|
|
197
|
+
width: '100%',
|
|
198
|
+
borderCollapse: 'separate',
|
|
199
|
+
borderSpacing: 0,
|
|
200
|
+
textAlign: 'left',
|
|
201
|
+
fontSize: tokens.font.sm,
|
|
202
|
+
fontFamily: tokens.font.family,
|
|
203
|
+
}, children: [_jsx(THead, { style: { position: stickyHeader ? 'sticky' : 'static', top: 0, zIndex: 10 }, children: _jsxs(TR, { header: true, children: [selection && (_jsx(TH, { style: { width: '48px', textAlign: 'center' }, children: selection.type !== 'radio' && (_jsx("input", { type: "checkbox", "aria-label": "Select all rows", onChange: (e) => handleSelectAll(e.target.checked), checked: data.length > 0 &&
|
|
204
|
+
selection.selectedRowKeys.length === data.length })) })), columns.map((col) => {
|
|
94
205
|
const isSorted = sortKey === col.key;
|
|
95
206
|
return (_jsx(TH, { onClick: col.sortable ? () => handleSort(col) : undefined, style: {
|
|
96
207
|
textAlign: col.align || 'left',
|
|
@@ -100,128 +211,44 @@ export const Table = ({ columns, data, onRowClick, className = '', style = {}, h
|
|
|
100
211
|
userSelect: col.sortable ? 'none' : undefined,
|
|
101
212
|
...col.headerStyle,
|
|
102
213
|
...headerStyle,
|
|
103
|
-
},
|
|
214
|
+
}, "aria-sort": isSorted ? (sortDir === 'asc' ? 'ascending' : 'descending') : 'none', children: _jsxs("span", { style: { display: 'inline-flex', alignItems: 'center', gap: '5px' }, children: [col.label, col.sortable && (_jsxs("span", { style: {
|
|
215
|
+
display: 'inline-flex',
|
|
216
|
+
flexDirection: 'column',
|
|
217
|
+
gap: '1px',
|
|
218
|
+
opacity: isSorted ? 1 : 0.3,
|
|
219
|
+
}, children: [_jsx("svg", { width: "8", height: "5", viewBox: "0 0 8 5", fill: isSorted && sortDir === 'asc' ? tokens.color.primary : tokens.color.slate400, children: _jsx("path", { d: "M4 0L8 5H0L4 0Z" }) }), _jsx("svg", { width: "8", height: "5", viewBox: "0 0 8 5", fill: isSorted && sortDir === 'desc' ? tokens.color.primary : tokens.color.slate400, children: _jsx("path", { d: "M4 5L0 0H8L4 5Z" }) })] }))] }) }, col.key.toString()));
|
|
104
220
|
})] }) }), _jsx(TBody, { children: displayData.length > 0 ? (displayData.map((record, rowIndex) => {
|
|
105
221
|
const key = getRowKey(record, rowIndex);
|
|
106
222
|
const isActive = activeKey !== undefined && getRowKey(record, rowIndex) === activeKey;
|
|
107
223
|
const isHovered = hoveredRow === rowIndex;
|
|
108
224
|
const computedRowStyle = typeof rowStyle === 'function' ? rowStyle(record, rowIndex) : rowStyle;
|
|
109
|
-
const zebraStyle = striped && rowIndex % 2 === 1
|
|
110
|
-
? { backgroundColor: 'rgba(248, 250, 252, 0.6)' }
|
|
111
|
-
: {};
|
|
225
|
+
const zebraStyle = striped && rowIndex % 2 === 1 ? { backgroundColor: 'rgba(248, 250, 252, 0.6)' } : {};
|
|
112
226
|
const isRowSelected = isSelected(record, rowIndex);
|
|
113
227
|
return (_jsxs(TR, { onClick: onRowClick ? () => onRowClick(record, rowIndex) : undefined, active: isActive || isRowSelected, style: {
|
|
114
228
|
...zebraStyle,
|
|
115
|
-
...(isHovered && !isActive && !isRowSelected
|
|
229
|
+
...(isHovered && !isActive && !isRowSelected
|
|
230
|
+
? { backgroundColor: tokens.color.primaryLight }
|
|
231
|
+
: {}),
|
|
116
232
|
...computedRowStyle,
|
|
117
|
-
}, onMouseEnter: () => (onRowClick || selection) && setHoveredRow(rowIndex), onMouseLeave: () => (onRowClick || selection) && setHoveredRow(null), children: [selection && (_jsx(TD, { style: { textAlign: 'center', width: '48px' }, children: _jsx("input", { type: selection.type === 'radio' ? 'radio' : 'checkbox', checked: isRowSelected, onChange: (e) => handleSelectRow(record, rowIndex, e.target.checked), onClick: (e) => e.stopPropagation() }) })), columns.map((col) => (_jsx(TD, { style: { textAlign: col.align || 'left', ...col.cellStyle }, children: col.render
|
|
118
|
-
|
|
119
|
-
: record[col.key] }, col.key.toString())))] }, String(key)));
|
|
120
|
-
})) : (_jsx(TR, { children: _jsx(TD, { colSpan: columns.length, style: { textAlign: 'center', padding: tokens.spacing[12], color: tokens.color.slate400 }, children: _jsxs("div", { style: {
|
|
233
|
+
}, onMouseEnter: () => (onRowClick || selection) && setHoveredRow(rowIndex), onMouseLeave: () => (onRowClick || selection) && setHoveredRow(null), "aria-selected": isRowSelected, children: [selection && (_jsx(TD, { style: { textAlign: 'center', width: '48px' }, children: _jsx("input", { type: selection.type === 'radio' ? 'radio' : 'checkbox', "aria-label": "Select row", checked: isRowSelected, onChange: (e) => handleSelectRow(record, rowIndex, e.target.checked), onClick: (e) => e.stopPropagation() }) })), columns.map((col) => (_jsx(TD, { style: { textAlign: col.align || 'left', ...col.cellStyle }, children: col.render ? col.render(record[col.key], record, rowIndex) : record[col.key] }, col.key.toString())))] }, String(key)));
|
|
234
|
+
})) : (_jsx(TR, { children: _jsx(TD, { colSpan: columns.length + (selection ? 1 : 0), style: { textAlign: 'center', padding: tokens.spacing[12], color: tokens.color.slate400 }, children: _jsxs("div", { style: {
|
|
121
235
|
display: 'flex',
|
|
122
236
|
flexDirection: 'column',
|
|
123
237
|
alignItems: 'center',
|
|
124
238
|
gap: tokens.spacing[3],
|
|
125
|
-
}, children: [_jsxs("svg", { width: "40", height: "40", viewBox: "0 0 24 24", fill: "none", stroke: tokens.color.slate300, strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("rect", { x: "2", y: "3", width: "20", height: "14", rx: "2" }), _jsx("line", { x1: "8", y1: "21", x2: "16", y2: "21" }), _jsx("line", { x1: "12", y1: "17", x2: "12", y2: "21" })] }), _jsx("span", { style: { fontSize: tokens.font.sm, fontStyle: 'italic', fontWeight: tokens.font.weightMedium }, children: emptyText })] }) }) })) })] }) }), pagination && (_jsx(
|
|
239
|
+
}, children: [_jsxs("svg", { width: "40", height: "40", viewBox: "0 0 24 24", fill: "none", stroke: tokens.color.slate300, strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("rect", { x: "2", y: "3", width: "20", height: "14", rx: "2" }), _jsx("line", { x1: "8", y1: "21", x2: "16", y2: "21" }), _jsx("line", { x1: "12", y1: "17", x2: "12", y2: "21" })] }), _jsx("span", { style: { fontSize: tokens.font.sm, fontStyle: 'italic', fontWeight: tokens.font.weightMedium }, children: emptyText })] }) }) })) })] }) }), pagination && (_jsx(TablePagination, { ...pagination, style: {
|
|
126
240
|
padding: `${tokens.spacing[4]} ${tokens.spacing[6]}`,
|
|
127
241
|
borderTop: `1px solid ${tokens.color.slate100}`,
|
|
128
|
-
backgroundColor: tokens.color.slate50
|
|
242
|
+
backgroundColor: tokens.color.slate50,
|
|
129
243
|
} }))] }));
|
|
130
244
|
};
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
let end = Math.min(totalPages, start + maxVisible - 1);
|
|
141
|
-
if (end - start + 1 < maxVisible) {
|
|
142
|
-
start = Math.max(1, end - maxVisible + 1);
|
|
143
|
-
}
|
|
144
|
-
for (let i = start; i <= end; i++) {
|
|
145
|
-
pages.push(i);
|
|
146
|
-
}
|
|
147
|
-
return pages;
|
|
148
|
-
};
|
|
149
|
-
return (_jsxs("div", { style: {
|
|
150
|
-
display: 'flex',
|
|
151
|
-
alignItems: 'center',
|
|
152
|
-
justifyContent: 'space-between',
|
|
153
|
-
gap: tokens.spacing[4],
|
|
154
|
-
...style,
|
|
155
|
-
}, children: [_jsxs("div", { style: { fontSize: tokens.font.sm, color: tokens.color.slate500 }, children: ["Hi\u1EC3n th\u1ECB ", _jsx("b", { children: Math.min(total, (current - 1) * pageSize + 1) }), " - ", _jsx("b", { children: Math.min(total, current * pageSize) }), " tr\u00EAn ", _jsx("b", { children: total }), " b\u1EA3n ghi"] }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: tokens.spacing[1] }, children: [_jsx("button", { disabled: current === 1, onClick: () => onChange(current - 1, pageSize), style: {
|
|
156
|
-
padding: '6px 10px',
|
|
157
|
-
borderRadius: tokens.radius.lg,
|
|
158
|
-
border: `1px solid ${tokens.color.slate200}`,
|
|
159
|
-
backgroundColor: tokens.color.white,
|
|
160
|
-
cursor: current === 1 ? 'not-allowed' : 'pointer',
|
|
161
|
-
opacity: current === 1 ? 0.5 : 1,
|
|
162
|
-
display: 'flex',
|
|
163
|
-
alignItems: 'center',
|
|
164
|
-
}, children: _jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: _jsx("polyline", { points: "15 18 9 12 15 6" }) }) }), getPageNumbers().map(p => (_jsx("button", { onClick: () => onChange(p, pageSize), style: {
|
|
165
|
-
minWidth: '34px',
|
|
166
|
-
height: '34px',
|
|
167
|
-
borderRadius: tokens.radius.lg,
|
|
168
|
-
border: `1px solid ${p === current ? tokens.color.primary : tokens.color.slate200}`,
|
|
169
|
-
backgroundColor: p === current ? tokens.color.primary : tokens.color.white,
|
|
170
|
-
color: p === current ? tokens.color.white : tokens.color.slate600,
|
|
171
|
-
fontWeight: p === current ? tokens.font.weightBold : tokens.font.weightMedium,
|
|
172
|
-
cursor: 'pointer',
|
|
173
|
-
transition: tokens.transition.fast,
|
|
174
|
-
}, children: p }, p))), _jsx("button", { disabled: current === totalPages, onClick: () => onChange(current + 1, pageSize), style: {
|
|
175
|
-
padding: '6px 10px',
|
|
176
|
-
borderRadius: tokens.radius.lg,
|
|
177
|
-
border: `1px solid ${tokens.color.slate200}`,
|
|
178
|
-
backgroundColor: tokens.color.white,
|
|
179
|
-
cursor: current === totalPages ? 'not-allowed' : 'pointer',
|
|
180
|
-
opacity: current === totalPages ? 0.5 : 1,
|
|
181
|
-
display: 'flex',
|
|
182
|
-
alignItems: 'center',
|
|
183
|
-
}, children: _jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: _jsx("polyline", { points: "9 18 15 12 9 6" }) }) })] })] }));
|
|
184
|
-
};
|
|
185
|
-
export const TableContainer = ({ children, className = '', style = {}, bordered = false, ...props }) => (_jsx("div", { ...props, style: {
|
|
186
|
-
width: '100%',
|
|
187
|
-
backgroundColor: tokens.color.white,
|
|
188
|
-
borderRadius: tokens.radius['2xl'],
|
|
189
|
-
border: `1px solid ${bordered ? tokens.color.slate200 : tokens.color.slate100}`,
|
|
190
|
-
boxShadow: tokens.shadow.sm,
|
|
191
|
-
position: 'relative',
|
|
192
|
-
overflow: 'hidden',
|
|
193
|
-
...style,
|
|
194
|
-
}, className: `ds-table-container ${className}`, children: children }));
|
|
195
|
-
export const THead = ({ children, style = {}, ...props }) => (_jsx("thead", { ...props, style: {
|
|
196
|
-
backgroundColor: tokens.color.slate50,
|
|
197
|
-
borderBottom: `2px solid ${tokens.color.slate100}`,
|
|
198
|
-
...style,
|
|
199
|
-
}, children: children }));
|
|
200
|
-
export const TBody = ({ children, style = {}, ...props }) => (_jsx("tbody", { ...props, style: { backgroundColor: tokens.color.white, ...style }, children: children }));
|
|
201
|
-
export const TR = ({ children, onClick, active = false, header = false, style = {}, ...props }) => (_jsx("tr", { ...props, onClick: onClick, style: {
|
|
202
|
-
borderBottom: `1px solid ${tokens.color.slate100}`,
|
|
203
|
-
backgroundColor: active ? tokens.color.primaryLight : 'transparent',
|
|
204
|
-
transition: tokens.transition.fast,
|
|
205
|
-
cursor: onClick ? 'pointer' : 'default',
|
|
206
|
-
...style,
|
|
207
|
-
}, children: children }));
|
|
208
|
-
export const TH = ({ children, style = {}, ...props }) => (_jsx("th", { ...props, style: {
|
|
209
|
-
padding: `${tokens.spacing[3]} ${tokens.spacing[5]}`,
|
|
210
|
-
fontWeight: tokens.font.weightBold,
|
|
211
|
-
color: tokens.color.slate500,
|
|
212
|
-
textTransform: 'uppercase',
|
|
213
|
-
letterSpacing: '0.08em',
|
|
214
|
-
fontSize: '11px',
|
|
215
|
-
whiteSpace: 'nowrap',
|
|
216
|
-
...style,
|
|
217
|
-
}, children: children }));
|
|
218
|
-
export const TD = ({ children, style = {}, ...props }) => (_jsx("td", { ...props, style: {
|
|
219
|
-
padding: `${tokens.spacing[4]} ${tokens.spacing[5]}`,
|
|
220
|
-
color: tokens.color.slate600,
|
|
221
|
-
verticalAlign: 'middle',
|
|
222
|
-
fontSize: tokens.font.sm,
|
|
223
|
-
fontWeight: tokens.font.weightMedium,
|
|
224
|
-
lineHeight: 1.5,
|
|
225
|
-
...style,
|
|
226
|
-
}, children: children }));
|
|
245
|
+
export const Table = React.forwardRef(TableInner);
|
|
246
|
+
Table.displayName = 'Table';
|
|
247
|
+
Table.Container = TableContainer;
|
|
248
|
+
Table.Head = THead;
|
|
249
|
+
Table.Body = TBody;
|
|
250
|
+
Table.Row = TR;
|
|
251
|
+
Table.HeaderCell = TH;
|
|
252
|
+
Table.Cell = TD;
|
|
253
|
+
Table.Pagination = TablePagination;
|
|
227
254
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/components/Table.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/components/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -23,5 +23,7 @@ export interface TabsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'o
|
|
|
23
23
|
children?: React.ReactNode;
|
|
24
24
|
columns?: number;
|
|
25
25
|
}
|
|
26
|
-
export declare const Tabs: React.
|
|
27
|
-
|
|
26
|
+
export declare const Tabs: React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {
|
|
27
|
+
Tab: typeof Tab;
|
|
28
|
+
};
|
|
29
|
+
export declare const Tab: React.ForwardRefExoticComponent<TabProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { tokens } from '../tokens';
|
|
4
|
-
export const Tabs = ({ value, onChange, items, children, variant = 'standard', columns = 4, className = '', style = {}, }) => {
|
|
4
|
+
export const Tabs = React.forwardRef(({ value, onChange, items, children, variant = 'standard', columns = 4, className = '', style = {}, ...props }, ref) => {
|
|
5
5
|
const isPills = variant === 'pills';
|
|
6
6
|
const isDashboard = variant === 'dashboard';
|
|
7
7
|
const isUnderline = variant === 'underline' || variant === 'standard';
|
|
@@ -24,7 +24,7 @@ export const Tabs = ({ value, onChange, items, children, variant = 'standard', c
|
|
|
24
24
|
borderRadius: isPills ? tokens.radius.xl : 'none',
|
|
25
25
|
...style,
|
|
26
26
|
};
|
|
27
|
-
return (_jsx("div", { style: containerStyle, className: `ds-tabs ds-tabs--${variant} ${className}`, role: "tablist", children: items
|
|
27
|
+
return (_jsx("div", { ref: ref, style: containerStyle, className: `ds-tabs ds-tabs--${variant} ${className}`, role: "tablist", ...props, children: items
|
|
28
28
|
? items.map((item, index) => (_jsx(Tab, { label: item.label, value: item.value, icon: item.icon, badge: item.badge, disabled: item.disabled, active: item.value === value, onClick: () => !item.disabled && onChange(item.value), variant: variant }, index)))
|
|
29
29
|
: React.Children.map(children, (child) => {
|
|
30
30
|
if (!React.isValidElement(child))
|
|
@@ -35,12 +35,13 @@ export const Tabs = ({ value, onChange, items, children, variant = 'standard', c
|
|
|
35
35
|
variant,
|
|
36
36
|
});
|
|
37
37
|
}) }));
|
|
38
|
-
};
|
|
39
|
-
|
|
38
|
+
});
|
|
39
|
+
Tabs.displayName = 'Tabs';
|
|
40
|
+
export const Tab = React.forwardRef(({ label, value, icon, badge, active, disabled = false, onClick, variant, className = '', style = {}, ...props }, ref) => {
|
|
40
41
|
const isPills = variant === 'pills';
|
|
41
42
|
const isDashboard = variant === 'dashboard';
|
|
42
43
|
if (isDashboard) {
|
|
43
|
-
return (_jsxs("div", { role: "tab", "aria-selected": active, style: {
|
|
44
|
+
return (_jsxs("div", { ref: ref, role: "tab", "aria-selected": active, "aria-disabled": disabled, style: {
|
|
44
45
|
position: 'relative',
|
|
45
46
|
cursor: disabled ? 'not-allowed' : 'pointer',
|
|
46
47
|
backgroundColor: tokens.color.white,
|
|
@@ -54,7 +55,7 @@ export const Tab = ({ label, value, icon, badge, active, disabled = false, onCli
|
|
|
54
55
|
gap: tokens.spacing[3],
|
|
55
56
|
opacity: disabled ? 0.5 : 1,
|
|
56
57
|
...style,
|
|
57
|
-
}, onClick: disabled ? undefined : onClick, className: className, children: [icon && (_jsx("span", { style: {
|
|
58
|
+
}, onClick: disabled ? undefined : onClick, className: className, ...props, children: [icon && (_jsx("span", { style: {
|
|
58
59
|
display: 'flex',
|
|
59
60
|
padding: tokens.spacing[2],
|
|
60
61
|
borderRadius: tokens.radius.md,
|
|
@@ -69,7 +70,7 @@ export const Tab = ({ label, value, icon, badge, active, disabled = false, onCli
|
|
|
69
70
|
}, children: label }), badge && _jsx("span", { style: { marginLeft: 'auto' }, children: badge })] }));
|
|
70
71
|
}
|
|
71
72
|
// Pills & Standard/Underline
|
|
72
|
-
return (_jsxs("div", { role: "tab", "aria-selected": active, style: {
|
|
73
|
+
return (_jsxs("div", { ref: ref, role: "tab", "aria-selected": active, "aria-disabled": disabled, style: {
|
|
73
74
|
display: 'inline-flex',
|
|
74
75
|
alignItems: 'center',
|
|
75
76
|
gap: tokens.spacing[2],
|
|
@@ -81,7 +82,9 @@ export const Tab = ({ label, value, icon, badge, active, disabled = false, onCli
|
|
|
81
82
|
color: active ? tokens.color.primary : tokens.color.textMuted,
|
|
82
83
|
cursor: disabled ? 'not-allowed' : 'pointer',
|
|
83
84
|
borderRadius: isPills ? tokens.radius.lg : '0',
|
|
84
|
-
borderBottom: !isPills
|
|
85
|
+
borderBottom: !isPills
|
|
86
|
+
? `2px solid ${active ? tokens.color.primary : 'transparent'}`
|
|
87
|
+
: 'none',
|
|
85
88
|
backgroundColor: isPills && active ? tokens.color.surface : 'transparent',
|
|
86
89
|
boxShadow: isPills && active ? tokens.shadow.sm : 'none',
|
|
87
90
|
transition: tokens.transition.fast,
|
|
@@ -89,6 +92,8 @@ export const Tab = ({ label, value, icon, badge, active, disabled = false, onCli
|
|
|
89
92
|
opacity: disabled ? 0.45 : 1,
|
|
90
93
|
userSelect: 'none',
|
|
91
94
|
...style,
|
|
92
|
-
}, onClick: disabled ? undefined : onClick, className: className, children: [icon && _jsx("span", { style: { display: 'inline-flex', alignItems: 'center' }, children: icon }), label, badge && _jsx("span", { style: { marginLeft: '2px' }, children: badge })] }));
|
|
93
|
-
};
|
|
95
|
+
}, onClick: disabled ? undefined : onClick, className: className, ...props, children: [icon && _jsx("span", { style: { display: 'inline-flex', alignItems: 'center' }, children: icon }), label, badge && _jsx("span", { style: { marginLeft: '2px' }, children: badge })] }));
|
|
96
|
+
});
|
|
97
|
+
Tab.displayName = 'Tabs.Tab';
|
|
98
|
+
Tabs.Tab = Tab;
|
|
94
99
|
//# sourceMappingURL=Tabs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../src/components/Tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA6BnC,MAAM,CAAC,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../src/components/Tabs.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,10 @@ export interface TagProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
|
3
3
|
color?: 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'slate' | 'accent' | 'premium' | 'gold';
|
|
4
4
|
variant?: 'subtle' | 'solid' | 'outline' | 'gradient';
|
|
5
5
|
size?: 'sm' | 'md';
|
|
6
|
+
direction?: 'horizontal' | 'vertical';
|
|
6
7
|
onClose?: () => void;
|
|
8
|
+
closable?: boolean;
|
|
7
9
|
icon?: React.ReactNode;
|
|
8
10
|
clickable?: boolean;
|
|
9
11
|
}
|
|
10
|
-
export declare const Tag: React.
|
|
12
|
+
export declare const Tag: React.ForwardRefExoticComponent<TagProps & React.RefAttributes<HTMLSpanElement>>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import { tokens } from '../tokens';
|
|
3
4
|
const COLOR_SCHEMES = {
|
|
4
5
|
// primary = brand red
|
|
@@ -67,7 +68,7 @@ const COLOR_SCHEMES = {
|
|
|
67
68
|
border: tokens.color.slate200,
|
|
68
69
|
},
|
|
69
70
|
};
|
|
70
|
-
export const Tag = ({ children, color = 'slate', variant = 'subtle', size = 'md', className = '', style = {}, onClose, icon, clickable = false, onClick, ...props }) => {
|
|
71
|
+
export const Tag = React.forwardRef(({ children, color = 'slate', variant = 'subtle', size = 'md', className = '', style = {}, onClose, closable = false, icon, clickable = false, onClick, ...props }, ref) => {
|
|
71
72
|
const c = COLOR_SCHEMES[color] || COLOR_SCHEMES.slate;
|
|
72
73
|
const isGradient = variant === 'gradient';
|
|
73
74
|
const backgroundStyle = () => {
|
|
@@ -76,10 +77,16 @@ export const Tag = ({ children, color = 'slate', variant = 'subtle', size = 'md'
|
|
|
76
77
|
}
|
|
77
78
|
if (isGradient && (color === 'gold' || color === 'accent')) {
|
|
78
79
|
// brand gradient: red → yellow
|
|
79
|
-
return {
|
|
80
|
+
return {
|
|
81
|
+
background: `linear-gradient(135deg, ${tokens.color.primary} 0%, ${tokens.color.accent} 100%)`,
|
|
82
|
+
color: '#fff',
|
|
83
|
+
};
|
|
80
84
|
}
|
|
81
85
|
if (isGradient && color === 'primary') {
|
|
82
|
-
return {
|
|
86
|
+
return {
|
|
87
|
+
background: `linear-gradient(135deg, ${tokens.color.primary} 0%, ${tokens.color.primaryDark} 100%)`,
|
|
88
|
+
color: '#fff',
|
|
89
|
+
};
|
|
83
90
|
}
|
|
84
91
|
if (variant === 'solid' || isGradient) {
|
|
85
92
|
return { backgroundColor: c.bg, color: c.text };
|
|
@@ -89,9 +96,7 @@ export const Tag = ({ children, color = 'slate', variant = 'subtle', size = 'md'
|
|
|
89
96
|
}
|
|
90
97
|
return { backgroundColor: c.lightBg, color: c.lightText };
|
|
91
98
|
};
|
|
92
|
-
const borderColor = variant === 'outline' ? c.lightText :
|
|
93
|
-
variant === 'subtle' ? c.border :
|
|
94
|
-
'transparent';
|
|
99
|
+
const borderColor = variant === 'outline' ? c.lightText : variant === 'subtle' ? c.border : 'transparent';
|
|
95
100
|
const sizeStyles = size === 'sm'
|
|
96
101
|
? { padding: '1px 8px', fontSize: '10px', gap: '4px' }
|
|
97
102
|
: { padding: '3px 10px', fontSize: '11px', gap: '5px' };
|
|
@@ -112,7 +117,10 @@ export const Tag = ({ children, color = 'slate', variant = 'subtle', size = 'md'
|
|
|
112
117
|
...backgroundStyle(),
|
|
113
118
|
...style,
|
|
114
119
|
};
|
|
115
|
-
return (_jsxs("span", { style: baseStyle, className: `ds-tag ${className}`, onClick: onClick, ...props, children: [icon &&
|
|
120
|
+
return (_jsxs("span", { ref: ref, style: baseStyle, className: `ds-tag ${className}`, onClick: onClick, ...props, children: [icon && _jsx("span", { style: { display: 'inline-flex', alignItems: 'center', flexShrink: 0 }, children: icon }), children, (onClose || closable) && (_jsx("span", { onClick: (e) => {
|
|
121
|
+
e.stopPropagation();
|
|
122
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
123
|
+
}, style: {
|
|
116
124
|
cursor: 'pointer',
|
|
117
125
|
display: 'inline-flex',
|
|
118
126
|
alignItems: 'center',
|
|
@@ -131,5 +139,6 @@ export const Tag = ({ children, color = 'slate', variant = 'subtle', size = 'md'
|
|
|
131
139
|
e.currentTarget.style.opacity = '0.7';
|
|
132
140
|
e.currentTarget.style.backgroundColor = 'transparent';
|
|
133
141
|
}, children: _jsx("svg", { width: "10", height: "10", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "3", children: _jsx("path", { d: "M18 6L6 18M6 6l12 12" }) }) }))] }));
|
|
134
|
-
};
|
|
142
|
+
});
|
|
143
|
+
Tag.displayName = 'Tag';
|
|
135
144
|
//# sourceMappingURL=Tag.js.map
|