@croquiscom/pds 1.0.0 → 1.1.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 +22 -0
- package/dist/components/banner/NormalBanner.d.ts +10 -4
- package/dist/components/banner/NormalBanner.stories.d.ts +3 -1
- package/dist/components/bottom-sheet/BottomSheet.d.ts +14 -3
- package/dist/components/bottom-sheet/BottomSheet.stories.d.ts +1 -1
- package/dist/components/date-picker/Caption.d.ts +3 -2
- package/dist/components/date-picker/DatePicker.d.ts +10 -3
- package/dist/components/date-picker/DatePicker.stories.d.ts +2 -1
- package/dist/components/date-picker/DatePickerMask.d.ts +261 -0
- package/dist/components/date-picker/DateRangePicker.d.ts +2 -1
- package/dist/components/date-picker/DateRangePicker.stories.d.ts +2 -1
- package/dist/components/date-picker/DayPickerBase.d.ts +5 -1
- package/dist/components/date-picker/hooks/constants.d.ts +6 -0
- package/dist/components/date-picker/hooks/useDatePickerAttributes.d.ts +25 -0
- package/dist/components/date-picker/hooks/useScrollMask.d.ts +16 -0
- package/dist/components/date-picker/styles.d.ts +2 -0
- package/dist/components/table/Table.d.ts +3 -2
- package/dist/components/table/Table.stories.d.ts +1 -0
- package/dist/components/table/storybook-helper/sampleData.d.ts +1 -0
- package/dist/components/table/types.d.ts +5 -2
- package/dist/hooks/useResize.d.ts +4 -1
- package/dist/index.es.js +3 -3
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# @croquiscom/pds
|
|
2
2
|
|
|
3
|
+
## 1.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 5c3586e: DatePicker, DateRangePicker displayMode 지원 추가
|
|
8
|
+
|
|
9
|
+
## BreakPoint
|
|
10
|
+
|
|
11
|
+
- bottomSheet, popover 두가지 타입으로 달력이 오픈될 요소를 선택할 수 있도록 추가되었습니다.
|
|
12
|
+
|
|
13
|
+
- ea8ea32: NormalBanner size 추가
|
|
14
|
+
|
|
15
|
+
## BreakPoint
|
|
16
|
+
|
|
17
|
+
- Title 속성이 optional로 변경되었습니다.
|
|
18
|
+
|
|
19
|
+
## 1.0.1
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- 601813a: Table Cell 스타일 커스텀 기능 추가
|
|
24
|
+
|
|
3
25
|
## 1.0.0
|
|
4
26
|
|
|
5
27
|
### Major Changes
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { ReactNode } from 'react';
|
|
2
2
|
import { IconProps } from '../icons/generated';
|
|
3
3
|
export type NormalBannerKind = 'neutral' | 'info' | 'error' | 'success';
|
|
4
|
+
export type NormalBannerSize = 'small' | 'medium';
|
|
4
5
|
export interface NormalBannerProps {
|
|
5
6
|
className?: string;
|
|
6
7
|
/**
|
|
@@ -8,12 +9,17 @@ export interface NormalBannerProps {
|
|
|
8
9
|
*/
|
|
9
10
|
kind?: NormalBannerKind;
|
|
10
11
|
/**
|
|
11
|
-
*
|
|
12
|
+
* @default medium
|
|
13
|
+
*/
|
|
14
|
+
size?: NormalBannerSize;
|
|
15
|
+
/**
|
|
16
|
+
* title 좌측에 렌더링 될 아이콘 요소
|
|
17
|
+
* - title이 없을 경우 렌더되지 않습니다.
|
|
12
18
|
* - Icon 컴포넌트 color props가 있더라도 kind 따라 currentColor가 지정됩니다.
|
|
13
|
-
* - Icon 컴포넌트 size props가 있더라도 Icon 사이즈는 16
|
|
19
|
+
* - Icon 컴포넌트 size props가 있더라도 Icon 사이즈는 banner size 'medium'일경우 16, 'small'일경우 12로 고정됩니다.
|
|
14
20
|
*/
|
|
15
21
|
iconComponent?: React.ComponentType<IconProps>;
|
|
16
|
-
title
|
|
22
|
+
title?: string;
|
|
17
23
|
message?: ReactNode;
|
|
18
24
|
}
|
|
19
|
-
export declare const NormalBanner: ({ className, kind, iconComponent, title, message }: NormalBannerProps) => JSX.Element;
|
|
25
|
+
export declare const NormalBanner: ({ className, kind, size, iconComponent, title, message, }: NormalBannerProps) => JSX.Element;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentMeta } from '@storybook/react';
|
|
3
|
-
declare const _default: ComponentMeta<({ className, kind, iconComponent, title, message }: import("./NormalBanner").NormalBannerProps) => JSX.Element>;
|
|
3
|
+
declare const _default: ComponentMeta<({ className, kind, size, iconComponent, title, message, }: import("./NormalBanner").NormalBannerProps) => JSX.Element>;
|
|
4
4
|
export default _default;
|
|
5
5
|
export declare const Base: any;
|
|
6
|
+
export declare const NoTitle: any;
|
|
6
7
|
export declare const Kind: () => JSX.Element;
|
|
8
|
+
export declare const Size: () => JSX.Element;
|
|
7
9
|
export declare const CustomIcon: () => JSX.Element;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
|
|
2
|
+
import { SpaceProps } from '../../styles';
|
|
3
|
+
export type BottomSheetContentWithCloseAction = (action: {
|
|
3
4
|
close(): void;
|
|
4
5
|
}) => ReactNode;
|
|
6
|
+
export interface BottomSheetContentProps extends SpaceProps {
|
|
7
|
+
maxHeight?: number;
|
|
8
|
+
}
|
|
5
9
|
export interface BottomSheetProps {
|
|
6
10
|
className?: string;
|
|
7
11
|
opened?: boolean;
|
|
@@ -13,6 +17,12 @@ export interface BottomSheetProps {
|
|
|
13
17
|
title?: ReactNode;
|
|
14
18
|
subTitle?: ReactNode;
|
|
15
19
|
content?: ReactNode | BottomSheetContentWithCloseAction;
|
|
20
|
+
/**
|
|
21
|
+
* 콘텐츠 영역 space, maxHeight 속성 커스텀이 가능합니다.
|
|
22
|
+
* - [SpaceProps](https://github.com/croquiscom/pds/blob/main/src/styles/space.ts)
|
|
23
|
+
* - maxHeight
|
|
24
|
+
*/
|
|
25
|
+
contentProps?: BottomSheetContentProps;
|
|
16
26
|
/**
|
|
17
27
|
* outside 영역 클릭시 닫힘 사용 여부
|
|
18
28
|
* @default true
|
|
@@ -30,5 +40,6 @@ export interface BottomSheetProps {
|
|
|
30
40
|
canDragClose?: boolean;
|
|
31
41
|
onClose?: () => void;
|
|
32
42
|
}
|
|
33
|
-
export declare const
|
|
34
|
-
export
|
|
43
|
+
export declare const MIN_BOTTOM_SHEET_Y = 44;
|
|
44
|
+
export declare const HANDLE_AREA_HEIGHT = 28;
|
|
45
|
+
export declare const BottomSheet: ({ className, zIndex, opened: openProp, canClickOutside, canCloseEscapeKey, canDragClose, title, subTitle, content, contentProps, onClose, }: BottomSheetProps) => JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentStory, ComponentMeta } from '@storybook/react';
|
|
3
3
|
import { BottomSheet } from './BottomSheet';
|
|
4
|
-
declare const _default: ComponentMeta<({ className, zIndex, opened: openProp, canClickOutside, canCloseEscapeKey, canDragClose, title, subTitle, content, onClose, }: import("./BottomSheet").BottomSheetProps) => JSX.Element>;
|
|
4
|
+
declare const _default: ComponentMeta<({ className, zIndex, opened: openProp, canClickOutside, canCloseEscapeKey, canDragClose, title, subTitle, content, contentProps, onClose, }: import("./BottomSheet").BottomSheetProps) => JSX.Element>;
|
|
5
5
|
export default _default;
|
|
6
6
|
export declare const Base: any;
|
|
7
7
|
export declare const MaxHeight: ComponentStory<typeof BottomSheet>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Locale } from 'date-fns';
|
|
3
3
|
import { CaptionProps } from 'react-day-picker';
|
|
4
|
+
import { DisplayMode } from './DatePicker';
|
|
4
5
|
export declare const captionColor: (disabled: boolean) => string;
|
|
5
|
-
export declare const CAPTION_SIZE = 24;
|
|
6
6
|
export interface DatePickerCaptionProps extends CaptionProps {
|
|
7
7
|
/**
|
|
8
8
|
* @default false
|
|
@@ -11,5 +11,6 @@ export interface DatePickerCaptionProps extends CaptionProps {
|
|
|
11
11
|
className?: string;
|
|
12
12
|
currentMonth?: Date;
|
|
13
13
|
locale: Locale;
|
|
14
|
+
displayMode: DisplayMode;
|
|
14
15
|
}
|
|
15
|
-
export declare const Caption: ({ multipleMonths, currentMonth: controlledMonth, className, locale, ...props }: DatePickerCaptionProps) => JSX.Element;
|
|
16
|
+
export declare const Caption: ({ multipleMonths, currentMonth: controlledMonth, displayMode, className, locale, ...props }: DatePickerCaptionProps) => JSX.Element;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Matcher } from 'react-day-picker';
|
|
3
3
|
import { CSSValueWithLength } from '../../styles';
|
|
4
|
-
export type
|
|
4
|
+
export type DisplayTimeFormat = 'hourMinute' | 'hourMinuteSecond';
|
|
5
|
+
export type DisplayMode = 'popover' | 'bottomSheet';
|
|
5
6
|
export declare const DATE_FORMAT = "yyyy.MM.dd";
|
|
6
7
|
export declare const DATE_HOUR_MINUTE_FORMAT = "yyyy.MM.dd HH:mm";
|
|
7
8
|
export declare const DATE_HOUR_MINUTE_SECOND_FORMAT = "yyyy.MM.dd HH:mm:ss";
|
|
@@ -29,6 +30,12 @@ export interface DatePickerBaseProps {
|
|
|
29
30
|
* @default 1035
|
|
30
31
|
*/
|
|
31
32
|
zIndex?: number;
|
|
33
|
+
/**
|
|
34
|
+
* 달력이 노출되는 모드를 지정할 수 있습니다.
|
|
35
|
+
* - 'bottomSheet'일 경우 Footer 영역(취소/확인)은 고정 노출됩니다.
|
|
36
|
+
* @default popover
|
|
37
|
+
*/
|
|
38
|
+
displayMode?: DisplayMode;
|
|
32
39
|
}
|
|
33
40
|
export interface DatePickerProps extends DatePickerBaseProps {
|
|
34
41
|
/**
|
|
@@ -52,7 +59,7 @@ export interface DatePickerProps extends DatePickerBaseProps {
|
|
|
52
59
|
* - 'hourMinuteSecond' 일 경우 yyyy.MM.dd HH:mm:ss
|
|
53
60
|
* - showTimePicker 속성이 true일 경우 displayTimeFormat은 hourMinute으로 적용됩니다.
|
|
54
61
|
*/
|
|
55
|
-
displayTimeFormat?:
|
|
62
|
+
displayTimeFormat?: DisplayTimeFormat;
|
|
56
63
|
/**
|
|
57
64
|
* 달력 하단 TimePicker를 노출합니다. onChange value에 시간 정보를 포함하여 전달합니다.
|
|
58
65
|
* @default false
|
|
@@ -65,4 +72,4 @@ export interface DatePickerProps extends DatePickerBaseProps {
|
|
|
65
72
|
showFooter?: boolean;
|
|
66
73
|
onChange?: (value: Date | null) => void;
|
|
67
74
|
}
|
|
68
|
-
export declare const DatePicker: ({ width, error, disabled, className, placeholder, displayTimeFormat, value, disabledDays, showRemoveButton, showTodayButton, showTimePicker, showFooter, zIndex, onChange, opened: openProp, onOpen, onClose, }: DatePickerProps) => JSX.Element;
|
|
75
|
+
export declare const DatePicker: ({ width, error, disabled, className, placeholder, displayTimeFormat, value, disabledDays, showRemoveButton, showTodayButton, showTimePicker, showFooter, zIndex, displayMode, onChange, opened: openProp, onOpen, onClose, }: DatePickerProps) => JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentMeta } from '@storybook/react';
|
|
3
|
-
declare const _default: ComponentMeta<({ width, error, disabled, className, placeholder, displayTimeFormat, value, disabledDays, showRemoveButton, showTodayButton, showTimePicker, showFooter, zIndex, onChange, opened: openProp, onOpen, onClose, }: import("./DatePicker").DatePickerProps) => JSX.Element>;
|
|
3
|
+
declare const _default: ComponentMeta<({ width, error, disabled, className, placeholder, displayTimeFormat, value, disabledDays, showRemoveButton, showTodayButton, showTimePicker, showFooter, zIndex, displayMode, onChange, opened: openProp, onOpen, onClose, }: import("./DatePicker").DatePickerProps) => JSX.Element>;
|
|
4
4
|
export default _default;
|
|
5
5
|
export declare const Base: any;
|
|
6
6
|
export declare const Disabled: any;
|
|
@@ -12,3 +12,4 @@ export declare const ShowTimePicker: any;
|
|
|
12
12
|
export declare const ShowTimeHourMinute: any;
|
|
13
13
|
export declare const ShowTimeHourMinuteSecond: any;
|
|
14
14
|
export declare const DisableDays: any;
|
|
15
|
+
export declare const BottomSheetPicker: any;
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DatePickerMask: import("@emotion/styled").StyledComponent<{
|
|
3
|
+
id?: string;
|
|
4
|
+
color?: string;
|
|
5
|
+
translate?: "yes" | "no";
|
|
6
|
+
hidden?: boolean;
|
|
7
|
+
slot?: string;
|
|
8
|
+
title?: string;
|
|
9
|
+
dir?: string;
|
|
10
|
+
accessKey?: string;
|
|
11
|
+
draggable?: boolean | "false" | "true";
|
|
12
|
+
lang?: string;
|
|
13
|
+
className?: string;
|
|
14
|
+
prefix?: string;
|
|
15
|
+
role?: import("react").AriaRole;
|
|
16
|
+
children?: import("react").ReactNode;
|
|
17
|
+
contentEditable?: "inherit" | (boolean | "false" | "true");
|
|
18
|
+
inputMode?: "search" | "numeric" | "none" | "url" | "text" | "decimal" | "tel" | "email";
|
|
19
|
+
nonce?: string;
|
|
20
|
+
tabIndex?: number;
|
|
21
|
+
defaultChecked?: boolean;
|
|
22
|
+
defaultValue?: string | number | readonly string[];
|
|
23
|
+
suppressContentEditableWarning?: boolean;
|
|
24
|
+
suppressHydrationWarning?: boolean;
|
|
25
|
+
contextMenu?: string;
|
|
26
|
+
placeholder?: string;
|
|
27
|
+
spellCheck?: boolean | "false" | "true";
|
|
28
|
+
radioGroup?: string;
|
|
29
|
+
about?: string;
|
|
30
|
+
datatype?: string;
|
|
31
|
+
inlist?: any;
|
|
32
|
+
property?: string;
|
|
33
|
+
resource?: string;
|
|
34
|
+
typeof?: string;
|
|
35
|
+
vocab?: string;
|
|
36
|
+
autoCapitalize?: string;
|
|
37
|
+
autoCorrect?: string;
|
|
38
|
+
autoSave?: string;
|
|
39
|
+
itemProp?: string;
|
|
40
|
+
itemScope?: boolean;
|
|
41
|
+
itemType?: string;
|
|
42
|
+
itemID?: string;
|
|
43
|
+
itemRef?: string;
|
|
44
|
+
results?: number;
|
|
45
|
+
security?: string;
|
|
46
|
+
unselectable?: "on" | "off";
|
|
47
|
+
is?: string;
|
|
48
|
+
"aria-activedescendant"?: string;
|
|
49
|
+
"aria-atomic"?: boolean | "false" | "true";
|
|
50
|
+
"aria-autocomplete"?: "inline" | "both" | "none" | "list";
|
|
51
|
+
"aria-busy"?: boolean | "false" | "true";
|
|
52
|
+
"aria-checked"?: boolean | "false" | "mixed" | "true";
|
|
53
|
+
"aria-colcount"?: number;
|
|
54
|
+
"aria-colindex"?: number;
|
|
55
|
+
"aria-colspan"?: number;
|
|
56
|
+
"aria-controls"?: string;
|
|
57
|
+
"aria-current"?: boolean | "location" | "time" | "false" | "page" | "true" | "step" | "date";
|
|
58
|
+
"aria-describedby"?: string;
|
|
59
|
+
"aria-details"?: string;
|
|
60
|
+
"aria-disabled"?: boolean | "false" | "true";
|
|
61
|
+
"aria-dropeffect"?: "link" | "none" | "copy" | "move" | "execute" | "popup";
|
|
62
|
+
"aria-errormessage"?: string;
|
|
63
|
+
"aria-expanded"?: boolean | "false" | "true";
|
|
64
|
+
"aria-flowto"?: string;
|
|
65
|
+
"aria-grabbed"?: boolean | "false" | "true";
|
|
66
|
+
"aria-haspopup"?: boolean | "grid" | "dialog" | "menu" | "false" | "listbox" | "true" | "tree";
|
|
67
|
+
"aria-hidden"?: boolean | "false" | "true";
|
|
68
|
+
"aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling";
|
|
69
|
+
"aria-keyshortcuts"?: string;
|
|
70
|
+
"aria-label"?: string;
|
|
71
|
+
"aria-labelledby"?: string;
|
|
72
|
+
"aria-level"?: number;
|
|
73
|
+
"aria-live"?: "off" | "assertive" | "polite";
|
|
74
|
+
"aria-modal"?: boolean | "false" | "true";
|
|
75
|
+
"aria-multiline"?: boolean | "false" | "true";
|
|
76
|
+
"aria-multiselectable"?: boolean | "false" | "true";
|
|
77
|
+
"aria-orientation"?: "horizontal" | "vertical";
|
|
78
|
+
"aria-owns"?: string;
|
|
79
|
+
"aria-placeholder"?: string;
|
|
80
|
+
"aria-posinset"?: number;
|
|
81
|
+
"aria-pressed"?: boolean | "false" | "mixed" | "true";
|
|
82
|
+
"aria-readonly"?: boolean | "false" | "true";
|
|
83
|
+
"aria-relevant"?: "all" | "text" | "additions" | "additions removals" | "additions text" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals";
|
|
84
|
+
"aria-required"?: boolean | "false" | "true";
|
|
85
|
+
"aria-roledescription"?: string;
|
|
86
|
+
"aria-rowcount"?: number;
|
|
87
|
+
"aria-rowindex"?: number;
|
|
88
|
+
"aria-rowspan"?: number;
|
|
89
|
+
"aria-selected"?: boolean | "false" | "true";
|
|
90
|
+
"aria-setsize"?: number;
|
|
91
|
+
"aria-sort"?: "none" | "other" | "ascending" | "descending";
|
|
92
|
+
"aria-valuemax"?: number;
|
|
93
|
+
"aria-valuemin"?: number;
|
|
94
|
+
"aria-valuenow"?: number;
|
|
95
|
+
"aria-valuetext"?: string;
|
|
96
|
+
dangerouslySetInnerHTML?: {
|
|
97
|
+
__html: string;
|
|
98
|
+
};
|
|
99
|
+
onCopy?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
100
|
+
onCopyCapture?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
101
|
+
onCut?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
102
|
+
onCutCapture?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
103
|
+
onPaste?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
104
|
+
onPasteCapture?: import("react").ClipboardEventHandler<HTMLDivElement>;
|
|
105
|
+
onCompositionEnd?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
106
|
+
onCompositionEndCapture?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
107
|
+
onCompositionStart?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
108
|
+
onCompositionStartCapture?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
109
|
+
onCompositionUpdate?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
110
|
+
onCompositionUpdateCapture?: import("react").CompositionEventHandler<HTMLDivElement>;
|
|
111
|
+
onFocus?: import("react").FocusEventHandler<HTMLDivElement>;
|
|
112
|
+
onFocusCapture?: import("react").FocusEventHandler<HTMLDivElement>;
|
|
113
|
+
onBlur?: import("react").FocusEventHandler<HTMLDivElement>;
|
|
114
|
+
onBlurCapture?: import("react").FocusEventHandler<HTMLDivElement>;
|
|
115
|
+
onChange?: import("react").FormEventHandler<HTMLDivElement>;
|
|
116
|
+
onChangeCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
117
|
+
onBeforeInput?: import("react").FormEventHandler<HTMLDivElement>;
|
|
118
|
+
onBeforeInputCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
119
|
+
onInput?: import("react").FormEventHandler<HTMLDivElement>;
|
|
120
|
+
onInputCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
121
|
+
onReset?: import("react").FormEventHandler<HTMLDivElement>;
|
|
122
|
+
onResetCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
123
|
+
onSubmit?: import("react").FormEventHandler<HTMLDivElement>;
|
|
124
|
+
onSubmitCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
125
|
+
onInvalid?: import("react").FormEventHandler<HTMLDivElement>;
|
|
126
|
+
onInvalidCapture?: import("react").FormEventHandler<HTMLDivElement>;
|
|
127
|
+
onLoad?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
128
|
+
onLoadCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
129
|
+
onError?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
130
|
+
onErrorCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
131
|
+
onKeyDown?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
132
|
+
onKeyDownCapture?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
133
|
+
onKeyPress?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
134
|
+
onKeyPressCapture?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
135
|
+
onKeyUp?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
136
|
+
onKeyUpCapture?: import("react").KeyboardEventHandler<HTMLDivElement>;
|
|
137
|
+
onAbort?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
138
|
+
onAbortCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
139
|
+
onCanPlay?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
140
|
+
onCanPlayCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
141
|
+
onCanPlayThrough?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
142
|
+
onCanPlayThroughCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
143
|
+
onDurationChange?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
144
|
+
onDurationChangeCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
145
|
+
onEmptied?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
146
|
+
onEmptiedCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
147
|
+
onEncrypted?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
148
|
+
onEncryptedCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
149
|
+
onEnded?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
150
|
+
onEndedCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
151
|
+
onLoadedData?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
152
|
+
onLoadedDataCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
153
|
+
onLoadedMetadata?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
154
|
+
onLoadedMetadataCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
155
|
+
onLoadStart?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
156
|
+
onLoadStartCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
157
|
+
onPause?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
158
|
+
onPauseCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
159
|
+
onPlay?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
160
|
+
onPlayCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
161
|
+
onPlaying?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
162
|
+
onPlayingCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
163
|
+
onProgress?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
164
|
+
onProgressCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
165
|
+
onRateChange?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
166
|
+
onRateChangeCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
167
|
+
onResize?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
168
|
+
onResizeCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
169
|
+
onSeeked?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
170
|
+
onSeekedCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
171
|
+
onSeeking?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
172
|
+
onSeekingCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
173
|
+
onStalled?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
174
|
+
onStalledCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
175
|
+
onSuspend?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
176
|
+
onSuspendCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
177
|
+
onTimeUpdate?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
178
|
+
onTimeUpdateCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
179
|
+
onVolumeChange?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
180
|
+
onVolumeChangeCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
181
|
+
onWaiting?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
182
|
+
onWaitingCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
183
|
+
onAuxClick?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
184
|
+
onAuxClickCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
185
|
+
onClick?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
186
|
+
onClickCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
187
|
+
onContextMenu?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
188
|
+
onContextMenuCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
189
|
+
onDoubleClick?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
190
|
+
onDoubleClickCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
191
|
+
onDragCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
192
|
+
onDragEndCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
193
|
+
onDragEnter?: import("react").DragEventHandler<HTMLDivElement>;
|
|
194
|
+
onDragEnterCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
195
|
+
onDragExit?: import("react").DragEventHandler<HTMLDivElement>;
|
|
196
|
+
onDragExitCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
197
|
+
onDragLeave?: import("react").DragEventHandler<HTMLDivElement>;
|
|
198
|
+
onDragLeaveCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
199
|
+
onDragOver?: import("react").DragEventHandler<HTMLDivElement>;
|
|
200
|
+
onDragOverCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
201
|
+
onDragStartCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
202
|
+
onDrop?: import("react").DragEventHandler<HTMLDivElement>;
|
|
203
|
+
onDropCapture?: import("react").DragEventHandler<HTMLDivElement>;
|
|
204
|
+
onMouseDown?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
205
|
+
onMouseDownCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
206
|
+
onMouseEnter?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
207
|
+
onMouseLeave?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
208
|
+
onMouseMove?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
209
|
+
onMouseMoveCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
210
|
+
onMouseOut?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
211
|
+
onMouseOutCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
212
|
+
onMouseOver?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
213
|
+
onMouseOverCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
214
|
+
onMouseUp?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
215
|
+
onMouseUpCapture?: import("react").MouseEventHandler<HTMLDivElement>;
|
|
216
|
+
onSelect?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
217
|
+
onSelectCapture?: import("react").ReactEventHandler<HTMLDivElement>;
|
|
218
|
+
onTouchCancel?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
219
|
+
onTouchCancelCapture?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
220
|
+
onTouchEnd?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
221
|
+
onTouchEndCapture?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
222
|
+
onTouchMove?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
223
|
+
onTouchMoveCapture?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
224
|
+
onTouchStart?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
225
|
+
onTouchStartCapture?: import("react").TouchEventHandler<HTMLDivElement>;
|
|
226
|
+
onPointerDown?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
227
|
+
onPointerDownCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
228
|
+
onPointerMove?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
229
|
+
onPointerMoveCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
230
|
+
onPointerUp?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
231
|
+
onPointerUpCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
232
|
+
onPointerCancel?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
233
|
+
onPointerCancelCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
234
|
+
onPointerEnter?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
235
|
+
onPointerEnterCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
236
|
+
onPointerLeave?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
237
|
+
onPointerLeaveCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
238
|
+
onPointerOver?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
239
|
+
onPointerOverCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
240
|
+
onPointerOut?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
241
|
+
onPointerOutCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
242
|
+
onGotPointerCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
243
|
+
onGotPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
244
|
+
onLostPointerCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
245
|
+
onLostPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement>;
|
|
246
|
+
onScroll?: import("react").UIEventHandler<HTMLDivElement>;
|
|
247
|
+
onScrollCapture?: import("react").UIEventHandler<HTMLDivElement>;
|
|
248
|
+
onWheel?: import("react").WheelEventHandler<HTMLDivElement>;
|
|
249
|
+
onWheelCapture?: import("react").WheelEventHandler<HTMLDivElement>;
|
|
250
|
+
onAnimationStartCapture?: import("react").AnimationEventHandler<HTMLDivElement>;
|
|
251
|
+
onAnimationEnd?: import("react").AnimationEventHandler<HTMLDivElement>;
|
|
252
|
+
onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLDivElement>;
|
|
253
|
+
onAnimationIteration?: import("react").AnimationEventHandler<HTMLDivElement>;
|
|
254
|
+
onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLDivElement>;
|
|
255
|
+
onTransitionEnd?: import("react").TransitionEventHandler<HTMLDivElement>;
|
|
256
|
+
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLDivElement>;
|
|
257
|
+
} & import("framer-motion").MotionProps & import("react").RefAttributes<HTMLDivElement> & {
|
|
258
|
+
theme?: import("@emotion/react").Theme;
|
|
259
|
+
} & {
|
|
260
|
+
position: 'top' | 'bottom';
|
|
261
|
+
}, {}, {}>;
|
|
@@ -37,9 +37,10 @@ export interface DateRangePickerProps extends DatePickerBaseProps {
|
|
|
37
37
|
customDatePreset?: DatePreset;
|
|
38
38
|
/**
|
|
39
39
|
* 지정해서 보여지는 개월의 개수를 임의로 조정할 수 있습니다.
|
|
40
|
+
* - displayMode 'bottomSheet'인 경우 numberOfMonths는 1로 고정입니다.
|
|
40
41
|
* @default 2
|
|
41
42
|
*/
|
|
42
43
|
numberOfMonths?: number;
|
|
43
44
|
onChange?: (start: Dates['from'], end: Dates['to']) => void;
|
|
44
45
|
}
|
|
45
|
-
export declare const DateRangePicker: ({ width, error, disabled, className, showDatePreset, showRadioGroupDatePreset, dates, maxDate, minDate, maxRange, numberOfMonths, showRemoveButton, opened: openProp, customDatePreset, onOpen, onClose, onChange, }: DateRangePickerProps) => JSX.Element;
|
|
46
|
+
export declare const DateRangePicker: ({ width, error, disabled, className, showDatePreset, showRadioGroupDatePreset, dates, maxDate, minDate, maxRange, numberOfMonths: numberOfMonthsProps, showRemoveButton, opened: openProp, customDatePreset, displayMode, onOpen, onClose, onChange, }: DateRangePickerProps) => JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentMeta } from '@storybook/react';
|
|
3
|
-
declare const _default: ComponentMeta<({ width, error, disabled, className, showDatePreset, showRadioGroupDatePreset, dates, maxDate, minDate, maxRange, numberOfMonths, showRemoveButton, opened: openProp, customDatePreset, onOpen, onClose, onChange, }: import("./DateRangePicker").DateRangePickerProps) => JSX.Element>;
|
|
3
|
+
declare const _default: ComponentMeta<({ width, error, disabled, className, showDatePreset, showRadioGroupDatePreset, dates, maxDate, minDate, maxRange, numberOfMonths: numberOfMonthsProps, showRemoveButton, opened: openProp, customDatePreset, displayMode, onOpen, onClose, onChange, }: import("./DateRangePicker").DateRangePickerProps) => JSX.Element>;
|
|
4
4
|
export default _default;
|
|
5
5
|
export declare const Base: any;
|
|
6
6
|
export declare const Disabled: any;
|
|
@@ -13,3 +13,4 @@ export declare const MaxRange: any;
|
|
|
13
13
|
export declare const WithDatePreset: any;
|
|
14
14
|
export declare const WithRadioGroupDatePreset: any;
|
|
15
15
|
export declare const WithAllDatePreset: any;
|
|
16
|
+
export declare const BottomSheetPicker: any;
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { DisplayMode } from './DatePicker';
|
|
2
|
+
export declare const DayPickerBase: import("@emotion/styled").StyledComponent<((import("react-day-picker").DayPickerDefaultProps | import("react-day-picker").DayPickerSingleProps | import("react-day-picker").DayPickerMultipleProps | import("react-day-picker").DayPickerRangeProps) & {
|
|
2
3
|
theme?: import("@emotion/react").Theme;
|
|
4
|
+
}) & {
|
|
5
|
+
cellSize: number;
|
|
6
|
+
displayMode: DisplayMode;
|
|
3
7
|
}, {}, {}>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const POPOVER_CELL_SIZE = 32;
|
|
2
|
+
export declare const BOTTOM_SHEET_CELL_SIZE = 49;
|
|
3
|
+
export declare const BOTTOM_SHEET_CAPTION_HEIGHT = 72;
|
|
4
|
+
export declare const BOTTOM_SHEET_FOOTER_HEIGHT = 90;
|
|
5
|
+
export declare const MIN_SATE_PADDING_TOP = 40;
|
|
6
|
+
export declare const BOTTOM_SHEET_TABLE_MARGIN: number;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CSSObject } from '@emotion/react';
|
|
2
|
+
import { DisplayMode } from '../DatePicker';
|
|
3
|
+
import { Typography } from '../../../foundation';
|
|
4
|
+
import { ButtonProps } from '../../button';
|
|
5
|
+
import { VStackProps, HStackProps } from '../../stack';
|
|
6
|
+
interface DatePickerAttributes {
|
|
7
|
+
maxHeight: number;
|
|
8
|
+
cellSize: number;
|
|
9
|
+
caption: {
|
|
10
|
+
kind: Typography;
|
|
11
|
+
arrowSize: number;
|
|
12
|
+
style?: CSSObject;
|
|
13
|
+
};
|
|
14
|
+
footer: {
|
|
15
|
+
button: Partial<ButtonProps>;
|
|
16
|
+
container: Partial<HStackProps & VStackProps> & {
|
|
17
|
+
style?: CSSObject;
|
|
18
|
+
};
|
|
19
|
+
description?: {
|
|
20
|
+
kind: Typography;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export declare function useDatePickerAttributes(displayMode: DisplayMode): DatePickerAttributes;
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
export declare function useScrollMask({ opened, scrollWrapperRef, calendarRef, }: {
|
|
3
|
+
opened: boolean;
|
|
4
|
+
calendarRef: RefObject<HTMLElement>;
|
|
5
|
+
scrollWrapperRef: RefObject<HTMLElement>;
|
|
6
|
+
}): {
|
|
7
|
+
mask: {
|
|
8
|
+
topMask: number;
|
|
9
|
+
bottomMask: number;
|
|
10
|
+
};
|
|
11
|
+
maskPosition: {
|
|
12
|
+
top: number;
|
|
13
|
+
bottom: number;
|
|
14
|
+
};
|
|
15
|
+
handleScroll: import("lodash").DebouncedFunc<() => void>;
|
|
16
|
+
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export declare const date_picker_base_css: import("@emotion/utils").SerializedStyles;
|
|
2
|
+
export declare const popover_picker_css: import("@emotion/utils").SerializedStyles;
|
|
3
|
+
export declare const bottom_sheet_picker_css: import("@emotion/utils").SerializedStyles;
|
|
2
4
|
export declare const caption_button_css: import("@emotion/utils").SerializedStyles;
|
|
3
5
|
export declare const range_input_default_style: {
|
|
4
6
|
border: string;
|
|
@@ -55,8 +55,9 @@ export interface TableProps<DataType> {
|
|
|
55
55
|
*/
|
|
56
56
|
noDataText?: ReactNode;
|
|
57
57
|
/**
|
|
58
|
-
* 테이블 로우 호버 스타일 사용
|
|
59
|
-
* -
|
|
58
|
+
* 테이블 로우 호버 스타일 사용 유무
|
|
59
|
+
* - column cellAttributes 스타일 커스텀시 로우 전체 호버 스타일을 제한할 수 있습니다.
|
|
60
|
+
* - rowspan to highlight all relevant rows 이슈 처리전 임시 props으로 사용할 수 있습니다.
|
|
60
61
|
* @default true
|
|
61
62
|
*/
|
|
62
63
|
cellHoverStyle?: boolean;
|
|
@@ -10,6 +10,7 @@ export declare const Base: any;
|
|
|
10
10
|
export declare const ColumnAlignAndWidth: any;
|
|
11
11
|
export declare const CustomColumnCell: any;
|
|
12
12
|
export declare const CustomRowCell: any;
|
|
13
|
+
export declare const CustomRowCellStyle: any;
|
|
13
14
|
export declare const Loading: any;
|
|
14
15
|
export declare const NoData: any;
|
|
15
16
|
export declare const CustomNoDataText: any;
|
|
@@ -22,3 +22,4 @@ export declare const RowSpanRows: TableRowsType<DataType>;
|
|
|
22
22
|
export declare const fixedColumns: TableColumnsType<DataType>;
|
|
23
23
|
export declare const selectionRows: TableRowsType<DataType>;
|
|
24
24
|
export declare const sortColumns: TableColumnsType<DataType>;
|
|
25
|
+
export declare const customRowStyleColumns: TableColumnsType<DataType>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Key, ReactNode, TdHTMLAttributes } from 'react';
|
|
2
|
+
import { CSSObject } from '@emotion/styled';
|
|
2
3
|
import { CSSValueWithLength } from '../../styles';
|
|
3
4
|
export type SortDirection = 'asc' | 'desc' | 'default';
|
|
4
5
|
export type ColumnAlign = 'left' | 'right' | 'center';
|
|
@@ -7,10 +8,12 @@ export type Scroll = {
|
|
|
7
8
|
y?: CSSValueWithLength;
|
|
8
9
|
};
|
|
9
10
|
export type CellValue<Value = any> = Value;
|
|
10
|
-
export type
|
|
11
|
-
export type CellAttributesProps<DataType> = (row: DataType, index?: number) => Pick<TdHTMLAttributes<any>, 'rowSpan'> & {
|
|
11
|
+
export type CellAttributes = {
|
|
12
12
|
hidden?: boolean;
|
|
13
|
+
style?: CSSObject;
|
|
13
14
|
};
|
|
15
|
+
export type RowSelectState<DataType> = ((row: DataType) => boolean) | Array<Key> | null;
|
|
16
|
+
export type CellAttributesProps<DataType> = (row: DataType, index?: number) => Pick<TdHTMLAttributes<any>, 'rowSpan'> & CellAttributes;
|
|
14
17
|
export type CellProps<DataType> = ({ row, value, index, }: {
|
|
15
18
|
row: DataType;
|
|
16
19
|
value: CellValue<any>;
|