@lawkit/ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/index.css +1 -0
  2. package/dist/index.js +3325 -0
  3. package/dist/tokens/src/contracts/theme-contract.css.d.ts +65 -0
  4. package/dist/tokens/src/foundation/color-palette.d.ts +150 -0
  5. package/dist/tokens/src/foundation/spacing-scale.d.ts +17 -0
  6. package/dist/tokens/src/foundation/typography-scale.d.ts +79 -0
  7. package/dist/tokens/src/index.d.ts +11 -0
  8. package/dist/tokens/src/runtime/create-theme-vars.d.ts +9 -0
  9. package/dist/tokens/src/semantic/color-roles.d.ts +409 -0
  10. package/dist/tokens/src/semantic/text-styles.d.ts +548 -0
  11. package/dist/tokens/src/theme.runtime.d.ts +2 -0
  12. package/dist/tokens/src/themes/light-theme.css.d.ts +23 -0
  13. package/dist/ui-v3/src/components/Alert/Alert.css.d.ts +59 -0
  14. package/dist/ui-v3/src/components/Alert/index.d.ts +34 -0
  15. package/dist/ui-v3/src/components/Avatar/Avatar.css.d.ts +95 -0
  16. package/dist/ui-v3/src/components/Avatar/index.d.ts +56 -0
  17. package/dist/ui-v3/src/components/Button/Button.css.d.ts +45 -0
  18. package/dist/ui-v3/src/components/Button/index.d.ts +22 -0
  19. package/dist/ui-v3/src/components/ButtonGroup/ButtonGroup.css.d.ts +68 -0
  20. package/dist/ui-v3/src/components/ButtonGroup/index.d.ts +26 -0
  21. package/dist/ui-v3/src/components/ButtonTab/ButtonTab.css.d.ts +23 -0
  22. package/dist/ui-v3/src/components/ButtonTab/index.d.ts +19 -0
  23. package/dist/ui-v3/src/components/CalendarPopover/CalendarPopover.css.d.ts +72 -0
  24. package/dist/ui-v3/src/components/CalendarPopover/index.d.ts +61 -0
  25. package/dist/ui-v3/src/components/Card/Card.css.d.ts +15 -0
  26. package/dist/ui-v3/src/components/Card/index.d.ts +29 -0
  27. package/dist/ui-v3/src/components/ChartTooltip/ChartTooltip.css.d.ts +36 -0
  28. package/dist/ui-v3/src/components/ChartTooltip/index.d.ts +28 -0
  29. package/dist/ui-v3/src/components/Checkbox/Checkbox.css.d.ts +71 -0
  30. package/dist/ui-v3/src/components/Checkbox/index.d.ts +27 -0
  31. package/dist/ui-v3/src/components/ChipsNavigation/ChipsNavigation.css.d.ts +26 -0
  32. package/dist/ui-v3/src/components/ChipsNavigation/index.d.ts +21 -0
  33. package/dist/ui-v3/src/components/Collapse/Collapse.css.d.ts +67 -0
  34. package/dist/ui-v3/src/components/Collapse/index.d.ts +32 -0
  35. package/dist/ui-v3/src/components/DataTable/DataTable.css.d.ts +32 -0
  36. package/dist/ui-v3/src/components/DataTable/index.d.ts +47 -0
  37. package/dist/ui-v3/src/components/DatePicker/DatePicker.css.d.ts +88 -0
  38. package/dist/ui-v3/src/components/DatePicker/index.d.ts +57 -0
  39. package/dist/ui-v3/src/components/Dropdown/Dropdown.css.d.ts +78 -0
  40. package/dist/ui-v3/src/components/Dropdown/index.d.ts +37 -0
  41. package/dist/ui-v3/src/components/FileUpload/FileUpload.css.d.ts +49 -0
  42. package/dist/ui-v3/src/components/FileUpload/index.d.ts +98 -0
  43. package/dist/ui-v3/src/components/IconButtonGroup/IconButtonGroup.css.d.ts +52 -0
  44. package/dist/ui-v3/src/components/IconButtonGroup/index.d.ts +23 -0
  45. package/dist/ui-v3/src/components/InfoPopover/InfoPopover.css.d.ts +9 -0
  46. package/dist/ui-v3/src/components/InfoPopover/index.d.ts +38 -0
  47. package/dist/ui-v3/src/components/Input/Input.css.d.ts +99 -0
  48. package/dist/ui-v3/src/components/Input/index.d.ts +86 -0
  49. package/dist/ui-v3/src/components/ListGroup/ListGroup.css.d.ts +47 -0
  50. package/dist/ui-v3/src/components/ListGroup/index.d.ts +30 -0
  51. package/dist/ui-v3/src/components/Mention/Mention.css.d.ts +1 -0
  52. package/dist/ui-v3/src/components/Mention/index.d.ts +15 -0
  53. package/dist/ui-v3/src/components/Modal/Modal.css.d.ts +23 -0
  54. package/dist/ui-v3/src/components/Modal/index.d.ts +34 -0
  55. package/dist/ui-v3/src/components/NavigationTab/NavigationTab.css.d.ts +18 -0
  56. package/dist/ui-v3/src/components/NavigationTab/index.d.ts +20 -0
  57. package/dist/ui-v3/src/components/NumberInput/NumberInput.css.d.ts +45 -0
  58. package/dist/ui-v3/src/components/NumberInput/index.d.ts +32 -0
  59. package/dist/ui-v3/src/components/Pagination/Pagination.css.d.ts +20 -0
  60. package/dist/ui-v3/src/components/Pagination/index.d.ts +18 -0
  61. package/dist/ui-v3/src/components/Popover/Popover.css.d.ts +65 -0
  62. package/dist/ui-v3/src/components/Popover/index.d.ts +39 -0
  63. package/dist/ui-v3/src/components/Progress/Progress.css.d.ts +60 -0
  64. package/dist/ui-v3/src/components/Progress/index.d.ts +36 -0
  65. package/dist/ui-v3/src/components/Radio/Radio.css.d.ts +55 -0
  66. package/dist/ui-v3/src/components/Radio/index.d.ts +64 -0
  67. package/dist/ui-v3/src/components/Skeleton/Skeleton.css.d.ts +19 -0
  68. package/dist/ui-v3/src/components/Skeleton/index.d.ts +52 -0
  69. package/dist/ui-v3/src/components/Slider/Slider.css.d.ts +10 -0
  70. package/dist/ui-v3/src/components/Slider/index.d.ts +66 -0
  71. package/dist/ui-v3/src/components/Spinner/Spinner.css.d.ts +68 -0
  72. package/dist/ui-v3/src/components/Spinner/index.d.ts +22 -0
  73. package/dist/ui-v3/src/components/SweetAlert/SweetAlert.css.d.ts +37 -0
  74. package/dist/ui-v3/src/components/SweetAlert/index.d.ts +25 -0
  75. package/dist/ui-v3/src/components/Switch/Switch.css.d.ts +46 -0
  76. package/dist/ui-v3/src/components/Switch/index.d.ts +26 -0
  77. package/dist/ui-v3/src/components/Tabs/Tabs.css.d.ts +55 -0
  78. package/dist/ui-v3/src/components/Tabs/index.d.ts +29 -0
  79. package/dist/ui-v3/src/components/TagSelect/TagSelect.css.d.ts +12 -0
  80. package/dist/ui-v3/src/components/TagSelect/index.d.ts +37 -0
  81. package/dist/ui-v3/src/components/Toast/Toast.css.d.ts +97 -0
  82. package/dist/ui-v3/src/components/Toast/index.d.ts +57 -0
  83. package/dist/ui-v3/src/components/Tooltip/Tooltip.css.d.ts +60 -0
  84. package/dist/ui-v3/src/components/Tooltip/index.d.ts +26 -0
  85. package/dist/ui-v3/src/components/TreeView/TreeView.css.d.ts +103 -0
  86. package/dist/ui-v3/src/components/TreeView/index.d.ts +72 -0
  87. package/dist/ui-v3/src/components/Widget/Widget.css.d.ts +52 -0
  88. package/dist/ui-v3/src/components/Widget/index.d.ts +109 -0
  89. package/dist/ui-v3/src/foundations/field/Field.d.ts +20 -0
  90. package/dist/ui-v3/src/foundations/field/field.css.d.ts +70 -0
  91. package/dist/ui-v3/src/foundations/field/index.d.ts +2 -0
  92. package/dist/ui-v3/src/index.d.ts +80 -0
  93. package/dist/ui-v3/src/lib/Portal.d.ts +6 -0
  94. package/dist/ui-v3/src/lib/cx.d.ts +1 -0
  95. package/dist/ui-v3/src/lib/cx.test.d.ts +1 -0
  96. package/dist/ui-v3/src/lib/useFocusTrap.d.ts +2 -0
  97. package/dist/ui-v3/src/styles/shared.css.d.ts +15 -0
  98. package/dist/ui-v3/src/styles/sprinkles.css.d.ts +29 -0
  99. package/package.json +67 -0
