@loword/loword-design-system 0.0.10 → 0.0.13
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/components/LDAccordion/AccordionBase.d.ts +41 -0
- package/dist/components/LDAccordion/AccordionBase.d.ts.map +1 -0
- package/dist/components/LDAccordion/AccordionBase.js +24 -0
- package/dist/components/LDAccordion/LDAccordion.d.ts +31 -0
- package/dist/components/LDAccordion/LDAccordion.d.ts.map +1 -0
- package/dist/components/LDAccordion/LDAccordion.js +21 -0
- package/dist/components/LDAutoComplete/AutoCompleteBase.js +6 -6
- package/dist/components/LDAvatar/LDAvatar.d.ts +1 -1
- package/dist/components/LDAvatar/LDAvatar.d.ts.map +1 -1
- package/dist/components/LDAvatar/LDAvatar.js +19 -10
- package/dist/components/LDBadge/LDBadge.d.ts +5 -6
- package/dist/components/LDBadge/LDBadge.d.ts.map +1 -1
- package/dist/components/LDBadge/LDBadge.js +2 -2
- package/dist/components/LDBreadCrumb/LDBreadCrumb.d.ts +1 -2
- package/dist/components/LDBreadCrumb/LDBreadCrumb.d.ts.map +1 -1
- package/dist/components/LDButton/LDButton.d.ts +3 -3
- package/dist/components/LDButton/LDButton.d.ts.map +1 -1
- package/dist/components/LDButton/LDButton.js +5 -5
- package/dist/components/LDCalendar/CalendarBase.d.ts +17 -0
- package/dist/components/LDCalendar/CalendarBase.d.ts.map +1 -0
- package/dist/components/LDCalendar/CalendarBase.js +49 -0
- package/dist/components/LDCalendar/LDCalendar.d.ts +8 -14
- package/dist/components/LDCalendar/LDCalendar.d.ts.map +1 -1
- package/dist/components/LDCalendar/LDCalendar.js +51 -39
- package/dist/components/LDCarousel/CarouselBase.d.ts +3 -3
- package/dist/components/LDCarousel/CarouselBase.d.ts.map +1 -1
- package/dist/components/LDCarousel/CarouselBase.js +12 -6
- package/dist/components/LDCarousel/LDCarousel.d.ts +7 -8
- package/dist/components/LDCarousel/LDCarousel.d.ts.map +1 -1
- package/dist/components/LDCarousel/LDCarousel.js +2 -2
- package/dist/components/LDCheckbox/CheckboxBase.d.ts +1 -3
- package/dist/components/LDCheckbox/CheckboxBase.d.ts.map +1 -1
- package/dist/components/LDCheckbox/CheckboxBase.js +4 -4
- package/dist/components/LDCheckbox/LDCheckbox.d.ts +2 -5
- package/dist/components/LDCheckbox/LDCheckbox.d.ts.map +1 -1
- package/dist/components/LDCheckbox/LDCheckbox.js +66 -8
- package/dist/components/LDCheckbox/LDCheckboxGroup.d.ts +3 -3
- package/dist/components/LDCheckbox/LDCheckboxGroup.d.ts.map +1 -1
- package/dist/components/LDCheckbox/LDCheckboxGroup.js +11 -2
- package/dist/components/LDCheckbox/LDFormCheckbox.d.ts +12 -0
- package/dist/components/LDCheckbox/LDFormCheckbox.d.ts.map +1 -0
- package/dist/components/LDCheckbox/LDFormCheckbox.js +8 -0
- package/dist/components/LDCheckbox/LDFormCheckboxGroup.d.ts +11 -0
- package/dist/components/LDCheckbox/LDFormCheckboxGroup.d.ts.map +1 -0
- package/dist/components/LDCheckbox/LDFormCheckboxGroup.js +8 -0
- package/dist/components/LDDataCalendar/DataCalendarBase.d.ts +17 -1
- package/dist/components/LDDataCalendar/DataCalendarBase.d.ts.map +1 -1
- package/dist/components/LDDataCalendar/DataCalendarBase.js +34 -4
- package/dist/components/LDDataCalendar/LDDataCalendar.d.ts +27 -10
- package/dist/components/LDDataCalendar/LDDataCalendar.d.ts.map +1 -1
- package/dist/components/LDDataCalendar/LDDataCalendar.js +8 -8
- package/dist/components/LDDatePicker/LDDatePicker.d.ts +10 -4
- package/dist/components/LDDatePicker/LDDatePicker.d.ts.map +1 -1
- package/dist/components/LDDatePicker/LDDatePicker.js +95 -25
- package/dist/components/LDDatePicker/LDFormDatePicker.d.ts +13 -0
- package/dist/components/LDDatePicker/LDFormDatePicker.d.ts.map +1 -0
- package/dist/components/LDDatePicker/LDFormDatePicker.js +15 -0
- package/dist/components/LDDateRangePicker/LDDateRangePicker.d.ts +13 -6
- package/dist/components/LDDateRangePicker/LDDateRangePicker.d.ts.map +1 -1
- package/dist/components/LDDateRangePicker/LDDateRangePicker.js +143 -93
- package/dist/components/LDDateRangePicker/LDFormDateRangePicker.d.ts +13 -0
- package/dist/components/LDDateRangePicker/LDFormDateRangePicker.d.ts.map +1 -0
- package/dist/components/LDDateRangePicker/LDFormDateRangePicker.js +20 -0
- package/dist/components/LDDrawer/LDDrawer.d.ts +2 -0
- package/dist/components/LDDrawer/LDDrawer.d.ts.map +1 -1
- package/dist/components/LDDrawer/LDDrawer.js +2 -2
- package/dist/components/LDEditor/LDEditor.d.ts.map +1 -1
- package/dist/components/LDEditor/LDEditor.js +94 -54
- package/dist/components/LDEmpty/EmptyBase.d.ts +19 -0
- package/dist/components/LDEmpty/EmptyBase.d.ts.map +1 -0
- package/dist/components/LDEmpty/EmptyBase.js +18 -0
- package/dist/components/LDEmpty/LDEmpty.d.ts +35 -0
- package/dist/components/LDEmpty/LDEmpty.d.ts.map +1 -0
- package/dist/components/LDEmpty/LDEmpty.js +30 -0
- package/dist/components/LDFileUpload/FileUploadBase.d.ts +11 -3
- package/dist/components/LDFileUpload/FileUploadBase.d.ts.map +1 -1
- package/dist/components/LDFileUpload/FileUploadBase.js +21 -21
- package/dist/components/LDFileUpload/LDFileUpload.d.ts +3 -0
- package/dist/components/LDFileUpload/LDFileUpload.d.ts.map +1 -1
- package/dist/components/LDFileUpload/LDFileUpload.js +3 -3
- package/dist/components/LDFileUpload/LDFileUploadList.d.ts +3 -0
- package/dist/components/LDFileUpload/LDFileUploadList.d.ts.map +1 -1
- package/dist/components/LDFileUpload/LDFileUploadList.js +1 -3
- package/dist/components/LDFileUpload/LDImageUpload.d.ts +5 -0
- package/dist/components/LDFileUpload/LDImageUpload.d.ts.map +1 -1
- package/dist/components/LDFileUpload/LDImageUpload.js +5 -3
- package/dist/components/LDFileUpload/LDImageUploadList.d.ts +3 -0
- package/dist/components/LDFileUpload/LDImageUploadList.d.ts.map +1 -1
- package/dist/components/LDFileUpload/LDImageUploadList.js +1 -3
- package/dist/components/LDForm/LDFormErrorMessage.d.ts +3 -1
- package/dist/components/LDForm/LDFormErrorMessage.d.ts.map +1 -1
- package/dist/components/LDForm/LDFormErrorMessage.js +2 -2
- package/dist/components/LDInput/InputBase.d.ts +5 -3
- package/dist/components/LDInput/InputBase.d.ts.map +1 -1
- package/dist/components/LDInput/InputBase.js +4 -4
- package/dist/components/LDInput/LDFormInput.d.ts +1 -1
- package/dist/components/LDInput/LDFormInput.d.ts.map +1 -1
- package/dist/components/LDInput/LDFormInput.js +17 -14
- package/dist/components/LDInput/LDInput.d.ts +10 -3
- package/dist/components/LDInput/LDInput.d.ts.map +1 -1
- package/dist/components/LDInput/LDInput.js +114 -50
- package/dist/components/LDLNB/LDLNB.d.ts +42 -0
- package/dist/components/LDLNB/LDLNB.d.ts.map +1 -0
- package/dist/components/LDLNB/LDLNB.js +34 -0
- package/dist/components/LDLNB/LDLNBBase.d.ts +5 -13
- package/dist/components/LDLNB/LDLNBBase.d.ts.map +1 -1
- package/dist/components/LDLNB/LDLNBBase.js +52 -18
- package/dist/components/LDMenuBar/LDMenuBar.d.ts +33 -19
- package/dist/components/LDMenuBar/LDMenuBar.d.ts.map +1 -1
- package/dist/components/LDMenuBar/LDMenuBar.js +13 -27
- package/dist/components/LDMenuBar/MenuBarBase.d.ts +4 -5
- package/dist/components/LDMenuBar/MenuBarBase.d.ts.map +1 -1
- package/dist/components/LDMenuBar/MenuBarBase.js +12 -14
- package/dist/components/LDModal/LDModal.d.ts +20 -40
- package/dist/components/LDModal/LDModal.d.ts.map +1 -1
- package/dist/components/LDModal/LDModal.js +56 -70
- package/dist/components/LDModal/LDModalView.d.ts +59 -0
- package/dist/components/LDModal/LDModalView.d.ts.map +1 -0
- package/dist/components/LDModal/LDModalView.js +72 -0
- package/dist/components/LDNotification/LDNotification.d.ts +40 -0
- package/dist/components/LDNotification/LDNotification.d.ts.map +1 -0
- package/dist/components/LDNotification/LDNotification.js +76 -0
- package/dist/components/LDNotification/NotificationBase.d.ts +29 -0
- package/dist/components/LDNotification/NotificationBase.d.ts.map +1 -0
- package/dist/components/LDNotification/NotificationBase.js +27 -0
- package/dist/components/LDOTPInput/LDFormOTPInput.d.ts +15 -0
- package/dist/components/LDOTPInput/LDFormOTPInput.d.ts.map +1 -0
- package/dist/components/LDOTPInput/LDFormOTPInput.js +8 -0
- package/dist/components/LDOTPInput/LDOTPInput.d.ts +10 -22
- package/dist/components/LDOTPInput/LDOTPInput.d.ts.map +1 -1
- package/dist/components/LDOTPInput/LDOTPInput.js +44 -72
- package/dist/components/LDOTPInput/OTPInputBase.d.ts +46 -0
- package/dist/components/LDOTPInput/OTPInputBase.d.ts.map +1 -0
- package/dist/components/LDOTPInput/OTPInputBase.js +48 -0
- package/dist/components/LDPagination/LDPagination.d.ts +5 -1
- package/dist/components/LDPagination/LDPagination.d.ts.map +1 -1
- package/dist/components/LDPagination/LDPagination.js +3 -1
- package/dist/components/LDPagination/PaginationBase.d.ts +13 -4
- package/dist/components/LDPagination/PaginationBase.d.ts.map +1 -1
- package/dist/components/LDPagination/PaginationBase.js +8 -7
- package/dist/components/LDPopover/LDPopover.d.ts +1 -1
- package/dist/components/LDPopover/LDPopover.d.ts.map +1 -1
- package/dist/components/LDPopover/LDPopover.js +8 -7
- package/dist/components/LDProgressBar/LDProgressBar.d.ts +16 -0
- package/dist/components/LDProgressBar/LDProgressBar.d.ts.map +1 -0
- package/dist/components/LDProgressBar/LDProgressBar.js +9 -0
- package/dist/components/LDProgressBar/ProgressBarBase.d.ts +11 -0
- package/dist/components/LDProgressBar/ProgressBarBase.d.ts.map +1 -0
- package/dist/components/LDProgressBar/ProgressBarBase.js +10 -0
- package/dist/components/LDRadio/LDFormRadioGroup.d.ts +11 -0
- package/dist/components/LDRadio/LDFormRadioGroup.d.ts.map +1 -0
- package/dist/components/LDRadio/LDFormRadioGroup.js +8 -0
- package/dist/components/LDRadio/LDRadio.d.ts +2 -2
- package/dist/components/LDRadio/LDRadio.d.ts.map +1 -1
- package/dist/components/LDRadio/LDRadio.js +70 -15
- package/dist/components/LDRadio/LDRadioGroup.d.ts +5 -3
- package/dist/components/LDRadio/LDRadioGroup.d.ts.map +1 -1
- package/dist/components/LDRadio/LDRadioGroup.js +11 -2
- package/dist/components/LDRadio/RadioBase.d.ts +2 -3
- package/dist/components/LDRadio/RadioBase.d.ts.map +1 -1
- package/dist/components/LDRadio/RadioBase.js +7 -4
- package/dist/components/LDSectionNav/LDSectionNav.d.ts +11 -0
- package/dist/components/LDSectionNav/LDSectionNav.d.ts.map +1 -0
- package/dist/components/LDSectionNav/LDSectionNav.js +11 -0
- package/dist/components/LDSectionNav/SectionNavBase.d.ts +20 -0
- package/dist/components/LDSectionNav/SectionNavBase.d.ts.map +1 -0
- package/dist/components/LDSectionNav/SectionNavBase.js +53 -0
- package/dist/components/LDSelect/LDFormMultiSelect.d.ts +13 -0
- package/dist/components/LDSelect/LDFormMultiSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/{FormMultiSelect.js → LDFormMultiSelect.js} +2 -2
- package/dist/components/LDSelect/LDFormSelect.d.ts +13 -0
- package/dist/components/LDSelect/LDFormSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/LDFormSelect.js +10 -0
- package/dist/components/LDSelect/LDMultiSelect.d.ts +6 -3
- package/dist/components/LDSelect/LDMultiSelect.d.ts.map +1 -1
- package/dist/components/LDSelect/LDMultiSelect.js +35 -31
- package/dist/components/LDSelect/LDSelect.d.ts +6 -3
- package/dist/components/LDSelect/LDSelect.d.ts.map +1 -1
- package/dist/components/LDSelect/LDSelect.js +37 -30
- package/dist/components/LDSelect/SelectBase.d.ts.map +1 -1
- package/dist/components/LDSelect/SelectBase.js +21 -7
- package/dist/components/LDSpinner/LDSpinner.d.ts +1 -1
- package/dist/components/LDSpinner/LDSpinner.d.ts.map +1 -1
- package/dist/components/LDSpinner/LDSpinner.js +6 -6
- package/dist/components/LDTable/LDCollapsibleTanstackTable.d.ts.map +1 -1
- package/dist/components/LDTable/LDCollapsibleTanstackTable.js +12 -9
- package/dist/components/LDTable/LDTable.d.ts.map +1 -1
- package/dist/components/LDTable/LDTable.js +1 -1
- package/dist/components/LDTable/LDTanstackTable.d.ts.map +1 -1
- package/dist/components/LDTable/LDTanstackTable.js +6 -7
- package/dist/components/LDTable/TableField.d.ts +1 -1
- package/dist/components/LDTable/TableField.d.ts.map +1 -1
- package/dist/components/LDTextarea/LDFormTextarea.d.ts +14 -0
- package/dist/components/LDTextarea/LDFormTextarea.d.ts.map +1 -0
- package/dist/components/LDTextarea/{FormTextarea.js → LDFormTextarea.js} +2 -2
- package/dist/components/LDTextarea/LDTextarea.d.ts +1 -1
- package/dist/components/LDTextarea/LDTextarea.d.ts.map +1 -1
- package/dist/components/LDTextarea/LDTextarea.js +30 -30
- package/dist/components/LDTimePicker/LDFormTimePicker.d.ts +12 -0
- package/dist/components/LDTimePicker/LDFormTimePicker.d.ts.map +1 -0
- package/dist/components/LDTimePicker/{FormTimePicker.js → LDFormTimePicker.js} +3 -3
- package/dist/components/LDTimePicker/LDTimePicker.js +3 -3
- package/dist/components/LDToast/LDToast.js +1 -1
- package/dist/components/LDToast/LDToaster.d.ts +2 -1
- package/dist/components/LDToast/LDToaster.d.ts.map +1 -1
- package/dist/components/LDToast/LDToaster.js +2 -2
- package/dist/components/LDToggleButton/LDFormToggleButton.d.ts +10 -0
- package/dist/components/LDToggleButton/LDFormToggleButton.d.ts.map +1 -0
- package/dist/components/LDToggleButton/LDFormToggleButton.js +8 -0
- package/dist/components/LDTooltip/LDTooltip.js +1 -1
- package/dist/components/LDTooltip/TooltipBase.d.ts +6 -2
- package/dist/components/LDTooltip/TooltipBase.d.ts.map +1 -1
- package/dist/components/LDTooltip/TooltipBase.js +4 -4
- package/dist/index.css +913 -307
- package/dist/index.d.ts +28 -19
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -20
- package/dist/utils/file.d.ts +2 -2
- package/dist/utils/file.d.ts.map +1 -1
- package/dist/utils/file.js +26 -23
- package/dist/utils/renderIcon.d.ts +1 -2
- package/dist/utils/renderIcon.d.ts.map +1 -1
- package/dist/utils/renderIcon.js +5 -4
- package/package.json +14 -2
- package/src/styles/carousel.css +15 -14
- package/src/styles/components/button.css +2 -2
- package/src/styles/components/editor.css +6 -0
- package/src/styles/components/index.css +1 -0
- package/src/styles/components/input.css +16 -2
- package/src/styles/components/select.css +61 -0
- package/src/styles/components/shared.css +6 -6
- package/src/styles/motion.css +115 -0
- package/src/theme.css +3 -0
- package/dist/components/Icon/LucideIcon.d.ts +0 -12
- package/dist/components/Icon/LucideIcon.d.ts.map +0 -1
- package/dist/components/Icon/LucideIcon.js +0 -49
- package/dist/components/LDCheckbox/FormCheckbox.d.ts +0 -14
- package/dist/components/LDCheckbox/FormCheckbox.d.ts.map +0 -1
- package/dist/components/LDCheckbox/FormCheckbox.js +0 -9
- package/dist/components/LDCheckbox/FormCheckboxGroup.d.ts +0 -13
- package/dist/components/LDCheckbox/FormCheckboxGroup.d.ts.map +0 -1
- package/dist/components/LDCheckbox/FormCheckboxGroup.js +0 -9
- package/dist/components/LDDatePicker/FormDatePicker.d.ts +0 -12
- package/dist/components/LDDatePicker/FormDatePicker.d.ts.map +0 -1
- package/dist/components/LDDatePicker/FormDatePicker.js +0 -12
- package/dist/components/LDDateRangePicker/FormDateRangePicker.d.ts +0 -12
- package/dist/components/LDDateRangePicker/FormDateRangePicker.d.ts.map +0 -1
- package/dist/components/LDDateRangePicker/FormDateRangePicker.js +0 -10
- package/dist/components/LDModal/openModal.d.ts +0 -24
- package/dist/components/LDModal/openModal.d.ts.map +0 -1
- package/dist/components/LDModal/openModal.js +0 -52
- package/dist/components/LDRadio/FormRadioGroup.d.ts +0 -13
- package/dist/components/LDRadio/FormRadioGroup.d.ts.map +0 -1
- package/dist/components/LDRadio/FormRadioGroup.js +0 -9
- package/dist/components/LDSelect/FormMultiSelect.d.ts +0 -13
- package/dist/components/LDSelect/FormMultiSelect.d.ts.map +0 -1
- package/dist/components/LDSelect/FormSelect.d.ts +0 -13
- package/dist/components/LDSelect/FormSelect.d.ts.map +0 -1
- package/dist/components/LDSelect/FormSelect.js +0 -10
- package/dist/components/LDTextarea/FormTextarea.d.ts +0 -14
- package/dist/components/LDTextarea/FormTextarea.d.ts.map +0 -1
- package/dist/components/LDTimePicker/FormTimePicker.d.ts +0 -12
- package/dist/components/LDTimePicker/FormTimePicker.d.ts.map +0 -1
- package/dist/components/LDToggleButton/FormToggleButton.d.ts +0 -12
- package/dist/components/LDToggleButton/FormToggleButton.d.ts.map +0 -1
- package/dist/components/LDToggleButton/FormToggleButton.js +0 -9
|
@@ -1,12 +1,29 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { Dayjs } from 'dayjs';
|
|
3
|
+
export interface LDDataCalendarProps {
|
|
4
|
+
className?: string;
|
|
5
|
+
/** 초기 표시 월 */
|
|
6
|
+
defaultMonth?: Dayjs;
|
|
7
|
+
/** 월 이동 시 호출 */
|
|
8
|
+
onMonthChange?: (month: Dayjs) => void;
|
|
9
|
+
/** 셀 클릭으로 날짜 선택 허용 (기본 false, 표시 전용) */
|
|
10
|
+
selectable?: boolean;
|
|
11
|
+
/** 초기 선택 날짜 */
|
|
12
|
+
defaultSelectedDate?: Dayjs;
|
|
13
|
+
/** 선택 변경 시 호출 */
|
|
14
|
+
onSelectDate?: (date: Dayjs) => void;
|
|
15
|
+
/** 요일 헤더 (기본 일~토) */
|
|
16
|
+
weekdays?: string[];
|
|
17
|
+
/** 날짜 숫자 아래에 그릴 커스텀 콘텐츠(데이터 등). isOutside면 이전/다음 달 셀 */
|
|
18
|
+
renderCell?: (date: Dayjs, isOutside: boolean) => ReactNode;
|
|
19
|
+
/** 선택 상세(모바일 Detail 슬롯). 지정 시 그리드 아래에 Detail 렌더 */
|
|
20
|
+
renderDetail?: (date: Dayjs | null) => ReactNode;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* LDDataCalendar — DataCalendarBase 컴파운드를 조립한 표시 전용 데이터 달력.
|
|
24
|
+
* 헤더(Prev·Title·Next)·그리드·셀 스타일은 컴포넌트가 제공하고,
|
|
25
|
+
* 날짜별 데이터는 `renderCell`, 선택 상세는 `renderDetail`로 주입한다.
|
|
26
|
+
*/
|
|
27
|
+
declare const LDDataCalendar: ({ className, defaultMonth, onMonthChange, selectable, defaultSelectedDate, onSelectDate, weekdays, renderCell, renderDetail, }: LDDataCalendarProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
28
|
export default LDDataCalendar;
|
|
12
29
|
//# sourceMappingURL=LDDataCalendar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LDDataCalendar.d.ts","sourceRoot":"","sources":["../../../src/components/LDDataCalendar/LDDataCalendar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"LDDataCalendar.d.ts","sourceRoot":"","sources":["../../../src/components/LDDataCalendar/LDDataCalendar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAKnC,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc;IACd,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,gBAAgB;IAChB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACvC,wCAAwC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe;IACf,mBAAmB,CAAC,EAAE,KAAK,CAAC;IAC5B,iBAAiB;IACjB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC;IACrC,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,wDAAwD;IACxD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,KAAK,SAAS,CAAC;IAC5D,mDAAmD;IACnD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC;CAClD;AAKD;;;;GAIG;AACH,QAAA,MAAM,cAAc,GAAI,gIAUrB,mBAAmB,4CA2CrB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { ChevronLeft, ChevronRight } from 'lucide-react';
|
|
4
4
|
import cn from '../../utils/cn.js';
|
|
5
5
|
import DataCalendarBase from './DataCalendarBase.js';
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const LDDataCalendar = { Root,
|
|
6
|
+
const navButtonClass = 'flex items-center justify-center rounded-full size-[30px] bg-neutral100 hover:bg-mono400 text-neutral500 hover:text-neutral900 ld-transition cursor-pointer';
|
|
7
|
+
/**
|
|
8
|
+
* LDDataCalendar — DataCalendarBase 컴파운드를 조립한 표시 전용 데이터 달력.
|
|
9
|
+
* 헤더(Prev·Title·Next)·그리드·셀 스타일은 컴포넌트가 제공하고,
|
|
10
|
+
* 날짜별 데이터는 `renderCell`, 선택 상세는 `renderDetail`로 주입한다.
|
|
11
|
+
*/
|
|
12
|
+
const LDDataCalendar = ({ className, defaultMonth, onMonthChange, selectable, defaultSelectedDate, onSelectDate, weekdays, renderCell, renderDetail, }) => (_jsxs(DataCalendarBase.Root, { className: cn('w-full select-none', className), defaultMonth: defaultMonth, onMonthChange: onMonthChange, selectable: selectable, defaultSelectedDate: defaultSelectedDate, onSelectDate: onSelectDate, children: [_jsxs("div", { className: "flex items-center justify-between mb-md", children: [_jsx(DataCalendarBase.Prev, { className: navButtonClass, children: _jsx(ChevronLeft, { size: 15 }) }), _jsx(DataCalendarBase.Title, { className: "display32 mobile:display20 bold flex justify-center" }), _jsx(DataCalendarBase.Next, { className: navButtonClass, children: _jsx(ChevronRight, { size: 16 }) })] }), _jsx(DataCalendarBase.Grid, { weekdays: weekdays, weekdayClassName: "display14 mobile:display12 text-mono500 py-[10px] mobile:py-1", renderCell: (date, _i, isOutside) => (_jsx(DataCalendarBase.Cell, { date: date, isOutside: isOutside, className: cn('min-h-[100px] mobile:min-h-13 py-[10px] mobile:py-1 flex flex-col gap-[15px] mobile:gap-1 data-outside:*:text-mono400', 'data-selectable:cursor-pointer data-selectable:hover:bg-mono100 data-selectable:rounded-[5px] ld-transition', 'data-[selected=true]:bg-tintBlue data-[selected=true]:hover:bg-tintBlue'), dateClassName: "display16 mobile:display12 font-normal self-start leading-none data-[outside]:text-mono400 data-[outside]:font-normal data-[weekend]:text-danger600 data-[outside]:data-[weekend]:text-danger200", children: renderCell?.(date, isOutside) }, date.format('YYYY-MM-DD'))) }), renderDetail && (_jsx(DataCalendarBase.Detail, { className: "hidden mobile:block mt-md p-md rounded-[10px] bg-mono50", children: renderDetail }))] }));
|
|
13
13
|
export default LDDataCalendar;
|
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
+
type DatePickerVariant = 'filled' | 'outline';
|
|
3
|
+
type DatePickerColor = 'neutral' | 'point' | 'danger';
|
|
2
4
|
export interface LDDatePickerProps {
|
|
5
|
+
variant?: DatePickerVariant;
|
|
6
|
+
color?: DatePickerColor;
|
|
3
7
|
/** 선택된 날짜 (controlled) */
|
|
4
8
|
value?: Date;
|
|
5
|
-
/**
|
|
9
|
+
/** 원래 값(baseline). 현재 값이 이 값과 다르면 rotate가 나타나고, 누르면 이 값으로 되돌린다. */
|
|
6
10
|
defaultValue?: Date;
|
|
7
|
-
/**
|
|
11
|
+
/** 확인/닫기 시 커밋되는 콜백 */
|
|
8
12
|
onChange?: (value: Date | undefined) => void;
|
|
9
13
|
/** 미선택 시 표시할 텍스트 */
|
|
10
14
|
placeholder?: string;
|
|
15
|
+
dateFormat?: string;
|
|
16
|
+
timeFormat?: string;
|
|
11
17
|
/** 비활성화 여부 */
|
|
12
18
|
disabled?: boolean;
|
|
13
19
|
/** true 시 너비 100% */
|
|
14
20
|
block?: boolean;
|
|
15
21
|
/** 색상 테마 (danger 시 에러 스타일) */
|
|
16
|
-
color?: 'neutral' | 'danger';
|
|
17
22
|
/** 현재 시점 이후 날짜 선택 비활성화 */
|
|
18
23
|
isDisableAfterNow?: boolean;
|
|
19
24
|
/** 최소 선택 가능 날짜 */
|
|
@@ -28,7 +33,8 @@ export interface LDDatePickerProps {
|
|
|
28
33
|
style?: React.CSSProperties;
|
|
29
34
|
/** 트리거 버튼 className */
|
|
30
35
|
triggerClassName?: string;
|
|
36
|
+
isExistTime?: boolean;
|
|
31
37
|
}
|
|
32
|
-
declare const LDDatePicker: ({ value, defaultValue, onChange, placeholder, disabled, block,
|
|
38
|
+
declare const LDDatePicker: ({ variant, color, value, defaultValue, onChange, placeholder, dateFormat, timeFormat, disabled, block, isDisableAfterNow, minDate, trailingIcon, showReset, isExistTime, className, style, triggerClassName, }: LDDatePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
33
39
|
export default LDDatePicker;
|
|
34
40
|
//# sourceMappingURL=LDDatePicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LDDatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/LDDatePicker/LDDatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"LDDatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/LDDatePicker/LDDatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EAKf,MAAM,OAAO,CAAC;AASf,KAAK,iBAAiB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC9C,KAAK,eAAe,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAYtD,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,mEAAmE;IACnE,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAC7C,oBAAoB;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,0BAA0B;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB;IAClB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,iBAAiB;IACjB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,uBAAuB;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAyBD,QAAA,MAAM,YAAY,GAAI,gNAmBnB,iBAAiB,4CA6KnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,42 +1,112 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useState } from 'react';
|
|
3
|
+
import { useCallback, useEffect, useMemo, useState, } from 'react';
|
|
4
4
|
import dayjs from 'dayjs';
|
|
5
5
|
import { ko } from 'react-day-picker/locale';
|
|
6
6
|
import PopoverBase from '../LDPopover/PopoverBase.js';
|
|
7
|
-
import LDCalendar from '../LDCalendar/LDCalendar.js';
|
|
8
|
-
import LucideIcon from '../Icon/LucideIcon.js';
|
|
7
|
+
import LDCalendar, { TimePicker } from '../LDCalendar/LDCalendar.js';
|
|
9
8
|
import cn from '../../utils/cn.js';
|
|
10
|
-
|
|
9
|
+
import { Calendar, RotateCw } from 'lucide-react';
|
|
10
|
+
import LDButton from '../../components/LDButton/LDButton.js';
|
|
11
|
+
const timeFromDate = (selectedDate) => selectedDate ? dayjs(selectedDate).format('HH:mm:ss') : '00:00:00';
|
|
12
|
+
const combineDateTime = (date, time) => {
|
|
13
|
+
if (!date)
|
|
14
|
+
return undefined;
|
|
15
|
+
const [h = 0, m = 0, s = 0] = (time ?? '00:00:00').split(':').map(Number);
|
|
16
|
+
return dayjs(date).hour(h).minute(m).second(s).toDate();
|
|
17
|
+
};
|
|
18
|
+
// ── 스타일 매핑 ──
|
|
19
|
+
const variantColorClasses = {
|
|
20
|
+
filled: {
|
|
21
|
+
neutral: 'bg-neutral50 text-neutral900 border-none outline-2 outline-transparent [outline-style:solid] [outline-offset:-2px] focus:bg-tintBlue focus:outline-lb500',
|
|
22
|
+
point: 'bg-tintBlue text-neutral900 border-none outline-2 outline-transparent [outline-style:solid] [outline-offset:-2px] focus:outline-lb500',
|
|
23
|
+
danger: 'bg-tintRed text-neutral900 border-none outline-2 outline-transparent [outline-style:solid] [outline-offset:-2px] outline-danger600',
|
|
24
|
+
},
|
|
25
|
+
outline: {
|
|
26
|
+
neutral: 'bg-transparent text-neutral900 border-none outline-2 outline-neutral100 [outline-style:solid] [outline-offset:-2px] focus:outline-lb500',
|
|
27
|
+
point: 'bg-transparent text-neutral900 border-none outline-2 outline-lb500 [outline-style:solid] [outline-offset:-2px]',
|
|
28
|
+
danger: 'bg-transparent text-neutral900 border-none outline-2 outline-danger600 [outline-style:solid] [outline-offset:-2px]',
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
const LDDatePicker = ({ variant = 'filled', color = 'neutral', value, defaultValue, onChange, placeholder, dateFormat = 'YYYYMMDD', timeFormat = 'HH:MM:SS', disabled = false, block = false, isDisableAfterNow = false, minDate, trailingIcon = _jsx(Calendar, { size: 15, className: "text-mono400" }), showReset = true, isExistTime = true, className, style, triggerClassName, }) => {
|
|
11
32
|
const [open, setOpen] = useState(false);
|
|
12
|
-
const [
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
33
|
+
const [selectedDate, setSelectedDate] = useState(value);
|
|
34
|
+
const [selectedTime, setSelectedTime] = useState(timeFromDate(value));
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
if (open)
|
|
37
|
+
return;
|
|
38
|
+
setSelectedDate(value);
|
|
39
|
+
setSelectedTime(timeFromDate(value));
|
|
40
|
+
}, [open, value]);
|
|
41
|
+
const placeholderText = useMemo(() => {
|
|
42
|
+
if (placeholder)
|
|
43
|
+
return placeholder;
|
|
44
|
+
if (!isExistTime)
|
|
45
|
+
return dateFormat;
|
|
46
|
+
return `${dateFormat} ${timeFormat}`;
|
|
47
|
+
}, [placeholder, isExistTime, dateFormat, timeFormat]);
|
|
48
|
+
const reset = (d) => {
|
|
49
|
+
setSelectedDate(d);
|
|
50
|
+
setSelectedTime(timeFromDate(d));
|
|
20
51
|
};
|
|
21
52
|
const handleReset = (e) => {
|
|
22
53
|
e.stopPropagation();
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
54
|
+
reset(defaultValue);
|
|
55
|
+
if (!open)
|
|
56
|
+
onChange?.(defaultValue);
|
|
57
|
+
};
|
|
58
|
+
const handleConfirm = () => {
|
|
59
|
+
onChange?.(combineDateTime(selectedDate, selectedTime));
|
|
60
|
+
setOpen(false);
|
|
61
|
+
};
|
|
62
|
+
const handleCancel = () => {
|
|
63
|
+
reset(value);
|
|
64
|
+
setOpen(false);
|
|
65
|
+
};
|
|
66
|
+
const handleOpenChange = (next) => {
|
|
67
|
+
if (next) {
|
|
68
|
+
reset(value);
|
|
69
|
+
setOpen(true);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (selectedDate)
|
|
73
|
+
handleConfirm();
|
|
74
|
+
else
|
|
75
|
+
setOpen(false);
|
|
76
|
+
};
|
|
77
|
+
const handleSelect = useCallback((date) => {
|
|
78
|
+
setSelectedDate(date);
|
|
79
|
+
}, []);
|
|
80
|
+
const handleSelectedTime = (time) => {
|
|
81
|
+
setSelectedTime(time);
|
|
26
82
|
};
|
|
27
|
-
|
|
83
|
+
const isSameAsDefault = (combineDateTime(selectedDate, selectedTime)?.getTime() ?? null) ===
|
|
84
|
+
(defaultValue?.getTime() ?? null);
|
|
85
|
+
const showRotate = showReset && !isSameAsDefault;
|
|
86
|
+
const displayDate = open
|
|
87
|
+
? combineDateTime(selectedDate, selectedTime)
|
|
88
|
+
: value;
|
|
89
|
+
const isDateDisabled = useMemo(() => {
|
|
90
|
+
if (isDisableAfterNow)
|
|
91
|
+
return (date) => date > new Date();
|
|
92
|
+
if (minDate) {
|
|
93
|
+
return (date) => {
|
|
94
|
+
const dateOnly = new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
|
95
|
+
const minDateOnly = new Date(minDate.getFullYear(), minDate.getMonth(), minDate.getDate());
|
|
96
|
+
return dateOnly < minDateOnly;
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
return false;
|
|
100
|
+
}, [isDisableAfterNow, minDate]);
|
|
101
|
+
return (_jsx("div", { className: cn(block ? 'w-full' : 'w-auto', className), children: _jsxs(PopoverBase.Root, { open: open, onOpenChange: handleOpenChange, children: [_jsxs(PopoverBase.Trigger, { disabled: disabled, style: style, className: cn('border border-neutral100 h-[38px] w-full display14 px-4 rounded-[5px]', 'flex flex-row items-center justify-between gap-4', 'outline-2 outline-transparent ld-transition', disabled
|
|
102
|
+
? 'cursor-not-allowed opacity-50'
|
|
103
|
+
: variantColorClasses[variant][color], triggerClassName), children: [displayDate ? (_jsx("span", { children: !isExistTime
|
|
104
|
+
? `${dayjs(displayDate).format(dateFormat)}`
|
|
105
|
+
: `${dayjs(displayDate).format(`${dateFormat} ${timeFormat.replaceAll('M', 'm').replaceAll('S', 's')}`)}` })) : (_jsx("span", { className: "text-mono400 whitespace-nowrap", children: placeholderText })), _jsxs("div", { className: "flex items-center gap-xs", children: [_jsx("span", { role: "button", tabIndex: showRotate ? 0 : -1, "aria-hidden": !showRotate, className: cn('flex items-center text-mono400 cursor-pointer ld-transition', !showRotate ? 'opacity-0' : 'opacity-100'), onClick: handleReset, onKeyDown: (e) => {
|
|
28
106
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
29
107
|
e.preventDefault();
|
|
30
108
|
handleReset(e);
|
|
31
109
|
}
|
|
32
|
-
}, children: _jsx(
|
|
33
|
-
? (date) => date > new Date()
|
|
34
|
-
: minDate
|
|
35
|
-
? (date) => {
|
|
36
|
-
const dateOnly = new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
|
37
|
-
const minDateOnly = new Date(minDate.getFullYear(), minDate.getMonth(), minDate.getDate());
|
|
38
|
-
return dateOnly < minDateOnly;
|
|
39
|
-
}
|
|
40
|
-
: false }) })] }) }));
|
|
110
|
+
}, children: _jsx(RotateCw, { size: 15 }) }), trailingIcon] })] }), _jsx(PopoverBase.Content, { className: "rounded-md border border-neutral-200 bg-white shadow-md p-0", children: _jsxs("div", { className: "flex flex-col", children: [_jsxs("div", { className: "flex flex-row max-h-90", children: [_jsx(LDCalendar, { captionLayout: "dropdown", mode: "single", locale: ko, selected: selectedDate, onSelect: handleSelect, disabled: isDateDisabled }), isExistTime && (_jsx(TimePicker, { value: selectedTime, onChange: handleSelectedTime, className: "shrink-0" }))] }), _jsxs("div", { className: "flex items-center justify-end gap-sm py-xs px-sm border-t border-neutral100", children: [_jsx(LDButton, { variant: "outline", color: "neutral", onClick: handleCancel, children: "\uCDE8\uC18C" }), _jsx(LDButton, { onClick: handleConfirm, children: "\uD655\uC778" })] })] }) })] }) }));
|
|
41
111
|
};
|
|
42
112
|
export default LDDatePicker;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type RegisterOptions } from 'react-hook-form';
|
|
2
|
+
import { type LDDatePickerProps } from './LDDatePicker.js';
|
|
3
|
+
interface LDFormDatePickerProps extends Omit<LDDatePickerProps, 'value' | 'defaultValue' | 'onChange'> {
|
|
4
|
+
name: string;
|
|
5
|
+
options?: RegisterOptions;
|
|
6
|
+
customErrorMessage?: string;
|
|
7
|
+
isHiddenErrorMessage?: boolean;
|
|
8
|
+
isToastErrorMessage?: boolean;
|
|
9
|
+
errorClassName?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const LDFormDatePicker: ({ name, options, customErrorMessage, isHiddenErrorMessage, errorClassName, disabled, block, ...props }: LDFormDatePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export default LDFormDatePicker;
|
|
13
|
+
//# sourceMappingURL=LDFormDatePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDFormDatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/LDDatePicker/LDFormDatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAkB,MAAM,iBAAiB,CAAC;AACvE,OAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKtE,UAAU,qBAAsB,SAAQ,IAAI,CAC1C,iBAAiB,EACjB,OAAO,GAAG,cAAc,GAAG,UAAU,CACtC;IACC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,QAAA,MAAM,gBAAgB,GAAI,wGASvB,qBAAqB,4CAiCvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useFormContext } from 'react-hook-form';
|
|
4
|
+
import LDDatePicker from './LDDatePicker.js';
|
|
5
|
+
import FormField from '../LDForm/LDFormField.js';
|
|
6
|
+
import FormErrorMessage from '../LDForm/LDFormErrorMessage.js';
|
|
7
|
+
import cn from '../../utils/cn.js';
|
|
8
|
+
const LDFormDatePicker = ({ name, options, customErrorMessage = '', isHiddenErrorMessage = true, errorClassName, disabled = false, block = false, ...props }) => {
|
|
9
|
+
const { formState } = useFormContext();
|
|
10
|
+
const defaultValue = formState.defaultValues?.[name];
|
|
11
|
+
return (_jsx(FormField, { name: name, options: options, customErrorMessage: customErrorMessage, disabled: disabled, children: ({ field, fieldState }) => (_jsxs("div", { className: cn('relative', block ? 'w-full' : 'w-auto'), children: [_jsx(LDDatePicker, { ...props, block: block, value: field.value ?? undefined, defaultValue: defaultValue, onChange: (date) => {
|
|
12
|
+
field.onChange(date);
|
|
13
|
+
}, disabled: disabled, color: fieldState.hasError ? 'danger' : (props.color ?? 'neutral') }), _jsx(FormErrorMessage, { error: fieldState.error, disabled: disabled, className: cn(isHiddenErrorMessage && 'hidden', errorClassName) })] })) }));
|
|
14
|
+
};
|
|
15
|
+
export default LDFormDatePicker;
|
|
@@ -4,7 +4,10 @@ type DateRange = {
|
|
|
4
4
|
to?: Date;
|
|
5
5
|
};
|
|
6
6
|
type ViewMode = 'daily' | 'monthly' | 'yearly';
|
|
7
|
+
type DateRangePickerVariant = 'filled' | 'outline';
|
|
8
|
+
type DateRangePickerColor = 'neutral' | 'point' | 'danger';
|
|
7
9
|
export interface LDDateRangePickerProps {
|
|
10
|
+
variant?: DateRangePickerVariant;
|
|
8
11
|
/** 선택된 날짜 범위 ({ from, to? }) */
|
|
9
12
|
value?: DateRange;
|
|
10
13
|
/** 날짜 범위 변경 시 호출되는 콜백 */
|
|
@@ -14,19 +17,23 @@ export interface LDDateRangePickerProps {
|
|
|
14
17
|
/** true 시 너비 100% */
|
|
15
18
|
block?: boolean;
|
|
16
19
|
/** 색상 테마 (danger 시 에러 스타일) */
|
|
17
|
-
color?:
|
|
20
|
+
color?: DateRangePickerColor;
|
|
21
|
+
/** 미선택 시 표시할 텍스트 */
|
|
22
|
+
placeholder?: string;
|
|
23
|
+
/** 날짜 표시 형식 */
|
|
24
|
+
dateFormat?: string;
|
|
25
|
+
/** 시간 표시 형식 */
|
|
26
|
+
timeFormat?: string;
|
|
18
27
|
/** 현재 시점 이후 날짜 선택 비활성화 */
|
|
19
28
|
isDisableAfterNow?: boolean;
|
|
20
29
|
/** 날짜 범위 완성 시 팝오버 자동 닫힘 */
|
|
21
30
|
isAutoClose?: boolean;
|
|
22
31
|
/** 선택 모드 (daily: 일별, monthly: 월별, yearly: 연별) */
|
|
23
32
|
viewMode?: ViewMode;
|
|
24
|
-
/** 초기 선택 날짜 범위 (uncontrolled) */
|
|
25
|
-
defaultValue?: DateRange;
|
|
26
33
|
/** 초기값 (리셋 시 이 값으로 복원) */
|
|
27
34
|
initialValue?: {
|
|
28
|
-
from: string;
|
|
29
|
-
to
|
|
35
|
+
from: string | Date;
|
|
36
|
+
to?: string | Date;
|
|
30
37
|
};
|
|
31
38
|
/** 트리거 우측 아이콘 */
|
|
32
39
|
trailingIcon?: ReactNode;
|
|
@@ -44,6 +51,6 @@ export interface LDDateRangePickerProps {
|
|
|
44
51
|
/** 트리거 버튼 className */
|
|
45
52
|
triggerClassName?: string;
|
|
46
53
|
}
|
|
47
|
-
declare const LDDateRangePicker: ({ value, onChange, disabled, block, color, isDisableAfterNow, isAutoClose, viewMode,
|
|
54
|
+
declare const LDDateRangePicker: ({ variant, value, onChange, disabled, block, color, placeholder, dateFormat, timeFormat, isDisableAfterNow, isAutoClose, viewMode, initialValue, trailingIcon, onRangeComplete, onResetComplete, className, style, triggerClassName, }: LDDateRangePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
48
55
|
export default LDDateRangePicker;
|
|
49
56
|
//# sourceMappingURL=LDDateRangePicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LDDateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/components/LDDateRangePicker/LDDateRangePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"LDDateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/components/LDDateRangePicker/LDDateRangePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAWf,KAAK,SAAS,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,EAAE,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAC3C,KAAK,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAC/C,KAAK,sBAAsB,GAAG,QAAQ,GAAG,SAAS,CAAC;AACnD,KAAK,oBAAoB,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAqB3D,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,gCAAgC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,KAAK,IAAI,CAAC;IAClD,cAAc;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,oBAAoB;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2BAA2B;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,0BAA0B;IAC1B,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC3D,iBAAiB;IACjB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,4BAA4B;IAC5B,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,EAAE,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D,0BAA0B;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,uBAAuB;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAwBD,QAAA,MAAM,iBAAiB,GAAI,wOAoBxB,sBAAsB,4CA4SxB,CAAC;AA6LF,eAAe,iBAAiB,CAAC"}
|