@loword/loword-design-system 0.0.3 → 0.0.5
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/LDEditor/LDEditor.js +6 -6
- package/dist/components/{FileUpload/FileUploadBase.d.ts → LDFileUpload/LDFileUploadBase.d.ts} +3 -3
- package/dist/components/LDFileUpload/LDFileUploadBase.d.ts.map +1 -0
- package/dist/components/{FileUpload/FileUploadBase.js → LDFileUpload/LDFileUploadBase.js} +7 -7
- package/dist/components/{LNB/LNBBase.d.ts → LDLNB/LDLNBBase.d.ts} +3 -3
- package/dist/components/LDLNB/LDLNBBase.d.ts.map +1 -0
- package/dist/components/{LNB/LNBBase.js → LDLNB/LDLNBBase.js} +3 -3
- package/dist/components/{Toast/Toast.d.ts → LDToast/LDToast.d.ts} +3 -3
- package/dist/components/LDToast/LDToast.d.ts.map +1 -0
- package/dist/components/{Toast/Toast.js → LDToast/LDToast.js} +2 -2
- package/dist/components/LDToast/LDToaster.d.ts +7 -0
- package/dist/components/LDToast/LDToaster.d.ts.map +1 -0
- package/dist/components/{Toast/Toaster.js → LDToast/LDToaster.js} +2 -2
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -7
- package/package.json +2 -2
- package/dist/components/Avatar/Avatar.d.ts +0 -11
- package/dist/components/Avatar/Avatar.d.ts.map +0 -1
- package/dist/components/Avatar/Avatar.js +0 -24
- package/dist/components/Avatar/AvatarBase.d.ts +0 -32
- package/dist/components/Avatar/AvatarBase.d.ts.map +0 -1
- package/dist/components/Avatar/AvatarBase.js +0 -49
- package/dist/components/Badge/Badge.d.ts +0 -25
- package/dist/components/Badge/Badge.d.ts.map +0 -1
- package/dist/components/Badge/Badge.js +0 -36
- package/dist/components/Badge/BadgeBase.d.ts +0 -10
- package/dist/components/Badge/BadgeBase.d.ts.map +0 -1
- package/dist/components/Badge/BadgeBase.js +0 -9
- package/dist/components/BreadCrumb/BreadCrumb.d.ts +0 -17
- package/dist/components/BreadCrumb/BreadCrumb.d.ts.map +0 -1
- package/dist/components/BreadCrumb/BreadCrumb.js +0 -37
- package/dist/components/BreadCrumb/BreadCrumbBase.d.ts +0 -9
- package/dist/components/BreadCrumb/BreadCrumbBase.d.ts.map +0 -1
- package/dist/components/BreadCrumb/BreadCrumbBase.js +0 -17
- package/dist/components/Button/Button.d.ts +0 -26
- package/dist/components/Button/Button.d.ts.map +0 -1
- package/dist/components/Button/Button.js +0 -102
- package/dist/components/Button/ButtonBase.d.ts +0 -5
- package/dist/components/Button/ButtonBase.d.ts.map +0 -1
- package/dist/components/Button/ButtonBase.js +0 -10
- package/dist/components/Button/ButtonSpinner.d.ts +0 -8
- package/dist/components/Button/ButtonSpinner.d.ts.map +0 -1
- package/dist/components/Button/ButtonSpinner.js +0 -15
- package/dist/components/Calendar/Calendar.d.ts +0 -16
- package/dist/components/Calendar/Calendar.d.ts.map +0 -1
- package/dist/components/Calendar/Calendar.js +0 -75
- package/dist/components/Callout/Callout.d.ts +0 -10
- package/dist/components/Callout/Callout.d.ts.map +0 -1
- package/dist/components/Callout/Callout.js +0 -6
- package/dist/components/Callout/CalloutBase.d.ts +0 -18
- package/dist/components/Callout/CalloutBase.d.ts.map +0 -1
- package/dist/components/Callout/CalloutBase.js +0 -21
- package/dist/components/Carousel/Carousel.d.ts +0 -50
- package/dist/components/Carousel/Carousel.d.ts.map +0 -1
- package/dist/components/Carousel/Carousel.js +0 -22
- package/dist/components/Carousel/CarouselBase.d.ts +0 -98
- package/dist/components/Carousel/CarouselBase.d.ts.map +0 -1
- package/dist/components/Carousel/CarouselBase.js +0 -144
- package/dist/components/Checkbox/Checkbox.d.ts +0 -27
- package/dist/components/Checkbox/Checkbox.d.ts.map +0 -1
- package/dist/components/Checkbox/Checkbox.js +0 -30
- package/dist/components/Checkbox/CheckboxBase.d.ts +0 -40
- package/dist/components/Checkbox/CheckboxBase.d.ts.map +0 -1
- package/dist/components/Checkbox/CheckboxBase.js +0 -57
- package/dist/components/Checkbox/CheckboxGroup.d.ts +0 -22
- package/dist/components/Checkbox/CheckboxGroup.d.ts.map +0 -1
- package/dist/components/Checkbox/CheckboxGroup.js +0 -13
- package/dist/components/Checkbox/FormCheckbox.d.ts +0 -14
- package/dist/components/Checkbox/FormCheckbox.d.ts.map +0 -1
- package/dist/components/Checkbox/FormCheckbox.js +0 -9
- package/dist/components/Checkbox/FormCheckboxGroup.d.ts +0 -13
- package/dist/components/Checkbox/FormCheckboxGroup.d.ts.map +0 -1
- package/dist/components/Checkbox/FormCheckboxGroup.js +0 -9
- package/dist/components/DataCalendar/DataCalendar.d.ts +0 -12
- package/dist/components/DataCalendar/DataCalendar.d.ts.map +0 -1
- package/dist/components/DataCalendar/DataCalendar.js +0 -13
- package/dist/components/DataCalendar/DataCalendarBase.d.ts +0 -45
- package/dist/components/DataCalendar/DataCalendarBase.d.ts.map +0 -1
- package/dist/components/DataCalendar/DataCalendarBase.js +0 -57
- package/dist/components/DatePicker/DatePicker.d.ts +0 -34
- package/dist/components/DatePicker/DatePicker.d.ts.map +0 -1
- package/dist/components/DatePicker/DatePicker.js +0 -44
- package/dist/components/DatePicker/FormDatePicker.d.ts +0 -12
- package/dist/components/DatePicker/FormDatePicker.d.ts.map +0 -1
- package/dist/components/DatePicker/FormDatePicker.js +0 -12
- package/dist/components/DateRangePicker/DateRangePicker.d.ts +0 -49
- package/dist/components/DateRangePicker/DateRangePicker.d.ts.map +0 -1
- package/dist/components/DateRangePicker/DateRangePicker.js +0 -197
- package/dist/components/DateRangePicker/FormDateRangePicker.d.ts +0 -12
- package/dist/components/DateRangePicker/FormDateRangePicker.d.ts.map +0 -1
- package/dist/components/DateRangePicker/FormDateRangePicker.js +0 -10
- package/dist/components/Divider/Divider.d.ts +0 -9
- package/dist/components/Divider/Divider.d.ts.map +0 -1
- package/dist/components/Divider/Divider.js +0 -11
- package/dist/components/Divider/DividerBase.d.ts +0 -9
- package/dist/components/Divider/DividerBase.d.ts.map +0 -1
- package/dist/components/Divider/DividerBase.js +0 -9
- package/dist/components/Drawer/Drawer.d.ts +0 -51
- package/dist/components/Drawer/Drawer.d.ts.map +0 -1
- package/dist/components/Drawer/Drawer.js +0 -30
- package/dist/components/Drawer/DrawerBase.d.ts +0 -52
- package/dist/components/Drawer/DrawerBase.d.ts.map +0 -1
- package/dist/components/Drawer/DrawerBase.js +0 -38
- package/dist/components/Editor/Editor.d.ts +0 -12
- package/dist/components/Editor/Editor.d.ts.map +0 -1
- package/dist/components/Editor/Editor.js +0 -162
- package/dist/components/Editor/EditorBase.d.ts +0 -52
- package/dist/components/Editor/EditorBase.d.ts.map +0 -1
- package/dist/components/Editor/EditorBase.js +0 -89
- package/dist/components/Editor/Viewer.d.ts +0 -7
- package/dist/components/Editor/Viewer.d.ts.map +0 -1
- package/dist/components/Editor/Viewer.js +0 -9
- package/dist/components/Editor/extensions.d.ts +0 -6
- package/dist/components/Editor/extensions.d.ts.map +0 -1
- package/dist/components/Editor/extensions.js +0 -38
- package/dist/components/FileUpload/FileUploadBase.d.ts.map +0 -1
- package/dist/components/Input/FormInput.d.ts +0 -15
- package/dist/components/Input/FormInput.d.ts.map +0 -1
- package/dist/components/Input/FormInput.js +0 -19
- package/dist/components/Input/Input.d.ts +0 -24
- package/dist/components/Input/Input.d.ts.map +0 -1
- package/dist/components/Input/Input.js +0 -71
- package/dist/components/Input/InputBase.d.ts +0 -22
- package/dist/components/Input/InputBase.d.ts.map +0 -1
- package/dist/components/Input/InputBase.js +0 -17
- package/dist/components/LNB/LNBBase.d.ts.map +0 -1
- package/dist/components/LoadingDots/LoadingDots.d.ts +0 -8
- package/dist/components/LoadingDots/LoadingDots.d.ts.map +0 -1
- package/dist/components/LoadingDots/LoadingDots.js +0 -29
- package/dist/components/MenuBar/MenuBar.d.ts +0 -21
- package/dist/components/MenuBar/MenuBar.d.ts.map +0 -1
- package/dist/components/MenuBar/MenuBar.js +0 -33
- package/dist/components/MenuBar/MenuBarBase.d.ts +0 -43
- package/dist/components/MenuBar/MenuBarBase.d.ts.map +0 -1
- package/dist/components/MenuBar/MenuBarBase.js +0 -69
- package/dist/components/Modal/Modal.d.ts +0 -51
- package/dist/components/Modal/Modal.d.ts.map +0 -1
- package/dist/components/Modal/Modal.js +0 -72
- package/dist/components/Modal/ModalBase.d.ts +0 -42
- package/dist/components/Modal/ModalBase.d.ts.map +0 -1
- package/dist/components/Modal/ModalBase.js +0 -30
- package/dist/components/Modal/openModal.d.ts +0 -24
- package/dist/components/Modal/openModal.d.ts.map +0 -1
- package/dist/components/Modal/openModal.js +0 -52
- package/dist/components/OTPInput/OTPInput.d.ts +0 -46
- package/dist/components/OTPInput/OTPInput.d.ts.map +0 -1
- package/dist/components/OTPInput/OTPInput.js +0 -87
- package/dist/components/Pagination/Pagination.d.ts +0 -12
- package/dist/components/Pagination/Pagination.d.ts.map +0 -1
- package/dist/components/Pagination/Pagination.js +0 -5
- package/dist/components/Pagination/PaginationBase.d.ts +0 -36
- package/dist/components/Pagination/PaginationBase.d.ts.map +0 -1
- package/dist/components/Pagination/PaginationBase.js +0 -44
- package/dist/components/Pagination/paginationUtils.d.ts +0 -2
- package/dist/components/Pagination/paginationUtils.d.ts.map +0 -1
- package/dist/components/Pagination/paginationUtils.js +0 -18
- package/dist/components/Popover/Popover.d.ts +0 -42
- package/dist/components/Popover/Popover.d.ts.map +0 -1
- package/dist/components/Popover/Popover.js +0 -31
- package/dist/components/Popover/PopoverBase.d.ts +0 -31
- package/dist/components/Popover/PopoverBase.d.ts.map +0 -1
- package/dist/components/Popover/PopoverBase.js +0 -18
- package/dist/components/Radio/FormRadioGroup.d.ts +0 -13
- package/dist/components/Radio/FormRadioGroup.d.ts.map +0 -1
- package/dist/components/Radio/FormRadioGroup.js +0 -9
- package/dist/components/Radio/Radio.d.ts +0 -24
- package/dist/components/Radio/Radio.d.ts.map +0 -1
- package/dist/components/Radio/Radio.js +0 -39
- package/dist/components/Radio/RadioBase.d.ts +0 -38
- package/dist/components/Radio/RadioBase.d.ts.map +0 -1
- package/dist/components/Radio/RadioBase.js +0 -46
- package/dist/components/Radio/RadioGroup.d.ts +0 -22
- package/dist/components/Radio/RadioGroup.d.ts.map +0 -1
- package/dist/components/Radio/RadioGroup.js +0 -7
- package/dist/components/ScrollArea/ScrollArea.d.ts +0 -15
- package/dist/components/ScrollArea/ScrollArea.d.ts.map +0 -1
- package/dist/components/ScrollArea/ScrollArea.js +0 -10
- package/dist/components/Select/FormMultiSelect.d.ts +0 -13
- package/dist/components/Select/FormMultiSelect.d.ts.map +0 -1
- package/dist/components/Select/FormMultiSelect.js +0 -14
- package/dist/components/Select/FormSelect.d.ts +0 -13
- package/dist/components/Select/FormSelect.d.ts.map +0 -1
- package/dist/components/Select/FormSelect.js +0 -10
- package/dist/components/Select/MultiSelect.d.ts +0 -31
- package/dist/components/Select/MultiSelect.d.ts.map +0 -1
- package/dist/components/Select/MultiSelect.js +0 -59
- package/dist/components/Select/Select.d.ts +0 -41
- package/dist/components/Select/Select.d.ts.map +0 -1
- package/dist/components/Select/Select.js +0 -55
- package/dist/components/Select/SelectBase.d.ts +0 -59
- package/dist/components/Select/SelectBase.d.ts.map +0 -1
- package/dist/components/Select/SelectBase.js +0 -211
- package/dist/components/Skeleton/Skeleton.d.ts +0 -10
- package/dist/components/Skeleton/Skeleton.d.ts.map +0 -1
- package/dist/components/Skeleton/Skeleton.js +0 -8
- package/dist/components/Slider/Slider.d.ts +0 -23
- package/dist/components/Slider/Slider.d.ts.map +0 -1
- package/dist/components/Slider/Slider.js +0 -195
- package/dist/components/Spinner/Spinner.d.ts +0 -25
- package/dist/components/Spinner/Spinner.d.ts.map +0 -1
- package/dist/components/Spinner/Spinner.js +0 -20
- package/dist/components/Table/Table.d.ts +0 -34
- package/dist/components/Table/Table.d.ts.map +0 -1
- package/dist/components/Table/Table.js +0 -29
- package/dist/components/Table/TableBase.d.ts +0 -37
- package/dist/components/Table/TableBase.d.ts.map +0 -1
- package/dist/components/Table/TableBase.js +0 -39
- package/dist/components/Table/TableField.d.ts +0 -64
- package/dist/components/Table/TableField.d.ts.map +0 -1
- package/dist/components/Table/TableField.js +0 -87
- package/dist/components/Table/TanstackTable.d.ts +0 -23
- package/dist/components/Table/TanstackTable.d.ts.map +0 -1
- package/dist/components/Table/TanstackTable.js +0 -35
- package/dist/components/TimePicker/FormTimePicker.d.ts +0 -12
- package/dist/components/TimePicker/FormTimePicker.d.ts.map +0 -1
- package/dist/components/TimePicker/FormTimePicker.js +0 -12
- package/dist/components/TimePicker/TimePicker.d.ts +0 -27
- package/dist/components/TimePicker/TimePicker.d.ts.map +0 -1
- package/dist/components/TimePicker/TimePicker.js +0 -120
- package/dist/components/Toast/Toast.d.ts.map +0 -1
- package/dist/components/Toast/Toaster.d.ts +0 -7
- package/dist/components/Toast/Toaster.d.ts.map +0 -1
- package/dist/components/ToggleButton/FormToggleButton.d.ts +0 -12
- package/dist/components/ToggleButton/FormToggleButton.d.ts.map +0 -1
- package/dist/components/ToggleButton/FormToggleButton.js +0 -9
- package/dist/components/ToggleButton/ToggleButton.d.ts +0 -31
- package/dist/components/ToggleButton/ToggleButton.d.ts.map +0 -1
- package/dist/components/ToggleButton/ToggleButton.js +0 -42
- package/dist/components/ToggleButton/ToggleButtonBase.d.ts +0 -41
- package/dist/components/ToggleButton/ToggleButtonBase.d.ts.map +0 -1
- package/dist/components/ToggleButton/ToggleButtonBase.js +0 -59
- package/dist/components/Tooltip/Tooltip.d.ts +0 -18
- package/dist/components/Tooltip/Tooltip.d.ts.map +0 -1
- package/dist/components/Tooltip/Tooltip.js +0 -13
- package/dist/components/Tooltip/TooltipBase.d.ts +0 -39
- package/dist/components/Tooltip/TooltipBase.d.ts.map +0 -1
- package/dist/components/Tooltip/TooltipBase.js +0 -46
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { type HTMLAttributes, type ReactNode, type Ref } from 'react';
|
|
2
|
-
interface RootProps extends HTMLAttributes<HTMLSpanElement> {
|
|
3
|
-
children?: ReactNode;
|
|
4
|
-
ref?: Ref<HTMLSpanElement>;
|
|
5
|
-
}
|
|
6
|
-
export declare const BadgeBase: {
|
|
7
|
-
Root: ({ className, children, ref, ...props }: RootProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
-
};
|
|
9
|
-
export default BadgeBase;
|
|
10
|
-
//# sourceMappingURL=BadgeBase.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BadgeBase.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/BadgeBase.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAItE,UAAU,SAAU,SAAQ,cAAc,CAAC,eAAe,CAAC;IACzD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,GAAG,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;CAC5B;AAcD,eAAO,MAAM,SAAS;mDAZgC,SAAS;CAc9D,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import cn from '../../utils/cn.js';
|
|
3
|
-
const Root = ({ className, children, ref, ...props }) => {
|
|
4
|
-
return (_jsx("span", { ref: ref, className: cn('inline-flex items-center justify-center', className), ...props, children: children }));
|
|
5
|
-
};
|
|
6
|
-
export const BadgeBase = {
|
|
7
|
-
Root,
|
|
8
|
-
};
|
|
9
|
-
export default BadgeBase;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { type ReactNode } from 'react';
|
|
2
|
-
import { type ButtonSize } from '../Button/Button.js';
|
|
3
|
-
import { type IconName } from '../Icon/LucideIcon.js';
|
|
4
|
-
export interface BreadCrumbItem {
|
|
5
|
-
label: string;
|
|
6
|
-
href?: string;
|
|
7
|
-
icon?: IconName | ReactNode;
|
|
8
|
-
}
|
|
9
|
-
export interface BreadCrumbProps {
|
|
10
|
-
items: BreadCrumbItem[];
|
|
11
|
-
size?: ButtonSize;
|
|
12
|
-
separator?: ReactNode;
|
|
13
|
-
className?: string;
|
|
14
|
-
}
|
|
15
|
-
declare const BreadCrumb: ({ items, size, separator, className, }: BreadCrumbProps) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
-
export default BreadCrumb;
|
|
17
|
-
//# sourceMappingURL=BreadCrumb.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BreadCrumb.d.ts","sourceRoot":"","sources":["../../../src/components/BreadCrumb/BreadCrumb.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAe,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,QAAA,MAAM,UAAU,GAAI,wCAKjB,eAAe,4CAiDjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
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 Button from '../Button/Button.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 BreadCrumb = ({ 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(Button, { 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 BreadCrumb;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
export declare const BreadCrumb: {
|
|
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 BreadCrumb;
|
|
9
|
-
//# sourceMappingURL=BreadCrumbBase.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BreadCrumbBase.d.ts","sourceRoot":"","sources":["../../../src/components/BreadCrumb/BreadCrumbBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA8C/B,eAAO,MAAM,UAAU;oCA1CgB,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;CAgB4B,CAAC;AAE1D,eAAe,UAAU,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
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 BreadCrumb = { Root, List, Item, Separator };
|
|
17
|
-
export default BreadCrumb;
|
|
@@ -1,26 +0,0 @@
|
|
|
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 ButtonProps<T extends ElementType> = PolymorphicComponentProps<T, _ButtonProps>;
|
|
23
|
-
type ButtonComponent = <T extends React.ElementType = 'button'>(props: ButtonProps<T>) => React.ReactElement | null;
|
|
24
|
-
declare const Button: ButtonComponent;
|
|
25
|
-
export default Button;
|
|
26
|
-
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.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,WAAW,CAAC,CAAC,SAAS,WAAW,IAAI,yBAAyB,CACxE,CAAC,EACD,YAAY,CACb,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,QAAQ,EAC5D,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,KAClB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;AAE/B,QAAA,MAAM,MAAM,EAAE,eAoEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1,102 +0,0 @@
|
|
|
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 Button = ({ 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 Button;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.d.ts","sourceRoot":"","sources":["../../../src/components/Button/ButtonBase.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,UAAU;UACP,KAAK,CAAC,WAAW;CAChC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
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;
|
|
@@ -1,8 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonSpinner.d.ts","sourceRoot":"","sources":["../../../src/components/Button/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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import Spinner from '../Spinner/Spinner.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(Spinner, { className: cn('shrink-0 text-current', sizeClasses[size], className) }));
|
|
14
|
-
};
|
|
15
|
-
export default ButtonSpinner;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { type DayPickerProps, type Matcher } from 'react-day-picker';
|
|
2
|
-
import { type CSSProperties } from 'react';
|
|
3
|
-
/** react-day-picker의 DayPickerProps를 확장한 캘린더 props */
|
|
4
|
-
type CalendarProps = DayPickerProps & {
|
|
5
|
-
/** 추가 CSS 클래스 */
|
|
6
|
-
className?: string;
|
|
7
|
-
/** 인라인 스타일 */
|
|
8
|
-
style?: CSSProperties;
|
|
9
|
-
/** 예약 완료된 날짜 (취소선 표시) */
|
|
10
|
-
booked?: Matcher | Matcher[];
|
|
11
|
-
/** 예약 가능한 날짜 (아래에 점 표시) */
|
|
12
|
-
book?: Matcher | Matcher[];
|
|
13
|
-
};
|
|
14
|
-
declare const Calendar: ({ className, style, classNames, showOutsideDays, captionLayout, formatters, components, booked, book, modifiers, ...props }: CalendarProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
-
export default Calendar;
|
|
16
|
-
//# sourceMappingURL=Calendar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../../src/components/Calendar/Calendar.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,aAAa,GAAG,cAAc,GAAG;IACpC,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,QAAQ,GAAI,6HAYf,aAAa,4CAsJf,CAAC;AAoEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1,75 +0,0 @@
|
|
|
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 Calendar = ({ 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 Calendar;
|
|
@@ -1,10 +0,0 @@
|
|
|
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 Callout: (props: INoticeProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
-
export default Callout;
|
|
10
|
-
//# sourceMappingURL=Callout.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../../src/components/Callout/Callout.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,OAAO,GAAI,OAAO,YAAY,4CAUnC,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import CalloutBase from './CalloutBase.js';
|
|
3
|
-
const Callout = (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 Callout;
|
|
@@ -1,18 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CalloutBase.d.ts","sourceRoot":"","sources":["../../../src/components/Callout/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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
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;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
-
import { type CarouselOrientation, type RootProps } from './CarouselBase.js';
|
|
3
|
-
export interface CarouselProps {
|
|
4
|
-
/** 슬라이드로 렌더링할 노드 배열 */
|
|
5
|
-
slides: ReactNode[];
|
|
6
|
-
/** 가로/세로 방향. 기본 'horizontal' */
|
|
7
|
-
orientation?: CarouselOrientation;
|
|
8
|
-
/** 무한 루프. 기본 false */
|
|
9
|
-
loop?: boolean;
|
|
10
|
-
/** 자동재생(스텝형). true 또는 { delay, stopOnInteraction } */
|
|
11
|
-
autoplay?: boolean | {
|
|
12
|
-
delay?: number;
|
|
13
|
-
stopOnInteraction?: boolean;
|
|
14
|
-
};
|
|
15
|
-
/** 연속 흐름(Auto Scroll). autoplay와 동시 사용 불가, loop와 함께 권장 */
|
|
16
|
-
autoScroll?: RootProps['autoScroll'];
|
|
17
|
-
/** 슬라이드 정렬 위치. 기본 'start'(왼쪽 끝 붙음) */
|
|
18
|
-
align?: RootProps['align'];
|
|
19
|
-
/** 이전/다음 화살표 표시. 기본 true */
|
|
20
|
-
showArrows?: boolean;
|
|
21
|
-
/** 하단 도트 페이지네이션 표시. 기본 true */
|
|
22
|
-
showDots?: boolean;
|
|
23
|
-
/** "현재 / 전체" 숫자 표시. 기본 false */
|
|
24
|
-
showCounter?: boolean;
|
|
25
|
-
/** 슬라이드 한 개의 크기(basis). 기본 '100%' */
|
|
26
|
-
slideSize?: string;
|
|
27
|
-
/** 슬라이드 사이 간격(Tailwind gap 단위 px). 기본 16 */
|
|
28
|
-
gap?: number;
|
|
29
|
-
className?: string;
|
|
30
|
-
style?: CSSProperties;
|
|
31
|
-
/** Viewport에 적용할 클래스 (세로 모드 높이 지정 등) */
|
|
32
|
-
viewportClassName?: string;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* embla-carousel 기반 기본 캐러셀.
|
|
36
|
-
* 고급 커스터마이징이 필요하면 `Carousel.Root` 등 compound API를 직접 조합하세요.
|
|
37
|
-
*/
|
|
38
|
-
declare const Carousel: {
|
|
39
|
-
({ slides, orientation, loop, autoplay, autoScroll, align, showArrows, showDots, showCounter, slideSize, gap, className, style, viewportClassName, }: CarouselProps): import("react/jsx-runtime").JSX.Element;
|
|
40
|
-
Root: ({ orientation, loop, autoplay, autoScroll, align, options, gap, className, style, children, }: RootProps) => import("react/jsx-runtime").JSX.Element;
|
|
41
|
-
Viewport: ({ className, children }: import("./CarouselBase.js").ViewportProps) => import("react/jsx-runtime").JSX.Element;
|
|
42
|
-
Container: ({ className, style, children }: import("./CarouselBase.js").ContainerProps) => import("react/jsx-runtime").JSX.Element;
|
|
43
|
-
Slide: ({ size, index, total, className, style, children, }: import("./CarouselBase.js").SlideProps) => import("react/jsx-runtime").JSX.Element;
|
|
44
|
-
Prev: ({ className, children, ...props }: import("./CarouselBase.js").NavButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
45
|
-
Next: ({ className, children, ...props }: import("./CarouselBase.js").NavButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
46
|
-
Dots: ({ className, dotClassName }: import("./CarouselBase.js").DotsProps) => import("react/jsx-runtime").JSX.Element;
|
|
47
|
-
Counter: ({ className, format }: import("./CarouselBase.js").CounterProps) => import("react/jsx-runtime").JSX.Element;
|
|
48
|
-
};
|
|
49
|
-
export default Carousel;
|
|
50
|
-
//# sourceMappingURL=Carousel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Carousel.d.ts","sourceRoot":"","sources":["../../../src/components/Carousel/Carousel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAqB,EACnB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AAGxB,MAAM,WAAW,aAAa;IAC5B,uBAAuB;IACvB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,gCAAgC;IAChC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,sBAAsB;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACrE,0DAA0D;IAC1D,UAAU,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACrC,sCAAsC;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC3B,4BAA4B;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,QAAA,MAAM,QAAQ;0JAeX,aAAa;;;;;;;;;CAuDf,CAAC;AAWF,eAAe,QAAQ,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import CarouselBase from './CarouselBase.js';
|
|
4
|
-
import cn from '../../utils/cn.js';
|
|
5
|
-
/**
|
|
6
|
-
* embla-carousel 기반 기본 캐러셀.
|
|
7
|
-
* 고급 커스터마이징이 필요하면 `Carousel.Root` 등 compound API를 직접 조합하세요.
|
|
8
|
-
*/
|
|
9
|
-
const Carousel = ({ slides, orientation = 'horizontal', loop = false, autoplay = false, autoScroll = false, align = 'start', showArrows = true, showDots = true, showCounter = false, slideSize = '100%', gap = 16, className, style, viewportClassName, }) => {
|
|
10
|
-
const isVertical = orientation === 'vertical';
|
|
11
|
-
const total = slides.length;
|
|
12
|
-
return (_jsx(CarouselBase.Root, { orientation: orientation, loop: loop, autoplay: autoplay, autoScroll: autoScroll, align: align, gap: gap, className: className, style: style, children: _jsxs("div", { className: "flex flex-col gap-3", children: [_jsxs("div", { className: cn('flex items-center gap-3 w-full', isVertical && 'flex-col'), children: [showArrows && _jsx(CarouselBase.Prev, {}), _jsx(CarouselBase.Viewport, { className: cn('w-full', viewportClassName), children: _jsx(CarouselBase.Container, { children: slides.map((slide, i) => (_jsx(CarouselBase.Slide, { size: slideSize, index: i, total: total, children: slide }, i))) }) }), showArrows && _jsx(CarouselBase.Next, {})] }), (showDots || showCounter) && (_jsxs("div", { className: "flex items-center justify-center gap-3", children: [showDots && (_jsx(CarouselBase.Dots, { className: isVertical ? 'flex-col' : undefined })), showCounter && _jsx(CarouselBase.Counter, {})] }))] }) }));
|
|
13
|
-
};
|
|
14
|
-
Carousel.Root = CarouselBase.Root;
|
|
15
|
-
Carousel.Viewport = CarouselBase.Viewport;
|
|
16
|
-
Carousel.Container = CarouselBase.Container;
|
|
17
|
-
Carousel.Slide = CarouselBase.Slide;
|
|
18
|
-
Carousel.Prev = CarouselBase.Prev;
|
|
19
|
-
Carousel.Next = CarouselBase.Next;
|
|
20
|
-
Carousel.Dots = CarouselBase.Dots;
|
|
21
|
-
Carousel.Counter = CarouselBase.Counter;
|
|
22
|
-
export default Carousel;
|