@@ -0,0 +1,109 @@
1
+ import { HTMLAttributes, ReactNode } from 'react';
2
+ export type StatValueColor = "primary" | "heading" | "success" | "danger" | "warning";
3
+ export interface WidgetProps extends HTMLAttributes<HTMLDivElement> {
4
+ /** 위젯 제목 */
5
+ title?: string;
6
+ /** 헤더 뱃지 (숫자 등) */
7
+ badge?: ReactNode;
8
+ /** 접기/펼치기 지원 */
9
+ collapsible?: boolean;
10
+ /** 접힌 상태 (controlled) */
11
+ collapsed?: boolean;
12
+ /** 접기 상태 변경 콜백 */
13
+ onCollapsedChange?: (collapsed: boolean) => void;
14
+ /** 헤더 우측 커스텀 영역 */
15
+ extra?: ReactNode;
16
+ /** 본문 패딩 없음 (테이블 등) */
17
+ flush?: boolean;
18
+ children?: ReactNode;
19
+ }
20
+ /**
21
+ * **Widget**
22
+ *
23
+ * 대시보드 위젯 카드 컨테이너.
24
+ *
25
+ * - `title` + `badge`: 헤더 영역
26
+ * - `collapsible`: 접기/펼치기 토글
27
+ * - `flush`: 본문 패딩 제거 (테이블 위젯용)
28
+ *
29
+ * ```tsx
30
+ * <Widget title="통계" badge={5} collapsible>
31
+ * <StatGrid>
32
+ * <StatCell label="건수" value={120} />
33
+ * </StatGrid>
34
+ * </Widget>
35
+ * ```
36
+ */
37
+ export declare function Widget({ title, badge, collapsible, collapsed: controlledCollapsed, onCollapsedChange, extra, flush, children, className, ...rest }: WidgetProps): import("react/jsx-runtime").JSX.Element;
38
+ export interface StatCellProps extends HTMLAttributes<HTMLDivElement> {
39
+ /** 라벨 */
40
+ label: string;
41
+ /** 값 (숫자 또는 문자열) */
42
+ value: ReactNode;
43
+ /** 값 색상 */
44
+ valueColor?: StatValueColor;
45
+ /** 활성 상태 */
46
+ active?: boolean;
47
+ }
48
+ /**
49
+ * **StatCell**
50
+ *
51
+ * 통계 수치 표시 셀. 라벨 + 큰 숫자.
52
+ *
53
+ * ```tsx
54
+ * <StatCell label="총 건수" value={120} valueColor="primary" />
55
+ * ```
56
+ */
57
+ export declare function StatCell({ label, value, valueColor, active, className, ...rest }: StatCellProps): import("react/jsx-runtime").JSX.Element;
58
+ export interface StatGridProps extends HTMLAttributes<HTMLDivElement> {
59
+ children: ReactNode;
60
+ }
61
+ /**
62
+ * **StatGrid**
63
+ *
64
+ * StatCell을 가로로 배치하는 그리드 컨테이너.
65
+ *
66
+ * ```tsx
67
+ * <StatGrid>
68
+ * <StatCell label="건수" value={120} />
69
+ * <StatCell label="완료" value={80} valueColor="success" />
70
+ * </StatGrid>
71
+ * ```
72
+ */
73
+ export declare function StatGrid({ children, className, ...rest }: StatGridProps): import("react/jsx-runtime").JSX.Element;
74
+ export interface QuickMenuItemProps extends HTMLAttributes<HTMLDivElement> {
75
+ /** 아이콘 */
76
+ icon: ReactNode;
77
+ /** 라벨 */
78
+ label: string;
79
+ }
80
+ /**
81
+ * **QuickMenuItem**
82
+ *
83
+ * 퀵 메뉴 아이콘 항목. 그래디언트 원형 아이콘 + 라벨.
84
+ *
85
+ * ```tsx
86
+ * <QuickMenuItem icon={<FileIcon />} label="계약" />
87
+ * ```
88
+ */
89
+ export declare function QuickMenuItem({ icon, label, className, ...rest }: QuickMenuItemProps): import("react/jsx-runtime").JSX.Element;
90
+ export interface ScheduleItemProps extends HTMLAttributes<HTMLDivElement> {
91
+ /** 날짜 텍스트 */
92
+ date: string;
93
+ /** 제목 */
94
+ title: string;
95
+ /** 본문 */
96
+ body?: string;
97
+ /** 상태 뱃지 영역 */
98
+ badges?: ReactNode;
99
+ }
100
+ /**
101
+ * **ScheduleItem**
102
+ *
103
+ * 일정 카드 항목.
104
+ *
105
+ * ```tsx
106
+ * <ScheduleItem date="2025.03.21" title="계약 검토" body="본문 내용..." />
107
+ * ```
108
+ */
109
+ export declare function ScheduleItem({ date, title, body, badges, className, ...rest }: ScheduleItemProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,20 @@
1
+ import { PropsWithChildren, ReactNode } from 'react';
2
+ export type FieldTone = "default" | "success" | "danger";
3
+ export type FieldSize = "sm" | "md" | "lg";
4
+ export type FieldProps = PropsWithChildren<{
5
+ label?: string;
6
+ caption?: string;
7
+ helperText?: string;
8
+ required?: boolean;
9
+ tone?: FieldTone;
10
+ }>;
11
+ export declare function Field({ caption, children, helperText, label, required, tone }: FieldProps): import("react/jsx-runtime").JSX.Element;
12
+ export type FieldControlShellProps = PropsWithChildren<{
13
+ disabled?: boolean;
14
+ size?: FieldSize;
15
+ tone?: FieldTone;
16
+ }>;
17
+ export declare function FieldControlShell({ children, disabled, size, tone }: FieldControlShellProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare function FieldAdornment({ children }: {
19
+ children: ReactNode;
20
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,70 @@
1
+ export declare const fieldRoot: string;
2
+ export declare const fieldLabelRow: string;
3
+ export declare const fieldLabel: string;
4
+ export declare const fieldCaption: string;
5
+ export declare const fieldRequiredMark: string;
6
+ export declare const fieldHelperText: import('@vanilla-extract/recipes').RuntimeFn<{
7
+ tone: {
8
+ default: {
9
+ color: string;
10
+ };
11
+ success: {
12
+ color: "#006d38";
13
+ };
14
+ danger: {
15
+ color: "#b12a30";
16
+ };
17
+ };
18
+ }>;
19
+ export declare const fieldControlShell: import('@vanilla-extract/recipes').RuntimeFn<{
20
+ size: {
21
+ sm: {
22
+ minHeight: "30px";
23
+ };
24
+ md: {};
25
+ lg: {
26
+ minHeight: "40px";
27
+ };
28
+ };
29
+ tone: {
30
+ default: {};
31
+ success: {
32
+ borderColor: "#28c76f";
33
+ selectors: {
34
+ "&:hover": {
35
+ borderColor: "#28c76f";
36
+ };
37
+ "&:focus-within": {
38
+ borderColor: "#28c76f";
39
+ boxShadow: "0 0 0 3px rgba(39, 194, 129, 0.12)";
40
+ };
41
+ };
42
+ };
43
+ danger: {
44
+ borderColor: string;
45
+ selectors: {
46
+ "&:hover": {
47
+ borderColor: string;
48
+ };
49
+ "&:focus-within": {
50
+ borderColor: string;
51
+ boxShadow: "0 0 0 3px rgba(234, 59, 59, 0.12)";
52
+ };
53
+ };
54
+ };
55
+ };
56
+ disabled: {
57
+ true: {
58
+ backgroundColor: string;
59
+ borderColor: "#9ea7b8";
60
+ cursor: "not-allowed";
61
+ selectors: {
62
+ "&:hover": {
63
+ borderColor: "#9ea7b8";
64
+ };
65
+ };
66
+ };
67
+ false: {};
68
+ };
69
+ }>;
70
+ export declare const fieldAdornment: string;
@@ -0,0 +1,2 @@
1
+ export { Field, FieldAdornment, FieldControlShell } from './Field';
2
+ export type { FieldProps, FieldSize, FieldTone } from './Field';
@@ -0,0 +1,80 @@
1
+ export { Alert } from './components/Alert';
2
+ export type { AlertProps, AlertType, AlertSize, AlertAction } from './components/Alert';
3
+ export { Button } from './components/Button';
4
+ export type { ButtonProps, ButtonVariant, ButtonColor, ButtonShape, ButtonSize } from './components/Button';
5
+ export { ButtonGroup } from './components/ButtonGroup';
6
+ export type { ButtonGroupProps, ButtonGroupItem, ButtonGroupVariant, ButtonGroupSize } from './components/ButtonGroup';
7
+ export { ButtonTab } from './components/ButtonTab';
8
+ export type { ButtonTabProps, ButtonTabItem } from './components/ButtonTab';
9
+ export { Tabs } from './components/Tabs';
10
+ export type { TabsProps, TabItem, TabsSize } from './components/Tabs';
11
+ export { NavigationTab } from './components/NavigationTab';
12
+ export type { NavigationTabProps, NavigationTabItem } from './components/NavigationTab';
13
+ export { IconButtonGroup } from './components/IconButtonGroup';
14
+ export type { IconButtonGroupProps, IconButtonGroupItem, IconButtonGroupVariant } from './components/IconButtonGroup';
15
+ export { ChipsNavigation } from './components/ChipsNavigation';
16
+ export type { ChipsNavigationProps, ChipsNavigationItem } from './components/ChipsNavigation';
17
+ export { Card, CardHeader, CardBody, CardFooter } from './components/Card';
18
+ export type { CardProps } from './components/Card';
19
+ export { Collapse, CollapseGroup } from './components/Collapse';
20
+ export type { CollapseProps, CollapseVariant, CollapseGroupProps } from './components/Collapse';
21
+ export { Dropdown } from './components/Dropdown';
22
+ export type { DropdownProps, DropdownOption, DropdownSize } from './components/Dropdown';
23
+ export { ListGroup, ListGroupItem, BottomSheet } from './components/ListGroup';
24
+ export type { ListGroupProps, ListGroupItemProps, ListGroupVariant, BottomSheetProps } from './components/ListGroup';
25
+ export { Modal, ModalHeader, ModalBody, ModalFooter } from './components/Modal';
26
+ export type { ModalProps, ModalSize } from './components/Modal';
27
+ export { SweetAlert } from './components/SweetAlert';
28
+ export type { SweetAlertProps, SweetAlertIntent } from './components/SweetAlert';
29
+ export { Pagination, PaginationCount } from './components/Pagination';
30
+ export type { PaginationProps } from './components/Pagination';
31
+ export { ProgressBar, StepBar } from './components/Progress';
32
+ export type { ProgressBarProps, ProgressColor, ProgressSegment, StepBarProps, StepItem, StepStatus } from './components/Progress';
33
+ export { Tooltip } from './components/Tooltip';
34
+ export type { TooltipProps, TooltipPlacement } from './components/Tooltip';
35
+ export { Popover } from './components/Popover';
36
+ export type { PopoverProps, PopoverPlacement } from './components/Popover';
37
+ export { ChartTooltip } from './components/ChartTooltip';
38
+ export type { ChartTooltipProps, ChartTooltipDataItem } from './components/ChartTooltip';
39
+ export { InfoPopover } from './components/InfoPopover';
40
+ export type { InfoPopoverProps, InfoPopoverStep } from './components/InfoPopover';
41
+ export { CalendarPopover } from './components/CalendarPopover';
42
+ export type { CalendarPopoverProps, CalendarPopoverPlacement, CalendarPopoverField } from './components/CalendarPopover';
43
+ export { Toast, ToastContainer } from './components/Toast';
44
+ export type { ToastProps, ToastIntent, ToastPosition, ToastContainerProps } from './components/Toast';
45
+ export { Input, InputGroup, MultiSelect } from './components/Input';
46
+ export type { InputProps, InputSize, InputState, InputGroupProps, MultiSelectProps, MultiSelectItem } from './components/Input';
47
+ export { TagSelect } from './components/TagSelect';
48
+ export type { TagSelectProps, TagSelectOption } from './components/TagSelect';
49
+ export { Switch } from './components/Switch';
50
+ export type { SwitchProps, SwitchSize } from './components/Switch';
51
+ export { Checkbox } from './components/Checkbox';
52
+ export type { CheckboxProps, CheckboxSize } from './components/Checkbox';
53
+ export { Radio, RadioGroup } from './components/Radio';
54
+ export type { RadioProps, RadioSize, RadioVariant, RadioGroupProps } from './components/Radio';
55
+ export { DatePicker, DateRangePicker } from './components/DatePicker';
56
+ export type { DatePickerProps, DateRangePickerProps } from './components/DatePicker';
57
+ export { FileUploadArea, FileThumbnail, FileItem, FileAttachBadge } from './components/FileUpload';
58
+ export type { FileUploadAreaProps, FileThumbnailProps, FileItemProps, FileAttachBadgeProps, ThumbnailLayout, ThumbnailSize, } from './components/FileUpload';
59
+ export { NumberInput } from './components/NumberInput';
60
+ export type { NumberInputProps, NumberInputSize } from './components/NumberInput';
61
+ export { Slider, RangeSlider } from './components/Slider';
62
+ export type { SliderProps, RangeSliderProps } from './components/Slider';
63
+ export { Avatar, AvatarGroup } from './components/Avatar';
64
+ export type { AvatarProps, AvatarGroupProps, AvatarSize, AvatarStatus, AvatarColor } from './components/Avatar';
65
+ export { Widget, StatCell, StatGrid, QuickMenuItem, ScheduleItem } from './components/Widget';
66
+ export type { WidgetProps, StatCellProps, StatGridProps, QuickMenuItemProps, ScheduleItemProps, StatValueColor, } from './components/Widget';
67
+ export { DataTable } from './components/DataTable';
68
+ export type { DataTableProps } from './components/DataTable';
69
+ export { Mention } from './components/Mention';
70
+ export type { MentionProps } from './components/Mention';
71
+ export { Skeleton } from './components/Skeleton';
72
+ export type { SkeletonProps, SkeletonVariant, SkeletonContentProps } from './components/Skeleton';
73
+ export { Spinner } from './components/Spinner';
74
+ export type { SpinnerProps, SpinnerSize, SpinnerColor } from './components/Spinner';
75
+ export { TreeView } from './components/TreeView';
76
+ export type { TreeViewProps, TreeNode, TreeNodeColumn, TreeViewSize } from './components/TreeView';
77
+ export { sprinkles } from './styles/sprinkles.css';
78
+ export { cx } from './lib/cx';
79
+ export { lightThemeClass, themeVars, createLdsThemeVars } from '../../tokens/src';
80
+ export type { LdsThemeInput } from '../../tokens/src';
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ export interface PortalProps {
3
+ children: ReactNode;
4
+ container?: Element;
5
+ }
6
+ export declare function Portal({ children, container }: PortalProps): import('react').ReactPortal | null;
@@ -0,0 +1 @@
1
+ export declare function cx(...classNames: Array<string | false | null | undefined>): string;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ import { RefObject } from 'react';
2
+ export declare function useFocusTrap(containerRef: RefObject<HTMLElement | null>, active: boolean): void;
@@ -0,0 +1,15 @@
1
+ export declare const fieldShell: string;
2
+ export declare const fieldLabel: string;
3
+ export declare const fieldControl: import('@vanilla-extract/recipes').RuntimeFn<{
4
+ control: {
5
+ input: {};
6
+ select: {
7
+ appearance: "none";
8
+ paddingRight: `var(--${string})`;
9
+ backgroundImage: "url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2366748E' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")";
10
+ backgroundPosition: `right var(--${string}) center`;
11
+ backgroundRepeat: "no-repeat";
12
+ backgroundSize: "10px 6px";
13
+ };
14
+ };
15
+ }>;
@@ -0,0 +1,29 @@
1
+ export declare const sprinkles: ((props: {
2
+ display?: ("flex" | "grid" | "block" | "inline-flex" | "none" | {
3
+ mobile?: "flex" | "grid" | "block" | "inline-flex" | "none" | undefined;
4
+ tablet?: "flex" | "grid" | "block" | "inline-flex" | "none" | undefined;
5
+ desktop?: "flex" | "grid" | "block" | "inline-flex" | "none" | undefined;
6
+ } | undefined) | import('@vanilla-extract/sprinkles').ResponsiveArray<2 | 1 | 3, "flex" | "grid" | "block" | "inline-flex" | "none" | null>;
7
+ alignItems?: ("center" | "stretch" | {
8
+ mobile?: "center" | "stretch" | undefined;
9
+ tablet?: "center" | "stretch" | undefined;
10
+ desktop?: "center" | "stretch" | undefined;
11
+ } | undefined) | import('@vanilla-extract/sprinkles').ResponsiveArray<2 | 1 | 3, "center" | "stretch" | null>;
12
+ justifyContent?: ("center" | "flex-start" | "space-between" | {
13
+ mobile?: "center" | "flex-start" | "space-between" | undefined;
14
+ tablet?: "center" | "flex-start" | "space-between" | undefined;
15
+ desktop?: "center" | "flex-start" | "space-between" | undefined;
16
+ } | undefined) | import('@vanilla-extract/sprinkles').ResponsiveArray<2 | 1 | 3, "center" | "flex-start" | "space-between" | null>;
17
+ width?: ("100%" | {
18
+ mobile?: "100%" | undefined;
19
+ tablet?: "100%" | undefined;
20
+ desktop?: "100%" | undefined;
21
+ } | undefined) | import('@vanilla-extract/sprinkles').ResponsiveArray<2 | 1 | 3, "100%" | null>;
22
+ gap?: ("x1" | "x2" | "x3" | "x4" | "x5" | "x6" | {
23
+ mobile?: "x1" | "x2" | "x3" | "x4" | "x5" | "x6" | undefined;
24
+ tablet?: "x1" | "x2" | "x3" | "x4" | "x5" | "x6" | undefined;
25
+ desktop?: "x1" | "x2" | "x3" | "x4" | "x5" | "x6" | undefined;
26
+ } | undefined) | import('@vanilla-extract/sprinkles').ResponsiveArray<2 | 1 | 3, "x1" | "x2" | "x3" | "x4" | "x5" | "x6" | null>;
27
+ }) => string) & {
28
+ properties: Set<"display" | "alignItems" | "justifyContent" | "width" | "gap">;
29
+ };
package/package.json ADDED
@@ -0,0 +1,67 @@
1
+ {
2
+ "name": "@lawkit/ui",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "description": "LDS Design System — React component library with design tokens",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/ui-v3/src/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/ui-v3/src/index.d.ts",
12
+ "import": "./dist/index.js"
13
+ },
14
+ "./style.css": "./dist/index.css"
15
+ },
16
+ "sideEffects": [
17
+ "*.css"
18
+ ],
19
+ "files": [
20
+ "dist"
21
+ ],
22
+ "publishConfig": {
23
+ "access": "public"
24
+ },
25
+ "keywords": ["react", "design-system", "components", "ui", "lawkit"],
26
+ "repository": {
27
+ "type": "git",
28
+ "url": "https://github.com/cartoonpoet/LDS.git",
29
+ "directory": "packages/ui-v3"
30
+ },
31
+ "license": "MIT",
32
+ "peerDependencies": {
33
+ "react": "^18.2.0 || ^19.0.0",
34
+ "react-dom": "^18.2.0 || ^19.0.0"
35
+ },
36
+ "dependencies": {
37
+ "@tanstack/react-table": "^8.21.3"
38
+ },
39
+ "scripts": {
40
+ "dev": "vite build --watch",
41
+ "build": "vite build",
42
+ "prepublishOnly": "pnpm run build",
43
+ "lint": "echo \"No lint configured yet\"",
44
+ "check": "tsc --noEmit",
45
+ "test": "vitest run --config vitest.config.ts"
46
+ },
47
+ "devDependencies": {
48
+ "@lds/tokens": "workspace:*",
49
+ "@storybook/react": "^10.2.17",
50
+ "@storybook/react-vite": "^10.2.17",
51
+ "@testing-library/jest-dom": "^6.9.1",
52
+ "@testing-library/react": "^16.3.2",
53
+ "@testing-library/user-event": "^14.6.1",
54
+ "@types/react": "^19.2.14",
55
+ "@types/react-dom": "^19.2.3",
56
+ "@vanilla-extract/css": "^1.18.0",
57
+ "@vanilla-extract/recipes": "^0.5.7",
58
+ "@vanilla-extract/sprinkles": "^1.6.5",
59
+ "@vanilla-extract/vite-plugin": "^5.1.4",
60
+ "@vitejs/plugin-react": "^5.2.0",
61
+ "jsdom": "^28.1.0",
62
+ "typescript": "^5.9.3",
63
+ "vite": "^7.3.1",
64
+ "vite-plugin-dts": "^4.5.4",
65
+ "vitest": "^4.1.0"
66
+ }
67
+ }