cortena-ui 1.3.0 → 1.4.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.
- package/README.md +74 -3
- package/dist/a2ui/catalogue-doc.d.ts +44 -0
- package/dist/a2ui/catalogue-doc.js +169 -0
- package/dist/a2ui/catalogue-doc.js.map +1 -0
- package/dist/a2ui/catalogue.d.ts +44 -0
- package/dist/a2ui/catalogue.js +942 -0
- package/dist/a2ui/catalogue.js.map +1 -0
- package/dist/a2ui/index.d.ts +7 -0
- package/dist/a2ui/message.d.ts +232 -0
- package/dist/a2ui/message.js +365 -0
- package/dist/a2ui/message.js.map +1 -0
- package/dist/a2ui/renderer.d.ts +46 -0
- package/dist/a2ui/renderer.js +252 -0
- package/dist/a2ui/renderer.js.map +1 -0
- package/dist/a2ui/views.d.ts +80 -0
- package/dist/a2ui/views.js +596 -0
- package/dist/a2ui/views.js.map +1 -0
- package/dist/a2ui.d.ts +8 -0
- package/dist/a2ui.js +7 -0
- package/dist/chart.d.ts +9 -0
- package/dist/chart.js +9 -0
- package/dist/components/accordion.d.ts +22 -0
- package/dist/components/accordion.js +63 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert.d.ts +15 -0
- package/dist/components/alert.js +64 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/avatar.d.ts +18 -0
- package/dist/components/avatar.js +40 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +12 -0
- package/dist/components/badge.js +47 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +71 -0
- package/dist/components/breadcrumb.js +123 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button-link.d.ts +28 -0
- package/dist/components/button-link.js +24 -0
- package/dist/components/button-link.js.map +1 -0
- package/dist/components/button.d.ts +24 -0
- package/dist/components/button.js +65 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/calendar.d.ts +28 -0
- package/dist/components/calendar.js +123 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/card.d.ts +32 -0
- package/dist/components/card.js +57 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/chart/chart.d.ts +71 -0
- package/dist/components/chart/chart.js +167 -0
- package/dist/components/chart/chart.js.map +1 -0
- package/dist/components/chart/container.d.ts +88 -0
- package/dist/components/chart/container.js +189 -0
- package/dist/components/chart/container.js.map +1 -0
- package/dist/components/chart/data.js +128 -0
- package/dist/components/chart/data.js.map +1 -0
- package/dist/components/chart/index.d.ts +9 -0
- package/dist/components/chart/index.js +10 -0
- package/dist/components/chart/nivo-charts.js +225 -0
- package/dist/components/chart/nivo-charts.js.map +1 -0
- package/dist/components/chart/nivo-lazy.js +50 -0
- package/dist/components/chart/nivo-lazy.js.map +1 -0
- package/dist/components/chart/nivo-theme.d.ts +156 -0
- package/dist/components/chart/nivo-theme.js +161 -0
- package/dist/components/chart/nivo-theme.js.map +1 -0
- package/dist/components/chart/recharts-charts.js +276 -0
- package/dist/components/chart/recharts-charts.js.map +1 -0
- package/dist/components/chart/recharts-lazy.js +58 -0
- package/dist/components/chart/recharts-lazy.js.map +1 -0
- package/dist/components/chart/recharts-parts.d.ts +10 -0
- package/dist/components/chart/recharts-parts.js +25 -0
- package/dist/components/chart/recharts-parts.js.map +1 -0
- package/dist/components/chart/tokens.d.ts +62 -0
- package/dist/components/chart/tokens.js +192 -0
- package/dist/components/chart/tokens.js.map +1 -0
- package/dist/components/chart/types.d.ts +114 -0
- package/dist/components/chart/types.js +27 -0
- package/dist/components/chart/types.js.map +1 -0
- package/dist/components/checkbox.d.ts +20 -0
- package/dist/components/checkbox.js +24 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/chip.d.ts +17 -0
- package/dist/components/chip.js +47 -0
- package/dist/components/chip.js.map +1 -0
- package/dist/components/combobox.d.ts +76 -0
- package/dist/components/combobox.js +201 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +50 -0
- package/dist/components/command.js +117 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/data-table/data-table.d.ts +65 -0
- package/dist/components/data-table/data-table.js +588 -0
- package/dist/components/data-table/data-table.js.map +1 -0
- package/dist/components/data-table/export.d.ts +23 -0
- package/dist/components/data-table/export.js +95 -0
- package/dist/components/data-table/export.js.map +1 -0
- package/dist/components/data-table/features.d.ts +66 -0
- package/dist/components/data-table/features.js +103 -0
- package/dist/components/data-table/features.js.map +1 -0
- package/dist/components/data-table/index.d.ts +8 -0
- package/dist/components/data-table/parts.d.ts +79 -0
- package/dist/components/data-table/parts.js +400 -0
- package/dist/components/data-table/parts.js.map +1 -0
- package/dist/components/data-table/system-columns.js +84 -0
- package/dist/components/data-table/system-columns.js.map +1 -0
- package/dist/components/data-table/types.d.ts +172 -0
- package/dist/components/data-table/use-data-table.d.ts +19 -0
- package/dist/components/data-table/use-data-table.js +171 -0
- package/dist/components/data-table/use-data-table.js.map +1 -0
- package/dist/components/data-table/use-server-source.js +200 -0
- package/dist/components/data-table/use-server-source.js.map +1 -0
- package/dist/components/date-field.d.ts +54 -0
- package/dist/components/date-field.js +235 -0
- package/dist/components/date-field.js.map +1 -0
- package/dist/components/date-picker.d.ts +42 -0
- package/dist/components/date-picker.js +125 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/dialog.d.ts +36 -0
- package/dist/components/dialog.js +97 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +54 -0
- package/dist/components/dropdown-menu.js +191 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/dropzone.d.ts +48 -0
- package/dist/components/dropzone.js +185 -0
- package/dist/components/dropzone.js.map +1 -0
- package/dist/components/empty-state.d.ts +22 -0
- package/dist/components/empty-state.js +46 -0
- package/dist/components/empty-state.js.map +1 -0
- package/dist/components/error-banner.d.ts +17 -0
- package/dist/components/error-banner.js +52 -0
- package/dist/components/error-banner.js.map +1 -0
- package/dist/components/field.d.ts +64 -0
- package/dist/components/field.js +133 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/form.d.ts +37 -0
- package/dist/components/form.js +103 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/input.d.ts +17 -0
- package/dist/components/input.js +26 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/kbd.d.ts +11 -0
- package/dist/components/kbd.js +20 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +14 -0
- package/dist/components/label.js +28 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/loading-skeleton.d.ts +22 -0
- package/dist/components/loading-skeleton.js +123 -0
- package/dist/components/loading-skeleton.js.map +1 -0
- package/dist/components/markdown.d.ts +44 -0
- package/dist/components/markdown.js +231 -0
- package/dist/components/markdown.js.map +1 -0
- package/dist/components/page-header.d.ts +26 -0
- package/dist/components/page-header.js +53 -0
- package/dist/components/page-header.js.map +1 -0
- package/dist/components/popover.d.ts +29 -0
- package/dist/components/popover.js +74 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/progress.d.ts +22 -0
- package/dist/components/progress.js +49 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +20 -0
- package/dist/components/radio-group.js +29 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/scroll-area.d.ts +25 -0
- package/dist/components/scroll-area.js +39 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/section-card.d.ts +29 -0
- package/dist/components/section-card.js +55 -0
- package/dist/components/section-card.js.map +1 -0
- package/dist/components/segmented.d.ts +27 -0
- package/dist/components/segmented.js +32 -0
- package/dist/components/segmented.js.map +1 -0
- package/dist/components/select.d.ts +62 -0
- package/dist/components/select.js +97 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +19 -0
- package/dist/components/separator.js +23 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sheet.d.ts +35 -0
- package/dist/components/sheet.js +131 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/skeleton.d.ts +12 -0
- package/dist/components/skeleton.js +22 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/sortable-list.d.ts +67 -0
- package/dist/components/sortable-list.js +206 -0
- package/dist/components/sortable-list.js.map +1 -0
- package/dist/components/spinner.d.ts +29 -0
- package/dist/components/spinner.js +34 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/status-dot.d.ts +26 -0
- package/dist/components/status-dot.js +47 -0
- package/dist/components/status-dot.js.map +1 -0
- package/dist/components/switch.d.ts +21 -0
- package/dist/components/switch.js +21 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/tabs.d.ts +24 -0
- package/dist/components/tabs.js +60 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/textarea.d.ts +19 -0
- package/dist/components/textarea.js +47 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/toast.d.ts +47 -0
- package/dist/components/toast.js +106 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/toolbar.d.ts +19 -0
- package/dist/components/toolbar.js +45 -0
- package/dist/components/toolbar.js.map +1 -0
- package/dist/components/tooltip.d.ts +28 -0
- package/dist/components/tooltip.js +59 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/core.d.ts +44 -0
- package/dist/core.js +44 -0
- package/dist/data-table.d.ts +9 -0
- package/dist/data-table.js +7 -0
- package/dist/form.d.ts +7 -0
- package/dist/form.js +7 -0
- package/dist/hooks/use-cortena-theme.d.ts +98 -0
- package/dist/hooks/use-cortena-theme.js +145 -0
- package/dist/hooks/use-cortena-theme.js.map +1 -0
- package/dist/index.d.ts +75 -2678
- package/dist/index.js +66 -8598
- package/dist/lib/cn.d.ts +10 -0
- package/dist/lib/cn.js +15 -0
- package/dist/lib/cn.js.map +1 -0
- package/dist/lib/render.d.ts +23 -0
- package/dist/lib/render.js +20 -0
- package/dist/lib/render.js.map +1 -0
- package/dist/lib/shakeable.js +39 -0
- package/dist/lib/shakeable.js.map +1 -0
- package/dist/markdown.d.ts +3 -0
- package/dist/markdown.js +3 -0
- package/dist/sortable-list.d.ts +3 -0
- package/dist/sortable-list.js +3 -0
- package/package.json +37 -14
- package/src/a2ui/catalogue.ts +140 -103
- package/src/a2ui/views.tsx +5 -2
- package/src/components/alert.tsx +1 -1
- package/src/components/badge.tsx +1 -1
- package/src/components/button.tsx +1 -1
- package/src/components/chart/chart.tsx +72 -25
- package/src/components/chart/container.tsx +24 -39
- package/src/components/chart/index.tsx +4 -2
- package/src/components/chart/nivo-charts.tsx +41 -13
- package/src/components/chart/nivo-lazy.tsx +52 -0
- package/src/components/chart/recharts-charts.tsx +98 -3
- package/src/components/chart/recharts-lazy.tsx +72 -0
- package/src/components/chart/recharts-parts.tsx +34 -0
- package/src/components/chart/tokens.ts +1 -1
- package/src/components/chart/types.ts +14 -0
- package/src/components/chip.tsx +1 -1
- package/src/components/combobox.tsx +2 -2
- package/src/components/data-table/export.ts +18 -2
- package/src/components/data-table/features.ts +77 -45
- package/src/components/data-table/parts.tsx +15 -0
- package/src/components/data-table/use-data-table.ts +7 -2
- package/src/components/data-table/use-server-source.ts +17 -4
- package/src/components/date-field.tsx +1 -1
- package/src/components/error-banner.tsx +1 -1
- package/src/components/field.tsx +2 -2
- package/src/components/form.tsx +2 -2
- package/src/components/input.tsx +1 -1
- package/src/components/label.tsx +1 -1
- package/src/components/markdown.tsx +5 -4
- package/src/components/sheet.tsx +2 -2
- package/src/components/sortable-list.tsx +2 -2
- package/src/components/textarea.tsx +1 -1
- package/src/components/toast.tsx +1 -1
- package/src/entries/a2ui.ts +11 -0
- package/src/entries/chart.ts +10 -0
- package/src/entries/core.ts +91 -0
- package/src/entries/data-table.ts +9 -0
- package/src/entries/form.ts +24 -0
- package/src/entries/markdown.ts +9 -0
- package/src/entries/sortable-list.ts +13 -0
- package/src/index.ts +32 -98
- package/src/lib/shakeable.ts +33 -0
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `cortena-ui/form` — the form area: the pieces that pull a form dependency.
|
|
3
|
+
*
|
|
4
|
+
* `Form` and `useForm` bring react-hook-form, `zodResolver` brings zod and
|
|
5
|
+
* `@hookform/resolvers`, the date components bring react-day-picker and
|
|
6
|
+
* `Dropzone` brings react-dropzone.
|
|
7
|
+
*
|
|
8
|
+
* The light controls a form is built from — `Field`, `Input`, `Select`,
|
|
9
|
+
* `Checkbox`, `RadioGroup`, `Switch`, `Textarea`, `Combobox`, `Label` — have no
|
|
10
|
+
* heavy dependency and therefore live in `cortena-ui/core`. Each component has
|
|
11
|
+
* exactly one home so the root barrel can re-export every entry without an
|
|
12
|
+
* ambiguous name.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
export type { Accept, DropzoneProps, DropzoneState, FileListProps, FileRejection } from "@/components/dropzone";
|
|
16
|
+
export type { CalendarProps } from "@/components/calendar";
|
|
17
|
+
export type { DateFieldProps } from "@/components/date-field";
|
|
18
|
+
export type { DatePickerProps, DateRangePickerProps } from "@/components/date-picker";
|
|
19
|
+
export type { FormControlProps, FormDescriptionProps, FormItemProps, FormLabelProps, FormMessageProps, SubmitHandler, UseFormFieldReturn, UseFormReturn } from "@/components/form";
|
|
20
|
+
export { Calendar, CalendarDayButton } from "@/components/calendar";
|
|
21
|
+
export { DateField, formatDateISO, formatDateLong, formatDateShort, formatRelative, parseDateDefault, parseDateISO } from "@/components/date-field";
|
|
22
|
+
export { DatePicker, DateRangePicker, formatDateDefault } from "@/components/date-picker";
|
|
23
|
+
export { Dropzone, FileList, formatFileSize } from "@/components/dropzone";
|
|
24
|
+
export { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useForm, useFormField, zodResolver } from "@/components/form";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `cortena-ui/markdown` — the Markdown renderer.
|
|
3
|
+
*
|
|
4
|
+
* Brings react-markdown, remark-gfm and rehype-sanitize, which together are
|
|
5
|
+
* larger than the rest of the package's primitives put together.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export type { CodeRendererProps, MarkdownComponents, MarkdownProps } from "@/components/markdown";
|
|
9
|
+
export { Markdown, markdownSanitizeSchema } from "@/components/markdown";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `cortena-ui/sortable-list` — the reorderable list.
|
|
3
|
+
*
|
|
4
|
+
* Its own entry for a specific reason: `@dnd-kit/core` and `@dnd-kit/sortable`
|
|
5
|
+
* declare no `"sideEffects"` in their package.json, so a bundler must assume
|
|
6
|
+
* importing them does something observable and keeps them even when nothing
|
|
7
|
+
* from them is used. Every other dependency here declares itself side-effect
|
|
8
|
+
* free and shakes out of the root barrel on its own; dnd-kit cannot, so it is
|
|
9
|
+
* quarantined behind an import you have to ask for.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export type { SortableHandleProps, SortableListProps, SortableRenderState, SortableReorderDetails } from "@/components/sortable-list";
|
|
13
|
+
export { SortableHandle, SortableList, arrayMove } from "@/components/sortable-list";
|
package/src/index.ts
CHANGED
|
@@ -1,98 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
export
|
|
27
|
-
export
|
|
28
|
-
export
|
|
29
|
-
export
|
|
30
|
-
export
|
|
31
|
-
export
|
|
32
|
-
export
|
|
33
|
-
export type { DateFieldProps } from "@/components/date-field";
|
|
34
|
-
export { DatePicker, DateRangePicker, formatDateDefault } from "@/components/date-picker";
|
|
35
|
-
export type { DatePickerProps, DateRangePickerProps } from "@/components/date-picker";
|
|
36
|
-
export { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from "@/components/dialog";
|
|
37
|
-
export type { DialogContentProps } from "@/components/dialog";
|
|
38
|
-
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "@/components/dropdown-menu";
|
|
39
|
-
export type { DropdownMenuContentProps, DropdownMenuItemProps, DropdownMenuLabelProps, DropdownMenuSubTriggerProps } from "@/components/dropdown-menu";
|
|
40
|
-
export { Dropzone, FileList, formatFileSize } from "@/components/dropzone";
|
|
41
|
-
export type { Accept, DropzoneProps, DropzoneState, FileListProps, FileRejection } from "@/components/dropzone";
|
|
42
|
-
export { EmptyState } from "@/components/empty-state";
|
|
43
|
-
export type { EmptyStateProps } from "@/components/empty-state";
|
|
44
|
-
export { ErrorBanner } from "@/components/error-banner";
|
|
45
|
-
export type { ErrorBannerProps } from "@/components/error-banner";
|
|
46
|
-
export { Field, FieldContent, FieldControl, FieldDescription, FieldError, FieldGroup, FieldLabel, Fieldset, FieldsetLegend, fieldVariants } from "@/components/field";
|
|
47
|
-
export type { FieldControlProps, FieldDescriptionProps, FieldErrorItem, FieldErrorProps, FieldLabelProps, FieldProps, FieldsetLegendProps, FieldsetProps } from "@/components/field";
|
|
48
|
-
export { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useForm, useFormField, zodResolver } from "@/components/form";
|
|
49
|
-
export type { FormControlProps, FormDescriptionProps, FormItemProps, FormLabelProps, FormMessageProps, SubmitHandler, UseFormFieldReturn, UseFormReturn } from "@/components/form";
|
|
50
|
-
export { Input, inputClassName } from "@/components/input";
|
|
51
|
-
export type { InputProps } from "@/components/input";
|
|
52
|
-
export { Kbd } from "@/components/kbd";
|
|
53
|
-
export { Label, labelVariants } from "@/components/label";
|
|
54
|
-
export type { LabelProps } from "@/components/label";
|
|
55
|
-
export { LoadingSkeleton } from "@/components/loading-skeleton";
|
|
56
|
-
export type { LoadingSkeletonPreset, LoadingSkeletonProps } from "@/components/loading-skeleton";
|
|
57
|
-
export { Markdown, markdownSanitizeSchema } from "@/components/markdown";
|
|
58
|
-
export type { CodeRendererProps, MarkdownComponents, MarkdownProps } from "@/components/markdown";
|
|
59
|
-
export { PageHeader } from "@/components/page-header";
|
|
60
|
-
export type { PageHeaderProps } from "@/components/page-header";
|
|
61
|
-
export { Popover, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger } from "@/components/popover";
|
|
62
|
-
export type { PopoverContentProps } from "@/components/popover";
|
|
63
|
-
export { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue } from "@/components/progress";
|
|
64
|
-
export type { ProgressProps } from "@/components/progress";
|
|
65
|
-
export { RadioGroup, RadioGroupItem } from "@/components/radio-group";
|
|
66
|
-
export type { RadioGroupItemProps, RadioGroupProps } from "@/components/radio-group";
|
|
67
|
-
export { ScrollArea, ScrollBar } from "@/components/scroll-area";
|
|
68
|
-
export type { ScrollAreaProps } from "@/components/scroll-area";
|
|
69
|
-
export { SectionCard } from "@/components/section-card";
|
|
70
|
-
export type { SectionCardProps } from "@/components/section-card";
|
|
71
|
-
export { Segmented } from "@/components/segmented";
|
|
72
|
-
export type { SegmentedOption, SegmentedProps } from "@/components/segmented";
|
|
73
|
-
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue } from "@/components/select";
|
|
74
|
-
export type { SelectContentProps, SelectProps, SelectTriggerProps } from "@/components/select";
|
|
75
|
-
export { Separator } from "@/components/separator";
|
|
76
|
-
export type { SeparatorProps } from "@/components/separator";
|
|
77
|
-
export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants } from "@/components/sheet";
|
|
78
|
-
export type { SheetContentProps, SheetProps } from "@/components/sheet";
|
|
79
|
-
export { Skeleton } from "@/components/skeleton";
|
|
80
|
-
export { SortableHandle, SortableList, arrayMove } from "@/components/sortable-list";
|
|
81
|
-
export type { SortableHandleProps, SortableListProps, SortableRenderState, SortableReorderDetails } from "@/components/sortable-list";
|
|
82
|
-
export { Spinner } from "@/components/spinner";
|
|
83
|
-
export type { SpinnerProps } from "@/components/spinner";
|
|
84
|
-
export { StatusDot } from "@/components/status-dot";
|
|
85
|
-
export type { StatusDotProps, StatusDotTone } from "@/components/status-dot";
|
|
86
|
-
export { Switch } from "@/components/switch";
|
|
87
|
-
export type { SwitchProps } from "@/components/switch";
|
|
88
|
-
export { Tabs, TabsContent, TabsIndicator, TabsList, TabsTrigger } from "@/components/tabs";
|
|
89
|
-
export { Textarea, textareaClassName } from "@/components/textarea";
|
|
90
|
-
export type { TextareaProps } from "@/components/textarea";
|
|
91
|
-
export { Toast, Toaster, toastVariants, useToast } from "@/components/toast";
|
|
92
|
-
export type { ToastProps, ToasterProps } from "@/components/toast";
|
|
93
|
-
export { Toolbar, ToolbarEnd, ToolbarSeparator, ToolbarStart } from "@/components/toolbar";
|
|
94
|
-
export type { ToolbarProps } from "@/components/toolbar";
|
|
95
|
-
export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/tooltip";
|
|
96
|
-
export type { TooltipContentProps } from "@/components/tooltip";
|
|
97
|
-
export { DEFAULT_THEME_STORAGE_KEY, THEME_MESSAGE_TYPE, applyStoredTheme, applyTheme, getThemeInitScript, readStoredTheme, themeFromBackground, themeFromMessage, themeInitScript, useCortenaTheme } from "@/hooks/use-cortena-theme";
|
|
98
|
-
export type { CortenaTheme, CortenaThemeMessage, ResolvedCortenaTheme, UseCortenaThemeOptions, UseCortenaThemeResult } from "@/hooks/use-cortena-theme";
|
|
1
|
+
/**
|
|
2
|
+
* cortena-ui public surface.
|
|
3
|
+
*
|
|
4
|
+
* The convenient path: everything the package exports, from one import. It is
|
|
5
|
+
* genuinely tree-shakeable — the package declares `"sideEffects": false` for
|
|
6
|
+
* JavaScript and no component module runs anything at import time — so an app
|
|
7
|
+
* that imports `Button` from here ships `Button`, not the library.
|
|
8
|
+
* `scripts/bundle-probe.mjs` measures that on every `pnpm test`, and the
|
|
9
|
+
* measured numbers are in CONSUMING.md.
|
|
10
|
+
*
|
|
11
|
+
* For a size-critical bundle — an MCP app inlined into a single HTML file, for
|
|
12
|
+
* instance — import the area entry instead and do not rely on the consumer's
|
|
13
|
+
* bundler getting tree-shaking right:
|
|
14
|
+
*
|
|
15
|
+
* cortena-ui/core primitives, overlays, light form controls, cn, theme hook
|
|
16
|
+
* cortena-ui/form Form, useForm, zodResolver, date pickers, Dropzone
|
|
17
|
+
* cortena-ui/data-table DataTable and its parts
|
|
18
|
+
* cortena-ui/chart Chart and the themed Recharts primitives
|
|
19
|
+
* cortena-ui/markdown Markdown
|
|
20
|
+
* cortena-ui/a2ui the A2UI catalogue and renderer
|
|
21
|
+
* cortena-ui/sortable-list SortableList (dnd-kit, which cannot be shaken)
|
|
22
|
+
*
|
|
23
|
+
* Each component has exactly one home, so these unions never collide. Adding a
|
|
24
|
+
* component means adding it to its area entry, not here.
|
|
25
|
+
*/
|
|
26
|
+
export * from "@/entries/core";
|
|
27
|
+
export * from "@/entries/form";
|
|
28
|
+
export * from "@/entries/data-table";
|
|
29
|
+
export * from "@/entries/chart";
|
|
30
|
+
export * from "@/entries/markdown";
|
|
31
|
+
export * from "@/entries/a2ui";
|
|
32
|
+
export * from "@/entries/sortable-list";
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Evaluates `build` immediately and returns its value.
|
|
3
|
+
*
|
|
4
|
+
* A pass-through with exactly one job: to let a consumer's bundler delete what
|
|
5
|
+
* it wraps.
|
|
6
|
+
*
|
|
7
|
+
* The package is one ESM module tree with no side effects, so a bundler is free
|
|
8
|
+
* to drop anything an app does not reach. It can only do that for statements it
|
|
9
|
+
* can prove are safe to skip, and a top-level call it cannot see inside —
|
|
10
|
+
* `tableFeatures({ … })`, a `z.enum(...).describe(...)` chain, `Object.freeze`
|
|
11
|
+
* over a spread — is never provably safe. The statement is kept, and with it
|
|
12
|
+
* every module it can reach. That is how `import { Button } from "cortena-ui"`
|
|
13
|
+
* came to pull recharts, nivo, exceljs, dnd-kit, react-markdown, cmdk and
|
|
14
|
+
* react-day-picker into an app that renders one button: 2,479 kB of it.
|
|
15
|
+
*
|
|
16
|
+
* Wrapped in a thunk the same work is no longer a top-level expression, and the
|
|
17
|
+
* `@__PURE__` annotation each call site carries tells the bundler the call may
|
|
18
|
+
* be dropped when its result is unused. Runtime behaviour is unchanged — the
|
|
19
|
+
* thunk runs on the line it is written — so nothing is deferred, lazy or
|
|
20
|
+
* asynchronous. Only the bundler sees a difference.
|
|
21
|
+
*
|
|
22
|
+
* Use it for a module-scope constant built by a call. Prefer a bare
|
|
23
|
+
* `/* @__PURE__ *\/` annotation where the call's arguments are literals
|
|
24
|
+
* (`cva(...)`, `cn(...)`, `React.createContext(...)`); the thunk is for the
|
|
25
|
+
* cases where the arguments themselves contain calls, because a bundler
|
|
26
|
+
* evaluates arguments even when the call around them is annotated pure.
|
|
27
|
+
*
|
|
28
|
+
* `test/bundle-probe.test.mjs` measures a real consumer bundle, which is what
|
|
29
|
+
* stops any of this being quietly undone.
|
|
30
|
+
*/
|
|
31
|
+
export function shakeable<T>(build: () => T): T {
|
|
32
|
+
return build();
|
|
33
|
+
}
|