@ncds/ui-admin 1.4.1 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/scripts/comboBox.js +18 -0
- package/dist/cjs/assets/scripts/datePicker.js +60 -7
- package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputModel.js +6 -19
- package/dist/cjs/assets/scripts/notification/MessageNotification.js +146 -0
- package/dist/cjs/assets/scripts/notification/Notification.js +6 -3
- package/dist/cjs/assets/scripts/notification/const/classNames.js +14 -0
- package/dist/cjs/assets/scripts/notification/const/index.js +14 -1
- package/dist/cjs/assets/scripts/notification/const/sizes.js +7 -1
- package/dist/cjs/assets/scripts/notification/const/types.js +10 -1
- package/dist/cjs/assets/scripts/notification/index.js +8 -0
- package/dist/cjs/assets/scripts/notification/utils.js +3 -3
- package/dist/cjs/assets/scripts/utils/selectbox/DropdownModel.js +7 -0
- package/dist/cjs/assets/scripts/utils/selectbox/UnifiedSelectBox.js +77 -43
- package/dist/cjs/src/components/button/ButtonGroup.js +1 -2
- package/dist/cjs/src/components/button/ButtonStepper.js +23 -0
- package/dist/cjs/src/components/button/index.js +22 -0
- package/dist/cjs/src/components/date-picker/DatePicker.js +45 -6
- package/dist/cjs/src/components/date-picker/RangeDatePicker.js +3 -1
- package/dist/cjs/src/components/date-picker/RangeDatePickerWithButtons.js +7 -3
- package/dist/cjs/src/components/index.js +11 -0
- package/dist/cjs/src/components/input/InputBase.js +1 -1
- package/dist/cjs/src/components/input/NumberInput.js +130 -0
- package/dist/cjs/src/components/input/PasswordInput.js +3 -2
- package/dist/cjs/src/components/input/index.js +11 -0
- package/dist/cjs/src/components/notification/MessageNotification.js +137 -0
- package/dist/cjs/src/components/notification/Notification.js +23 -9
- package/dist/cjs/src/components/notification/index.js +11 -0
- package/dist/cjs/src/components/tooltip/Tooltip.js +32 -21
- package/dist/esm/assets/scripts/comboBox.js +18 -0
- package/dist/esm/assets/scripts/datePicker.js +60 -7
- package/dist/esm/assets/scripts/imageFileInput/ImageFileInputModel.js +6 -19
- package/dist/esm/assets/scripts/notification/MessageNotification.js +141 -0
- package/dist/esm/assets/scripts/notification/Notification.js +6 -3
- package/dist/esm/assets/scripts/notification/const/classNames.js +14 -0
- package/dist/esm/assets/scripts/notification/const/index.js +2 -1
- package/dist/esm/assets/scripts/notification/const/sizes.js +6 -0
- package/dist/esm/assets/scripts/notification/const/types.js +8 -1
- package/dist/esm/assets/scripts/notification/index.js +1 -0
- package/dist/esm/assets/scripts/notification/utils.js +3 -3
- package/dist/esm/assets/scripts/utils/selectbox/DropdownModel.js +7 -0
- package/dist/esm/assets/scripts/utils/selectbox/UnifiedSelectBox.js +77 -43
- package/dist/esm/src/components/button/ButtonStepper.js +15 -0
- package/dist/esm/src/components/button/index.js +3 -1
- package/dist/esm/src/components/date-picker/DatePicker.js +46 -7
- package/dist/esm/src/components/date-picker/RangeDatePicker.js +3 -1
- package/dist/esm/src/components/date-picker/RangeDatePickerWithButtons.js +7 -3
- package/dist/esm/src/components/index.js +2 -1
- package/dist/esm/src/components/input/InputBase.js +1 -1
- package/dist/esm/src/components/input/NumberInput.js +124 -0
- package/dist/esm/src/components/input/PasswordInput.js +4 -3
- package/dist/esm/src/components/input/index.js +1 -0
- package/dist/esm/src/components/notification/MessageNotification.js +130 -0
- package/dist/esm/src/components/notification/Notification.js +23 -9
- package/dist/esm/src/components/notification/index.js +2 -1
- package/dist/esm/src/components/tooltip/Tooltip.js +33 -22
- package/dist/types/assets/scripts/comboBox.d.ts +12 -0
- package/dist/types/assets/scripts/datePicker.d.ts +1 -0
- package/dist/types/assets/scripts/notification/MessageNotification.d.ts +23 -0
- package/dist/types/assets/scripts/notification/Notification.d.ts +1 -1
- package/dist/types/assets/scripts/notification/const/classNames.d.ts +14 -0
- package/dist/types/assets/scripts/notification/const/index.d.ts +2 -1
- package/dist/types/assets/scripts/notification/const/sizes.d.ts +5 -0
- package/dist/types/assets/scripts/notification/const/types.d.ts +1 -0
- package/dist/types/assets/scripts/notification/index.d.ts +1 -0
- package/dist/types/assets/scripts/utils/selectbox/DropdownModel.d.ts +4 -0
- package/dist/types/assets/scripts/utils/selectbox/UnifiedSelectBox.d.ts +20 -1
- package/dist/types/src/components/button/ButtonGroup.d.ts +1 -3
- package/dist/types/src/components/button/ButtonStepper.d.ts +10 -0
- package/dist/types/src/components/button/index.d.ts +2 -0
- package/dist/types/src/components/date-picker/DatePicker.d.ts +1 -0
- package/dist/types/src/components/date-picker/RangeDatePickerWithButtons.d.ts +4 -4
- package/dist/types/src/components/index.d.ts +1 -0
- package/dist/types/src/components/input/NumberInput.d.ts +10 -0
- package/dist/types/src/components/input/index.d.ts +1 -0
- package/dist/types/src/components/modal/Modal.d.ts +2 -2
- package/dist/types/src/components/notification/MessageNotification.d.ts +40 -0
- package/dist/types/src/components/notification/Notification.d.ts +6 -1
- package/dist/types/src/components/notification/index.d.ts +1 -0
- package/dist/types/src/components/selectbox/SelectBox.d.ts +1 -1
- package/dist/types/src/components/tooltip/Tooltip.d.ts +4 -2
- package/dist/ui-admin/assets/styles/style.css +298 -18
- package/package.json +1 -1
|
@@ -20,20 +20,34 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
20
20
|
import { forwardRef } from 'react';
|
|
21
21
|
import { FloatingNotification } from './FloatingNotification';
|
|
22
22
|
import { FullWidthNotification } from './FullWidthNotification';
|
|
23
|
+
import { MessageNotification } from './MessageNotification';
|
|
23
24
|
export var Notification = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
24
25
|
var _b = _a.type,
|
|
25
26
|
type = _b === void 0 ? 'floating' : _b,
|
|
26
27
|
_c = _a.color,
|
|
27
28
|
color = _c === void 0 ? 'neutral' : _c,
|
|
28
29
|
rest = __rest(_a, ["type", "color"]);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
30
|
+
if (type === 'floating') {
|
|
31
|
+
return _jsx(FloatingNotification, __assign({
|
|
32
|
+
color: color
|
|
33
|
+
}, rest, {
|
|
34
|
+
ref: ref
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
if (type === 'full-width') {
|
|
38
|
+
return _jsx(FullWidthNotification, __assign({
|
|
39
|
+
color: color
|
|
40
|
+
}, rest, {
|
|
41
|
+
ref: ref
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
if (type === 'message') {
|
|
45
|
+
return _jsx(MessageNotification, __assign({
|
|
46
|
+
color: color
|
|
47
|
+
}, rest, {
|
|
48
|
+
ref: ref
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
return null;
|
|
38
52
|
});
|
|
39
53
|
Notification.displayName = 'Notification';
|
|
@@ -9,7 +9,7 @@ var __assign = this && this.__assign || function () {
|
|
|
9
9
|
return __assign.apply(this, arguments);
|
|
10
10
|
};
|
|
11
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
import { HelpCircle, HelpCircleFill } from '@ncds/ui-admin-icon';
|
|
12
|
+
import { AlertCircle, AlertCircleFill, HelpCircle, HelpCircleFill } from '@ncds/ui-admin-icon';
|
|
13
13
|
import classNames from 'classnames';
|
|
14
14
|
import { useRef, useState, useCallback, useMemo } from 'react';
|
|
15
15
|
import { ButtonCloseX } from '../button/ButtonCloseX';
|
|
@@ -67,22 +67,26 @@ export var Tooltip = function (_a) {
|
|
|
67
67
|
hideArrow = _f === void 0 ? false : _f,
|
|
68
68
|
_g = _a.type,
|
|
69
69
|
type = _g === void 0 ? 'short' : _g,
|
|
70
|
+
_h = _a.iconColor,
|
|
71
|
+
iconColor = _h === void 0 ? 'var(--gray-300)' : _h,
|
|
72
|
+
_j = _a.iconStyle,
|
|
73
|
+
iconStyle = _j === void 0 ? 'help-circle' : _j,
|
|
70
74
|
className = _a.className;
|
|
71
75
|
var iconSize = size === 'sm' ? 14 : 16;
|
|
72
76
|
var tooltipRef = useRef(null);
|
|
73
77
|
var tooltipBgRef = useRef(null);
|
|
74
|
-
var
|
|
75
|
-
calculatedPosition =
|
|
76
|
-
setCalculatedPosition =
|
|
77
|
-
var _j = useState(false),
|
|
78
|
-
isVisible = _j[0],
|
|
79
|
-
setIsVisible = _j[1];
|
|
80
|
-
var _k = useState(false),
|
|
81
|
-
isManuallyClose = _k[0],
|
|
82
|
-
setIsManuallyClose = _k[1];
|
|
78
|
+
var _k = useState(position === 'auto' ? 'bottom' : position),
|
|
79
|
+
calculatedPosition = _k[0],
|
|
80
|
+
setCalculatedPosition = _k[1];
|
|
83
81
|
var _l = useState(false),
|
|
84
|
-
|
|
85
|
-
|
|
82
|
+
isVisible = _l[0],
|
|
83
|
+
setIsVisible = _l[1];
|
|
84
|
+
var _m = useState(false),
|
|
85
|
+
isManuallyClose = _m[0],
|
|
86
|
+
setIsManuallyClose = _m[1];
|
|
87
|
+
var _o = useState(false),
|
|
88
|
+
isMeasuring = _o[0],
|
|
89
|
+
setIsMeasuring = _o[1];
|
|
86
90
|
var handleMouseEnter = useCallback(function () {
|
|
87
91
|
if (isManuallyClose) return;
|
|
88
92
|
setIsVisible(true);
|
|
@@ -130,15 +134,23 @@ export var Tooltip = function (_a) {
|
|
|
130
134
|
onMouseEnter: handleMouseEnter,
|
|
131
135
|
onMouseLeave: handleMouseLeave
|
|
132
136
|
}, {
|
|
133
|
-
children: [iconType === 'stroke' ? _jsx(HelpCircle, {
|
|
137
|
+
children: [iconStyle === 'help-circle' && (iconType === 'stroke' ? _jsx(HelpCircle, {
|
|
134
138
|
width: iconSize,
|
|
135
139
|
height: iconSize,
|
|
136
|
-
color:
|
|
140
|
+
color: iconColor
|
|
137
141
|
}) : _jsx(HelpCircleFill, {
|
|
138
142
|
width: iconSize,
|
|
139
143
|
height: iconSize,
|
|
140
|
-
color:
|
|
141
|
-
}),
|
|
144
|
+
color: iconColor
|
|
145
|
+
})), iconStyle === 'alert-circle' && (iconType === 'stroke' ? _jsx(AlertCircle, {
|
|
146
|
+
width: iconSize,
|
|
147
|
+
height: iconSize,
|
|
148
|
+
color: iconColor
|
|
149
|
+
}) : _jsx(AlertCircleFill, {
|
|
150
|
+
width: iconSize,
|
|
151
|
+
height: iconSize,
|
|
152
|
+
color: iconColor
|
|
153
|
+
})), _jsxs("span", __assign({
|
|
142
154
|
ref: tooltipBgRef,
|
|
143
155
|
className: tooltipBgClassName
|
|
144
156
|
}, {
|
|
@@ -146,12 +158,11 @@ export var Tooltip = function (_a) {
|
|
|
146
158
|
className: "ncua-tooltip__title"
|
|
147
159
|
}, {
|
|
148
160
|
children: title
|
|
149
|
-
})), content && _jsx("span", {
|
|
150
|
-
className: "ncua-tooltip__content"
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}), type === 'long' && _jsx(ButtonCloseX, {
|
|
161
|
+
})), content && _jsx("span", __assign({
|
|
162
|
+
className: "ncua-tooltip__content"
|
|
163
|
+
}, {
|
|
164
|
+
children: content
|
|
165
|
+
})), type === 'long' && _jsx(ButtonCloseX, {
|
|
155
166
|
className: "ncua-tooltip__close-button",
|
|
156
167
|
size: "xs",
|
|
157
168
|
theme: tooltipType === 'white' ? 'dark' : 'light',
|
|
@@ -75,5 +75,17 @@ export declare class ComboBox {
|
|
|
75
75
|
getSelectedCount(): number;
|
|
76
76
|
isMultiple(): boolean;
|
|
77
77
|
toggleSelectAll(): void;
|
|
78
|
+
/**
|
|
79
|
+
* 드롭다운을 스크롤의 바닥으로 이동
|
|
80
|
+
*/
|
|
81
|
+
scrollToBottom(): void;
|
|
82
|
+
/**
|
|
83
|
+
* 전체 선택 버튼의 텍스트를 외부에서 변경
|
|
84
|
+
*/
|
|
85
|
+
setSelectAllButtonText(text: string): void;
|
|
86
|
+
/**
|
|
87
|
+
* 특정 인덱스의 옵션으로 포커스 이동
|
|
88
|
+
*/
|
|
89
|
+
setFocusIndex(index: number): void;
|
|
78
90
|
}
|
|
79
91
|
//# sourceMappingURL=comboBox.d.ts.map
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { BaseNotificationOptions } from './const';
|
|
2
|
+
export interface MessageNotificationOptions extends BaseNotificationOptions {
|
|
3
|
+
type?: 'message';
|
|
4
|
+
}
|
|
5
|
+
export declare class MessageNotification {
|
|
6
|
+
private element;
|
|
7
|
+
private options;
|
|
8
|
+
private autoCloseTimer?;
|
|
9
|
+
private featuredIcon?;
|
|
10
|
+
constructor(options: MessageNotificationOptions);
|
|
11
|
+
private createElement;
|
|
12
|
+
private buildTemplate;
|
|
13
|
+
private renderHidePermanentlyButton;
|
|
14
|
+
private renderCloseButton;
|
|
15
|
+
private bindEvents;
|
|
16
|
+
private setupAutoClose;
|
|
17
|
+
getElement(): HTMLElement;
|
|
18
|
+
appendTo(parent: HTMLElement): void;
|
|
19
|
+
remove(): void;
|
|
20
|
+
destroy(): void;
|
|
21
|
+
static create(options: MessageNotificationOptions): MessageNotification;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=MessageNotification.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NotificationColor, BaseNotificationOptions } from './const';
|
|
2
2
|
export interface NotificationOptions extends BaseNotificationOptions {
|
|
3
|
-
type?: 'full-width' | 'floating';
|
|
3
|
+
type?: 'full-width' | 'floating' | 'message';
|
|
4
4
|
}
|
|
5
5
|
export declare class Notification {
|
|
6
6
|
private instance;
|
|
@@ -23,6 +23,20 @@ export declare const CLASS_NAMES: {
|
|
|
23
23
|
readonly ACTIONS: "ncua-floating-notification__actions";
|
|
24
24
|
readonly CLOSE_BUTTON: "ncua-floating-notification__close-button";
|
|
25
25
|
};
|
|
26
|
+
readonly MESSAGE: {
|
|
27
|
+
readonly BASE: "ncua-message-notification";
|
|
28
|
+
readonly CONTAINER: "ncua-message-notification__container";
|
|
29
|
+
readonly CONTENT: "ncua-message-notification__content";
|
|
30
|
+
readonly CONTENT_WRAPPER: "ncua-message-notification__content-wrapper";
|
|
31
|
+
readonly ICON: "ncua-message-notification__icon";
|
|
32
|
+
readonly TEXT_CONTAINER: "ncua-message-notification__text-container";
|
|
33
|
+
readonly TITLE: "ncua-message-notification__title";
|
|
34
|
+
readonly SUPPORTING_TEXT: "ncua-message-notification__supporting-text";
|
|
35
|
+
readonly ACTIONS_CONTAINER: "ncua-message-notification__actions-container";
|
|
36
|
+
readonly ACTIONS: "ncua-message-notification__actions";
|
|
37
|
+
readonly HIDE_LINK: "ncua-message-notification__hide-link";
|
|
38
|
+
readonly CLOSE_BUTTON: "ncua-message-notification__close-button";
|
|
39
|
+
};
|
|
26
40
|
readonly COMMON: {
|
|
27
41
|
readonly ACTION_BUTTON: "ncua-notification__action-button";
|
|
28
42
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type { NotificationColor, NotificationHierarchy, NotificationAction, BaseNotificationOptions } from './types';
|
|
2
2
|
export { SVG_ICONS, FLOATING_ICON_MAP, FULL_WIDTH_ICON_MAP, ICON_MAP } from './icons';
|
|
3
3
|
export { CLASS_NAMES } from './classNames';
|
|
4
|
-
export { FEATURED_ICON_SIZES, ICON_PIXEL_SIZES, CLOSE_BUTTON_SIZES, CLOSE_BUTTON_SVG_SIZES, FULL_WIDTH_SIZES, getSizes, } from './sizes';
|
|
4
|
+
export { FEATURED_ICON_SIZES, ICON_PIXEL_SIZES, CLOSE_BUTTON_SIZES, CLOSE_BUTTON_SVG_SIZES, FULL_WIDTH_SIZES, MESSAGE_SIZES, getSizes, } from './sizes';
|
|
5
|
+
export { MESSAGE_CLOSE_ICON_COLORS } from './types';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -19,6 +19,11 @@ export declare const FULL_WIDTH_SIZES: {
|
|
|
19
19
|
readonly ICON: "16";
|
|
20
20
|
readonly CLOSE_BUTTON: "20";
|
|
21
21
|
};
|
|
22
|
+
export declare const MESSAGE_SIZES: {
|
|
23
|
+
readonly FEATURED_ICON: "lg";
|
|
24
|
+
readonly ICON_PIXEL: "24";
|
|
25
|
+
readonly CLOSE_BUTTON: "20";
|
|
26
|
+
};
|
|
22
27
|
export declare const getSizes: {
|
|
23
28
|
readonly featuredIcon: (isMobile: boolean) => "sm" | "md";
|
|
24
29
|
readonly iconPixel: (isMobile: boolean) => "16" | "20";
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { Notification, type NotificationOptions } from './Notification';
|
|
2
2
|
export { FullWidthNotification, type FullWidthNotificationOptions } from './FullWidthNotification';
|
|
3
3
|
export { FloatingNotification, type FloatingNotificationOptions } from './FloatingNotification';
|
|
4
|
+
export { MessageNotification, type MessageNotificationOptions } from './MessageNotification';
|
|
4
5
|
export * from './utils';
|
|
5
6
|
export type { NotificationColor, NotificationHierarchy, NotificationAction, BaseNotificationOptions } from './const';
|
|
6
7
|
export { SVG_ICONS, CLASS_NAMES, ICON_MAP, FLOATING_ICON_MAP, FULL_WIDTH_ICON_MAP } from './const';
|
|
@@ -114,6 +114,10 @@ export declare class DropdownModel {
|
|
|
114
114
|
* 검색 및 필터링 업데이트 (SearchFilterUtils에서 이동)
|
|
115
115
|
*/
|
|
116
116
|
updateSearchAndFilter(searchValue: string, showAllItems?: boolean): void;
|
|
117
|
+
/**
|
|
118
|
+
* 검색어만 업데이트 (필터링 없이, API 모드용)
|
|
119
|
+
*/
|
|
120
|
+
updateSearchValue(searchValue: string): void;
|
|
117
121
|
/**
|
|
118
122
|
* 드롭다운이 열릴 수 있는지 확인 (ComboBox용)
|
|
119
123
|
*/
|
|
@@ -5,7 +5,7 @@ export interface UnifiedSelectBoxConfig {
|
|
|
5
5
|
placeholder?: string;
|
|
6
6
|
value?: OptionValue;
|
|
7
7
|
onChange?: (value: OptionValue) => void;
|
|
8
|
-
onSearch?: (searchValue: string) => void
|
|
8
|
+
onSearch?: (searchValue: string) => void | Promise<void>;
|
|
9
9
|
onEdit?: () => void;
|
|
10
10
|
onSelectAll?: () => void;
|
|
11
11
|
onSearchAll?: () => void;
|
|
@@ -48,6 +48,10 @@ export declare class UnifiedSelectBox {
|
|
|
48
48
|
private createSelectBoxUI;
|
|
49
49
|
private createDropdown;
|
|
50
50
|
private setupController;
|
|
51
|
+
/**
|
|
52
|
+
* 디바운싱 타이머 취소
|
|
53
|
+
*/
|
|
54
|
+
private cancelDebounceTimer;
|
|
51
55
|
private handleInput;
|
|
52
56
|
private handleInputClick;
|
|
53
57
|
private handleClearInput;
|
|
@@ -76,5 +80,20 @@ export declare class UnifiedSelectBox {
|
|
|
76
80
|
modelState: any;
|
|
77
81
|
isOpen: boolean;
|
|
78
82
|
};
|
|
83
|
+
/**
|
|
84
|
+
* 드롭다운을 스크롤의 바닥으로 이동
|
|
85
|
+
* 전체 선택 시 추가 데이터 로드를 트리거하기 위해 사용
|
|
86
|
+
*/
|
|
87
|
+
scrollToBottom(): void;
|
|
88
|
+
/**
|
|
89
|
+
* 전체 선택 버튼의 텍스트를 외부에서 변경
|
|
90
|
+
* @param text 버튼에 표시할 텍스트
|
|
91
|
+
*/
|
|
92
|
+
setSelectAllButtonText(text: string): void;
|
|
93
|
+
/**
|
|
94
|
+
* 특정 인덱스의 옵션으로 포커스 이동
|
|
95
|
+
* @param index 포커스를 이동할 옵션의 인덱스
|
|
96
|
+
*/
|
|
97
|
+
setFocusIndex(index: number): void;
|
|
79
98
|
}
|
|
80
99
|
//# sourceMappingURL=UnifiedSelectBox.d.ts.map
|
|
@@ -164,7 +164,7 @@ export declare const ButtonGroup: {
|
|
|
164
164
|
onBlurCapture?: React.FocusEventHandler<HTMLButtonElement> | undefined;
|
|
165
165
|
onChange?: React.FormEventHandler<HTMLButtonElement> | undefined;
|
|
166
166
|
onChangeCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
|
|
167
|
-
onBeforeInput?: React.
|
|
167
|
+
onBeforeInput?: React.InputEventHandler<HTMLButtonElement> | undefined;
|
|
168
168
|
onBeforeInputCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
|
|
169
169
|
onInput?: React.FormEventHandler<HTMLButtonElement> | undefined;
|
|
170
170
|
onInputCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
|
|
@@ -214,8 +214,6 @@ export declare const ButtonGroup: {
|
|
|
214
214
|
onProgressCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
215
215
|
onRateChange?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
216
216
|
onRateChangeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
217
|
-
onResize?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
218
|
-
onResizeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
219
217
|
onSeeked?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
220
218
|
onSeekedCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
221
219
|
onSeeking?: React.ReactEventHandler<HTMLButtonElement> | undefined;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Size } from '../../../constant/size';
|
|
2
|
+
export type ButtonStepperProps = {
|
|
3
|
+
size: Extract<Size, 'xs' | 'sm'>;
|
|
4
|
+
direction: 'up' | 'down';
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
onClick?: () => void;
|
|
7
|
+
className?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const ButtonStepper: ({ size, direction, disabled, onClick, className }: ButtonStepperProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=ButtonStepper.d.ts.map
|
|
@@ -8,6 +8,7 @@ export type DatePickerProps = {
|
|
|
8
8
|
datePickerOptions?: Options;
|
|
9
9
|
destructive?: string;
|
|
10
10
|
placeholder?: string;
|
|
11
|
+
isEndDate?: boolean;
|
|
11
12
|
onChangeDate: (date: string) => void;
|
|
12
13
|
} & Omit<DateTimePickerProps, 'size' | 'options' | 'value'>;
|
|
13
14
|
export declare const DatePicker: import("react").ForwardRefExoticComponent<Omit<DatePickerProps, "ref"> & import("react").RefAttributes<DateTimePickerHandle>>;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { Dispatch, SetStateAction } from 'react';
|
|
1
|
+
import { type Dispatch, type SetStateAction } from 'react';
|
|
2
2
|
import { PERIOD_ITEM } from '../../constant/date-picker';
|
|
3
|
-
import { RangeDatePickerProps } from './RangeDatePicker';
|
|
3
|
+
import { type RangeDatePickerProps } from './RangeDatePicker';
|
|
4
4
|
export type PeriodKeyType = keyof typeof PERIOD_ITEM;
|
|
5
5
|
type RangeDatePickerWithButtonsProps = {
|
|
6
|
-
|
|
6
|
+
useYesterdayAsEndDate?: boolean;
|
|
7
7
|
currentButtonId: PeriodKeyType;
|
|
8
8
|
setCurrentButtonId: Dispatch<SetStateAction<PeriodKeyType>>;
|
|
9
9
|
periodKeys: PeriodKeyType[];
|
|
10
10
|
size?: 'xs' | 'sm';
|
|
11
11
|
} & RangeDatePickerProps;
|
|
12
|
-
export declare const RangeDatePickerWithButtons: ({
|
|
12
|
+
export declare const RangeDatePickerWithButtons: ({ useYesterdayAsEndDate, size, currentButtonId, setCurrentButtonId, startDateOptions, endDateOptions, validationOption, periodKeys, onDateValidation, }: RangeDatePickerWithButtonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
13
|
export {};
|
|
14
14
|
//# sourceMappingURL=RangeDatePickerWithButtons.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InputBaseProps } from './InputBase';
|
|
2
|
+
type NumberInputProps = InputBaseProps & {
|
|
3
|
+
minValue?: number;
|
|
4
|
+
maxValue?: number;
|
|
5
|
+
step?: number;
|
|
6
|
+
stepperPosition?: 'leading' | 'trailing';
|
|
7
|
+
};
|
|
8
|
+
export declare const NumberInput: import("react").ForwardRefExoticComponent<NumberInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=NumberInput.d.ts.map
|
|
@@ -58,8 +58,8 @@ export type ModalHeaderProps = {
|
|
|
58
58
|
theme: FeaturedIconTheme;
|
|
59
59
|
};
|
|
60
60
|
align?: ModalHeaderAlign;
|
|
61
|
-
title?: string;
|
|
62
|
-
subtitle?: string;
|
|
61
|
+
title?: string | ReactNode;
|
|
62
|
+
subtitle?: string | ReactNode;
|
|
63
63
|
showDivider?: boolean;
|
|
64
64
|
hideCloseButton?: boolean;
|
|
65
65
|
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type IconName } from '@ncds/ui-admin-icon/dynamic';
|
|
2
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
3
|
+
import { NotificationAction, NotificationColor } from './Notification';
|
|
4
|
+
export interface MessageNotificationProps extends Omit<ComponentPropsWithoutRef<'div'>, 'title'> {
|
|
5
|
+
/**
|
|
6
|
+
* 알림 제목 텍스트
|
|
7
|
+
*/
|
|
8
|
+
title: ReactNode;
|
|
9
|
+
/**
|
|
10
|
+
* 알림 본문 텍스트 (선택사항)
|
|
11
|
+
*/
|
|
12
|
+
supportingText?: ReactNode;
|
|
13
|
+
/**
|
|
14
|
+
* 알림 아이콘 이름 (지정하지 않으면 color에 따라 기본 아이콘 사용)
|
|
15
|
+
*/
|
|
16
|
+
icon?: IconName;
|
|
17
|
+
/**
|
|
18
|
+
* 알림 색상 스타일
|
|
19
|
+
* @default 'neutral'
|
|
20
|
+
*/
|
|
21
|
+
color?: NotificationColor;
|
|
22
|
+
/**
|
|
23
|
+
* 닫기 버튼 클릭 이벤트 핸들러
|
|
24
|
+
*/
|
|
25
|
+
onClose?: () => void;
|
|
26
|
+
/**
|
|
27
|
+
* 추가 CSS 클래스
|
|
28
|
+
*/
|
|
29
|
+
className?: string;
|
|
30
|
+
/**
|
|
31
|
+
* 액션 버튼 영역 (선택사항)
|
|
32
|
+
*/
|
|
33
|
+
actions?: NotificationAction[];
|
|
34
|
+
/**
|
|
35
|
+
* 다시보지 않기 이벤트 핸들러 (선택사항)
|
|
36
|
+
*/
|
|
37
|
+
onHidePermanently?: () => void;
|
|
38
|
+
}
|
|
39
|
+
export declare const MessageNotification: import("react").ForwardRefExoticComponent<MessageNotificationProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
40
|
+
//# sourceMappingURL=MessageNotification.d.ts.map
|
|
@@ -2,7 +2,7 @@ import type { IconName } from '@ncds/ui-admin-icon/dynamic';
|
|
|
2
2
|
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
3
3
|
import { ColorTone } from '../../../constant/color';
|
|
4
4
|
import { ButtonTheme } from '../button';
|
|
5
|
-
export type NotificationType = 'floating' | 'full-width';
|
|
5
|
+
export type NotificationType = 'floating' | 'full-width' | 'message';
|
|
6
6
|
export type NotificationColor = Extract<ColorTone, 'neutral' | 'error' | 'warning' | 'success' | 'info'>;
|
|
7
7
|
export type NotificationSize = 'desktop' | 'mobile';
|
|
8
8
|
export interface NotificationAction {
|
|
@@ -61,6 +61,11 @@ export interface NotificationProps extends Omit<ComponentPropsWithoutRef<'div'>,
|
|
|
61
61
|
* @default 0
|
|
62
62
|
*/
|
|
63
63
|
autoClose?: number;
|
|
64
|
+
/**
|
|
65
|
+
* 다시보지 않기 이벤트 핸들러 (선택사항)
|
|
66
|
+
* message, full-width 타입에서 사용 가능
|
|
67
|
+
*/
|
|
68
|
+
onHidePermanently?: () => void;
|
|
64
69
|
}
|
|
65
70
|
export declare const Notification: import("react").ForwardRefExoticComponent<NotificationProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
66
71
|
//# sourceMappingURL=Notification.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Size } from '@ncds/ui-admin/constant/size';
|
|
2
1
|
import { ComponentPropsWithRef, PropsWithChildren } from 'react';
|
|
3
2
|
import { UseFormRegisterReturn } from 'react-hook-form';
|
|
3
|
+
import { Size } from '../../../constant/size';
|
|
4
4
|
import { OptionChangeHandler, OptionType, OptionValue } from '../../types/dropdown';
|
|
5
5
|
export declare const DEFAULT_MAX_HEIGHT = 275;
|
|
6
6
|
type BaseSelectBoxProps = Omit<ComponentPropsWithRef<'div'>, 'size' | 'onChange'>;
|
|
@@ -5,10 +5,12 @@ interface TooltipProps {
|
|
|
5
5
|
size?: 'sm' | 'md';
|
|
6
6
|
hideArrow?: boolean;
|
|
7
7
|
title?: string;
|
|
8
|
-
content?:
|
|
8
|
+
content?: React.ReactNode;
|
|
9
9
|
type?: 'long' | 'short';
|
|
10
10
|
className?: string;
|
|
11
|
+
iconColor?: string;
|
|
12
|
+
iconStyle?: 'help-circle' | 'alert-circle';
|
|
11
13
|
}
|
|
12
|
-
export declare const Tooltip: ({ tooltipType, iconType, position, size, title, content, hideArrow, type, className, }: TooltipProps) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare const Tooltip: ({ tooltipType, iconType, position, size, title, content, hideArrow, type, iconColor, iconStyle, className, }: TooltipProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
15
|
export {};
|
|
14
16
|
//# sourceMappingURL=Tooltip.d.ts.map
|