@loword/loword-design-system 0.0.2 → 0.0.4
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/README.md +77 -3
- package/dist/components/BreadCrumb/BreadCrumb.d.ts +17 -0
- package/dist/components/BreadCrumb/BreadCrumb.d.ts.map +1 -0
- package/dist/components/BreadCrumb/BreadCrumb.js +37 -0
- package/dist/components/BreadCrumb/BreadCrumbBase.d.ts +9 -0
- package/dist/components/BreadCrumb/BreadCrumbBase.d.ts.map +1 -0
- package/dist/components/BreadCrumb/BreadCrumbBase.js +17 -0
- package/dist/components/Button/ButtonSpinner.d.ts +1 -2
- package/dist/components/Button/ButtonSpinner.d.ts.map +1 -1
- package/dist/components/Button/ButtonSpinner.js +3 -2
- package/dist/components/Callout/Callout.d.ts +10 -0
- package/dist/components/Callout/Callout.d.ts.map +1 -0
- package/dist/components/Callout/Callout.js +6 -0
- package/dist/components/Callout/CalloutBase.d.ts +18 -0
- package/dist/components/Callout/CalloutBase.d.ts.map +1 -0
- package/dist/components/Callout/CalloutBase.js +21 -0
- package/dist/components/Divider/Divider.d.ts +9 -0
- package/dist/components/Divider/Divider.d.ts.map +1 -0
- package/dist/components/Divider/Divider.js +11 -0
- package/dist/components/Divider/DividerBase.d.ts +9 -0
- package/dist/components/Divider/DividerBase.d.ts.map +1 -0
- package/dist/components/Divider/DividerBase.js +9 -0
- package/dist/components/FileUpload/FileUploadBase.d.ts +5 -5
- package/dist/components/FileUpload/FileUploadBase.d.ts.map +1 -1
- package/dist/components/FileUpload/FileUploadBase.js +4 -4
- package/dist/components/Form/FormField.d.ts +2 -2
- package/dist/components/LDAvatar/AvatarBase.d.ts +32 -0
- package/dist/components/LDAvatar/AvatarBase.d.ts.map +1 -0
- package/dist/components/LDAvatar/AvatarBase.js +49 -0
- package/dist/components/LDAvatar/LDAvatar.d.ts +11 -0
- package/dist/components/LDAvatar/LDAvatar.d.ts.map +1 -0
- package/dist/components/LDAvatar/LDAvatar.js +24 -0
- package/dist/components/LDBadge/BadgeBase.d.ts +10 -0
- package/dist/components/LDBadge/BadgeBase.d.ts.map +1 -0
- package/dist/components/LDBadge/BadgeBase.js +9 -0
- package/dist/components/LDBadge/LDBadge.d.ts +25 -0
- package/dist/components/LDBadge/LDBadge.d.ts.map +1 -0
- package/dist/components/LDBadge/LDBadge.js +36 -0
- package/dist/components/LDBreadCrumb/BreadCrumbBase.d.ts +9 -0
- package/dist/components/LDBreadCrumb/BreadCrumbBase.d.ts.map +1 -0
- package/dist/components/LDBreadCrumb/BreadCrumbBase.js +17 -0
- package/dist/components/LDBreadCrumb/LDBreadCrumb.d.ts +17 -0
- package/dist/components/LDBreadCrumb/LDBreadCrumb.d.ts.map +1 -0
- package/dist/components/LDBreadCrumb/LDBreadCrumb.js +37 -0
- package/dist/components/LDButton/ButtonBase.d.ts +5 -0
- package/dist/components/LDButton/ButtonBase.d.ts.map +1 -0
- package/dist/components/LDButton/ButtonBase.js +10 -0
- package/dist/components/LDButton/ButtonSpinner.d.ts +8 -0
- package/dist/components/LDButton/ButtonSpinner.d.ts.map +1 -0
- package/dist/components/LDButton/ButtonSpinner.js +15 -0
- package/dist/components/LDButton/LDButton.d.ts +26 -0
- package/dist/components/LDButton/LDButton.d.ts.map +1 -0
- package/dist/components/LDButton/LDButton.js +102 -0
- package/dist/components/LDCalendar/LDCalendar.d.ts +16 -0
- package/dist/components/LDCalendar/LDCalendar.d.ts.map +1 -0
- package/dist/components/LDCalendar/LDCalendar.js +75 -0
- package/dist/components/LDCallout/CalloutBase.d.ts +18 -0
- package/dist/components/LDCallout/CalloutBase.d.ts.map +1 -0
- package/dist/components/LDCallout/CalloutBase.js +21 -0
- package/dist/components/LDCallout/LDCallout.d.ts +10 -0
- package/dist/components/LDCallout/LDCallout.d.ts.map +1 -0
- package/dist/components/LDCallout/LDCallout.js +6 -0
- package/dist/components/LDCarousel/CarouselBase.d.ts +98 -0
- package/dist/components/LDCarousel/CarouselBase.d.ts.map +1 -0
- package/dist/components/LDCarousel/CarouselBase.js +144 -0
- package/dist/components/LDCarousel/LDCarousel.d.ts +50 -0
- package/dist/components/LDCarousel/LDCarousel.d.ts.map +1 -0
- package/dist/components/LDCarousel/LDCarousel.js +22 -0
- package/dist/components/LDCheckbox/CheckboxBase.d.ts +40 -0
- package/dist/components/LDCheckbox/CheckboxBase.d.ts.map +1 -0
- package/dist/components/LDCheckbox/CheckboxBase.js +57 -0
- package/dist/components/LDCheckbox/FormCheckbox.d.ts +14 -0
- package/dist/components/LDCheckbox/FormCheckbox.d.ts.map +1 -0
- package/dist/components/LDCheckbox/FormCheckbox.js +9 -0
- package/dist/components/LDCheckbox/FormCheckboxGroup.d.ts +13 -0
- package/dist/components/LDCheckbox/FormCheckboxGroup.d.ts.map +1 -0
- package/dist/components/LDCheckbox/FormCheckboxGroup.js +9 -0
- package/dist/components/LDCheckbox/LDCheckbox.d.ts +27 -0
- package/dist/components/LDCheckbox/LDCheckbox.d.ts.map +1 -0
- package/dist/components/LDCheckbox/LDCheckbox.js +30 -0
- package/dist/components/LDCheckbox/LDCheckboxGroup.d.ts +22 -0
- package/dist/components/LDCheckbox/LDCheckboxGroup.d.ts.map +1 -0
- package/dist/components/LDCheckbox/LDCheckboxGroup.js +13 -0
- package/dist/components/LDDataCalendar/DataCalendarBase.d.ts +45 -0
- package/dist/components/LDDataCalendar/DataCalendarBase.d.ts.map +1 -0
- package/dist/components/LDDataCalendar/DataCalendarBase.js +57 -0
- package/dist/components/LDDataCalendar/LDDataCalendar.d.ts +12 -0
- package/dist/components/LDDataCalendar/LDDataCalendar.d.ts.map +1 -0
- package/dist/components/LDDataCalendar/LDDataCalendar.js +13 -0
- package/dist/components/LDDatePicker/FormDatePicker.d.ts +12 -0
- package/dist/components/LDDatePicker/FormDatePicker.d.ts.map +1 -0
- package/dist/components/LDDatePicker/FormDatePicker.js +12 -0
- package/dist/components/LDDatePicker/LDDatePicker.d.ts +34 -0
- package/dist/components/LDDatePicker/LDDatePicker.d.ts.map +1 -0
- package/dist/components/LDDatePicker/LDDatePicker.js +44 -0
- package/dist/components/LDDateRangePicker/FormDateRangePicker.d.ts +12 -0
- package/dist/components/LDDateRangePicker/FormDateRangePicker.d.ts.map +1 -0
- package/dist/components/LDDateRangePicker/FormDateRangePicker.js +10 -0
- package/dist/components/LDDateRangePicker/LDDateRangePicker.d.ts +49 -0
- package/dist/components/LDDateRangePicker/LDDateRangePicker.d.ts.map +1 -0
- package/dist/components/LDDateRangePicker/LDDateRangePicker.js +197 -0
- package/dist/components/LDDivider/DividerBase.d.ts +9 -0
- package/dist/components/LDDivider/DividerBase.d.ts.map +1 -0
- package/dist/components/LDDivider/DividerBase.js +9 -0
- package/dist/components/LDDivider/LDDivider.d.ts +9 -0
- package/dist/components/LDDivider/LDDivider.d.ts.map +1 -0
- package/dist/components/LDDivider/LDDivider.js +11 -0
- package/dist/components/LDDrawer/DrawerBase.d.ts +52 -0
- package/dist/components/LDDrawer/DrawerBase.d.ts.map +1 -0
- package/dist/components/LDDrawer/DrawerBase.js +38 -0
- package/dist/components/LDDrawer/LDDrawer.d.ts +51 -0
- package/dist/components/LDDrawer/LDDrawer.d.ts.map +1 -0
- package/dist/components/LDDrawer/LDDrawer.js +30 -0
- package/dist/components/LDEditor/EditorBase.d.ts +52 -0
- package/dist/components/LDEditor/EditorBase.d.ts.map +1 -0
- package/dist/components/LDEditor/EditorBase.js +89 -0
- package/dist/components/LDEditor/LDEditor.d.ts +12 -0
- package/dist/components/LDEditor/LDEditor.d.ts.map +1 -0
- package/dist/components/LDEditor/LDEditor.js +162 -0
- package/dist/components/LDEditor/LDViewer.d.ts +7 -0
- package/dist/components/LDEditor/LDViewer.d.ts.map +1 -0
- package/dist/components/LDEditor/LDViewer.js +9 -0
- package/dist/components/LDEditor/extensions.d.ts +6 -0
- package/dist/components/LDEditor/extensions.d.ts.map +1 -0
- package/dist/components/LDEditor/extensions.js +38 -0
- package/dist/components/LDFileUpload/LDFileUploadBase.d.ts +50 -0
- package/dist/components/LDFileUpload/LDFileUploadBase.d.ts.map +1 -0
- package/dist/components/LDFileUpload/LDFileUploadBase.js +102 -0
- package/dist/components/LDInput/FormInput.d.ts +15 -0
- package/dist/components/LDInput/FormInput.d.ts.map +1 -0
- package/dist/components/LDInput/FormInput.js +19 -0
- package/dist/components/LDInput/InputBase.d.ts +22 -0
- package/dist/components/LDInput/InputBase.d.ts.map +1 -0
- package/dist/components/LDInput/InputBase.js +17 -0
- package/dist/components/LDInput/LDInput.d.ts +24 -0
- package/dist/components/LDInput/LDInput.d.ts.map +1 -0
- package/dist/components/LDInput/LDInput.js +71 -0
- package/dist/components/LDLNB/LDLNBBase.d.ts +82 -0
- package/dist/components/LDLNB/LDLNBBase.d.ts.map +1 -0
- package/dist/components/LDLNB/LDLNBBase.js +108 -0
- package/dist/components/LDLoadingDots/LDLoadingDots.d.ts +8 -0
- package/dist/components/LDLoadingDots/LDLoadingDots.d.ts.map +1 -0
- package/dist/components/LDLoadingDots/LDLoadingDots.js +29 -0
- package/dist/components/LDMenuBar/LDMenuBar.d.ts +21 -0
- package/dist/components/LDMenuBar/LDMenuBar.d.ts.map +1 -0
- package/dist/components/LDMenuBar/LDMenuBar.js +33 -0
- package/dist/components/LDMenuBar/MenuBarBase.d.ts +43 -0
- package/dist/components/LDMenuBar/MenuBarBase.d.ts.map +1 -0
- package/dist/components/LDMenuBar/MenuBarBase.js +69 -0
- package/dist/components/LDModal/LDModal.d.ts +51 -0
- package/dist/components/LDModal/LDModal.d.ts.map +1 -0
- package/dist/components/LDModal/LDModal.js +72 -0
- package/dist/components/LDModal/ModalBase.d.ts +42 -0
- package/dist/components/LDModal/ModalBase.d.ts.map +1 -0
- package/dist/components/LDModal/ModalBase.js +30 -0
- package/dist/components/LDModal/openModal.d.ts +24 -0
- package/dist/components/LDModal/openModal.d.ts.map +1 -0
- package/dist/components/LDModal/openModal.js +52 -0
- package/dist/components/LDOTPInput/LDOTPInput.d.ts +46 -0
- package/dist/components/LDOTPInput/LDOTPInput.d.ts.map +1 -0
- package/dist/components/LDOTPInput/LDOTPInput.js +87 -0
- package/dist/components/LDPagination/LDPagination.d.ts +12 -0
- package/dist/components/LDPagination/LDPagination.d.ts.map +1 -0
- package/dist/components/LDPagination/LDPagination.js +5 -0
- package/dist/components/LDPagination/PaginationBase.d.ts +36 -0
- package/dist/components/LDPagination/PaginationBase.d.ts.map +1 -0
- package/dist/components/LDPagination/PaginationBase.js +44 -0
- package/dist/components/LDPagination/paginationUtils.d.ts +2 -0
- package/dist/components/LDPagination/paginationUtils.d.ts.map +1 -0
- package/dist/components/LDPagination/paginationUtils.js +18 -0
- package/dist/components/LDPopover/LDPopover.d.ts +42 -0
- package/dist/components/LDPopover/LDPopover.d.ts.map +1 -0
- package/dist/components/LDPopover/LDPopover.js +31 -0
- package/dist/components/LDPopover/PopoverBase.d.ts +31 -0
- package/dist/components/LDPopover/PopoverBase.d.ts.map +1 -0
- package/dist/components/LDPopover/PopoverBase.js +18 -0
- package/dist/components/LDRadio/FormRadioGroup.d.ts +13 -0
- package/dist/components/LDRadio/FormRadioGroup.d.ts.map +1 -0
- package/dist/components/LDRadio/FormRadioGroup.js +9 -0
- package/dist/components/LDRadio/LDRadio.d.ts +24 -0
- package/dist/components/LDRadio/LDRadio.d.ts.map +1 -0
- package/dist/components/LDRadio/LDRadio.js +39 -0
- package/dist/components/LDRadio/LDRadioGroup.d.ts +22 -0
- package/dist/components/LDRadio/LDRadioGroup.d.ts.map +1 -0
- package/dist/components/LDRadio/LDRadioGroup.js +7 -0
- package/dist/components/LDRadio/RadioBase.d.ts +38 -0
- package/dist/components/LDRadio/RadioBase.d.ts.map +1 -0
- package/dist/components/LDRadio/RadioBase.js +46 -0
- package/dist/components/LDScrollArea/LDScrollArea.d.ts +15 -0
- package/dist/components/LDScrollArea/LDScrollArea.d.ts.map +1 -0
- package/dist/components/LDScrollArea/LDScrollArea.js +10 -0
- package/dist/components/LDSelect/FormMultiSelect.d.ts +13 -0
- package/dist/components/LDSelect/FormMultiSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/FormMultiSelect.js +14 -0
- package/dist/components/LDSelect/FormSelect.d.ts +13 -0
- package/dist/components/LDSelect/FormSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/FormSelect.js +10 -0
- package/dist/components/LDSelect/LDMultiSelect.d.ts +31 -0
- package/dist/components/LDSelect/LDMultiSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/LDMultiSelect.js +59 -0
- package/dist/components/LDSelect/LDSelect.d.ts +41 -0
- package/dist/components/LDSelect/LDSelect.d.ts.map +1 -0
- package/dist/components/LDSelect/LDSelect.js +55 -0
- package/dist/components/LDSelect/SelectBase.d.ts +59 -0
- package/dist/components/LDSelect/SelectBase.d.ts.map +1 -0
- package/dist/components/LDSelect/SelectBase.js +211 -0
- package/dist/components/LDSkeleton/LDSkeleton.d.ts +10 -0
- package/dist/components/LDSkeleton/LDSkeleton.d.ts.map +1 -0
- package/dist/components/LDSkeleton/LDSkeleton.js +8 -0
- package/dist/components/LDSlider/LDSlider.d.ts +23 -0
- package/dist/components/LDSlider/LDSlider.d.ts.map +1 -0
- package/dist/components/LDSlider/LDSlider.js +195 -0
- package/dist/components/LDSpinner/LDSpinner.d.ts +25 -0
- package/dist/components/LDSpinner/LDSpinner.d.ts.map +1 -0
- package/dist/components/LDSpinner/LDSpinner.js +20 -0
- package/dist/components/LDTable/LDTable.d.ts +34 -0
- package/dist/components/LDTable/LDTable.d.ts.map +1 -0
- package/dist/components/LDTable/LDTable.js +29 -0
- package/dist/components/LDTable/LDTanstackTable.d.ts +23 -0
- package/dist/components/LDTable/LDTanstackTable.d.ts.map +1 -0
- package/dist/components/LDTable/LDTanstackTable.js +35 -0
- package/dist/components/LDTable/TableBase.d.ts +37 -0
- package/dist/components/LDTable/TableBase.d.ts.map +1 -0
- package/dist/components/LDTable/TableBase.js +39 -0
- package/dist/components/LDTable/TableField.d.ts +64 -0
- package/dist/components/LDTable/TableField.d.ts.map +1 -0
- package/dist/components/LDTable/TableField.js +87 -0
- package/dist/components/LDTimePicker/FormTimePicker.d.ts +12 -0
- package/dist/components/LDTimePicker/FormTimePicker.d.ts.map +1 -0
- package/dist/components/LDTimePicker/FormTimePicker.js +12 -0
- package/dist/components/LDTimePicker/LDTimePicker.d.ts +27 -0
- package/dist/components/LDTimePicker/LDTimePicker.d.ts.map +1 -0
- package/dist/components/LDTimePicker/LDTimePicker.js +120 -0
- package/dist/components/LDToast/LDToast.d.ts +18 -0
- package/dist/components/LDToast/LDToast.d.ts.map +1 -0
- package/dist/components/LDToast/LDToast.js +42 -0
- package/dist/components/LDToast/LDToaster.d.ts +7 -0
- package/dist/components/LDToast/LDToaster.d.ts.map +1 -0
- package/dist/components/LDToast/LDToaster.js +7 -0
- package/dist/components/LDToggleButton/FormToggleButton.d.ts +12 -0
- package/dist/components/LDToggleButton/FormToggleButton.d.ts.map +1 -0
- package/dist/components/LDToggleButton/FormToggleButton.js +9 -0
- package/dist/components/LDToggleButton/LDToggleButton.d.ts +31 -0
- package/dist/components/LDToggleButton/LDToggleButton.d.ts.map +1 -0
- package/dist/components/LDToggleButton/LDToggleButton.js +42 -0
- package/dist/components/LDToggleButton/ToggleButtonBase.d.ts +41 -0
- package/dist/components/LDToggleButton/ToggleButtonBase.d.ts.map +1 -0
- package/dist/components/LDToggleButton/ToggleButtonBase.js +59 -0
- package/dist/components/LDTooltip/LDTooltip.d.ts +18 -0
- package/dist/components/LDTooltip/LDTooltip.d.ts.map +1 -0
- package/dist/components/LDTooltip/LDTooltip.js +13 -0
- package/dist/components/LDTooltip/TooltipBase.d.ts +39 -0
- package/dist/components/LDTooltip/TooltipBase.d.ts.map +1 -0
- package/dist/components/LDTooltip/TooltipBase.js +46 -0
- package/dist/components/LNB/LNBBase.js +2 -2
- package/dist/components/Spinner/Spinner.d.ts +1 -1
- package/dist/components/Spinner/Spinner.d.ts.map +1 -1
- package/dist/components/Spinner/Spinner.js +1 -1
- package/dist/index.css +115 -13
- package/dist/index.d.ts +52 -49
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +88 -82
- package/package.json +1 -1
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import { type IconName } from '../Icon/LucideIcon.js';
|
|
3
|
+
type BadgeSize = 'xsmall' | 'small' | 'medium' | 'large';
|
|
4
|
+
type BadgeColor = 'orange' | 'fillOrange' | 'red' | 'fillRed' | 'green' | 'fillGreen' | 'blue' | 'fillBlue' | 'yellow' | 'fillYellow' | 'gray' | 'fillGray';
|
|
5
|
+
export interface LDBadgeProps<T extends string> {
|
|
6
|
+
/** 뱃지 유형 키 (colorsMap의 키와 매칭) */
|
|
7
|
+
type: T;
|
|
8
|
+
/** 뱃지 사이즈 */
|
|
9
|
+
size?: BadgeSize;
|
|
10
|
+
/** type별 색상 매핑 객체 (프리셋 BadgeColor 또는 커스텀 Tailwind 클래스) */
|
|
11
|
+
colorsMap: Record<T, BadgeColor | string>;
|
|
12
|
+
/** 뱃지 내용 */
|
|
13
|
+
children?: ReactNode;
|
|
14
|
+
/** 왼쪽 아이콘 (IconName 또는 ReactNode) */
|
|
15
|
+
leftIcon?: IconName | ReactNode;
|
|
16
|
+
/** 오른쪽 아이콘 (IconName 또는 ReactNode) */
|
|
17
|
+
rightIcon?: IconName | ReactNode;
|
|
18
|
+
/** 추가 CSS 클래스 */
|
|
19
|
+
className?: string;
|
|
20
|
+
/** 인라인 스타일 */
|
|
21
|
+
style?: React.CSSProperties;
|
|
22
|
+
}
|
|
23
|
+
declare const LDBadge: <T extends string>({ type, size, colorsMap, children, leftIcon, rightIcon, className, style, }: LDBadgeProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export default LDBadge;
|
|
25
|
+
//# sourceMappingURL=LDBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDBadge.d.ts","sourceRoot":"","sources":["../../../src/components/LDBadge/LDBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,KAAK,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACzD,KAAK,UAAU,GACX,QAAQ,GACR,YAAY,GACZ,KAAK,GACL,SAAS,GACT,OAAO,GACP,WAAW,GACX,MAAM,GACN,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,MAAM,GACN,UAAU,CAAC;AAEf,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM;IAC5C,iCAAiC;IACjC,IAAI,EAAE,CAAC,CAAC;IACR,aAAa;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC;IAC1C,YAAY;IACZ,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAChC,sCAAsC;IACtC,SAAS,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AA+BD,QAAA,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,EAAE,6EAShC,YAAY,CAAC,CAAC,CAAC,4CAmBjB,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import BadgeBase from './BadgeBase.js';
|
|
3
|
+
import { renderIcon } from '../../utils/renderIcon.js';
|
|
4
|
+
import cn from '../../utils/cn.js';
|
|
5
|
+
const colorClasses = {
|
|
6
|
+
orange: 'bg-tintOrange text-orange500',
|
|
7
|
+
fillOrange: 'bg-orange400 text-white',
|
|
8
|
+
green: 'bg-tintGreen text-green700',
|
|
9
|
+
fillGreen: 'bg-success600 text-white',
|
|
10
|
+
red: 'bg-tintRed text-red200',
|
|
11
|
+
fillRed: 'bg-danger600 text-white',
|
|
12
|
+
blue: 'bg-tintBlue text-blue200',
|
|
13
|
+
fillBlue: 'bg-accept600 text-white',
|
|
14
|
+
yellow: 'bg-tintYellow text-yellow700',
|
|
15
|
+
fillYellow: 'bg-warning600 text-white',
|
|
16
|
+
gray: 'bg-mono200 text-neutral800',
|
|
17
|
+
fillGray: 'bg-neutral200 text-white',
|
|
18
|
+
};
|
|
19
|
+
const sizeClasses = {
|
|
20
|
+
xsmall: 'badge-xs',
|
|
21
|
+
small: 'badge-sm',
|
|
22
|
+
medium: 'badge-md',
|
|
23
|
+
large: 'badge-lg',
|
|
24
|
+
};
|
|
25
|
+
const iconSizes = {
|
|
26
|
+
xsmall: 'icon-xs',
|
|
27
|
+
small: 'icon-sm',
|
|
28
|
+
medium: 'icon-md',
|
|
29
|
+
large: 'icon-lg',
|
|
30
|
+
};
|
|
31
|
+
const LDBadge = ({ type, size = 'small', colorsMap, children, leftIcon, rightIcon, className, style, }) => {
|
|
32
|
+
const color = colorsMap[type];
|
|
33
|
+
const iconSize = iconSizes[size];
|
|
34
|
+
return (_jsxs(BadgeBase.Root, { className: cn('w-auto text-center whitespace-nowrap border border-transparent', colorClasses[color] ?? color, sizeClasses[size], className), style: style, children: [renderIcon(leftIcon, iconSize), children, renderIcon(rightIcon, iconSize)] }));
|
|
35
|
+
};
|
|
36
|
+
export default LDBadge;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export declare const LDBreadCrumb: {
|
|
3
|
+
Root: ({ className, ...props }: React.ComponentProps<"nav">) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
List: ({ className, ...props }: React.ComponentProps<"ol">) => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
Item: ({ className, children, ...props }: React.ComponentProps<"li">) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
Separator: ({ children, className, ...props }: React.ComponentProps<"li">) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
};
|
|
8
|
+
export default LDBreadCrumb;
|
|
9
|
+
//# sourceMappingURL=BreadCrumbBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreadCrumbBase.d.ts","sourceRoot":"","sources":["../../../src/components/LDBreadCrumb/BreadCrumbBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA8C/B,eAAO,MAAM,YAAY;oCA1Cc,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;oCAI3B,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;8CAU9D,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;mDAY1B,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;CAgB8B,CAAC;AAE5D,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronRightIcon } from 'lucide-react';
|
|
3
|
+
import cn from '../../utils/cn.js';
|
|
4
|
+
const Root = ({ className, ...props }) => {
|
|
5
|
+
return _jsx("nav", { "aria-label": "breadcrumb", className: cn(className), ...props });
|
|
6
|
+
};
|
|
7
|
+
const List = ({ className, ...props }) => {
|
|
8
|
+
return (_jsx("ol", { className: cn('flex flex-wrap items-center', className), ...props }));
|
|
9
|
+
};
|
|
10
|
+
const Item = ({ className, children, ...props }) => {
|
|
11
|
+
return (_jsx("li", { className: cn('inline-flex items-center', className), ...props, children: children }));
|
|
12
|
+
};
|
|
13
|
+
const Separator = ({ children, className, ...props }) => {
|
|
14
|
+
return (_jsx("li", { role: "presentation", "aria-hidden": "true", className: cn('inline-flex items-center justify-center text-neutral700 [&>svg]:shrink-0', className), ...props, children: children ?? _jsx(ChevronRightIcon, {}) }));
|
|
15
|
+
};
|
|
16
|
+
export const LDBreadCrumb = { Root, List, Item, Separator };
|
|
17
|
+
export default LDBreadCrumb;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import { type ButtonSize } from '../LDButton/LDButton.js';
|
|
3
|
+
import { type IconName } from '../Icon/LucideIcon.js';
|
|
4
|
+
export interface LDBreadCrumbItem {
|
|
5
|
+
label: string;
|
|
6
|
+
href?: string;
|
|
7
|
+
icon?: IconName | ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export interface LDBreadCrumbProps {
|
|
10
|
+
items: LDBreadCrumbItem[];
|
|
11
|
+
size?: ButtonSize;
|
|
12
|
+
separator?: ReactNode;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
declare const LDBreadCrumb: ({ items, size, separator, className, }: LDBreadCrumbProps) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export default LDBreadCrumb;
|
|
17
|
+
//# sourceMappingURL=LDBreadCrumb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDBreadCrumb.d.ts","sourceRoot":"","sources":["../../../src/components/LDBreadCrumb/LDBreadCrumb.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,QAAA,MAAM,YAAY,GAAI,wCAKnB,iBAAiB,4CAiDnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import BreadCrumbBase from './BreadCrumbBase.js';
|
|
4
|
+
import LDButton from '../LDButton/LDButton.js';
|
|
5
|
+
import { renderIcon } from '../../utils/renderIcon.js';
|
|
6
|
+
import cn from '../../utils/cn.js';
|
|
7
|
+
const textSizeClasses = {
|
|
8
|
+
'2xsmall': 'bread-crumb-2xs',
|
|
9
|
+
xsmall: 'bread-crumb-xs',
|
|
10
|
+
small: 'bread-crumb-sm',
|
|
11
|
+
medium: 'bread-crumb-md',
|
|
12
|
+
large: 'bread-crumb-lg',
|
|
13
|
+
xlarge: 'bread-crumb-xl',
|
|
14
|
+
};
|
|
15
|
+
const iconSizeClasses = {
|
|
16
|
+
'2xsmall': 'icon-2xs',
|
|
17
|
+
xsmall: 'icon-xs',
|
|
18
|
+
small: 'icon-sm',
|
|
19
|
+
medium: 'icon-md',
|
|
20
|
+
large: 'icon-lg',
|
|
21
|
+
xlarge: 'icon-xl',
|
|
22
|
+
};
|
|
23
|
+
const separatorIconSizeClasses = {
|
|
24
|
+
'2xsmall': '[&>svg]:icon-2xs',
|
|
25
|
+
xsmall: '[&>svg]:icon-xs',
|
|
26
|
+
small: '[&>svg]:icon-sm',
|
|
27
|
+
medium: '[&>svg]:icon-md',
|
|
28
|
+
large: '[&>svg]:icon-lg',
|
|
29
|
+
xlarge: '[&>svg]:icon-xl',
|
|
30
|
+
};
|
|
31
|
+
const LDBreadCrumb = ({ items, size = 'small', separator, className, }) => {
|
|
32
|
+
return (_jsx(BreadCrumbBase.Root, { children: _jsx(BreadCrumbBase.List, { className: className, children: items.map((item, index) => {
|
|
33
|
+
const isCurrent = index === items.length - 1;
|
|
34
|
+
return (_jsxs(React.Fragment, { children: [_jsx(BreadCrumbBase.Item, { className: "gap-xs", children: !item.href ? (_jsxs("span", { "aria-current": "page", className: cn(textSizeClasses[size], 'flex items-center text-neutral700 gap-0.5'), children: [renderIcon(item.icon, iconSizeClasses[size]), item.label] })) : (_jsx(LDButton, { as: "a", href: item.href, variant: "ghost", color: "neutral", size: size, leftIcon: item.icon, className: "h-auto! px-0! min-w-0 hover:bg-transparent active:bg-transparent text-neutral700 regular flex flex-row gap-0.5", children: item.label })) }), !isCurrent && (_jsx(BreadCrumbBase.Separator, { className: separatorIconSizeClasses[size], children: separator }))] }, `${item.label}-${index}`));
|
|
35
|
+
}) }) }));
|
|
36
|
+
};
|
|
37
|
+
export default LDBreadCrumb;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonBase.d.ts","sourceRoot":"","sources":["../../../src/components/LDButton/ButtonBase.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,UAAU;UACP,KAAK,CAAC,WAAW;CAChC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import cn from '../../utils/cn.js';
|
|
3
|
+
const Root = ({ as, className, children, ref, ...props }) => {
|
|
4
|
+
const Component = as ?? 'button';
|
|
5
|
+
return (_jsx(Component, { ref: ref, className: cn('relative inline-flex flex-row items-center justify-center', className), ...props, children: children }));
|
|
6
|
+
};
|
|
7
|
+
export const ButtonBase = {
|
|
8
|
+
Root: Root,
|
|
9
|
+
};
|
|
10
|
+
export default ButtonBase;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface ButtonSpinnerProps {
|
|
2
|
+
size?: ButtonSpinnerSize;
|
|
3
|
+
className?: string;
|
|
4
|
+
}
|
|
5
|
+
type ButtonSpinnerSize = '2xsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
6
|
+
declare const ButtonSpinner: ({ size, className }: ButtonSpinnerProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default ButtonSpinner;
|
|
8
|
+
//# sourceMappingURL=ButtonSpinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonSpinner.d.ts","sourceRoot":"","sources":["../../../src/components/LDButton/ButtonSpinner.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,iBAAiB,GAClB,SAAS,GACT,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,CAAC;AAWb,QAAA,MAAM,aAAa,GAAI,qBAA+B,kBAAkB,4CAMvE,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import LDSpinner from '../LDSpinner/LDSpinner.js';
|
|
3
|
+
import cn from '../../utils/cn.js';
|
|
4
|
+
const sizeClasses = {
|
|
5
|
+
'2xsmall': 'spinner-2xs',
|
|
6
|
+
xsmall: 'spinner-xs',
|
|
7
|
+
small: 'spinner-sm',
|
|
8
|
+
medium: 'spinner-md',
|
|
9
|
+
large: 'spinner-lg',
|
|
10
|
+
xlarge: 'spinner-xl',
|
|
11
|
+
};
|
|
12
|
+
const ButtonSpinner = ({ size = 'small', className }) => {
|
|
13
|
+
return (_jsx(LDSpinner, { className: cn('shrink-0 text-current', sizeClasses[size], className) }));
|
|
14
|
+
};
|
|
15
|
+
export default ButtonSpinner;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type ElementType } from 'react';
|
|
3
|
+
import { PolymorphicComponentProps } from '../../types/polymorphic.js';
|
|
4
|
+
import { type IconName } from '../Icon/LucideIcon.js';
|
|
5
|
+
type ButtonVariant = 'solid' | 'outline' | 'ghost' | 'link';
|
|
6
|
+
type ButtonColor = 'neutral' | 'point' | 'danger';
|
|
7
|
+
export type ButtonSize = '2xsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
8
|
+
type ButtonShape = 'default' | 'capsule';
|
|
9
|
+
type ButtonAlign = 'left' | 'center' | 'right';
|
|
10
|
+
type _ButtonProps = {
|
|
11
|
+
variant?: ButtonVariant;
|
|
12
|
+
color?: ButtonColor;
|
|
13
|
+
size?: ButtonSize;
|
|
14
|
+
shape?: ButtonShape;
|
|
15
|
+
align?: ButtonAlign;
|
|
16
|
+
loading?: boolean;
|
|
17
|
+
block?: boolean;
|
|
18
|
+
leftIcon?: IconName | React.ReactNode;
|
|
19
|
+
rightIcon?: IconName | React.ReactNode;
|
|
20
|
+
compact?: boolean;
|
|
21
|
+
};
|
|
22
|
+
export type LDButtonProps<T extends ElementType> = PolymorphicComponentProps<T, _ButtonProps>;
|
|
23
|
+
type ButtonComponent = <T extends React.ElementType = 'button'>(props: LDButtonProps<T>) => React.ReactElement | null;
|
|
24
|
+
declare const LDButton: ButtonComponent;
|
|
25
|
+
export default LDButton;
|
|
26
|
+
//# sourceMappingURL=LDButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDButton.d.ts","sourceRoot":"","sources":["../../../src/components/LDButton/LDButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAQnD,KAAK,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAC5D,KAAK,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAClD,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,CAAC;AACb,KAAK,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AACzC,KAAK,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAkG/C,KAAK,YAAY,GAAG;IAClB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IACtC,SAAS,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,WAAW,IAAI,yBAAyB,CAC1E,CAAC,EACD,YAAY,CACb,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,QAAQ,EAC5D,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KACpB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;AAE/B,QAAA,MAAM,QAAQ,EAAE,eAoEf,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import cn from '../../utils/cn.js';
|
|
3
|
+
import ButtonBase from './ButtonBase.js';
|
|
4
|
+
import { renderIcon } from '../../utils/renderIcon.js';
|
|
5
|
+
import ButtonSpinner from './ButtonSpinner.js';
|
|
6
|
+
// ── 스타일 매핑 (static) ──
|
|
7
|
+
const variantBaseClasses = {
|
|
8
|
+
solid: {
|
|
9
|
+
neutral: 'bg-neutral800 text-white',
|
|
10
|
+
point: 'bg-lb500 text-white',
|
|
11
|
+
danger: 'bg-danger500 text-white',
|
|
12
|
+
},
|
|
13
|
+
outline: {
|
|
14
|
+
neutral: 'bg-white outline outline-neutral200',
|
|
15
|
+
point: 'bg-white outline outline-lb500 text-lb500',
|
|
16
|
+
danger: 'bg-white outline outline-danger500 text-danger500',
|
|
17
|
+
},
|
|
18
|
+
ghost: {
|
|
19
|
+
neutral: 'bg-transparent',
|
|
20
|
+
point: 'bg-transparent text-lb500',
|
|
21
|
+
danger: 'bg-transparent text-danger500',
|
|
22
|
+
},
|
|
23
|
+
link: {
|
|
24
|
+
neutral: 'bg-transparent underline underline-offset-[4px]',
|
|
25
|
+
point: 'bg-transparent text-lb500 underline underline-offset-[4px]',
|
|
26
|
+
danger: 'bg-transparent text-danger500 underline underline-offset-[4px]',
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
const variantHoverClasses = {
|
|
30
|
+
solid: {
|
|
31
|
+
neutral: 'hover:bg-neutral900 active:bg-neutral900',
|
|
32
|
+
point: 'hover:bg-lb700 active:bg-lb700',
|
|
33
|
+
danger: 'hover:bg-danger700 active:bg-danger700',
|
|
34
|
+
},
|
|
35
|
+
outline: {
|
|
36
|
+
neutral: 'hover:bg-mono100 active:bg-mono100',
|
|
37
|
+
point: 'hover:bg-accept50 active:bg-accept50',
|
|
38
|
+
danger: 'hover:bg-danger50 active:bg-danger50',
|
|
39
|
+
},
|
|
40
|
+
ghost: {
|
|
41
|
+
neutral: 'hover:bg-mono100',
|
|
42
|
+
point: 'hover:bg-accept50',
|
|
43
|
+
danger: 'hover:bg-danger50',
|
|
44
|
+
},
|
|
45
|
+
link: {
|
|
46
|
+
neutral: 'hover:text-neutral700 active:text-neutral700',
|
|
47
|
+
point: 'hover:text-lb700 active:text-lb700',
|
|
48
|
+
danger: 'hover:text-danger600 active:text-danger600',
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
const variantDisabledClasses = {
|
|
52
|
+
solid: 'bg-mono300 text-white',
|
|
53
|
+
outline: 'text-mono300 outline outline-neutral100',
|
|
54
|
+
ghost: 'text-mono300',
|
|
55
|
+
link: 'text-mono300 underline underline-offset-[4px]',
|
|
56
|
+
};
|
|
57
|
+
const colorFocusClasses = {
|
|
58
|
+
neutral: 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neutral800',
|
|
59
|
+
point: 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-lb500',
|
|
60
|
+
danger: 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-danger500',
|
|
61
|
+
};
|
|
62
|
+
const sizeClasses = {
|
|
63
|
+
'2xsmall': 'btn-2xs',
|
|
64
|
+
xsmall: 'btn-xs',
|
|
65
|
+
small: 'btn-sm',
|
|
66
|
+
medium: 'btn-md',
|
|
67
|
+
large: 'btn-lg',
|
|
68
|
+
xlarge: 'btn-xl',
|
|
69
|
+
};
|
|
70
|
+
const iconSizeClasses = {
|
|
71
|
+
'2xsmall': 'icon-2xs',
|
|
72
|
+
xsmall: 'icon-xs',
|
|
73
|
+
small: 'icon-sm',
|
|
74
|
+
medium: 'icon-md',
|
|
75
|
+
large: 'icon-lg',
|
|
76
|
+
xlarge: 'icon-xl',
|
|
77
|
+
};
|
|
78
|
+
const alignClasses = {
|
|
79
|
+
left: 'justify-start',
|
|
80
|
+
center: 'justify-center',
|
|
81
|
+
right: 'justify-end',
|
|
82
|
+
};
|
|
83
|
+
const shapeClasses = {
|
|
84
|
+
default: 'rounded-[5px]',
|
|
85
|
+
capsule: 'rounded-full',
|
|
86
|
+
};
|
|
87
|
+
const LDButton = ({ as, variant = 'solid', color = 'point', size = 'small', shape = 'default', align = 'center', loading = false, block = false, children, className, leftIcon, rightIcon, compact = false, ref, ...props }) => {
|
|
88
|
+
const iconSize = iconSizeClasses[size];
|
|
89
|
+
return (_jsxs(ButtonBase.Root, { as: as, ref: ref, className: cn('relative ld-transition', {
|
|
90
|
+
[variantBaseClasses[variant][color]]: !props.disabled,
|
|
91
|
+
[variantHoverClasses[variant][color]]: !props.disabled && !loading,
|
|
92
|
+
[variantDisabledClasses[variant]]: props.disabled,
|
|
93
|
+
}, {
|
|
94
|
+
[`${colorFocusClasses[color]} focus-visible:ring-offset-2`]: variant === 'solid',
|
|
95
|
+
[`${colorFocusClasses[color]} focus-visible:ring-inset`]: variant !== 'solid',
|
|
96
|
+
}, {
|
|
97
|
+
['cursor-pointer']: !props.disabled && !loading,
|
|
98
|
+
['cursor-wait']: !props.disabled && loading,
|
|
99
|
+
['cursor-not-allowed']: props.disabled,
|
|
100
|
+
}, block && 'w-full', sizeClasses[size], shapeClasses[shape], alignClasses[align], compact && 'px-0 min-w-0 aspect-square', className), ...props, disabled: props.disabled || loading, children: [loading ? (_jsx(ButtonSpinner, { size: size, className: "mobile:absolute mobile:left-1/2 mobile:top-1/2 mobile:-translate-x-1/2 mobile:-translate-y-1/2" })) : (renderIcon(leftIcon, iconSize)), children && (_jsx("span", { className: cn('shrink-0', loading && 'mobile:invisible'), children: children })), renderIcon(rightIcon, iconSize, loading && 'mobile:invisible')] }));
|
|
101
|
+
};
|
|
102
|
+
export default LDButton;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type DayPickerProps, type Matcher } from 'react-day-picker';
|
|
2
|
+
import { type CSSProperties } from 'react';
|
|
3
|
+
/** react-day-picker의 DayPickerProps를 확장한 캘린더 props */
|
|
4
|
+
type LDCalendarProps = DayPickerProps & {
|
|
5
|
+
/** 추가 CSS 클래스 */
|
|
6
|
+
className?: string;
|
|
7
|
+
/** 인라인 스타일 */
|
|
8
|
+
style?: CSSProperties;
|
|
9
|
+
/** 예약 완료된 날짜 (취소선 표시) */
|
|
10
|
+
booked?: Matcher | Matcher[];
|
|
11
|
+
/** 예약 가능한 날짜 (아래에 점 표시) */
|
|
12
|
+
book?: Matcher | Matcher[];
|
|
13
|
+
};
|
|
14
|
+
declare const LDCalendar: ({ className, style, classNames, showOutsideDays, captionLayout, formatters, components, booked, book, modifiers, ...props }: LDCalendarProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export default LDCalendar;
|
|
16
|
+
//# sourceMappingURL=LDCalendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDCalendar.d.ts","sourceRoot":"","sources":["../../../src/components/LDCalendar/LDCalendar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,OAAO,EACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,OAAO,CAAC;AAIf,sDAAsD;AACtD,KAAK,eAAe,GAAG,cAAc,GAAG;IACtC,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc;IACd,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,yBAAyB;IACzB,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;IAC7B,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,6HAYjB,eAAe,4CAsJjB,CAAC;AAoEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { DayPicker, getDefaultClassNames, } from 'react-day-picker';
|
|
4
|
+
import { useRef, useEffect, } from 'react';
|
|
5
|
+
import LucideIcon from '../Icon/LucideIcon.js';
|
|
6
|
+
import cn from '../../utils/cn.js';
|
|
7
|
+
const LDCalendar = ({ className, style, classNames, showOutsideDays = true, captionLayout = 'label', formatters, components, booked, book, modifiers, ...props }) => {
|
|
8
|
+
// 라이브러리가 기본적으로 사용하는 모든 css 클래스 이름을 담고있는 객체
|
|
9
|
+
const defaultClassNames = getDefaultClassNames();
|
|
10
|
+
return (_jsx(DayPicker, { showOutsideDays: showOutsideDays, startMonth: new Date(1900, 0), endMonth: new Date(new Date().getFullYear() + 10, 11), style: style, className: cn('bg-white group/calendar p-3 [--cell-size:--spacing(8)] w-fit',
|
|
11
|
+
//rtl일때 버튼 아이콘 방향 전환
|
|
12
|
+
String.raw `rtl:**:[.rdp-button\_next>svg]:rotate-180`, String.raw `rtl:**:[.rdp-button\_previous>svg]:rotate-180`, className), captionLayout: captionLayout, formatters: {
|
|
13
|
+
formatMonthDropdown: (date) => date.toLocaleString('default', { month: 'short' }),
|
|
14
|
+
...formatters,
|
|
15
|
+
}, classNames: {
|
|
16
|
+
root: cn(defaultClassNames.root),
|
|
17
|
+
months: cn('flex gap-4 flex-col md:flex-row relative', defaultClassNames.months),
|
|
18
|
+
month: cn('flex flex-col w-full gap-4', defaultClassNames.month),
|
|
19
|
+
nav: cn('flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between', defaultClassNames.nav),
|
|
20
|
+
button_previous: cn('inline-flex items-center justify-center rounded-md text-sm font-medium transition-all outline-none hover:bg-neutral-100 hover:text-neutral-900 focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 focus-visible:ring-[3px]', 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none cursor-pointer', defaultClassNames.button_previous),
|
|
21
|
+
button_next: cn('inline-flex items-center justify-center rounded-md text-sm font-medium transition-all outline-none hover:bg-neutral-100 hover:text-neutral-900 focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 focus-visible:ring-[3px]', 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none cursor-pointer', defaultClassNames.button_next),
|
|
22
|
+
month_caption: cn('flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)', defaultClassNames.month_caption),
|
|
23
|
+
dropdowns: cn('w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5', defaultClassNames.dropdowns),
|
|
24
|
+
dropdown_root: cn('relative has-focus:border-lb600 border border-neutral-200 shadow-xs has-focus:ring-lb600/50 has-focus:ring-[3px] rounded-md', defaultClassNames.dropdown_root),
|
|
25
|
+
dropdown: cn('absolute bg-white inset-0 opacity-0', defaultClassNames.dropdown),
|
|
26
|
+
caption_label: cn('select-none font-medium', captionLayout === 'label'
|
|
27
|
+
? 'text-sm'
|
|
28
|
+
: cn('rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-neutral-500 [&>svg]:size-3.5'), defaultClassNames.caption_label),
|
|
29
|
+
table: 'w-full border-collapse',
|
|
30
|
+
weekdays: cn('flex', defaultClassNames.weekdays),
|
|
31
|
+
weekday: cn('text-neutral-500 rounded-md flex-1 font-normal text-[0.8rem] select-none', defaultClassNames.weekday),
|
|
32
|
+
week: cn('flex w-full mt-2', defaultClassNames.week),
|
|
33
|
+
week_number_header: cn('select-none w-(--cell-size)', defaultClassNames.week_number_header),
|
|
34
|
+
week_number: cn('text-[0.8rem] select-none text-neutral-500', defaultClassNames.week_number),
|
|
35
|
+
day: cn('relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none', defaultClassNames.day),
|
|
36
|
+
range_start: cn('rounded-l-md bg-neutral-100', defaultClassNames.range_start),
|
|
37
|
+
range_middle: cn('rounded-none', defaultClassNames.range_middle),
|
|
38
|
+
range_end: cn('rounded-r-md bg-neutral-100', defaultClassNames.range_end),
|
|
39
|
+
today: cn('bg-lb50 text-lb900 rounded-md data-[selected=true]:rounded-none font-semibold', defaultClassNames.today),
|
|
40
|
+
outside: cn('text-neutral-500 aria-selected:text-neutral-500', defaultClassNames.outside),
|
|
41
|
+
disabled: cn('text-neutral-500 opacity-50', defaultClassNames.disabled),
|
|
42
|
+
hidden: cn('invisible', defaultClassNames.hidden),
|
|
43
|
+
...classNames,
|
|
44
|
+
}, modifiers: {
|
|
45
|
+
booked,
|
|
46
|
+
book,
|
|
47
|
+
...modifiers,
|
|
48
|
+
}, components: {
|
|
49
|
+
Root: ({ className: rootClassName, rootRef, ...rootProps }) => (_jsx("div", { "data-slot": "calendar", ref: rootRef, className: cn(rootClassName), ...rootProps })),
|
|
50
|
+
Chevron: ({ className: chevronClassName, orientation }) => {
|
|
51
|
+
const iconName = orientation === 'left'
|
|
52
|
+
? 'chevronLeft'
|
|
53
|
+
: orientation === 'right'
|
|
54
|
+
? 'chevronRight'
|
|
55
|
+
: 'chevronDown';
|
|
56
|
+
return (_jsx(LucideIcon, { name: iconName, className: cn('size-4', chevronClassName) }));
|
|
57
|
+
},
|
|
58
|
+
DayButton: CalendarDayButton,
|
|
59
|
+
WeekNumber: ({ children, ...weekNumberProps }) => (_jsx("td", { ...weekNumberProps, children: _jsx("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children: children }) })),
|
|
60
|
+
...components,
|
|
61
|
+
}, ...props }));
|
|
62
|
+
};
|
|
63
|
+
function CalendarDayButton({ className: btnClassName, day, modifiers, ...btnProps }) {
|
|
64
|
+
const defaultClassNames = getDefaultClassNames();
|
|
65
|
+
const ref = useRef(null);
|
|
66
|
+
useEffect(() => {
|
|
67
|
+
if (modifiers.focused)
|
|
68
|
+
ref.current?.focus();
|
|
69
|
+
}, [modifiers.focused]);
|
|
70
|
+
return (_jsxs("button", { ref: ref, type: "button", "data-day": day.date.toLocaleDateString(), "data-selected-single": modifiers.selected &&
|
|
71
|
+
!modifiers.range_start &&
|
|
72
|
+
!modifiers.range_end &&
|
|
73
|
+
!modifiers.range_middle, "data-range-start": modifiers.range_start, "data-range-end": modifiers.range_end, "data-range-middle": modifiers.range_middle, className: cn('relative inline-flex items-center justify-center rounded-md text-sm font-medium transition-all outline-none cursor-pointer', 'hover:bg-lb50 hover:text-lb900', 'focus-visible:border-lb600 focus-visible:ring-lb600/50 focus-visible:ring-[3px]', 'data-[selected-single=true]:bg-lb600 data-[selected-single=true]:text-white', 'data-[range-middle=true]:bg-lb50 data-[range-middle=true]:text-lb900', 'data-[range-start=true]:bg-lb600 data-[range-start=true]:text-white', 'data-[range-end=true]:bg-lb600 data-[range-end=true]:text-white', 'flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal', 'group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-lb600/50 group-data-[focused=true]/day:ring-[3px]', 'data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md', 'data-[range-middle=true]:rounded-none', 'data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md', '[&>span]:text-xs [&>span]:opacity-70', defaultClassNames.day, btnClassName), ...btnProps, children: [_jsx("span", { className: cn('relative z-10', modifiers.booked && 'line-through opacity-40 decoration-current'), children: btnProps.children }), modifiers.book && (_jsx("span", { className: cn('absolute bottom-1.5 size-1 rounded-full bg-lb600', modifiers.selected && 'bg-white') }))] }));
|
|
74
|
+
}
|
|
75
|
+
export default LDCalendar;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { HTMLAttributes, ReactNode, Ref } from 'react';
|
|
2
|
+
interface RootProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
children?: ReactNode;
|
|
4
|
+
ref?: Ref<HTMLDivElement>;
|
|
5
|
+
}
|
|
6
|
+
export declare const CalloutBase: {
|
|
7
|
+
Root: ({ ref, children, className, ...props }: RootProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
Title: (props: {
|
|
9
|
+
title?: string;
|
|
10
|
+
className?: string;
|
|
11
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
12
|
+
Description: (props: {
|
|
13
|
+
description?: string;
|
|
14
|
+
className?: string;
|
|
15
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
16
|
+
};
|
|
17
|
+
export default CalloutBase;
|
|
18
|
+
//# sourceMappingURL=CalloutBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalloutBase.d.ts","sourceRoot":"","sources":["../../../src/components/LDCallout/CalloutBase.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAGvD,UAAU,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IACxD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;CAC3B;AAqCD,eAAO,MAAM,WAAW;mDAnC8B,SAAS;mBAezC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;yBAUhC;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;CAcvE,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import cn from '../../utils/cn.js';
|
|
3
|
+
const Root = ({ ref, children, className, ...props }) => {
|
|
4
|
+
return (_jsx("div", { ref: ref, className: cn('inline-flex flex-row items-center justify-between bg-tintBlue w-full p-5 rounded-lg', className), ...props, children: children }));
|
|
5
|
+
};
|
|
6
|
+
const Title = (props) => {
|
|
7
|
+
if (!props.title)
|
|
8
|
+
return null;
|
|
9
|
+
return (_jsx("span", { className: cn('text-lb500 extrabold display16', props.className), children: props.title }));
|
|
10
|
+
};
|
|
11
|
+
const Description = (props) => {
|
|
12
|
+
if (!props.description)
|
|
13
|
+
return null;
|
|
14
|
+
return (_jsx("span", { className: cn('text-lb500 display14', props.className), children: props.description }));
|
|
15
|
+
};
|
|
16
|
+
export const CalloutBase = {
|
|
17
|
+
Root,
|
|
18
|
+
Title,
|
|
19
|
+
Description,
|
|
20
|
+
};
|
|
21
|
+
export default CalloutBase;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
interface INoticeProps {
|
|
3
|
+
title: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
button?: ReactNode;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
declare const LDCallout: (props: INoticeProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default LDCallout;
|
|
10
|
+
//# sourceMappingURL=LDCallout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LDCallout.d.ts","sourceRoot":"","sources":["../../../src/components/LDCallout/LDCallout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,SAAS,GAAI,OAAO,YAAY,4CAUrC,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import CalloutBase from './CalloutBase.js';
|
|
3
|
+
const LDCallout = (props) => {
|
|
4
|
+
return (_jsxs(CalloutBase.Root, { className: props.className, children: [_jsxs("div", { className: "flex flex-col gap-xs", children: [_jsx(CalloutBase.Title, { title: props.title }), _jsx(CalloutBase.Description, { description: props.description })] }), props.button] }));
|
|
5
|
+
};
|
|
6
|
+
export default LDCallout;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
+
import useEmblaCarousel from 'embla-carousel-react';
|
|
3
|
+
import type { EmblaCarouselType, EmblaOptionsType } from 'embla-carousel';
|
|
4
|
+
export type CarouselOrientation = 'horizontal' | 'vertical';
|
|
5
|
+
interface AutoplayConfig {
|
|
6
|
+
/** 자동 전환 간격(ms). 기본 4000 */
|
|
7
|
+
delay?: number;
|
|
8
|
+
/** 사용자 상호작용 시 자동재생 정지 여부. 기본 false (재개) */
|
|
9
|
+
stopOnInteraction?: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface AutoScrollConfig {
|
|
12
|
+
/** 흐르는 속도. 클수록 빠름. 기본 2 */
|
|
13
|
+
speed?: number;
|
|
14
|
+
/** 진행 방향. 기본 'forward' */
|
|
15
|
+
direction?: 'forward' | 'backward';
|
|
16
|
+
/** 사용자 상호작용 시 정지 여부. 기본 false (재개) */
|
|
17
|
+
stopOnInteraction?: boolean;
|
|
18
|
+
/** 마우스 올렸을 때 정지 여부. 기본 false */
|
|
19
|
+
stopOnMouseEnter?: boolean;
|
|
20
|
+
}
|
|
21
|
+
interface CarouselContextType {
|
|
22
|
+
emblaRef: ReturnType<typeof useEmblaCarousel>[0];
|
|
23
|
+
emblaApi: EmblaCarouselType | undefined;
|
|
24
|
+
selectedIndex: number;
|
|
25
|
+
scrollSnaps: number[];
|
|
26
|
+
canScrollPrev: boolean;
|
|
27
|
+
canScrollNext: boolean;
|
|
28
|
+
scrollPrev: () => void;
|
|
29
|
+
scrollNext: () => void;
|
|
30
|
+
scrollTo: (index: number) => void;
|
|
31
|
+
orientation: CarouselOrientation;
|
|
32
|
+
/** 슬라이드 간 간격(px). embla 공식 방식대로 Container 음수 마진 + Slide 패딩으로 적용 */
|
|
33
|
+
gap: number;
|
|
34
|
+
}
|
|
35
|
+
/** 외부에서 캐러셀 컨트롤(emblaApi)에 접근하고 싶을 때 사용하는 훅 */
|
|
36
|
+
export declare const useCarousel: () => CarouselContextType;
|
|
37
|
+
export interface RootProps {
|
|
38
|
+
orientation?: CarouselOrientation;
|
|
39
|
+
loop?: boolean;
|
|
40
|
+
/** true 또는 설정 객체를 넘기면 자동재생(스텝형) 활성화 */
|
|
41
|
+
autoplay?: boolean | AutoplayConfig;
|
|
42
|
+
/** true 또는 설정 객체를 넘기면 연속 흐름(Auto Scroll) 활성화.
|
|
43
|
+
* autoplay와 동시 사용 불가 — 설정 시 autoplay보다 우선. loop와 함께 쓰는 것을 권장 */
|
|
44
|
+
autoScroll?: boolean | AutoScrollConfig;
|
|
45
|
+
/** 선택된 슬라이드가 viewport의 어디에 정렬되는지. 기본 'start'(왼쪽 끝 붙음) */
|
|
46
|
+
align?: 'start' | 'center' | 'end';
|
|
47
|
+
/** embla 추가 옵션 (dragFree, slidesToScroll 등) */
|
|
48
|
+
options?: Omit<EmblaOptionsType, 'loop' | 'axis' | 'align'>;
|
|
49
|
+
/** 슬라이드 간 간격(px). 기본 16 */
|
|
50
|
+
gap?: number;
|
|
51
|
+
className?: string;
|
|
52
|
+
style?: CSSProperties;
|
|
53
|
+
children?: ReactNode;
|
|
54
|
+
}
|
|
55
|
+
export interface ViewportProps {
|
|
56
|
+
className?: string;
|
|
57
|
+
children?: ReactNode;
|
|
58
|
+
}
|
|
59
|
+
export interface ContainerProps {
|
|
60
|
+
className?: string;
|
|
61
|
+
style?: CSSProperties;
|
|
62
|
+
children?: ReactNode;
|
|
63
|
+
}
|
|
64
|
+
export interface SlideProps {
|
|
65
|
+
/** 슬라이드 크기(basis). 기본 '100%' (한 번에 하나) */
|
|
66
|
+
size?: string;
|
|
67
|
+
index?: number;
|
|
68
|
+
total?: number;
|
|
69
|
+
className?: string;
|
|
70
|
+
style?: CSSProperties;
|
|
71
|
+
children?: ReactNode;
|
|
72
|
+
}
|
|
73
|
+
export interface NavButtonProps {
|
|
74
|
+
className?: string;
|
|
75
|
+
children?: ReactNode;
|
|
76
|
+
'aria-label'?: string;
|
|
77
|
+
}
|
|
78
|
+
export interface DotsProps {
|
|
79
|
+
className?: string;
|
|
80
|
+
dotClassName?: string;
|
|
81
|
+
}
|
|
82
|
+
export interface CounterProps {
|
|
83
|
+
className?: string;
|
|
84
|
+
/** 표시 형식 커스터마이즈. 기본 "3 / 5" */
|
|
85
|
+
format?: (current: number, total: number) => string;
|
|
86
|
+
}
|
|
87
|
+
export declare const CarouselBase: {
|
|
88
|
+
Root: ({ orientation, loop, autoplay, autoScroll, align, options, gap, className, style, children, }: RootProps) => import("react/jsx-runtime").JSX.Element;
|
|
89
|
+
Viewport: ({ className, children }: ViewportProps) => import("react/jsx-runtime").JSX.Element;
|
|
90
|
+
Container: ({ className, style, children }: ContainerProps) => import("react/jsx-runtime").JSX.Element;
|
|
91
|
+
Slide: ({ size, index, total, className, style, children, }: SlideProps) => import("react/jsx-runtime").JSX.Element;
|
|
92
|
+
Prev: ({ className, children, ...props }: NavButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
93
|
+
Next: ({ className, children, ...props }: NavButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
94
|
+
Dots: ({ className, dotClassName }: DotsProps) => import("react/jsx-runtime").JSX.Element;
|
|
95
|
+
Counter: ({ className, format }: CounterProps) => import("react/jsx-runtime").JSX.Element;
|
|
96
|
+
};
|
|
97
|
+
export default CarouselBase;
|
|
98
|
+
//# sourceMappingURL=CarouselBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CarouselBase.d.ts","sourceRoot":"","sources":["../../../src/components/LDCarousel/CarouselBase.tsx"],"names":[],"mappings":"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"}
|