maru_design2 2.7.2 → 2.8.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/CHANGELOG.md +18 -0
- package/dist/components/atoms/button/Button.d.ts +1 -1
- package/dist/components/molecules/table/Colgroup.d.ts +2 -3
- package/dist/components/molecules/table/Table.d.ts +1 -1
- package/dist/components/molecules/table/body/TBody.d.ts +12 -10
- package/dist/components/molecules/table/header/FilterButtonsTh.d.ts +7 -0
- package/dist/components/molecules/table/header/FilterTh.d.ts +8 -0
- package/dist/components/molecules/table/header/SortableColumn.d.ts +8 -0
- package/dist/components/molecules/table/header/THead.d.ts +6 -2
- package/dist/components/molecules/table/types.d.ts +20 -20
- package/dist/components/molecules/toast/Toast.d.ts +1 -0
- package/dist/components/molecules/toast/ToastStyle.d.ts +6 -2
- package/dist/index.js +184 -118
- package/package.json +1 -1
- package/dist/components/molecules/table/body/ExpandingRow.d.ts +0 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [2.8.0](https://github.com/42maru-ai/maru-design2/compare/v2.7.2...v2.8.0) (2024-06-14)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* :fire: Table - REMOVE row mouse over / leave ([1d21841](https://github.com/42maru-ai/maru-design2/commit/1d218411d0d0a5b3a8de65d8bf41d4b204793e23))
|
|
9
|
+
* :sparkles: Table - ADD binButton ([e27effb](https://github.com/42maru-ai/maru-design2/commit/e27effb05595793793bd5b80aabacbb8efb0cb9e))
|
|
10
|
+
* :sparkles: Table - ADD header filter column ([1cbf792](https://github.com/42maru-ai/maru-design2/commit/1cbf792f22468599af3188f310d42ad4ea4c6d55))
|
|
11
|
+
* :sparkles: Toast - ADD description props ([e22a69c](https://github.com/42maru-ai/maru-design2/commit/e22a69c789b9ad785f075d8b7fb38b49454c3ca3))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* :bug: Button - FIX event handlers ([31d1d87](https://github.com/42maru-ai/maru-design2/commit/31d1d87354b948b9a8f155d1927ae02812970c37))
|
|
17
|
+
* :coffin: Table - REMOVE kebab header, width ([5cc16e8](https://github.com/42maru-ai/maru-design2/commit/5cc16e8512255e49b0fd3dd1f37e6659f60cafc6))
|
|
18
|
+
* :coffin: Table - REMOVE table mouse enter/leave ([8e59f35](https://github.com/42maru-ai/maru-design2/commit/8e59f359e74f985a3ed86e0c540fb304014c7c0f))
|
|
19
|
+
* :fire: Table - REMOVE expand row ([ad2cba4](https://github.com/42maru-ai/maru-design2/commit/ad2cba49d588459fa80c5db711723f749b2f8216))
|
|
20
|
+
|
|
3
21
|
## [2.7.2](https://github.com/42maru-ai/maru-design2/compare/v2.7.1...v2.7.2) (2024-06-05)
|
|
4
22
|
|
|
5
23
|
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { TColor } from '../../../enums/color';
|
|
3
3
|
import { TButtonSize } from '../../../enums/size';
|
|
4
4
|
import { TButtonVariant } from '../../../enums/variant';
|
|
5
|
-
import { IconProps } from '../icon
|
|
5
|
+
import { IconProps } from '../icon';
|
|
6
6
|
import './button.scss';
|
|
7
7
|
export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
8
8
|
children?: React.ReactNode;
|
|
@@ -2,8 +2,7 @@ import { IColumnFormats } from './types';
|
|
|
2
2
|
interface Props {
|
|
3
3
|
hasCheckbox?: boolean;
|
|
4
4
|
formats: IColumnFormats[];
|
|
5
|
-
|
|
6
|
-
kebabMenuWidth?: string;
|
|
5
|
+
hasActionCol: boolean;
|
|
7
6
|
}
|
|
8
|
-
declare function Colgroup({ hasCheckbox, formats,
|
|
7
|
+
declare function Colgroup({ hasCheckbox, formats, hasActionCol }: Props): import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default Colgroup;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { TableProps } from './types';
|
|
2
2
|
import './table.scss';
|
|
3
|
-
export declare function Table({ rowIdKey, data, formats, sort, onSort, checkedIds, onCheck,
|
|
3
|
+
export declare function Table({ rowIdKey, data, formats, sort, onSort, checkedIds, onCheck, filter, kebabMenu, binButton, onRowClick, selectedRow, className, id, tableMaxHeight, noData, loading, }: TableProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -2,12 +2,21 @@ import React from 'react';
|
|
|
2
2
|
import { IColumnFormats } from '../types';
|
|
3
3
|
interface Props {
|
|
4
4
|
rowIdKey: string;
|
|
5
|
-
data: Record<string, any>[];
|
|
6
5
|
formats: IColumnFormats[];
|
|
6
|
+
data: Record<string, any>[];
|
|
7
7
|
checkedIds?: string[];
|
|
8
8
|
onCheck?: (ids: string[]) => void;
|
|
9
|
-
|
|
9
|
+
hasActionCol: boolean;
|
|
10
10
|
kebabContent?: (rowId: string, onClose: () => void) => React.ReactNode;
|
|
11
|
+
binButton?: {
|
|
12
|
+
show: 'hover' | 'always';
|
|
13
|
+
onClick: (rowId: string) => void;
|
|
14
|
+
};
|
|
15
|
+
onRowClick?: (rowId: string) => void;
|
|
16
|
+
selectedRow?: {
|
|
17
|
+
rowId: string;
|
|
18
|
+
className?: string;
|
|
19
|
+
};
|
|
11
20
|
noData?: {
|
|
12
21
|
isNoData: boolean;
|
|
13
22
|
message: string;
|
|
@@ -16,13 +25,6 @@ interface Props {
|
|
|
16
25
|
isLoading: boolean;
|
|
17
26
|
content?: React.ReactNode;
|
|
18
27
|
};
|
|
19
|
-
onRowClick?: (rowId: string) => void;
|
|
20
|
-
selectedRow?: {
|
|
21
|
-
rowId: string;
|
|
22
|
-
className?: string;
|
|
23
|
-
};
|
|
24
|
-
onRowMouseOver?: (rowId: string) => void;
|
|
25
|
-
onRowMouseLeave?: (rowId: string) => void;
|
|
26
28
|
}
|
|
27
|
-
declare function TBody({ rowIdKey, formats, data, checkedIds, onCheck,
|
|
29
|
+
declare function TBody({ rowIdKey, formats, data, checkedIds, onCheck, hasActionCol, kebabContent, binButton, onRowClick, selectedRow, noData, loading, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
28
30
|
export default TBody;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IColumnFormats, ISort } from '../types';
|
|
2
|
+
interface Props {
|
|
3
|
+
format: IColumnFormats;
|
|
4
|
+
currentSort?: ISort;
|
|
5
|
+
onSortClick: (columnName: string, sortable: boolean) => () => void;
|
|
6
|
+
}
|
|
7
|
+
declare function SortableColumn({ format, currentSort, onSortClick }: Props): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default SortableColumn;
|
|
@@ -6,7 +6,11 @@ interface Props {
|
|
|
6
6
|
hasCheckbox?: boolean;
|
|
7
7
|
allCheckbox: boolean;
|
|
8
8
|
onAllCheck: (checked: boolean) => void;
|
|
9
|
-
|
|
9
|
+
hasActionCol: boolean;
|
|
10
|
+
filter?: {
|
|
11
|
+
on: boolean;
|
|
12
|
+
onReset: () => void;
|
|
13
|
+
};
|
|
10
14
|
}
|
|
11
|
-
declare function THead({ formats, currentSort, onSortClick, hasCheckbox, allCheckbox, onAllCheck,
|
|
15
|
+
declare function THead({ formats, currentSort, onSortClick, hasCheckbox, allCheckbox, onAllCheck, hasActionCol, filter, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
16
|
export default THead;
|
|
@@ -6,25 +6,20 @@ export interface ISort {
|
|
|
6
6
|
export interface IColumnFormats {
|
|
7
7
|
columnIdKey: string;
|
|
8
8
|
columnName?: string;
|
|
9
|
-
|
|
9
|
+
filter?: React.ReactNode;
|
|
10
10
|
customColumn?: (content: any, rowId: string) => React.ReactNode;
|
|
11
11
|
width?: string;
|
|
12
12
|
sortable?: boolean;
|
|
13
13
|
isHide?: boolean;
|
|
14
14
|
}
|
|
15
|
-
export interface IExpandingColumnFormats {
|
|
16
|
-
columnIdKeys: string[];
|
|
17
|
-
colSpan?: number;
|
|
18
|
-
customColumn?: (contents: any, rowId1: string, rowId2: string) => React.ReactNode;
|
|
19
|
-
}
|
|
20
15
|
export interface TableProps {
|
|
21
|
-
data: Record<string, any>[];
|
|
22
16
|
/**
|
|
23
17
|
* 행 아이디로 쓸 키
|
|
24
18
|
*/
|
|
25
19
|
rowIdKey: string;
|
|
20
|
+
data: Record<string, any>[];
|
|
26
21
|
/**
|
|
27
|
-
* { columnIdKey, columnName,
|
|
22
|
+
* { columnIdKey, columnName, filter, customColumn, width, sortable, isHide }
|
|
28
23
|
*/
|
|
29
24
|
formats: IColumnFormats[];
|
|
30
25
|
/**
|
|
@@ -44,26 +39,29 @@ export interface TableProps {
|
|
|
44
39
|
*/
|
|
45
40
|
onCheck?: (ids: string[]) => void;
|
|
46
41
|
/**
|
|
47
|
-
*
|
|
42
|
+
* 최우측 컬럼 헤더의 필터 영역. { on, onReset }
|
|
48
43
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
44
|
+
filter?: {
|
|
45
|
+
on: boolean;
|
|
46
|
+
onReset: () => void;
|
|
52
47
|
};
|
|
53
48
|
/**
|
|
54
|
-
*
|
|
49
|
+
* 최우측 컬럼 바디의 더보기 메뉴. binButton과 같이 쓸 수 없음. { content, width } (@v1 hamberger)
|
|
55
50
|
*/
|
|
56
|
-
|
|
51
|
+
kebabMenu?: {
|
|
52
|
+
content: (rowId: string, onClose: () => void) => React.ReactNode;
|
|
53
|
+
};
|
|
57
54
|
/**
|
|
58
|
-
*
|
|
55
|
+
* 최우측 컬럼 바디의 휴지통 버튼. kebabMenu와 같이 쓸 수 없음. { show, onClick }
|
|
59
56
|
*/
|
|
60
|
-
|
|
57
|
+
binButton?: {
|
|
58
|
+
show: 'hover' | 'always';
|
|
59
|
+
onClick: (rowId: string) => void;
|
|
60
|
+
};
|
|
61
61
|
/**
|
|
62
|
-
* 테이블 행
|
|
62
|
+
* 테이블 행 click 이벤트
|
|
63
63
|
*/
|
|
64
|
-
|
|
65
|
-
className?: string;
|
|
66
|
-
id?: string;
|
|
64
|
+
onRowClick?: (rowId: string) => void;
|
|
67
65
|
/**
|
|
68
66
|
* 선택된 행 스타일 지정 (@v1 focusedRowInfo)
|
|
69
67
|
*/
|
|
@@ -71,6 +69,8 @@ export interface TableProps {
|
|
|
71
69
|
rowId: string;
|
|
72
70
|
className?: string;
|
|
73
71
|
};
|
|
72
|
+
className?: string;
|
|
73
|
+
id?: string;
|
|
74
74
|
/**
|
|
75
75
|
* 최대 높이
|
|
76
76
|
*/
|
|
@@ -6,13 +6,17 @@ export interface ToastStyleProps {
|
|
|
6
6
|
*/
|
|
7
7
|
variant: TToastVariant;
|
|
8
8
|
/**
|
|
9
|
-
* 컴포넌트에 들어갈 내용
|
|
9
|
+
* 컴포넌트에 들어갈 한 줄짜리 내용
|
|
10
10
|
*/
|
|
11
11
|
content: string;
|
|
12
|
+
/**
|
|
13
|
+
* 컴포넌트에 들어갈 여러 줄 짜리 내용
|
|
14
|
+
*/
|
|
15
|
+
description?: string;
|
|
12
16
|
/**
|
|
13
17
|
* details, summary 태그를 활용하여 노출할 내용
|
|
14
18
|
*/
|
|
15
19
|
details?: string[];
|
|
16
20
|
onClose: () => void;
|
|
17
21
|
}
|
|
18
|
-
export declare function ToastStyle({ variant, content, details, onClose, }: ToastStyleProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function ToastStyle({ variant, content, description, details, onClose, }: ToastStyleProps): import("react/jsx-runtime").JSX.Element;
|
package/dist/index.js
CHANGED
|
@@ -2879,17 +2879,29 @@ var Button = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
2879
2879
|
}, {
|
|
2880
2880
|
'maru-button-only-icon': !children && (startIcon || endIcon)
|
|
2881
2881
|
}, props.className),
|
|
2882
|
-
onMouseEnter: function onMouseEnter() {
|
|
2883
|
-
|
|
2882
|
+
onMouseEnter: function onMouseEnter(event) {
|
|
2883
|
+
if (props.onMouseEnter) {
|
|
2884
|
+
props.onMouseEnter(event);
|
|
2885
|
+
}
|
|
2886
|
+
setIsHover(true);
|
|
2884
2887
|
},
|
|
2885
|
-
onMouseLeave: function onMouseLeave() {
|
|
2886
|
-
|
|
2888
|
+
onMouseLeave: function onMouseLeave(event) {
|
|
2889
|
+
if (props.onMouseLeave) {
|
|
2890
|
+
props.onMouseLeave(event);
|
|
2891
|
+
}
|
|
2892
|
+
setIsHover(false);
|
|
2887
2893
|
},
|
|
2888
|
-
onMouseDown: function onMouseDown() {
|
|
2889
|
-
|
|
2894
|
+
onMouseDown: function onMouseDown(event) {
|
|
2895
|
+
if (props.onMouseDown) {
|
|
2896
|
+
props.onMouseDown(event);
|
|
2897
|
+
}
|
|
2898
|
+
setIsActive(true);
|
|
2890
2899
|
},
|
|
2891
|
-
onMouseUp: function onMouseUp() {
|
|
2892
|
-
|
|
2900
|
+
onMouseUp: function onMouseUp(event) {
|
|
2901
|
+
if (props.onMouseUp) {
|
|
2902
|
+
props.onMouseUp(event);
|
|
2903
|
+
}
|
|
2904
|
+
setIsActive(false);
|
|
2893
2905
|
}
|
|
2894
2906
|
}, {
|
|
2895
2907
|
children: [startIcon && jsx(Icon, {
|
|
@@ -23016,32 +23028,23 @@ function TBody(_a) {
|
|
|
23016
23028
|
data = _a.data,
|
|
23017
23029
|
checkedIds = _a.checkedIds,
|
|
23018
23030
|
onCheck = _a.onCheck,
|
|
23019
|
-
|
|
23031
|
+
hasActionCol = _a.hasActionCol,
|
|
23020
23032
|
kebabContent = _a.kebabContent,
|
|
23021
|
-
|
|
23022
|
-
//
|
|
23023
|
-
//
|
|
23024
|
-
// expandingFormat,
|
|
23033
|
+
binButton = _a.binButton,
|
|
23034
|
+
// onRowMouseOver,
|
|
23035
|
+
// onRowMouseLeave,
|
|
23025
23036
|
onRowClick = _a.onRowClick,
|
|
23026
23037
|
selectedRow = _a.selectedRow,
|
|
23027
|
-
onRowMouseOver = _a.onRowMouseOver,
|
|
23028
|
-
onRowMouseLeave = _a.onRowMouseLeave,
|
|
23029
23038
|
noData = _a.noData,
|
|
23030
23039
|
loading = _a.loading;
|
|
23031
|
-
var _b = useState(
|
|
23032
|
-
_b[0]
|
|
23033
|
-
_b[1];
|
|
23040
|
+
var _b = useState(''),
|
|
23041
|
+
hoveredRowId = _b[0],
|
|
23042
|
+
setHoveredRowId = _b[1];
|
|
23034
23043
|
var tableBodyStatus = useMemo(function () {
|
|
23035
23044
|
if (loading === null || loading === void 0 ? void 0 : loading.isLoading) return 'loading';
|
|
23036
23045
|
if (noData === null || noData === void 0 ? void 0 : noData.isNoData) return 'no-data';
|
|
23037
23046
|
return 'enable';
|
|
23038
23047
|
}, [noData, loading]);
|
|
23039
|
-
// const hasRowEvent = useMemo(
|
|
23040
|
-
// () =>
|
|
23041
|
-
// (onRowClick && onRowClick.name !== 'mockConstructor') ||
|
|
23042
|
-
// (onRowMouseOver && onRowMouseOver.name !== 'mockConstructor'),
|
|
23043
|
-
// [onRowClick, onRowMouseOver],
|
|
23044
|
-
// );
|
|
23045
23048
|
var handleCheck = function handleCheck(rowId, checked) {
|
|
23046
23049
|
if (checked) {
|
|
23047
23050
|
var newCheckedArray = checkedIds ? __spreadArray([], checkedIds, true) : [];
|
|
@@ -23056,34 +23059,19 @@ function TBody(_a) {
|
|
|
23056
23059
|
};
|
|
23057
23060
|
var handleRowClick = function handleRowClick(rowId) {
|
|
23058
23061
|
return function () {
|
|
23059
|
-
// if (hasRowEvent) {
|
|
23060
23062
|
onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(rowId);
|
|
23061
|
-
// }
|
|
23062
23063
|
};
|
|
23063
23064
|
};
|
|
23064
23065
|
var handleRowEnter = function handleRowEnter(rowId) {
|
|
23065
23066
|
return function () {
|
|
23066
|
-
|
|
23067
|
-
onRowMouseOver === null || onRowMouseOver === void 0 ? void 0 : onRowMouseOver(rowId);
|
|
23068
|
-
// }
|
|
23067
|
+
setHoveredRowId(rowId);
|
|
23069
23068
|
};
|
|
23070
23069
|
};
|
|
23071
|
-
var handleRowLeave = function handleRowLeave(
|
|
23070
|
+
var handleRowLeave = function handleRowLeave() {
|
|
23072
23071
|
return function () {
|
|
23073
|
-
|
|
23074
|
-
onRowMouseLeave === null || onRowMouseLeave === void 0 ? void 0 : onRowMouseLeave(rowId);
|
|
23075
|
-
// }
|
|
23072
|
+
setHoveredRowId('');
|
|
23076
23073
|
};
|
|
23077
23074
|
};
|
|
23078
|
-
// const handleExpandClick = (rowId: string) => () => {
|
|
23079
|
-
// let newExpand = [...expand];
|
|
23080
|
-
// if (newExpand.includes(rowId)) {
|
|
23081
|
-
// newExpand = newExpand.filter((i) => i !== rowId);
|
|
23082
|
-
// } else {
|
|
23083
|
-
// newExpand = newExpand.concat(rowId);
|
|
23084
|
-
// }
|
|
23085
|
-
// setExpand(newExpand);
|
|
23086
|
-
// };
|
|
23087
23075
|
return jsx("tbody", __assign({
|
|
23088
23076
|
className: "maru-table-body"
|
|
23089
23077
|
}, {
|
|
@@ -23096,11 +23084,10 @@ function TBody(_a) {
|
|
|
23096
23084
|
children: jsxs("tr", __assign({
|
|
23097
23085
|
onClick: handleRowClick(row[rowIdKey]),
|
|
23098
23086
|
onMouseEnter: handleRowEnter(row[rowIdKey]),
|
|
23099
|
-
onMouseLeave: handleRowLeave(
|
|
23100
|
-
// aria-hidden={hasRowEvent}
|
|
23087
|
+
onMouseLeave: handleRowLeave(),
|
|
23101
23088
|
className: classNames({
|
|
23102
23089
|
'clickable-row': onRowClick,
|
|
23103
|
-
'selected-row': selectedRow && (selectedRow === null || selectedRow === void 0 ? void 0 : selectedRow.rowId) === row[rowIdKey]
|
|
23090
|
+
'selected-row': selectedRow && (selectedRow === null || selectedRow === void 0 ? void 0 : selectedRow.rowId) === row[rowIdKey] || hoveredRowId === row[rowIdKey]
|
|
23104
23091
|
}, selectedRow && (selectedRow === null || selectedRow === void 0 ? void 0 : selectedRow.className))
|
|
23105
23092
|
}, {
|
|
23106
23093
|
children: [checkedIds != null && jsx(CheckboxTd, {
|
|
@@ -23108,16 +23095,34 @@ function TBody(_a) {
|
|
|
23108
23095
|
checked: !!(checkedIds === null || checkedIds === void 0 ? void 0 : checkedIds.includes(row[rowIdKey])),
|
|
23109
23096
|
onCheck: handleCheck
|
|
23110
23097
|
}), formats.map(function (format) {
|
|
23111
|
-
if (format.isHide)
|
|
23112
|
-
return null;
|
|
23113
|
-
}
|
|
23098
|
+
if (format.isHide) return null;
|
|
23114
23099
|
var cellHashId = uuidv4(4);
|
|
23115
23100
|
return jsx("td", {
|
|
23116
23101
|
children: format.customColumn ? format.customColumn(row[format.columnIdKey], row[rowIdKey]) : row[format.columnIdKey]
|
|
23117
23102
|
}, "cell-".concat(row[format.columnIdKey], "-").concat(cellHashId));
|
|
23118
|
-
}),
|
|
23103
|
+
}), hasActionCol && kebabContent ? jsx(KebabMenuTd, {
|
|
23119
23104
|
rowId: row[rowIdKey],
|
|
23120
23105
|
kebabContent: kebabContent
|
|
23106
|
+
}) : (binButton === null || binButton === void 0 ? void 0 : binButton.show) === 'always' || (binButton === null || binButton === void 0 ? void 0 : binButton.show) === 'hover' && hoveredRowId === row[rowIdKey] ?
|
|
23107
|
+
// eslint-disable-next-line jsx-a11y/control-has-associated-label, react/jsx-indent
|
|
23108
|
+
jsx("td", {
|
|
23109
|
+
children: jsx(Button, {
|
|
23110
|
+
startIcon: {
|
|
23111
|
+
name: ICONS.Trash01Thin,
|
|
23112
|
+
size: 18,
|
|
23113
|
+
color: hoveredRowId === row[rowIdKey] ? 'danger' : '#8c8c8c'
|
|
23114
|
+
},
|
|
23115
|
+
color: "danger",
|
|
23116
|
+
onClick: function onClick() {
|
|
23117
|
+
return binButton.onClick(row[rowIdKey]);
|
|
23118
|
+
}
|
|
23119
|
+
})
|
|
23120
|
+
}) : jsx("td", {
|
|
23121
|
+
children: jsx("div", {
|
|
23122
|
+
style: {
|
|
23123
|
+
width: '18px'
|
|
23124
|
+
}
|
|
23125
|
+
})
|
|
23121
23126
|
})]
|
|
23122
23127
|
}))
|
|
23123
23128
|
}, "table-row-".concat(row[rowIdKey]));
|
|
@@ -23125,6 +23130,66 @@ function TBody(_a) {
|
|
|
23125
23130
|
}));
|
|
23126
23131
|
}
|
|
23127
23132
|
|
|
23133
|
+
function FilterButtonsTh(_a) {
|
|
23134
|
+
var toggle = _a.toggle,
|
|
23135
|
+
onToggle = _a.onToggle,
|
|
23136
|
+
onReset = _a.onReset;
|
|
23137
|
+
return jsx("th", {
|
|
23138
|
+
children: jsxs("div", __assign({
|
|
23139
|
+
className: "filter-buttons-th"
|
|
23140
|
+
}, {
|
|
23141
|
+
children: [jsx(Button, {
|
|
23142
|
+
onClick: onToggle,
|
|
23143
|
+
startIcon: {
|
|
23144
|
+
name: ICONS.FilterLinesThin,
|
|
23145
|
+
size: 18,
|
|
23146
|
+
color: 'primary'
|
|
23147
|
+
},
|
|
23148
|
+
className: "filter-icon-button"
|
|
23149
|
+
}), toggle && jsx(Button, {
|
|
23150
|
+
onClick: onReset,
|
|
23151
|
+
startIcon: {
|
|
23152
|
+
name: ICONS.RefreshCw01Thin,
|
|
23153
|
+
size: 18,
|
|
23154
|
+
color: '#bdbdbd'
|
|
23155
|
+
}
|
|
23156
|
+
})]
|
|
23157
|
+
}))
|
|
23158
|
+
});
|
|
23159
|
+
}
|
|
23160
|
+
|
|
23161
|
+
function FilterTh(_a) {
|
|
23162
|
+
var children = _a.children,
|
|
23163
|
+
toggle = _a.toggle,
|
|
23164
|
+
filter = _a.filter;
|
|
23165
|
+
return jsxs("div", __assign({
|
|
23166
|
+
className: "filter-th"
|
|
23167
|
+
}, {
|
|
23168
|
+
children: [children, toggle && (filter || jsx("div", {}))]
|
|
23169
|
+
}));
|
|
23170
|
+
}
|
|
23171
|
+
|
|
23172
|
+
function SortableColumn(_a) {
|
|
23173
|
+
var format = _a.format,
|
|
23174
|
+
currentSort = _a.currentSort,
|
|
23175
|
+
onSortClick = _a.onSortClick;
|
|
23176
|
+
return !format.sortable ? jsx("span", {
|
|
23177
|
+
children: format.columnName
|
|
23178
|
+
}) : jsx(Button, __assign({
|
|
23179
|
+
onClick: onSortClick(format.columnIdKey, format.sortable),
|
|
23180
|
+
variant: "text",
|
|
23181
|
+
endIcon: {
|
|
23182
|
+
name: ICONS.SortOutlineThin,
|
|
23183
|
+
size: 18,
|
|
23184
|
+
color: (currentSort === null || currentSort === void 0 ? void 0 : currentSort.columnName) === format.columnIdKey ? 'primary' : '#8c8c8c'
|
|
23185
|
+
},
|
|
23186
|
+
color: "secondary",
|
|
23187
|
+
className: "maru-table-header-sortable"
|
|
23188
|
+
}, {
|
|
23189
|
+
children: format.columnName
|
|
23190
|
+
}));
|
|
23191
|
+
}
|
|
23192
|
+
|
|
23128
23193
|
function THead(_a) {
|
|
23129
23194
|
var formats = _a.formats,
|
|
23130
23195
|
currentSort = _a.currentSort,
|
|
@@ -23132,7 +23197,21 @@ function THead(_a) {
|
|
|
23132
23197
|
hasCheckbox = _a.hasCheckbox,
|
|
23133
23198
|
allCheckbox = _a.allCheckbox,
|
|
23134
23199
|
onAllCheck = _a.onAllCheck,
|
|
23135
|
-
|
|
23200
|
+
hasActionCol = _a.hasActionCol,
|
|
23201
|
+
filter = _a.filter;
|
|
23202
|
+
var _b = useState(false),
|
|
23203
|
+
filterToggle = _b[0],
|
|
23204
|
+
setFilterToggle = _b[1];
|
|
23205
|
+
useEffect(function () {
|
|
23206
|
+
if (filter === null || filter === void 0 ? void 0 : filter.on) {
|
|
23207
|
+
setFilterToggle(filter === null || filter === void 0 ? void 0 : filter.on);
|
|
23208
|
+
}
|
|
23209
|
+
}, [filter === null || filter === void 0 ? void 0 : filter.on]);
|
|
23210
|
+
var handleFilterToggle = function handleFilterToggle() {
|
|
23211
|
+
setFilterToggle(function (prev) {
|
|
23212
|
+
return !prev;
|
|
23213
|
+
});
|
|
23214
|
+
};
|
|
23136
23215
|
var handleChange = function handleChange(e) {
|
|
23137
23216
|
e.stopPropagation();
|
|
23138
23217
|
onAllCheck(e.currentTarget.checked);
|
|
@@ -23152,42 +23231,34 @@ function THead(_a) {
|
|
|
23152
23231
|
color: "#5C5C5C"
|
|
23153
23232
|
})
|
|
23154
23233
|
})), formats === null || formats === void 0 ? void 0 : formats.map(function (format) {
|
|
23155
|
-
if (format.isHide)
|
|
23156
|
-
return null;
|
|
23157
|
-
}
|
|
23158
|
-
// eslint-disable-next-line max-len
|
|
23159
|
-
// eslint-disable-next-line react/no-unstable-nested-components, react/function-component-definition
|
|
23160
|
-
var Header = function Header() {
|
|
23161
|
-
return !format.sortable ? format.columnName : jsx(Button, __assign({
|
|
23162
|
-
onClick: onSortClick(format.columnIdKey, format.sortable),
|
|
23163
|
-
variant: "text",
|
|
23164
|
-
endIcon: {
|
|
23165
|
-
name: ICONS.SortOutlineThin,
|
|
23166
|
-
size: 18,
|
|
23167
|
-
color: (currentSort === null || currentSort === void 0 ? void 0 : currentSort.columnName) === format.columnIdKey ? 'primary' : '#8c8c8c'
|
|
23168
|
-
},
|
|
23169
|
-
color: "secondary",
|
|
23170
|
-
className: "maru-table-header-sortable"
|
|
23171
|
-
}, {
|
|
23172
|
-
children: format.columnName
|
|
23173
|
-
}));
|
|
23174
|
-
};
|
|
23234
|
+
if (format.isHide) return null;
|
|
23175
23235
|
return jsx("th", {
|
|
23176
|
-
children:
|
|
23177
|
-
|
|
23178
|
-
|
|
23179
|
-
|
|
23180
|
-
|
|
23181
|
-
|
|
23182
|
-
|
|
23236
|
+
children: filter ? jsx(FilterTh, __assign({
|
|
23237
|
+
toggle: filterToggle,
|
|
23238
|
+
filter: format.filter
|
|
23239
|
+
}, {
|
|
23240
|
+
children: jsx(SortableColumn, {
|
|
23241
|
+
format: format,
|
|
23242
|
+
currentSort: currentSort,
|
|
23243
|
+
onSortClick: onSortClick
|
|
23244
|
+
})
|
|
23245
|
+
})) : jsx(SortableColumn, {
|
|
23246
|
+
format: format,
|
|
23247
|
+
currentSort: currentSort,
|
|
23248
|
+
onSortClick: onSortClick
|
|
23249
|
+
})
|
|
23250
|
+
}, "column-".concat(format.columnIdKey));
|
|
23251
|
+
}), hasActionCol && filter ? jsx(FilterButtonsTh, {
|
|
23252
|
+
toggle: filterToggle,
|
|
23253
|
+
onToggle: handleFilterToggle,
|
|
23254
|
+
onReset: filter === null || filter === void 0 ? void 0 : filter.onReset
|
|
23255
|
+
}) : jsx("th", {
|
|
23183
23256
|
children: jsx("div", {
|
|
23184
23257
|
style: {
|
|
23185
|
-
width: '
|
|
23258
|
+
width: '18px'
|
|
23186
23259
|
}
|
|
23187
23260
|
})
|
|
23188
|
-
})
|
|
23189
|
-
// )
|
|
23190
|
-
null]
|
|
23261
|
+
})]
|
|
23191
23262
|
})
|
|
23192
23263
|
}));
|
|
23193
23264
|
}
|
|
@@ -23195,8 +23266,7 @@ function THead(_a) {
|
|
|
23195
23266
|
function Colgroup(_a) {
|
|
23196
23267
|
var hasCheckbox = _a.hasCheckbox,
|
|
23197
23268
|
formats = _a.formats,
|
|
23198
|
-
|
|
23199
|
-
kebabMenuWidth = _a.kebabMenuWidth;
|
|
23269
|
+
hasActionCol = _a.hasActionCol;
|
|
23200
23270
|
return jsxs("colgroup", {
|
|
23201
23271
|
children: [hasCheckbox ? jsx("col", {
|
|
23202
23272
|
width: "5%"
|
|
@@ -23207,15 +23277,13 @@ function Colgroup(_a) {
|
|
|
23207
23277
|
return jsx("col", {
|
|
23208
23278
|
width: format.width || "".concat(90 / formats.length, "%")
|
|
23209
23279
|
}, "col-".concat(format.columnIdKey));
|
|
23210
|
-
}),
|
|
23211
|
-
width: kebabMenuWidth
|
|
23212
|
-
}) : jsx("col", {
|
|
23280
|
+
}), hasActionCol ? jsx("col", {
|
|
23213
23281
|
width: "5%"
|
|
23214
23282
|
}) : null]
|
|
23215
23283
|
});
|
|
23216
23284
|
}
|
|
23217
23285
|
|
|
23218
|
-
var css_248z$1 = ".maru-table-wrapper {\n width: 100%;\n background-color: white;\n box-shadow: 0px 0px 6px #e4e4e4;\n border-radius: 15px;\n}\n.maru-table-wrapper .maru-table-header-wrapper,\n.maru-table-wrapper .maru-table-body-wrapper {\n width: 100%;\n}\n.maru-table-wrapper tr {\n height: 54px;\n}\n.maru-table-wrapper th,\n.maru-table-wrapper td {\n text-align: start;\n vertical-align: middle;\n padding: 16.5px 15px;\n word-break: break-word;\n color: #5c5c5c;\n}\n.maru-table-wrapper th:first-of-type,\n.maru-table-wrapper td:first-of-type {\n padding: 16.5px 25px;\n}\n.maru-table-wrapper .checkbox-td {\n padding: 18px 15px 18px 25px !important;\n}\n.maru-table-wrapper .maru-table-header tr {\n border-bottom: 1px solid #e4e4e4;\n}\n.maru-table-wrapper .maru-table-header tr th {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 700;\n}\n.maru-table-wrapper .maru-table-header .maru-table-header-sortable {\n padding: unset;\n margin: unset;\n color: #5c5c5c;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 700;\n}\n.maru-table-wrapper .maru-table-body-scroll-wrapper {\n overflow-y: auto;\n}\n.maru-table-wrapper .maru-table-body-scroll-wrapper .maru-table-scroll {\n overflow-y: auto;\n}\n.maru-table-wrapper .maru-table-body tr:not(:last-of-type) {\n border-bottom: 1px solid #fafafa;\n}\n.maru-table-wrapper .maru-table-body tr:hover,\n.maru-table-wrapper .maru-table-body .clickable-row:hover,\n.maru-table-wrapper .maru-table-body .selected-row {\n background-color: var(--p-10);\n}\n.maru-table-wrapper .maru-table-body td {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n}\n.maru-table-wrapper .maru-table-body tr:last-of-type td:first-of-type {\n border-bottom-left-radius: 15px;\n}\n.maru-table-wrapper .maru-table-body tr:last-of-type td:last-of-type {\n border-bottom-right-radius: 15px;\n}\n.maru-table-wrapper .maru-table-body .clickable-row {\n cursor: pointer;\n}\n.maru-table-wrapper .maru-table-body .expanding {\n border-bottom: unset !important;\n}\n.maru-table-wrapper .maru-checkbox {\n border-color: #bdbdbd;\n}\n.maru-table-wrapper .maru-table-body-kebab-wrapper {\n text-align: center;\n}\n.maru-table-wrapper .maru-table-body-kebab {\n margin: unset;\n padding: unset;\n height: auto;\n}\n.maru-table-wrapper .maru-table-body-empty-tr > td {\n width: 100%;\n vertical-align: middle;\n text-align: center;\n padding: 61px 0;\n}\n.maru-table-wrapper .maru-table-body-empty-tr > td p {\n margin-top: 10px;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #bdbdbd;\n}\n.maru-table-wrapper .maru-table-body-empty-tr:hover {\n background-color: inherit !important;\n}\n.maru-table-wrapper .maru-table-body-expandable-button {\n width: 24px;\n height: 24px;\n padding: 0.2rem;\n}\n.maru-table-wrapper .maru-table-body-expanding-row {\n border: unset !important;\n}\n.maru-table-wrapper .maru-table-body-expanding-row.empty-last-expanding-row {\n border-bottom: 1px solid #bdbdbd !important;\n height: 12px !important;\n}";
|
|
23286
|
+
var css_248z$1 = ".maru-table-wrapper {\n width: 100%;\n background-color: white;\n box-shadow: 0px 0px 6px #e4e4e4;\n border-radius: 15px;\n}\n.maru-table-wrapper .maru-table-header-wrapper,\n.maru-table-wrapper .maru-table-body-wrapper {\n width: 100%;\n}\n.maru-table-wrapper tr {\n height: 54px;\n}\n.maru-table-wrapper th,\n.maru-table-wrapper td {\n text-align: start;\n vertical-align: middle;\n padding: 16.5px 15px;\n word-break: break-word;\n color: #5c5c5c;\n}\n.maru-table-wrapper th:first-of-type,\n.maru-table-wrapper td:first-of-type {\n padding: 16.5px 25px;\n}\n.maru-table-wrapper .checkbox-td {\n padding: 18px 15px 18px 25px !important;\n}\n.maru-table-wrapper .maru-table-header tr {\n border-bottom: 1px solid #e4e4e4;\n}\n.maru-table-wrapper .maru-table-header tr th {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 700;\n}\n.maru-table-wrapper .maru-table-header .filter-th {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 16.5px;\n}\n.maru-table-wrapper .maru-table-header .filter-th > div {\n height: 33px;\n}\n.maru-table-wrapper .maru-table-header .filter-buttons-th {\n display: flex;\n flex-direction: column;\n gap: 26px;\n}\n.maru-table-wrapper .maru-table-header .maru-table-header-sortable {\n padding: unset;\n margin: unset;\n color: #5c5c5c;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 700;\n}\n.maru-table-wrapper .maru-table-body-scroll-wrapper {\n overflow-y: auto;\n}\n.maru-table-wrapper .maru-table-body-scroll-wrapper .maru-table-scroll {\n overflow-y: auto;\n}\n.maru-table-wrapper .maru-table-body tr:not(:last-of-type) {\n border-bottom: 1px solid #fafafa;\n}\n.maru-table-wrapper .maru-table-body tr:hover,\n.maru-table-wrapper .maru-table-body .clickable-row:hover,\n.maru-table-wrapper .maru-table-body .selected-row {\n background-color: var(--p-10);\n}\n.maru-table-wrapper .maru-table-body td {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n}\n.maru-table-wrapper .maru-table-body tr:last-of-type td:first-of-type {\n border-bottom-left-radius: 15px;\n}\n.maru-table-wrapper .maru-table-body tr:last-of-type td:last-of-type {\n border-bottom-right-radius: 15px;\n}\n.maru-table-wrapper .maru-table-body .clickable-row {\n cursor: pointer;\n}\n.maru-table-wrapper .maru-table-body .expanding {\n border-bottom: unset !important;\n}\n.maru-table-wrapper .maru-checkbox {\n border-color: #bdbdbd;\n}\n.maru-table-wrapper .maru-table-body-kebab-wrapper {\n text-align: center;\n}\n.maru-table-wrapper .maru-table-body-kebab {\n margin: unset;\n padding: unset;\n height: auto;\n}\n.maru-table-wrapper .maru-table-body-empty-tr > td {\n width: 100%;\n vertical-align: middle;\n text-align: center;\n padding: 61px 0;\n}\n.maru-table-wrapper .maru-table-body-empty-tr > td p {\n margin-top: 10px;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #bdbdbd;\n}\n.maru-table-wrapper .maru-table-body-empty-tr:hover {\n background-color: inherit !important;\n}\n.maru-table-wrapper .maru-table-body-expandable-button {\n width: 24px;\n height: 24px;\n padding: 0.2rem;\n}\n.maru-table-wrapper .maru-table-body-expanding-row {\n border: unset !important;\n}\n.maru-table-wrapper .maru-table-body-expanding-row.empty-last-expanding-row {\n border-bottom: 1px solid #bdbdbd !important;\n height: 12px !important;\n}";
|
|
23219
23287
|
styleInject(css_248z$1);
|
|
23220
23288
|
|
|
23221
23289
|
// eslint-disable-next-line import/prefer-default-export
|
|
@@ -23227,17 +23295,13 @@ function Table(_a) {
|
|
|
23227
23295
|
onSort = _a.onSort,
|
|
23228
23296
|
checkedIds = _a.checkedIds,
|
|
23229
23297
|
onCheck = _a.onCheck,
|
|
23298
|
+
filter = _a.filter,
|
|
23230
23299
|
kebabMenu = _a.kebabMenu,
|
|
23231
|
-
|
|
23232
|
-
// expandingIdKey,
|
|
23233
|
-
// expandingRowIdKey,
|
|
23234
|
-
// expandingFormat,
|
|
23235
|
-
// onTableMouseEnter,
|
|
23236
|
-
// onTableMouseLeave,
|
|
23300
|
+
binButton = _a.binButton,
|
|
23237
23301
|
onRowClick = _a.onRowClick,
|
|
23238
23302
|
selectedRow = _a.selectedRow,
|
|
23239
|
-
|
|
23240
|
-
|
|
23303
|
+
// onRowMouseOver,
|
|
23304
|
+
// onRowMouseLeave,
|
|
23241
23305
|
className = _a.className,
|
|
23242
23306
|
id = _a.id,
|
|
23243
23307
|
tableMaxHeight = _a.tableMaxHeight,
|
|
@@ -23249,6 +23313,14 @@ function Table(_a) {
|
|
|
23249
23313
|
var _b = useState(false),
|
|
23250
23314
|
allChecked = _b[0],
|
|
23251
23315
|
setAllCheck = _b[1];
|
|
23316
|
+
/**
|
|
23317
|
+
* 최우측 컬럼(=액션 컬럼)에 자리를 차지 하는지 여부
|
|
23318
|
+
* 헤더에는 filter 가 올 수 있고,
|
|
23319
|
+
* 바디에는 kebabMenu, binButton, expandable 중 하나가 올 수 있다.
|
|
23320
|
+
*
|
|
23321
|
+
* TODO: expandable
|
|
23322
|
+
*/
|
|
23323
|
+
var hasActionCol = filter != null || kebabMenu != null || binButton != null;
|
|
23252
23324
|
/**
|
|
23253
23325
|
* setting table size
|
|
23254
23326
|
*/
|
|
@@ -23291,12 +23363,6 @@ function Table(_a) {
|
|
|
23291
23363
|
}
|
|
23292
23364
|
}
|
|
23293
23365
|
}, [data, checkedIds]);
|
|
23294
|
-
var handleTableMouseEnter = function handleTableMouseEnter() {
|
|
23295
|
-
// onTableMouseEnter?.();
|
|
23296
|
-
};
|
|
23297
|
-
var handleTableMouseLeave = function handleTableMouseLeave() {
|
|
23298
|
-
// onTableMouseLeave?.();
|
|
23299
|
-
};
|
|
23300
23366
|
var handleSortClick = function handleSortClick(columnName, sortable) {
|
|
23301
23367
|
if (sortable === void 0) {
|
|
23302
23368
|
sortable = false;
|
|
@@ -23344,9 +23410,7 @@ function Table(_a) {
|
|
|
23344
23410
|
return jsxs("div", __assign({
|
|
23345
23411
|
ref: tableWrapperRef,
|
|
23346
23412
|
id: id,
|
|
23347
|
-
className: classNames('maru-table-wrapper', className)
|
|
23348
|
-
onMouseEnter: handleTableMouseEnter,
|
|
23349
|
-
onMouseLeave: handleTableMouseLeave
|
|
23413
|
+
className: classNames('maru-table-wrapper', className)
|
|
23350
23414
|
}, {
|
|
23351
23415
|
children: [jsxs("table", __assign({
|
|
23352
23416
|
ref: tableHeaderWrapperRef,
|
|
@@ -23355,8 +23419,7 @@ function Table(_a) {
|
|
|
23355
23419
|
children: [jsx(Colgroup, {
|
|
23356
23420
|
hasCheckbox: checkedIds != null,
|
|
23357
23421
|
formats: formats,
|
|
23358
|
-
|
|
23359
|
-
kebabMenuWidth: kebabMenu === null || kebabMenu === void 0 ? void 0 : kebabMenu.width
|
|
23422
|
+
hasActionCol: hasActionCol
|
|
23360
23423
|
}), jsx(THead, {
|
|
23361
23424
|
formats: formats,
|
|
23362
23425
|
currentSort: sort,
|
|
@@ -23364,7 +23427,8 @@ function Table(_a) {
|
|
|
23364
23427
|
hasCheckbox: checkedIds != null,
|
|
23365
23428
|
allCheckbox: allChecked,
|
|
23366
23429
|
onAllCheck: handleAllCheckboxChange,
|
|
23367
|
-
|
|
23430
|
+
hasActionCol: hasActionCol,
|
|
23431
|
+
filter: filter
|
|
23368
23432
|
})]
|
|
23369
23433
|
})), jsx("div", __assign({
|
|
23370
23434
|
ref: tableBodyWrapperRef,
|
|
@@ -23376,23 +23440,19 @@ function Table(_a) {
|
|
|
23376
23440
|
children: [jsx(Colgroup, {
|
|
23377
23441
|
hasCheckbox: checkedIds != null,
|
|
23378
23442
|
formats: formats,
|
|
23379
|
-
|
|
23380
|
-
kebabMenuWidth: kebabMenu === null || kebabMenu === void 0 ? void 0 : kebabMenu.width
|
|
23443
|
+
hasActionCol: hasActionCol
|
|
23381
23444
|
}), jsx(TBody, {
|
|
23382
23445
|
rowIdKey: rowIdKey,
|
|
23383
23446
|
formats: formats,
|
|
23384
23447
|
data: data,
|
|
23385
23448
|
checkedIds: checkedIds,
|
|
23386
23449
|
onCheck: onCheck,
|
|
23387
|
-
|
|
23450
|
+
hasActionCol: hasActionCol,
|
|
23388
23451
|
kebabContent: kebabMenu === null || kebabMenu === void 0 ? void 0 : kebabMenu.content,
|
|
23389
|
-
|
|
23390
|
-
// expandingIdKey={expandingIdKey}
|
|
23391
|
-
// expandingRowIdKey={expandingRowIdKey}
|
|
23392
|
-
// expandingFormat={expandingFormat}
|
|
23452
|
+
binButton: binButton,
|
|
23393
23453
|
onRowClick: onRowClick,
|
|
23394
|
-
|
|
23395
|
-
|
|
23454
|
+
// onRowMouseOver={onRowMouseOver}
|
|
23455
|
+
// onRowMouseLeave={onRowMouseLeave}
|
|
23396
23456
|
selectedRow: selectedRow,
|
|
23397
23457
|
noData: noData,
|
|
23398
23458
|
loading: loading
|
|
@@ -23449,7 +23509,7 @@ function Details(_a) {
|
|
|
23449
23509
|
});
|
|
23450
23510
|
}
|
|
23451
23511
|
|
|
23452
|
-
var css_248z = ".maru-toast-style {\n padding: 10px 10px 10px 12px;\n border-radius: 6px;\n background-color: #fff;\n box-shadow: 0 0 6px 0 #bdbdbd;\n}\n.maru-toast-style div:first-child {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n}\n.maru-toast-style .maru-toast-style-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n margin-right: 8px;\n width: 24px;\n height: 24px;\n}\n.maru-toast-style .maru-toast-style-content {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #5c5c5c;\n margin-right: 16px;\n}\n.maru-toast-style details {\n background-color: #fafafa;\n padding: 10px 10px 10px 14px;\n margin-top: 8px;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #5c5c5c;\n}\n.maru-toast-style details summary {\n display: flex;\n justify-content: flex-start;\n align-items: flex-start;\n flex-direction: row;\n white-space: pre-wrap;\n}\n.maru-toast-style details summary > div:first-child {\n position: relative;\n}\n.maru-toast-style details summary .maru-toast-details-summary {\n cursor: pointer;\n}\n.maru-toast-style details summary .maru-toast-details-summary > p {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 600;\n}\n.maru-toast-style details summary .maru-toast-details-summary-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n position: absolute;\n right: -25px;\n bottom: 3px;\n}\n\n.maru-toast {\n margin-top: 24px;\n position: relative;\n opacity: 0;\n transform: translateY(100%);\n transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.6s ease-out;\n}\n.maru-toast.entered {\n transform: translateY(0);\n opacity: 1;\n}\n.maru-toast.fade-out {\n opacity: 0;\n transform: translateX(100%);\n}\n\n.maru-toaster {\n position: fixed;\n z-index: 6007;\n right: 24px;\n bottom: 24px;\n transition: transform 0.5s ease-out;\n display: flex;\n flex-direction: column-reverse;\n align-items: flex-end;\n}";
|
|
23512
|
+
var css_248z = ".maru-toast-style {\n padding: 10px 10px 10px 12px;\n border-radius: 6px;\n background-color: #fff;\n box-shadow: 0 0 6px 0 #bdbdbd;\n}\n.maru-toast-style div:first-child {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n}\n.maru-toast-style .maru-toast-style-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n margin-right: 8px;\n width: 24px;\n height: 24px;\n}\n.maru-toast-style .maru-toast-style-content {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #5c5c5c;\n margin-right: 16px;\n}\n.maru-toast-style .maru-toast-style-description {\n white-space: pre-wrap;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #5c5c5c;\n}\n.maru-toast-style details {\n background-color: #fafafa;\n padding: 10px 10px 10px 14px;\n margin-top: 8px;\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 500;\n color: #5c5c5c;\n}\n.maru-toast-style details summary {\n display: flex;\n justify-content: flex-start;\n align-items: flex-start;\n flex-direction: row;\n white-space: pre-wrap;\n}\n.maru-toast-style details summary > div:first-child {\n position: relative;\n}\n.maru-toast-style details summary .maru-toast-details-summary {\n cursor: pointer;\n}\n.maru-toast-style details summary .maru-toast-details-summary > p {\n font-family: Pretendard;\n font-style: normal;\n line-height: 150%;\n font-size: 14px;\n letter-spacing: -0.56px;\n font-weight: 600;\n}\n.maru-toast-style details summary .maru-toast-details-summary-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n position: absolute;\n right: -25px;\n bottom: 3px;\n}\n\n.maru-toast {\n margin-top: 24px;\n position: relative;\n opacity: 0;\n transform: translateY(100%);\n transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.6s ease-out;\n}\n.maru-toast.entered {\n transform: translateY(0);\n opacity: 1;\n}\n.maru-toast.fade-out {\n opacity: 0;\n transform: translateX(100%);\n}\n\n.maru-toaster {\n position: fixed;\n z-index: 6007;\n right: 24px;\n bottom: 24px;\n transition: transform 0.5s ease-out;\n display: flex;\n flex-direction: column-reverse;\n align-items: flex-end;\n}";
|
|
23453
23513
|
styleInject(css_248z);
|
|
23454
23514
|
|
|
23455
23515
|
var iconSettings = {
|
|
@@ -23470,6 +23530,7 @@ function ToastStyle(_a) {
|
|
|
23470
23530
|
var _b = _a.variant,
|
|
23471
23531
|
variant = _b === void 0 ? 'success' : _b,
|
|
23472
23532
|
content = _a.content,
|
|
23533
|
+
description = _a.description,
|
|
23473
23534
|
details = _a.details,
|
|
23474
23535
|
onClose = _a.onClose;
|
|
23475
23536
|
var _c = useState(false),
|
|
@@ -23511,7 +23572,11 @@ function ToastStyle(_a) {
|
|
|
23511
23572
|
color: "secondary",
|
|
23512
23573
|
onClick: handleClose
|
|
23513
23574
|
})]
|
|
23514
|
-
}), jsx(
|
|
23575
|
+
}), jsx("div", __assign({
|
|
23576
|
+
className: "maru-toast-style-description"
|
|
23577
|
+
}, {
|
|
23578
|
+
children: description
|
|
23579
|
+
})), jsx(Details, {
|
|
23515
23580
|
details: details,
|
|
23516
23581
|
isDetailsOpen: isDetailsOpen,
|
|
23517
23582
|
handleToggleDetails: handleDetailsToggle
|
|
@@ -23563,6 +23628,7 @@ function Toast(_a) {
|
|
|
23563
23628
|
variant: toast.variant,
|
|
23564
23629
|
content: toast.content,
|
|
23565
23630
|
onClose: handleClose,
|
|
23631
|
+
description: toast.description,
|
|
23566
23632
|
details: toast.details
|
|
23567
23633
|
})
|
|
23568
23634
|
}));
|
package/package.json
CHANGED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IExpandingColumnFormats } from '../types';
|
|
2
|
-
interface Props {
|
|
3
|
-
rowId: string;
|
|
4
|
-
expandingData: any;
|
|
5
|
-
expandingRowIdKey?: string;
|
|
6
|
-
expandingFormat?: IExpandingColumnFormats[];
|
|
7
|
-
}
|
|
8
|
-
declare function ExpandingRow({ rowId, expandingData, expandingRowIdKey, expandingFormat, }: Props): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
-
export default ExpandingRow;
|