maru_design2 2.4.1 → 2.4.3
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/.claude/settings.local.json +7 -0
- package/.idea/MaruDesign2.iml +13 -0
- package/.idea/codeStyles/Project.xml +77 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/inspectionProfiles/Project_Default.xml +94 -0
- package/.idea/jsLinters/eslint.xml +6 -0
- package/.idea/material_theme_project_new.xml +12 -0
- package/.idea/modules.xml +8 -0
- package/.idea/prettier.xml +8 -0
- package/.idea/vcs.xml +6 -0
- package/.idea/watcherTasks.xml +4 -0
- package/CHANGELOG.md +9 -0
- package/dist/components/atoms/button/Button.d.ts +33 -30
- package/dist/components/atoms/button/index.d.ts +1 -1
- package/dist/components/atoms/checkbox/Checkbox.d.ts +21 -21
- package/dist/components/atoms/checkbox/index.d.ts +1 -1
- package/dist/components/atoms/chip/Chip.d.ts +29 -25
- package/dist/components/atoms/chip/index.d.ts +1 -1
- package/dist/components/atoms/code/Code.d.ts +7 -0
- package/dist/components/atoms/code/index.d.ts +1 -0
- package/dist/components/atoms/icon/Icon.d.ts +16 -17
- package/dist/components/atoms/icon/iconmap.d.ts +421 -172
- package/dist/components/atoms/icon/index.d.ts +2 -2
- package/dist/components/atoms/input/Input.d.ts +43 -31
- package/dist/components/atoms/input/index.d.ts +1 -1
- package/dist/components/atoms/popover/Popover.d.ts +19 -19
- package/dist/components/atoms/popover/index.d.ts +1 -1
- package/dist/components/atoms/radio/Radio.d.ts +14 -12
- package/dist/components/atoms/radio/index.d.ts +1 -1
- package/dist/components/atoms/skeleton/Contents.d.ts +1 -0
- package/dist/components/atoms/skeleton/Skeleton.d.ts +6 -0
- package/dist/components/atoms/skeleton/index.d.ts +1 -0
- package/dist/components/atoms/slider/Slider.d.ts +31 -0
- package/dist/components/atoms/slider/index.d.ts +1 -0
- package/dist/components/atoms/textarea/Textarea.d.ts +38 -0
- package/dist/components/atoms/textarea/index.d.ts +1 -0
- package/dist/components/atoms/toggle/Toggle.d.ts +20 -20
- package/dist/components/atoms/toggle/index.d.ts +1 -1
- package/dist/components/atoms/tooltip/Tooltip.d.ts +29 -22
- package/dist/components/atoms/tooltip/index.d.ts +1 -1
- package/dist/components/molecules/calendar/Calendar.d.ts +27 -0
- package/dist/components/molecules/calendar/DatePickerHeader.d.ts +3 -0
- package/dist/components/molecules/calendar/DatePickerWrapper.d.ts +9 -0
- package/dist/components/molecules/calendar/index.d.ts +1 -0
- package/dist/components/molecules/dropdown/Dropdown.d.ts +90 -77
- package/dist/components/molecules/dropdown/index.d.ts +1 -1
- package/dist/components/molecules/dropdown/menu/MenuItem.d.ts +16 -0
- package/dist/components/molecules/dropdown/menu/index.d.ts +31 -0
- package/dist/components/molecules/dropdown/{toggles → toggleButton}/Arrow.d.ts +9 -8
- package/dist/components/molecules/dropdown/toggleButton/Clear.d.ts +6 -0
- package/dist/components/molecules/dropdown/toggleButton/index.d.ts +19 -0
- package/dist/components/molecules/modal/Modal.d.ts +48 -50
- package/dist/components/molecules/modal/index.d.ts +1 -1
- package/dist/components/molecules/multiSelectDropdown/MultiSelectDropdown.d.ts +76 -0
- package/dist/components/molecules/multiSelectDropdown/index.d.ts +1 -0
- package/dist/components/molecules/multiSelectDropdown/menu/MenuItem.d.ts +12 -0
- package/dist/components/molecules/multiSelectDropdown/menu/index.d.ts +21 -0
- package/dist/components/molecules/multiSelectDropdown/toggleButton/Arrow.d.ts +9 -0
- package/dist/components/molecules/multiSelectDropdown/toggleButton/Clear.d.ts +6 -0
- package/dist/components/molecules/multiSelectDropdown/toggleButton/index.d.ts +17 -0
- package/dist/components/molecules/pagination/Pagination.d.ts +22 -26
- package/dist/components/molecules/pagination/index.d.ts +1 -1
- package/dist/components/molecules/searchInput/SearchInput.d.ts +34 -0
- package/dist/components/molecules/searchInput/filter/FilterPopover.d.ts +16 -0
- package/dist/components/molecules/searchInput/filter/index.d.ts +17 -0
- package/dist/components/molecules/searchInput/index.d.ts +1 -0
- package/dist/components/molecules/table/Colgroup.d.ts +9 -9
- package/dist/components/molecules/table/Table.d.ts +3 -3
- package/dist/components/molecules/table/body/BinButtonTd.d.ts +7 -0
- package/dist/components/molecules/table/body/ChartButtonTd.d.ts +8 -0
- package/dist/components/molecules/table/body/CheckboxTd.d.ts +6 -7
- package/dist/components/molecules/table/body/EmptyTr.d.ts +8 -0
- package/dist/components/molecules/table/body/KebabMenuTd.d.ts +7 -7
- package/dist/components/molecules/table/body/RadioTd.d.ts +6 -0
- package/dist/components/molecules/table/body/Tr.d.ts +7 -0
- package/dist/components/molecules/table/body/index.d.ts +7 -0
- 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 +15 -0
- package/dist/components/molecules/table/header/index.d.ts +17 -0
- package/dist/components/molecules/table/index.d.ts +1 -1
- package/dist/components/molecules/table/types.d.ts +125 -92
- package/dist/components/molecules/toast/Details.d.ts +6 -0
- package/dist/components/molecules/toast/Toast.d.ts +31 -0
- package/dist/components/molecules/toast/ToastContext.d.ts +15 -0
- package/dist/components/molecules/toast/ToastStyle.d.ts +18 -0
- package/dist/components/molecules/toast/index.d.ts +1 -0
- package/dist/components/molecules/toast/types.d.ts +4 -0
- package/dist/components/styleProvider/StyleProvider.d.ts +10 -10
- package/dist/components/styleProvider/index.d.ts +1 -1
- package/dist/enums/color.d.ts +14 -12
- package/dist/enums/direction.d.ts +2 -2
- package/dist/enums/gap.d.ts +4 -2
- package/dist/enums/size.d.ts +8 -10
- package/dist/enums/type.d.ts +4 -4
- package/dist/enums/variant.d.ts +8 -6
- package/dist/hooks/useButtonState.d.ts +16 -16
- package/dist/hooks/useColor.d.ts +4 -4
- package/dist/hooks/useCombineRef.d.ts +11 -11
- package/dist/hooks/useCreatePortal.d.ts +7 -7
- package/dist/hooks/useId.d.ts +7 -7
- package/dist/index.d.ts +22 -14
- package/dist/index.js +89490 -4280
- package/dist/utils/copy.d.ts +6 -0
- package/dist/utils/format.d.ts +2 -2
- package/dist/utils/highlight.d.ts +1 -3
- package/package.json +74 -70
- package/dist/components/molecules/dropdown/Menu.d.ts +0 -19
- package/dist/components/molecules/dropdown/toggles/Button.d.ts +0 -24
- package/dist/components/molecules/dropdown/toggles/Clear.d.ts +0 -8
- package/dist/components/molecules/dropdown/toggles/Input.d.ts +0 -24
- package/dist/components/molecules/table/body/ExpandingRow.d.ts +0 -9
- package/dist/components/molecules/table/body/TBody.d.ts +0 -28
- package/dist/components/molecules/table/body/TBodyEmptyContent.d.ts +0 -14
- package/dist/components/molecules/table/header/THead.d.ts +0 -12
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TColor } from '../../../../enums/color';
|
|
3
|
+
interface Props<T extends Record<string, any>> {
|
|
4
|
+
displayKey: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
color: TColor;
|
|
8
|
+
stopPropagation?: boolean;
|
|
9
|
+
width?: number;
|
|
10
|
+
customButton?: React.ReactNode;
|
|
11
|
+
open: boolean;
|
|
12
|
+
selected: T | undefined;
|
|
13
|
+
errored?: boolean;
|
|
14
|
+
hasClearBtn: boolean;
|
|
15
|
+
onClear: () => void;
|
|
16
|
+
onClick: () => void;
|
|
17
|
+
}
|
|
18
|
+
declare function DropdownToggleButton<T extends Record<string, any>>({ displayKey, placeholder, disabled, color, stopPropagation, width, customButton, open, selected, errored, hasClearBtn, onClear, onClick, }: Props<T>): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export default DropdownToggleButton;
|
|
@@ -1,50 +1,48 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { TColor } from '../../../enums/color';
|
|
3
|
-
import { TModalSize } from '../../../enums/size';
|
|
4
|
-
import './modal.scss';
|
|
5
|
-
export interface ModalProps {
|
|
6
|
-
children: React.ReactNode;
|
|
7
|
-
onClose: () => void;
|
|
8
|
-
open: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* 배경 클릭 시 컴포넌트 닫히는지 여부. (@v1 backdropOff)
|
|
11
|
-
*/
|
|
12
|
-
backdrop?: boolean;
|
|
13
|
-
/**
|
|
14
|
-
* 모달 취소버튼
|
|
15
|
-
*/
|
|
16
|
-
cancelButton?: {
|
|
17
|
-
content: string;
|
|
18
|
-
disabled?: boolean;
|
|
19
|
-
};
|
|
20
|
-
className?: string;
|
|
21
|
-
/**
|
|
22
|
-
* 엔터키 비활성화 여부. (@v1 disableEnterKeyDown)
|
|
23
|
-
*/
|
|
24
|
-
disabledEnter?: boolean;
|
|
25
|
-
/**
|
|
26
|
-
* 모달 닫기 버튼 숨김 여부. (@v1 hasCloseButton)
|
|
27
|
-
*/
|
|
28
|
-
hiddenCloseButton?: boolean;
|
|
29
|
-
/**
|
|
30
|
-
* 모달 확인버튼
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
export declare function Modal({ children, onClose, open, backdrop, cancelButton, className, disabledEnter, hiddenCloseButton, okButton, size, title, }: ModalProps): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TColor } from '../../../enums/color';
|
|
3
|
+
import { TModalSize } from '../../../enums/size';
|
|
4
|
+
import './modal.scss';
|
|
5
|
+
export interface ModalProps {
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
open: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* 배경 클릭 시 컴포넌트 닫히는지 여부. (@v1 backdropOff)
|
|
11
|
+
*/
|
|
12
|
+
backdrop?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* 모달 취소버튼 설정
|
|
15
|
+
*/
|
|
16
|
+
cancelButton?: {
|
|
17
|
+
content: string;
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
};
|
|
20
|
+
className?: string;
|
|
21
|
+
/**
|
|
22
|
+
* 엔터키 비활성화 여부. (@v1 disableEnterKeyDown)
|
|
23
|
+
*/
|
|
24
|
+
disabledEnter?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* 모달 닫기 버튼 숨김 여부. (@v1 hasCloseButton)
|
|
27
|
+
*/
|
|
28
|
+
hiddenCloseButton?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* 모달 확인버튼 설정 (@v1 confirmButton)
|
|
31
|
+
*/
|
|
32
|
+
okButton?: {
|
|
33
|
+
content: string;
|
|
34
|
+
color?: TColor;
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
onClick?: () => void;
|
|
37
|
+
};
|
|
38
|
+
size?: TModalSize;
|
|
39
|
+
/**
|
|
40
|
+
* 모달 제목
|
|
41
|
+
*/
|
|
42
|
+
title?: string;
|
|
43
|
+
/**
|
|
44
|
+
* 모달 제목 옆에 들어갈 내용
|
|
45
|
+
*/
|
|
46
|
+
subTitle?: React.ReactNode;
|
|
47
|
+
}
|
|
48
|
+
export declare function Modal({ children, onClose, open, backdrop, cancelButton, className, disabledEnter, hiddenCloseButton, okButton, size, title, subTitle, }: ModalProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './Modal';
|
|
1
|
+
export * from './Modal';
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { TColor } from '../../../enums/color';
|
|
2
|
+
import { TDropdownType } from '../../../enums/type';
|
|
3
|
+
import './multi-select-dropdown.scss';
|
|
4
|
+
export interface MultiSelectDropdownProps<T extends Record<string, any>> {
|
|
5
|
+
data: T[];
|
|
6
|
+
/**
|
|
7
|
+
* 선택된 아이디들
|
|
8
|
+
*/
|
|
9
|
+
selectedIds: string[];
|
|
10
|
+
onSelect: (ids: string[]) => void;
|
|
11
|
+
/**
|
|
12
|
+
* 아이디로 쓸 키
|
|
13
|
+
*/
|
|
14
|
+
idKey: string;
|
|
15
|
+
/**
|
|
16
|
+
* 노출로 쓸 키
|
|
17
|
+
*/
|
|
18
|
+
displayKey: string;
|
|
19
|
+
/**
|
|
20
|
+
* 드롭다운 버튼에 노출할 컨텐츠
|
|
21
|
+
*/
|
|
22
|
+
content: string;
|
|
23
|
+
className?: string;
|
|
24
|
+
/**
|
|
25
|
+
* 드롭다운 버튼의 placeholder
|
|
26
|
+
*/
|
|
27
|
+
placeholder?: string;
|
|
28
|
+
/**
|
|
29
|
+
* 메뉴 내 검색창의 placeholder
|
|
30
|
+
*/
|
|
31
|
+
searchPlaceholder?: string;
|
|
32
|
+
/**
|
|
33
|
+
* 전체 체크박스 옆에 노출할 라벨
|
|
34
|
+
*/
|
|
35
|
+
allCheckLabel?: string;
|
|
36
|
+
disabled?: boolean;
|
|
37
|
+
color?: TColor;
|
|
38
|
+
/**
|
|
39
|
+
* true로 하면 드롭다운으로 이벤트가 가지 않음
|
|
40
|
+
*/
|
|
41
|
+
stopPropagation?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* 데이터 타입
|
|
44
|
+
*/
|
|
45
|
+
type?: TDropdownType;
|
|
46
|
+
/**
|
|
47
|
+
* 에러났을때 메시지
|
|
48
|
+
*/
|
|
49
|
+
errorMessage?: string;
|
|
50
|
+
label?: string;
|
|
51
|
+
/**
|
|
52
|
+
* 초기화 함수
|
|
53
|
+
*/
|
|
54
|
+
onClear?: () => void;
|
|
55
|
+
/**
|
|
56
|
+
* 데이터가 없을때의 문구
|
|
57
|
+
*/
|
|
58
|
+
noDataMessage?: string;
|
|
59
|
+
/**
|
|
60
|
+
* 검색 결과가 없을때의 문구
|
|
61
|
+
*/
|
|
62
|
+
noResultMessage?: string;
|
|
63
|
+
/**
|
|
64
|
+
* 토글, 메뉴 가로 크기(px)
|
|
65
|
+
*/
|
|
66
|
+
width?: number;
|
|
67
|
+
/**
|
|
68
|
+
* 메뉴 세로 크기(px)
|
|
69
|
+
*/
|
|
70
|
+
height?: number;
|
|
71
|
+
/**
|
|
72
|
+
* 컴포넌트 위치의 기준이 될 엘리먼트 사용자 정의. (@v1 portalAnchor)
|
|
73
|
+
*/
|
|
74
|
+
anchorEl?: HTMLElement | null;
|
|
75
|
+
}
|
|
76
|
+
export declare function MultiSelectDropdown<T extends Record<string, any>>({ data, selectedIds, onSelect, idKey, displayKey, content, className, placeholder, searchPlaceholder, disabled, color, stopPropagation, type, errorMessage, label, allCheckLabel, onClear, noDataMessage, noResultMessage, width, height, anchorEl, }: MultiSelectDropdownProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './MultiSelectDropdown';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TColor } from '../../../../enums/color';
|
|
2
|
+
interface Props<T extends Record<string, any>> {
|
|
3
|
+
item: T;
|
|
4
|
+
selectedIds: string[];
|
|
5
|
+
onSelect: (ids: string[]) => void;
|
|
6
|
+
idKey: string;
|
|
7
|
+
displayKey: string;
|
|
8
|
+
color?: TColor;
|
|
9
|
+
width?: number;
|
|
10
|
+
}
|
|
11
|
+
declare function MenuItem<T extends Record<string, any>>({ item, selectedIds, onSelect, idKey, displayKey, color, width, }: Props<T>): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export default MenuItem;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { TColor } from '../../../../enums/color';
|
|
2
|
+
interface Props<T extends Record<string, any>> {
|
|
3
|
+
data: T[];
|
|
4
|
+
selectedIds: string[];
|
|
5
|
+
onSelect: (ids: string[]) => void;
|
|
6
|
+
idKey: string;
|
|
7
|
+
displayKey: string;
|
|
8
|
+
searchPlaceholder?: string;
|
|
9
|
+
allCheckLabel?: string;
|
|
10
|
+
color?: TColor;
|
|
11
|
+
noDataMessage?: string;
|
|
12
|
+
noResultMessage?: string;
|
|
13
|
+
width?: number;
|
|
14
|
+
height?: number;
|
|
15
|
+
isSearch: boolean;
|
|
16
|
+
parent: HTMLElement;
|
|
17
|
+
open: boolean;
|
|
18
|
+
onClose: () => void;
|
|
19
|
+
}
|
|
20
|
+
declare function DropdownMenu<T extends Record<string, any>>({ data, selectedIds, onSelect, idKey, displayKey, searchPlaceholder, allCheckLabel, color, noDataMessage, noResultMessage, width, height, isSearch, parent, open, onClose, }: Props<T>): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
export default DropdownMenu;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TColor } from '../../../../enums/color';
|
|
2
|
+
interface Props {
|
|
3
|
+
open: boolean;
|
|
4
|
+
focus: boolean;
|
|
5
|
+
color: TColor;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
declare function Arrow({ open, focus, color, disabled }: Props): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default Arrow;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TColor } from '../../../../enums/color';
|
|
2
|
+
interface Props {
|
|
3
|
+
content: string;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
color: TColor;
|
|
7
|
+
stopPropagation?: boolean;
|
|
8
|
+
width?: number;
|
|
9
|
+
open: boolean;
|
|
10
|
+
selected: boolean;
|
|
11
|
+
errored?: boolean;
|
|
12
|
+
hasClearBtn: boolean;
|
|
13
|
+
onClear: () => void;
|
|
14
|
+
onClick: () => void;
|
|
15
|
+
}
|
|
16
|
+
declare function DropdownToggleButton({ content, placeholder, disabled, color, stopPropagation, width, open, selected, errored, hasClearBtn, onClear, onClick, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export default DropdownToggleButton;
|
|
@@ -1,26 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
*/
|
|
24
|
-
type?: TButtonType;
|
|
25
|
-
}
|
|
26
|
-
export declare function Pagination({ page, onPageChange, totalPage, className, buttonVisibility, type, }: PaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
import './pagination.scss';
|
|
2
|
+
export interface PaginationProps {
|
|
3
|
+
/**
|
|
4
|
+
* 현재 페이지. (@v1 page.curPage)
|
|
5
|
+
*/
|
|
6
|
+
page: number;
|
|
7
|
+
/**
|
|
8
|
+
* 현재 페이지 설정 함수. (@v1 page.setPage)
|
|
9
|
+
*/
|
|
10
|
+
onPageChange: (page: number) => void;
|
|
11
|
+
/**
|
|
12
|
+
* 총 페이지
|
|
13
|
+
*/
|
|
14
|
+
totalPage: number;
|
|
15
|
+
className?: string;
|
|
16
|
+
/**
|
|
17
|
+
* prev, next 버튼 공간 차지 여부
|
|
18
|
+
*/
|
|
19
|
+
buttonVisibility?: 'visible' | 'hidden';
|
|
20
|
+
label: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function Pagination({ page, onPageChange, totalPage, className, buttonVisibility, label, }: PaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './Pagination';
|
|
1
|
+
export * from './Pagination';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './search-input.scss';
|
|
3
|
+
export interface SearchInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'className'> {
|
|
4
|
+
/**
|
|
5
|
+
* 초기화 함수 (@v1 hasClearBtn, onClear)
|
|
6
|
+
*/
|
|
7
|
+
onClear?: () => void;
|
|
8
|
+
/**
|
|
9
|
+
* 초기화 버튼 숨기기
|
|
10
|
+
*/
|
|
11
|
+
hiddenClearButton?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* input을 감싸고 있는 div의 ref, input은 일반 ref 사용
|
|
14
|
+
*/
|
|
15
|
+
wrapperRef?: React.RefObject<HTMLDivElement>;
|
|
16
|
+
className?: string;
|
|
17
|
+
/**
|
|
18
|
+
* 검색 필터
|
|
19
|
+
*/
|
|
20
|
+
filter?: {
|
|
21
|
+
on: boolean;
|
|
22
|
+
formats: {
|
|
23
|
+
columnIdKey: string;
|
|
24
|
+
columnName?: string;
|
|
25
|
+
filter?: React.ReactNode;
|
|
26
|
+
}[];
|
|
27
|
+
hoverContent?: string;
|
|
28
|
+
onReset: () => void;
|
|
29
|
+
resetButtonContent?: string;
|
|
30
|
+
onSearch: () => void;
|
|
31
|
+
searchButtonContent?: string;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export declare function SearchInput({ hiddenClearButton, className, filter, ...props }: SearchInputProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
parent: HTMLElement;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
formats: {
|
|
6
|
+
columnIdKey: string;
|
|
7
|
+
columnName?: string;
|
|
8
|
+
filter?: React.ReactNode;
|
|
9
|
+
}[];
|
|
10
|
+
resetButtonContent?: string;
|
|
11
|
+
onReset: () => void;
|
|
12
|
+
searchButtonContent?: string;
|
|
13
|
+
onSearch: () => void;
|
|
14
|
+
}
|
|
15
|
+
declare function FilterPopover({ parent, onClose, formats, resetButtonContent, onReset, searchButtonContent, onSearch, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export default FilterPopover;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
on: boolean;
|
|
4
|
+
formats: {
|
|
5
|
+
columnIdKey: string;
|
|
6
|
+
columnName?: string;
|
|
7
|
+
filter?: React.ReactNode;
|
|
8
|
+
}[];
|
|
9
|
+
hoverContent?: string;
|
|
10
|
+
resetButtonContent?: string;
|
|
11
|
+
onReset: () => void;
|
|
12
|
+
searchButtonContent?: string;
|
|
13
|
+
onSearch: () => void;
|
|
14
|
+
inputWrapperRef: React.RefObject<HTMLDivElement>;
|
|
15
|
+
}
|
|
16
|
+
declare function Filter({ on, formats, hoverContent, resetButtonContent, onReset, searchButtonContent, onSearch, inputWrapperRef, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export default Filter;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SearchInput';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { IColumnFormats } from './types';
|
|
2
|
-
interface Props {
|
|
3
|
-
hasCheckbox?: boolean;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
declare function Colgroup({ hasCheckbox,
|
|
9
|
-
export default Colgroup;
|
|
1
|
+
import { IColumnFormats } from './types';
|
|
2
|
+
interface Props {
|
|
3
|
+
hasCheckbox?: boolean;
|
|
4
|
+
hasRadio?: boolean;
|
|
5
|
+
formats: IColumnFormats[];
|
|
6
|
+
hasActionCol: boolean;
|
|
7
|
+
}
|
|
8
|
+
declare function Colgroup({ hasCheckbox, hasRadio, formats, hasActionCol }: Props): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default Colgroup;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { TableProps } from './types';
|
|
2
|
-
import './table.scss';
|
|
3
|
-
export declare function Table({ rowIdKey, data, formats, sort, onSort, checkedIds, onCheck, kebabMenu, onRowClick, selectedRow,
|
|
1
|
+
import { TableProps } from './types';
|
|
2
|
+
import './table.scss';
|
|
3
|
+
export declare function Table({ rowIdKey, data, formats, maxHeight, sort, onSort, checkedIds, onCheck, radioCheckedId, onRadioCheck, filter, kebabMenu, binButton, chartButton, onRowClick, selectedRow, highlightRows, className, id, noData, loading, }: TableProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
rowId: string;
|
|
3
|
+
hovered: boolean;
|
|
4
|
+
selected?: boolean;
|
|
5
|
+
onClick: (rowId: string) => void;
|
|
6
|
+
}
|
|
7
|
+
declare function ChartButtonTd({ rowId, hovered, selected, onClick }: Props): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default ChartButtonTd;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
interface Props {
|
|
2
|
-
|
|
3
|
-
checked: boolean;
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export default CheckboxTd;
|
|
1
|
+
interface Props {
|
|
2
|
+
checked: boolean;
|
|
3
|
+
onCheck: (checked: boolean) => void;
|
|
4
|
+
}
|
|
5
|
+
declare function CheckboxTd({ checked, onCheck }: Props): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export default CheckboxTd;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
noDataMessage?: string;
|
|
4
|
+
loadingContent?: React.ReactNode;
|
|
5
|
+
emptyBodyHeight: number;
|
|
6
|
+
}
|
|
7
|
+
declare function EmptyTr({ noDataMessage, loadingContent, emptyBodyHeight }: Props): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default EmptyTr;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
interface Props {
|
|
3
|
-
rowId: string;
|
|
4
|
-
kebabContent?: (rowId: string, onClose: () => void) => React.ReactNode;
|
|
5
|
-
}
|
|
6
|
-
declare function KebabMenuTd({ rowId, kebabContent }: Props): import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
-
export default KebabMenuTd;
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
rowId: string;
|
|
4
|
+
kebabContent?: (rowId: string, onClose: () => void) => React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
declare function KebabMenuTd({ rowId, kebabContent }: Props): import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export default KebabMenuTd;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TableProps } from '../types';
|
|
2
|
+
interface Props extends TableProps {
|
|
3
|
+
row: Record<string, any>;
|
|
4
|
+
hasActionCol: boolean;
|
|
5
|
+
}
|
|
6
|
+
declare function Tr({ row, rowIdKey, formats, checkedIds, onCheck, radioCheckedId, onRadioCheck, hasActionCol, kebabMenu, binButton, chartButton, onRowClick, selectedRow, highlightRows, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default Tr;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TableProps } from '../types';
|
|
2
|
+
interface Props extends TableProps {
|
|
3
|
+
hasActionCol: boolean;
|
|
4
|
+
emptyBodyHeight: number;
|
|
5
|
+
}
|
|
6
|
+
declare function TBody({ rowIdKey, formats, data, checkedIds, onCheck, radioCheckedId, onRadioCheck, hasActionCol, kebabMenu, binButton, chartButton, onRowClick, selectedRow, highlightRows, noData, loading, emptyBodyHeight, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default TBody;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IColumnFormats, ISort } from '../types';
|
|
2
|
+
interface Props {
|
|
3
|
+
format: IColumnFormats;
|
|
4
|
+
sort?: ISort;
|
|
5
|
+
onSortClick: (columnName: string) => () => void;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* 정렬 아닌거 마우스오버하면 쌍방 화살표
|
|
9
|
+
* 내림차순 정렬이면 아래 화살표
|
|
10
|
+
* 오름차순 정렬이면 위 화살표
|
|
11
|
+
* 색깔은 언제나 b500 #5c5c5c
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
declare function SortableColumn({ format, sort, onSortClick }: Props): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export default SortableColumn;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { IColumnFormats, IFilter, ISort } from '../types';
|
|
3
|
+
interface Props {
|
|
4
|
+
formats: IColumnFormats[];
|
|
5
|
+
sort?: ISort;
|
|
6
|
+
onSortClick: (columnName: string) => () => void;
|
|
7
|
+
hasCheckbox?: boolean;
|
|
8
|
+
allCheckbox: boolean;
|
|
9
|
+
onAllCheck: (checked: boolean) => void;
|
|
10
|
+
hasRadio?: boolean;
|
|
11
|
+
filter?: IFilter;
|
|
12
|
+
filterToggle: boolean;
|
|
13
|
+
setFilterToggle: React.Dispatch<React.SetStateAction<boolean>>;
|
|
14
|
+
hasActionCol: boolean;
|
|
15
|
+
}
|
|
16
|
+
declare function THead({ formats, sort, onSortClick, hasCheckbox, allCheckbox, onAllCheck, hasRadio, filter, filterToggle, setFilterToggle, hasActionCol, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export default THead;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './Table';
|
|
1
|
+
export * from './Table';
|