@datum-cloud/datum-ui 0.3.2-dev.5bd364b → 0.5.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 +118 -49
- package/dist/alert/index.mjs +2 -3
- package/dist/{alert-BC2Mccfo.mjs → alert-BDj6od5I.mjs} +2 -4
- package/dist/app-navigation/index.mjs +4 -12
- package/dist/{app-navigation-CCvjPijd.mjs → app-navigation-84ro28PU.mjs} +5 -8
- package/dist/autocomplete/index.mjs +2 -7
- package/dist/{autocomplete-DcKO7pj5.mjs → autocomplete-V5-qslzS.mjs} +5 -7
- package/dist/avatar/index.mjs +2 -0
- package/dist/avatar-BtKVcvO4.mjs +28 -0
- package/dist/avatar-stack/index.mjs +2 -5
- package/dist/{avatar-stack-B21McFeb.mjs → avatar-stack-oVr8tsU7.mjs} +4 -31
- package/dist/badge/index.mjs +2 -3
- package/dist/{badge-bFgeYceE.mjs → badge-DJR33ftJ.mjs} +2 -4
- package/dist/breadcrumb/index.mjs +2 -4
- package/dist/{breadcrumb-BGYJgom_.mjs → breadcrumb-B-9G347O.mjs} +2 -4
- package/dist/button/index.mjs +3 -4
- package/dist/{button-C1wRfGtT.mjs → button-BllvE9Lm.mjs} +3 -5
- package/dist/{button-AzpnV-WB.mjs → button-D3RrsMfQ.mjs} +2 -4
- package/dist/{link-button-TIF2Zdrk.mjs → button-fO8nazJE.mjs} +3 -5
- package/dist/button-group/index.mjs +2 -5
- package/dist/{button-group-C1IB2K5s.mjs → button-group-CYPka2zz.mjs} +3 -5
- package/dist/calendar/index.mjs +2 -5
- package/dist/{calendar-DlIHeWb0.mjs → calendar-DEkCw7I1.mjs} +4 -6
- package/dist/{calendar-date-picker-Bw6Mrr-P.mjs → calendar-date-picker-DWK94_DC.mjs} +6 -8
- package/dist/card/index.mjs +2 -4
- package/dist/{card-3Kd0VdNf.mjs → card-DKG1Cwlj.mjs} +3 -6
- package/dist/chart/index.mjs +2 -4
- package/dist/{chart-BZqUKpkh.mjs → chart-CUa21ynK.mjs} +2 -4
- package/dist/checkbox/index.mjs +2 -4
- package/dist/{checkbox-LG1OKTpG.mjs → checkbox-I5BvrMPe.mjs} +3 -6
- package/dist/{close.icon-CMNMoXM_.mjs → close.icon-HCfS4Y-N.mjs} +2 -4
- package/dist/{cn-DWCc1QRE.mjs → cn-D2KYQ917.mjs} +1 -3
- package/dist/code-editor/index.mjs +2 -0
- package/dist/{col-DCneNxQj.mjs → col-q-J99UHe.mjs} +2 -7
- package/dist/collapsible/index.mjs +2 -3
- package/dist/{collapsible-Bt9UYfv3.mjs → collapsible-CUphkSBt.mjs} +1 -3
- package/dist/command/index.mjs +2 -5
- package/dist/{command-s0Yv3abE.mjs → command-DqHWukGK.mjs} +3 -5
- package/dist/components/base/avatar/index.d.ts +2 -0
- package/dist/components/base/avatar/index.d.ts.map +1 -0
- package/dist/components/base/index.d.ts +1 -0
- package/dist/components/base/index.d.ts.map +1 -1
- package/dist/components/features/code-editor/code-editor-tabs.d.ts +63 -0
- package/dist/components/features/code-editor/code-editor-tabs.d.ts.map +1 -0
- package/dist/components/features/code-editor/code-editor.d.ts +58 -0
- package/dist/components/features/code-editor/code-editor.d.ts.map +1 -0
- package/dist/components/features/code-editor/index.d.ts +6 -0
- package/dist/components/features/code-editor/index.d.ts.map +1 -0
- package/dist/components/features/code-editor/lib/editor.d.ts +7 -0
- package/dist/components/features/code-editor/lib/editor.d.ts.map +1 -0
- package/dist/components/features/code-editor/types.d.ts +98 -0
- package/dist/components/features/code-editor/types.d.ts.map +1 -0
- package/dist/components/features/index.d.ts +1 -0
- package/dist/components/features/index.d.ts.map +1 -1
- package/dist/components/toast.d.ts +2 -0
- package/dist/components/toast.d.ts.map +1 -0
- package/dist/data-table/index.mjs +21 -51
- package/dist/date-picker/index.mjs +3 -10
- package/dist/dialog/index.mjs +2 -5
- package/dist/{dialog-bnMMf9GD.mjs → dialog-Bm2H9lrx.mjs} +4 -6
- package/dist/{dialog-DXBaT9gA.mjs → dialog-DASRaFxD.mjs} +2 -4
- package/dist/dropdown/index.mjs +2 -3
- package/dist/{dropdown-Dgm_b6Mm.mjs → dropdown-DZiAt-jS.mjs} +3 -5
- package/dist/{dropdown-menu-DAFyO-qD.mjs → dropdown-menu-lALvDnab.mjs} +5 -7
- package/dist/dropzone/index.mjs +2 -5
- package/dist/{dropzone-DR6O9OdU.mjs → dropzone-ogtpQ4fy.mjs} +5 -8
- package/dist/empty-content/index.mjs +2 -3
- package/dist/{empty-content-Dm7_5jO9.mjs → empty-content-C63GPJ5d.mjs} +3 -9
- package/dist/form/index.mjs +2 -146
- package/dist/{use-stepper-DJd8o9dV.mjs → form-Co3fM4B7.mjs} +148 -51
- package/dist/grid/index.mjs +2 -3
- package/dist/hooks/index.mjs +3 -4
- package/dist/{use-debounce-Dc95PFRX.mjs → hooks-Cb7YlxN4.mjs} +1 -3
- package/dist/hover-card/index.mjs +2 -4
- package/dist/{hover-card-CUPfFUqE.mjs → hover-card-DDWWD5Hx.mjs} +2 -4
- package/dist/{icon-wrapper-9ticVbRL.mjs → icon-wrapper-DuLp3RM1.mjs} +1 -3
- package/dist/icons/index.mjs +4 -5
- package/dist/index.mjs +65 -70
- package/dist/input/index.mjs +2 -5
- package/dist/{input-DuyjEKEW.mjs → input-DOmNpcQJ.mjs} +2 -4
- package/dist/{input-fzXBheCN.mjs → input-FKGqZypx.mjs} +3 -5
- package/dist/input-group/index.mjs +2 -7
- package/dist/{input-group-CPaFSTEV.mjs → input-group-DDtz-RT7.mjs} +5 -7
- package/dist/input-number/index.mjs +2 -6
- package/dist/{input-number-D1HCcTXO.mjs → input-number-mDB-5M5C.mjs} +4 -6
- package/dist/input-with-addons/index.mjs +28 -3
- package/dist/label/index.mjs +2 -4
- package/dist/{label-_ste_Re3.mjs → label-cnAhY-ej.mjs} +3 -6
- package/dist/loader-overlay/index.mjs +2 -3
- package/dist/{loader-overlay-CpA0zV8D.mjs → loader-overlay-BTFdkp7W.mjs} +3 -5
- package/dist/map/index.mjs +2 -14
- package/dist/{map-2RG9pYZR.mjs → map-ClxB41Hg.mjs} +10 -14
- package/dist/{map-leaflet-imports-CgEyVRnp.mjs → map-leaflet-imports-CaMm_rdF.mjs} +1 -2
- package/dist/more-actions/index.mjs +2 -5
- package/dist/{more-actions-BODYgG1C.mjs → more-actions-CGagbIDT.mjs} +5 -7
- package/dist/nprogress/index.mjs +1 -3
- package/dist/page-title/index.mjs +2 -3
- package/dist/{page-title-D62FV6vD.mjs → page-title-R7QbfbWp.mjs} +2 -4
- package/dist/popover/index.mjs +2 -4
- package/dist/{popover-Ds9624qY.mjs → popover-FJAcbYoH.mjs} +2 -4
- package/dist/radio-group/index.mjs +2 -4
- package/dist/{radio-group-B9Hm77LQ.mjs → radio-group-CiITR0LO.mjs} +3 -6
- package/dist/select/index.mjs +2 -4
- package/dist/{select-CwVIFWFO.mjs → select-CiLR_DiQ.mjs} +3 -6
- package/dist/separator/index.mjs +2 -4
- package/dist/{separator-T2ppyD-8.mjs → separator-DXVTncCK.mjs} +2 -4
- package/dist/sheet/index.mjs +3 -5
- package/dist/{sheet-mx5XjyEY.mjs → sheet-BzXksqYY.mjs} +4 -6
- package/dist/{sheet-Cemwh78x.mjs → sheet-Di3b-oPu.mjs} +2 -4
- package/dist/sidebar/index.mjs +2 -10
- package/dist/{sidebar-BW76ss_f.mjs → sidebar-BnhnjvfO.mjs} +10 -14
- package/dist/skeleton/index.mjs +2 -5
- package/dist/{skeleton-CkE23wsL.mjs → skeleton-BKl4mfJt.mjs} +2 -4
- package/dist/{skeleton-DZ31pU4B.mjs → skeleton-D1MUhAVo.mjs} +3 -5
- package/dist/spinner/index.mjs +2 -4
- package/dist/{spinner-earfjpJs.mjs → spinner-OyOf9-Yu.mjs} +2 -4
- package/dist/{spinner.icon-Bg8zgGh0.mjs → spinner.icon-C-vjSM6o.mjs} +2 -4
- package/dist/stepper/index.mjs +321 -5
- package/dist/switch/index.mjs +2 -4
- package/dist/{switch-Cn9IM2gC.mjs → switch-DQJQhPIQ.mjs} +3 -6
- package/dist/table/index.mjs +2 -4
- package/dist/{table-Dpzh0VPK.mjs → table-Cdsh-39-.mjs} +2 -4
- package/dist/tabs/index.mjs +50 -3
- package/dist/tag-input/index.mjs +2 -5
- package/dist/{tag-input-DorFQ9bA.mjs → tag-input-BVSwNcRd.mjs} +5 -7
- package/dist/task-queue/index.mjs +2 -7
- package/dist/{task-queue-dropdown-DtS0IKci.mjs → task-queue-dropdown-DyM5R8KF.mjs} +10 -30
- package/dist/textarea/index.mjs +2 -5
- package/dist/{textarea-QYRcDEpK.mjs → textarea-94vq_G_S.mjs} +2 -4
- package/dist/{textarea-KZUKGHlO.mjs → textarea-BwD-MmTV.mjs} +3 -5
- package/dist/theme/index.mjs +2 -3
- package/dist/{theme.provider-BG3cS9xe.mjs → themes-DG1md8FI.mjs} +1 -6
- package/dist/{to-api-format-CzPt5UAX.mjs → to-api-format-BnbRFYQI.mjs} +9 -18
- package/dist/toast/index.mjs +3 -3
- package/dist/{use-toast-DBmysDS6.mjs → toast-BWnN5fax.mjs} +5 -42
- package/dist/toast-DpxlFNNx.mjs +37 -0
- package/dist/tooltip/index.mjs +2 -4
- package/dist/{tooltip-U3XxlW4l.mjs → tooltip-Cruvl5F6.mjs} +3 -6
- package/dist/types-BZNk3q65.mjs +357 -0
- package/dist/typography/index.mjs +2 -3
- package/dist/{typography-DdrxIJMd.mjs → typography-ClB8k55E.mjs} +2 -4
- package/dist/{use-copy-to-clipboard-C9cT2Qb-.mjs → use-copy-to-clipboard-BGdTmkFV.mjs} +2 -4
- package/dist/utils/index.mjs +2 -3
- package/dist/{utils-Bfgoe-Gm.mjs → utils-C8KwMfT_.mjs} +1 -3
- package/dist/visually-hidden/index.mjs +2 -3
- package/dist/{visuallyhidden-CfBnXfvh.mjs → visuallyhidden-BLUsJpYH.mjs} +1 -3
- package/package.json +30 -4
- package/dist/input-with-addons-DN9LGwUU.mjs +0 -30
- package/dist/stepper-CZeks9Ex.mjs +0 -323
- package/dist/tabs-OYVCDOif.mjs +0 -52
package/README.md
CHANGED
|
@@ -63,7 +63,7 @@ import { Dialog } from '@datum-cloud/datum-ui/dialog'
|
|
|
63
63
|
import { Form, FormField, FormInput } from '@datum-cloud/datum-ui/form'
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
This keeps your bundle small
|
|
66
|
+
This keeps your bundle small. Some components require additional dependencies — check the component tables below for what to install.
|
|
67
67
|
|
|
68
68
|
### Shared Exports
|
|
69
69
|
|
|
@@ -82,7 +82,7 @@ This keeps your bundle small and means you only install peer dependencies for th
|
|
|
82
82
|
|
|
83
83
|
Some components with shared heavy dependencies are grouped under a single subpath:
|
|
84
84
|
|
|
85
|
-
| Import Path | Includes |
|
|
85
|
+
| Import Path | Includes | Required Dependencies |
|
|
86
86
|
| ----------------------------------- | ------------------------------------------ | --------------------------------------------- |
|
|
87
87
|
| `@datum-cloud/datum-ui/date-picker` | `CalendarDatePicker`, `TimeRangePicker` | `react-day-picker`, `date-fns`, `date-fns-tz` |
|
|
88
88
|
| `@datum-cloud/datum-ui/map` | `Map`, `PlaceAutocomplete`, + map controls | `leaflet`, `react-leaflet`, + leaflet plugins |
|
|
@@ -94,73 +94,99 @@ Some components with shared heavy dependencies are grouped under a single subpat
|
|
|
94
94
|
|
|
95
95
|
### Base Components
|
|
96
96
|
|
|
97
|
-
Thin wrappers around shadcn/Radix primitives with Datum styling.
|
|
97
|
+
Thin wrappers around shadcn/Radix primitives with Datum styling. **Radix UI dependencies are bundled** — no additional installation required for these components.
|
|
98
98
|
|
|
99
|
-
| Component |
|
|
99
|
+
| Component | Additional Dependencies | Description |
|
|
100
100
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
|
|
101
101
|
| `Alert`, `AlertTitle`, `AlertDescription` | — | Status alert banners |
|
|
102
|
+
| `Avatar`, `AvatarImage`, `AvatarFallback` | — | User profile image with fallback support |
|
|
102
103
|
| `Badge` | — | Labels and status indicators with `type` and `theme` variants |
|
|
103
104
|
| `Breadcrumb`, `BreadcrumbItem`, `BreadcrumbLink`, `BreadcrumbSeparator`, `BreadcrumbList`, `BreadcrumbPage`, `BreadcrumbEllipsis` | — | Navigation breadcrumbs |
|
|
104
|
-
| `Button` |
|
|
105
|
+
| `Button` | — | Button with `type` (primary/secondary/danger/warning/success) and `theme` (solid/outline/ghost/link) variants |
|
|
105
106
|
| `ButtonGroup` | — | Group buttons horizontally |
|
|
106
107
|
| `Calendar` | `react-day-picker` | Date picker calendar |
|
|
107
108
|
| `Card`, `CardHeader`, `CardTitle`, `CardDescription`, `CardContent`, `CardFooter` | — | Content container |
|
|
108
109
|
| `Chart` (ChartContainer, ChartTooltip, etc.) | `recharts` | Data visualization wrapper |
|
|
109
|
-
| `Checkbox` |
|
|
110
|
-
| `Collapsible`, `CollapsibleTrigger`, `CollapsibleContent` |
|
|
111
|
-
| `Command`, `CommandInput`, `CommandList`, `CommandItem`, `CommandGroup` |
|
|
112
|
-
| `Dialog`, `DialogTrigger`, `DialogContent`, `DialogHeader`, `DialogTitle`, `DialogDescription`, `DialogFooter`, `DialogClose` |
|
|
113
|
-
| `HoverCard`, `HoverCardTrigger`, `HoverCardContent` |
|
|
110
|
+
| `Checkbox` | — | Toggle checkbox |
|
|
111
|
+
| `Collapsible`, `CollapsibleTrigger`, `CollapsibleContent` | — | Expandable sections |
|
|
112
|
+
| `Command`, `CommandInput`, `CommandList`, `CommandItem`, `CommandGroup` | — | Command palette / search |
|
|
113
|
+
| `Dialog`, `DialogTrigger`, `DialogContent`, `DialogHeader`, `DialogTitle`, `DialogDescription`, `DialogFooter`, `DialogClose` | — | Modal dialog |
|
|
114
|
+
| `HoverCard`, `HoverCardTrigger`, `HoverCardContent` | — | Hover-triggered popover |
|
|
114
115
|
| `Input` | — | Text input |
|
|
115
116
|
| `InputGroup`, `InputGroupInput`, `InputGroupText` | — | Input with prefix/suffix elements |
|
|
116
|
-
| `Label` |
|
|
117
|
+
| `Label` | — | Form label |
|
|
117
118
|
| `Map`, `MapTileLayer`, `MapMarker`, `MapPopup`, `MapTooltip`, `MapZoomControl`, `MapFullscreenControl`, `MapLayers`, `MapLayersControl`, `MapLayerGroup`, `MapCircle`, `MapPolygon`, `MapRectangle`, `MapPolyline`, `MapDrawControl`, `MapDrawMarker`, `MapDrawPolyline`, `MapDrawCircle`, `MapDrawPolygon`, `MapDrawEdit`, `MapDrawDelete`, `MapDrawUndo`, `MapLocateControl`, `MapSearchControl`, `MapControlContainer` | `leaflet`, `react-leaflet`, `leaflet-draw`, `leaflet.fullscreen`, `leaflet.markercluster`, `react-leaflet-markercluster` | Interactive map (SSR-safe, lazy-loaded) |
|
|
118
119
|
| `PlaceAutocomplete` | — | Google Places address autocomplete |
|
|
119
|
-
| `Popover`, `PopoverTrigger`, `PopoverContent` |
|
|
120
|
-
| `RadioGroup`, `RadioGroupItem` |
|
|
121
|
-
| `Select`, `SelectTrigger`, `SelectContent`, `SelectItem`, `SelectValue`, `SelectGroup`, `SelectLabel`, `SelectSeparator` |
|
|
122
|
-
| `Separator` |
|
|
123
|
-
| `Sheet`, `SheetTrigger`, `SheetContent`, `SheetHeader`, `SheetTitle`, `SheetDescription`, `SheetFooter`, `SheetClose` |
|
|
120
|
+
| `Popover`, `PopoverTrigger`, `PopoverContent` | — | Click-triggered popover |
|
|
121
|
+
| `RadioGroup`, `RadioGroupItem` | — | Radio button group |
|
|
122
|
+
| `Select`, `SelectTrigger`, `SelectContent`, `SelectItem`, `SelectValue`, `SelectGroup`, `SelectLabel`, `SelectSeparator` | — | Dropdown select |
|
|
123
|
+
| `Separator` | — | Visual divider |
|
|
124
|
+
| `Sheet`, `SheetTrigger`, `SheetContent`, `SheetHeader`, `SheetTitle`, `SheetDescription`, `SheetFooter`, `SheetClose` | — | Slide-out panel |
|
|
124
125
|
| `Skeleton` | — | Loading placeholder |
|
|
125
126
|
| `Spinner` | — | Loading spinner |
|
|
126
|
-
| `Switch` |
|
|
127
|
+
| `Switch` | — | Toggle switch |
|
|
127
128
|
| `Table`, `TableHeader`, `TableBody`, `TableFooter`, `TableHead`, `TableRow`, `TableCell`, `TableCaption` | — | Data table |
|
|
128
|
-
| `Tabs`, `TabsList`, `TabsTrigger`, `TabsContent` |
|
|
129
|
+
| `Tabs`, `TabsList`, `TabsTrigger`, `TabsContent` | — | Tabbed interface |
|
|
129
130
|
| `Textarea` | — | Multi-line text input |
|
|
130
|
-
| `Tooltip`, `TooltipTrigger`, `TooltipContent`, `TooltipProvider` |
|
|
131
|
+
| `Tooltip`, `TooltipTrigger`, `TooltipContent`, `TooltipProvider` | — | Hover tooltip |
|
|
131
132
|
| `Title`, `Text`, `Paragraph`, `Link`, `List`, `ListItem`, `Blockquote`, `Code` | — | Typography components with `level`, `size`, `weight`, `color`, `type` variants |
|
|
132
|
-
| `VisuallyHidden` |
|
|
133
|
+
| `VisuallyHidden` | — | Screen-reader only content |
|
|
133
134
|
|
|
134
135
|
### Feature Components
|
|
135
136
|
|
|
136
137
|
Complex, fully-customized components with significant business logic.
|
|
137
138
|
|
|
138
|
-
| Component |
|
|
139
|
-
| -------------------------------------------------------------------------------------------------------------------------------- |
|
|
140
|
-
| `Autocomplete` |
|
|
141
|
-
| `AvatarStack` |
|
|
142
|
-
| `CalendarDatePicker` | `react-day-picker`, `date-fns`
|
|
143
|
-
| `
|
|
144
|
-
| `
|
|
145
|
-
| `
|
|
146
|
-
| `
|
|
147
|
-
| `
|
|
148
|
-
| `
|
|
149
|
-
| `
|
|
150
|
-
| `
|
|
151
|
-
| `
|
|
152
|
-
| `
|
|
153
|
-
| `
|
|
154
|
-
| `
|
|
155
|
-
| `
|
|
156
|
-
| `
|
|
157
|
-
| `
|
|
158
|
-
| `
|
|
159
|
-
| `
|
|
160
|
-
| `
|
|
139
|
+
| Component | Additional Dependencies | Description |
|
|
140
|
+
| -------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- | ------------------------------------------ |
|
|
141
|
+
| `Autocomplete` | — | Search autocomplete input |
|
|
142
|
+
| `AvatarStack` | — | Stacked avatar display |
|
|
143
|
+
| `CalendarDatePicker` | `react-day-picker`, `date-fns` | Date/range picker with presets |
|
|
144
|
+
| `CodeEditor`, `CodeEditorTabs` | `@monaco-editor/react`, `monaco-editor` | Monaco-based code editor with VS Code UX |
|
|
145
|
+
| `DataTable`, `DataTableColumnHeader`, `DataTablePagination`, `DataTableToolbar`, `DataTableViewOptions` | `@tanstack/react-table` | Advanced data table with sorting/filtering |
|
|
146
|
+
| `Dropdown`, `DropdownHeader`, `DropdownItem`, `DropdownSection` | — | Dropdown menu |
|
|
147
|
+
| `Dropzone` | `react-dropzone` | File drag-and-drop upload area |
|
|
148
|
+
| `EmptyContent` | — | Empty state placeholder |
|
|
149
|
+
| `FileInputButton` | — | File upload button |
|
|
150
|
+
| `Form`, `FormField`, `FormInput`, `FormTextarea`, `FormSelect`, `FormCheckbox`, `FormSwitch`, `FormRadioGroup`, `FormFieldArray` | `@conform-to/react`, `@conform-to/zod`, `zod` | Form system with validation |
|
|
151
|
+
| `Grid` | `@tanstack/react-virtual` | Virtualized data grid |
|
|
152
|
+
| `InputNumber` | `react-number-format` | Numeric input with formatting |
|
|
153
|
+
| `InputWithAddons` | — | Input with prefix/suffix addons |
|
|
154
|
+
| `LoaderOverlay` | — | Full-screen loading overlay |
|
|
155
|
+
| `MoreActions` | — | Three-dot actions menu |
|
|
156
|
+
| `NProgress` | `nprogress` | Page navigation progress bar |
|
|
157
|
+
| `PageTitle` | — | Page header with breadcrumbs |
|
|
158
|
+
| `Sidebar`, `SidebarHeader`, `SidebarContent`, `SidebarFooter`, `SidebarMenu`, `SidebarMenuItem`, `SidebarMenuButton` | — | App sidebar navigation |
|
|
159
|
+
| `Stepper` | `@stepperize/react` | Multi-step wizard |
|
|
160
|
+
| `TagInput` | — | Tag/chip input |
|
|
161
|
+
| `TaskQueue`, `TaskQueueProvider`, `TaskQueueDropdown`, `TaskPanelHeader`, `TaskSummaryDialog` | — | Background task queue with progress UI |
|
|
162
|
+
| `TimeRangePicker` | `date-fns`, `date-fns-tz` | Time range selector with timezone support |
|
|
163
|
+
| `Toast`, `Toaster`, `useToast` | `sonner` | Toast notifications |
|
|
161
164
|
|
|
162
165
|
## Usage Examples
|
|
163
166
|
|
|
167
|
+
### Avatar
|
|
168
|
+
|
|
169
|
+
```tsx
|
|
170
|
+
import { Avatar, AvatarImage, AvatarFallback } from '@datum-cloud/datum-ui/avatar'
|
|
171
|
+
|
|
172
|
+
// With image and fallback
|
|
173
|
+
<Avatar>
|
|
174
|
+
<AvatarImage src="https://example.com/avatar.jpg" alt="User Name" />
|
|
175
|
+
<AvatarFallback>UN</AvatarFallback>
|
|
176
|
+
</Avatar>
|
|
177
|
+
|
|
178
|
+
// Custom size
|
|
179
|
+
<Avatar className="size-16">
|
|
180
|
+
<AvatarImage src="https://example.com/avatar.jpg" alt="User Name" />
|
|
181
|
+
<AvatarFallback className="text-lg">UN</AvatarFallback>
|
|
182
|
+
</Avatar>
|
|
183
|
+
|
|
184
|
+
// Fallback only (no image)
|
|
185
|
+
<Avatar>
|
|
186
|
+
<AvatarFallback>AB</AvatarFallback>
|
|
187
|
+
</Avatar>
|
|
188
|
+
```
|
|
189
|
+
|
|
164
190
|
### Button
|
|
165
191
|
|
|
166
192
|
```tsx
|
|
@@ -317,24 +343,67 @@ const { theme, setTheme, resolvedTheme } = useTheme()
|
|
|
317
343
|
|
|
318
344
|
## Peer Dependencies
|
|
319
345
|
|
|
320
|
-
|
|
346
|
+
### Required
|
|
347
|
+
|
|
348
|
+
These dependencies are **required** to use datum-ui:
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
npm install react react-dom tailwindcss lucide-react
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
- **React 19+** and **React DOM 19+**: Framework requirements
|
|
355
|
+
- **Tailwind CSS v4** (v4.0.7+, v4.2.1+ recommended): Required for styling
|
|
356
|
+
- **lucide-react**: Icon library used throughout components
|
|
357
|
+
|
|
358
|
+
**All Radix UI packages are bundled** — you don't need to install them separately.
|
|
359
|
+
|
|
360
|
+
### Optional (Component-Specific)
|
|
361
|
+
|
|
362
|
+
Many components require additional packages. Install only what you use:
|
|
321
363
|
|
|
322
364
|
> Replace `npm install` with `yarn add`, `pnpm add`, or `bun add` for your package manager.
|
|
323
365
|
|
|
324
366
|
```bash
|
|
325
|
-
# Forms
|
|
367
|
+
# Forms (Form, FormField, FormInput, etc.)
|
|
326
368
|
npm install @conform-to/react @conform-to/zod zod
|
|
327
369
|
|
|
328
|
-
# Maps
|
|
370
|
+
# Maps (Map, MapMarker, MapPopup, etc.)
|
|
329
371
|
npm install leaflet react-leaflet leaflet-draw leaflet.fullscreen leaflet.markercluster react-leaflet-markercluster
|
|
330
372
|
|
|
331
|
-
# Charts
|
|
373
|
+
# Charts (ChartContainer, ChartTooltip, etc.)
|
|
332
374
|
npm install recharts
|
|
333
375
|
|
|
334
|
-
#
|
|
376
|
+
# Code editor (CodeEditor, CodeEditorTabs)
|
|
377
|
+
npm install @monaco-editor/react monaco-editor
|
|
378
|
+
|
|
379
|
+
# Date pickers (Calendar, CalendarDatePicker, TimeRangePicker)
|
|
335
380
|
npm install react-day-picker date-fns date-fns-tz
|
|
336
381
|
|
|
337
|
-
#
|
|
382
|
+
# File upload (Dropzone)
|
|
383
|
+
npm install react-dropzone
|
|
384
|
+
|
|
385
|
+
# Number formatting (InputNumber)
|
|
386
|
+
npm install react-number-format
|
|
387
|
+
|
|
388
|
+
# Stepper (multi-step flows)
|
|
389
|
+
npm install @stepperize/react
|
|
390
|
+
|
|
391
|
+
# Toast notifications (Toast, Toaster)
|
|
392
|
+
npm install sonner
|
|
393
|
+
|
|
394
|
+
# Progress bar (NProgress)
|
|
395
|
+
npm install nprogress
|
|
396
|
+
|
|
397
|
+
# Data grid (Grid - virtualized tables)
|
|
398
|
+
npm install @tanstack/react-virtual
|
|
399
|
+
|
|
400
|
+
# Data Table (DataTable component)
|
|
401
|
+
npm install @tanstack/react-table
|
|
402
|
+
|
|
403
|
+
# Data Table with URL state (optional)
|
|
404
|
+
npm install nuqs
|
|
405
|
+
|
|
406
|
+
# Animations (motion components)
|
|
338
407
|
npm install motion
|
|
339
408
|
```
|
|
340
409
|
|
package/dist/alert/index.mjs
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import { n as AlertDescription, r as AlertTitle, t as Alert } from "../alert-
|
|
2
|
-
|
|
3
|
-
export { Alert, AlertDescription, AlertTitle };
|
|
1
|
+
import { n as AlertDescription, r as AlertTitle, t as Alert } from "../alert-BDj6od5I.mjs";
|
|
2
|
+
export { Alert, AlertDescription, AlertTitle };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
3
|
import { CircleXIcon } from "lucide-react";
|
|
4
4
|
import * as React$1 from "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
7
6
|
//#region src/components/base/alert/alert.tsx
|
|
8
7
|
/**
|
|
9
8
|
* Datum Alert Component
|
|
@@ -90,6 +89,5 @@ function AlertDescription({ className, ...props }) {
|
|
|
90
89
|
...props
|
|
91
90
|
});
|
|
92
91
|
}
|
|
93
|
-
|
|
94
92
|
//#endregion
|
|
95
|
-
export { AlertDescription as n, AlertTitle as r, Alert as t };
|
|
93
|
+
export { AlertDescription as n, AlertTitle as r, Alert as t };
|
|
@@ -1,12 +1,4 @@
|
|
|
1
|
-
import "../
|
|
2
|
-
import "../
|
|
3
|
-
import "../
|
|
4
|
-
|
|
5
|
-
import "../input-DuyjEKEW.mjs";
|
|
6
|
-
import "../sheet-Cemwh78x.mjs";
|
|
7
|
-
import { C as SidebarTrigger, S as SidebarSeparator, _ as SidebarMenuSub, a as SidebarGroupAction, b as SidebarProvider, c as SidebarHeader, d as SidebarMenu, f as SidebarMenuAction, g as SidebarMenuSkeleton, h as SidebarMenuItem, i as SidebarGroup, l as SidebarInput, m as SidebarMenuButton, n as SidebarContent, o as SidebarGroupContent, p as SidebarMenuBadge, r as SidebarFooter, s as SidebarGroupLabel, t as Sidebar, u as SidebarInset, v as SidebarMenuSubButton, w as useSidebar, x as SidebarRail, y as SidebarMenuSubItem } from "../sidebar-BW76ss_f.mjs";
|
|
8
|
-
import "../skeleton-CkE23wsL.mjs";
|
|
9
|
-
import "../tooltip-U3XxlW4l.mjs";
|
|
10
|
-
import { n as NavMenu, t as AppNavigation } from "../app-navigation-CCvjPijd.mjs";
|
|
11
|
-
|
|
12
|
-
export { AppNavigation, NavMenu, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
|
|
1
|
+
import { C as SidebarTrigger, S as SidebarSeparator, _ as SidebarMenuSub, a as SidebarGroupAction, b as SidebarProvider, c as SidebarHeader, d as SidebarMenu, f as SidebarMenuAction, g as SidebarMenuSkeleton, h as SidebarMenuItem, i as SidebarGroup, l as SidebarInput, m as SidebarMenuButton, n as SidebarContent, o as SidebarGroupContent, p as SidebarMenuBadge, r as SidebarFooter, s as SidebarGroupLabel, t as Sidebar, u as SidebarInset, v as SidebarMenuSubButton, w as useSidebar, x as SidebarRail, y as SidebarMenuSubItem } from "../sidebar-BnhnjvfO.mjs";
|
|
2
|
+
import "../sidebar/index.mjs";
|
|
3
|
+
import { n as NavMenu, t as AppNavigation } from "../app-navigation-84ro28PU.mjs";
|
|
4
|
+
export { AppNavigation, NavMenu, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
2
|
-
import { t as Icon } from "./icon-wrapper-
|
|
3
|
-
import { n as CollapsibleContent, r as CollapsibleTrigger, t as Collapsible } from "./collapsible-
|
|
4
|
-
import { C as SidebarTrigger, S as SidebarSeparator, _ as SidebarMenuSub, c as SidebarHeader, d as SidebarMenu, h as SidebarMenuItem, i as SidebarGroup, m as SidebarMenuButton, n as SidebarContent, o as SidebarGroupContent, r as SidebarFooter, s as SidebarGroupLabel, t as Sidebar, w as useSidebar } from "./sidebar-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
|
+
import { t as Icon } from "./icon-wrapper-DuLp3RM1.mjs";
|
|
3
|
+
import { n as CollapsibleContent, r as CollapsibleTrigger, t as Collapsible } from "./collapsible-CUphkSBt.mjs";
|
|
4
|
+
import { C as SidebarTrigger, S as SidebarSeparator, _ as SidebarMenuSub, c as SidebarHeader, d as SidebarMenu, h as SidebarMenuItem, i as SidebarGroup, m as SidebarMenuButton, n as SidebarContent, o as SidebarGroupContent, r as SidebarFooter, s as SidebarGroupLabel, t as Sidebar, w as useSidebar } from "./sidebar-BnhnjvfO.mjs";
|
|
5
5
|
import { ChevronRight, ExternalLinkIcon } from "lucide-react";
|
|
6
6
|
import { Fragment, useCallback, useEffect, useRef, useState } from "react";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { motion } from "motion/react";
|
|
9
|
-
|
|
10
9
|
//#region src/components/features/app-navigation/nav-menu.tsx
|
|
11
10
|
const NAV_STYLES = {
|
|
12
11
|
menuButton: "rounded-xl h-8 font-normal text-xs transition-all px-2 py-1 data-[active=true]:bg-sidebar data-[active=true]:text-foreground data-[active=true]:text-sidebar-primary data-[active=true]:[&>svg]:text-primary hover:bg-sidebar hover:text-sidebar-primary hover:[&>svg]:text-sidebar-primary hover:bg-sidebar-accent data-[active=true]:bg-sidebar-accent hover:font-semibold data-[active=true]:hover:[&>svg]:text-sidebar-primary transition-colors duration-300 gap-2.5 text-foreground [&>svg]:text-icon-primary",
|
|
@@ -378,7 +377,6 @@ function NavMenu({ ref, className, items, currentPath, linkComponent: LinkComp =
|
|
|
378
377
|
});
|
|
379
378
|
}
|
|
380
379
|
NavMenu.displayName = "NavMenu";
|
|
381
|
-
|
|
382
380
|
//#endregion
|
|
383
381
|
//#region src/components/features/app-navigation/app-navigation.tsx
|
|
384
382
|
function AppNavigation({ navItems, title, closeOnNavigation, defaultOpen, currentPath, linkComponent, ...props }) {
|
|
@@ -411,6 +409,5 @@ function AppNavigation({ navItems, title, closeOnNavigation, defaultOpen, curren
|
|
|
411
409
|
})
|
|
412
410
|
});
|
|
413
411
|
}
|
|
414
|
-
|
|
415
412
|
//#endregion
|
|
416
|
-
export { NavMenu as n, AppNavigation as t };
|
|
413
|
+
export { NavMenu as n, AppNavigation as t };
|
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
import "../
|
|
2
|
-
|
|
3
|
-
import "../command-s0Yv3abE.mjs";
|
|
4
|
-
import "../popover-Ds9624qY.mjs";
|
|
5
|
-
import { t as Autocomplete } from "../autocomplete-DcKO7pj5.mjs";
|
|
6
|
-
|
|
7
|
-
export { Autocomplete };
|
|
1
|
+
import { t as Autocomplete } from "../autocomplete-V5-qslzS.mjs";
|
|
2
|
+
export { Autocomplete };
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
2
|
-
import { a as CommandInput, i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-
|
|
3
|
-
import { i as PopoverTrigger, r as PopoverContent, t as Popover } from "./popover-
|
|
4
|
-
import { t as LoaderOverlay } from "./loader-overlay-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
|
+
import { a as CommandInput, i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-DqHWukGK.mjs";
|
|
3
|
+
import { i as PopoverTrigger, r as PopoverContent, t as Popover } from "./popover-FJAcbYoH.mjs";
|
|
4
|
+
import { t as LoaderOverlay } from "./loader-overlay-BTFdkp7W.mjs";
|
|
5
5
|
import { CheckIcon, ChevronDown } from "lucide-react";
|
|
6
6
|
import * as React$1 from "react";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
9
|
-
|
|
10
9
|
//#region src/components/features/autocomplete/autocomplete.tsx
|
|
11
10
|
function isGroupedOptions(options) {
|
|
12
11
|
return options.length > 0 && "options" in options[0];
|
|
@@ -290,6 +289,5 @@ function Autocomplete({ options, value, onValueChange, onSearchChange, searchPla
|
|
|
290
289
|
});
|
|
291
290
|
}
|
|
292
291
|
Autocomplete.displayName = "Autocomplete";
|
|
293
|
-
|
|
294
292
|
//#endregion
|
|
295
|
-
export { Autocomplete as t };
|
|
293
|
+
export { Autocomplete as t };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { t as cn } from "./utils-C8KwMfT_.mjs";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
5
|
+
//#region ../shadcn/ui/avatar.tsx
|
|
6
|
+
const Avatar = ({ className, ...props }) => {
|
|
7
|
+
return /* @__PURE__ */ jsx(AvatarPrimitive.Root, {
|
|
8
|
+
"data-slot": "avatar",
|
|
9
|
+
className: cn("relative flex size-8 shrink-0 overflow-hidden rounded-full", className),
|
|
10
|
+
...props
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
const AvatarImage = ({ className, ...props }) => {
|
|
14
|
+
return /* @__PURE__ */ jsx(AvatarPrimitive.Image, {
|
|
15
|
+
"data-slot": "avatar-image",
|
|
16
|
+
className: cn("aspect-square size-full", className),
|
|
17
|
+
...props
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
const AvatarFallback = ({ className, ...props }) => {
|
|
21
|
+
return /* @__PURE__ */ jsx(AvatarPrimitive.Fallback, {
|
|
22
|
+
"data-slot": "avatar-fallback",
|
|
23
|
+
className: cn("bg-muted flex size-full items-center justify-center rounded-full", className),
|
|
24
|
+
...props
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { AvatarFallback as n, AvatarImage as r, Avatar as t };
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
import "../
|
|
2
|
-
|
|
3
|
-
import { n as avatarStackVariants, t as AvatarStack } from "../avatar-stack-B21McFeb.mjs";
|
|
4
|
-
|
|
5
|
-
export { AvatarStack, avatarStackVariants };
|
|
1
|
+
import { n as avatarStackVariants, t as AvatarStack } from "../avatar-stack-oVr8tsU7.mjs";
|
|
2
|
+
export { AvatarStack, avatarStackVariants };
|
|
@@ -1,35 +1,9 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
2
|
-
import { t as
|
|
3
|
-
import { t as Tooltip } from "./tooltip-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
|
+
import { n as AvatarFallback, r as AvatarImage, t as Avatar } from "./avatar-BtKVcvO4.mjs";
|
|
3
|
+
import { t as Tooltip } from "./tooltip-Cruvl5F6.mjs";
|
|
4
4
|
import { cva } from "class-variance-authority";
|
|
5
5
|
import "react";
|
|
6
6
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
-
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
8
|
-
|
|
9
|
-
//#region ../shadcn/ui/avatar.tsx
|
|
10
|
-
const Avatar = ({ className, ...props }) => {
|
|
11
|
-
return /* @__PURE__ */ jsx(AvatarPrimitive.Root, {
|
|
12
|
-
"data-slot": "avatar",
|
|
13
|
-
className: cn$1("relative flex size-8 shrink-0 overflow-hidden rounded-full", className),
|
|
14
|
-
...props
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
const AvatarImage = ({ className, ...props }) => {
|
|
18
|
-
return /* @__PURE__ */ jsx(AvatarPrimitive.Image, {
|
|
19
|
-
"data-slot": "avatar-image",
|
|
20
|
-
className: cn$1("aspect-square size-full", className),
|
|
21
|
-
...props
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
const AvatarFallback = ({ className, ...props }) => {
|
|
25
|
-
return /* @__PURE__ */ jsx(AvatarPrimitive.Fallback, {
|
|
26
|
-
"data-slot": "avatar-fallback",
|
|
27
|
-
className: cn$1("bg-muted flex size-full items-center justify-center rounded-full", className),
|
|
28
|
-
...props
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
//#endregion
|
|
33
7
|
//#region src/components/features/avatar-stack/avatar-stack.tsx
|
|
34
8
|
const avatarStackVariants = cva("flex", {
|
|
35
9
|
variants: {
|
|
@@ -75,6 +49,5 @@ function AvatarStack({ className, orientation, avatars, spacing, maxAvatarsAmoun
|
|
|
75
49
|
}) : null]
|
|
76
50
|
});
|
|
77
51
|
}
|
|
78
|
-
|
|
79
52
|
//#endregion
|
|
80
|
-
export { avatarStackVariants as n, AvatarStack as t };
|
|
53
|
+
export { avatarStackVariants as n, AvatarStack as t };
|
package/dist/badge/index.mjs
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import { n as badgeVariants, t as Badge } from "../badge-
|
|
2
|
-
|
|
3
|
-
export { Badge, badgeVariants };
|
|
1
|
+
import { n as badgeVariants, t as Badge } from "../badge-DJR33ftJ.mjs";
|
|
2
|
+
export { Badge, badgeVariants };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
3
|
import "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
|
-
|
|
6
5
|
//#region src/components/base/badge/badge.tsx
|
|
7
6
|
/**
|
|
8
7
|
* Datum Badge Component
|
|
@@ -180,6 +179,5 @@ function Badge({ className, type, theme, ...props }) {
|
|
|
180
179
|
...props
|
|
181
180
|
});
|
|
182
181
|
}
|
|
183
|
-
|
|
184
182
|
//#endregion
|
|
185
|
-
export { badgeVariants as n, Badge as t };
|
|
183
|
+
export { badgeVariants as n, Badge as t };
|
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
import "../
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
|
|
1
|
+
import { a as BreadcrumbList, i as BreadcrumbLink, n as BreadcrumbEllipsis, o as BreadcrumbPage, r as BreadcrumbItem, s as BreadcrumbSeparator, t as Breadcrumb } from "../breadcrumb-B-9G347O.mjs";
|
|
2
|
+
export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
1
|
+
import { t as cn } from "./utils-C8KwMfT_.mjs";
|
|
2
2
|
import { ChevronRight, MoreHorizontal } from "lucide-react";
|
|
3
3
|
import "react";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { Slot } from "@radix-ui/react-slot";
|
|
6
|
-
|
|
7
6
|
//#region ../shadcn/ui/breadcrumb.tsx
|
|
8
7
|
const Breadcrumb = ({ ...props }) => {
|
|
9
8
|
return /* @__PURE__ */ jsx("nav", {
|
|
@@ -66,6 +65,5 @@ const BreadcrumbEllipsis = ({ className, ...props }) => {
|
|
|
66
65
|
})]
|
|
67
66
|
});
|
|
68
67
|
};
|
|
69
|
-
|
|
70
68
|
//#endregion
|
|
71
|
-
export { BreadcrumbList as a, BreadcrumbLink as i, BreadcrumbEllipsis as n, BreadcrumbPage as o, BreadcrumbItem as r, BreadcrumbSeparator as s, Breadcrumb as t };
|
|
69
|
+
export { BreadcrumbList as a, BreadcrumbLink as i, BreadcrumbEllipsis as n, BreadcrumbPage as o, BreadcrumbItem as r, BreadcrumbSeparator as s, Breadcrumb as t };
|
package/dist/button/index.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { n as buttonVariants, t as Button } from "../button-
|
|
2
|
-
import { t as LinkButton } from "../
|
|
3
|
-
|
|
4
|
-
export { Button, LinkButton, buttonVariants };
|
|
1
|
+
import { n as buttonVariants, t as Button } from "../button-BllvE9Lm.mjs";
|
|
2
|
+
import { t as LinkButton } from "../button-fO8nazJE.mjs";
|
|
3
|
+
export { Button, LinkButton, buttonVariants };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "./cn-
|
|
2
|
-
import { t as SpinnerIcon } from "./spinner.icon-
|
|
1
|
+
import { t as cn } from "./cn-D2KYQ917.mjs";
|
|
2
|
+
import { t as SpinnerIcon } from "./spinner.icon-C-vjSM6o.mjs";
|
|
3
3
|
import { cva } from "class-variance-authority";
|
|
4
4
|
import "react";
|
|
5
5
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
7
6
|
//#region src/components/base/button/button.tsx
|
|
8
7
|
const buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-lg text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:opacity-50", {
|
|
9
8
|
variants: {
|
|
@@ -225,6 +224,5 @@ function Button({ ref, className, type, theme, size, block, loading = false, dis
|
|
|
225
224
|
});
|
|
226
225
|
}
|
|
227
226
|
Button.displayName = "Button";
|
|
228
|
-
|
|
229
227
|
//#endregion
|
|
230
|
-
export { buttonVariants as n, Button as t };
|
|
228
|
+
export { buttonVariants as n, Button as t };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
1
|
+
import { t as cn } from "./utils-C8KwMfT_.mjs";
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
3
|
import * as React$1 from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
import { Slot } from "@radix-ui/react-slot";
|
|
6
|
-
|
|
7
6
|
//#region ../shadcn/ui/button.tsx
|
|
8
7
|
/**
|
|
9
8
|
* Vanilla shadcn/ui Button Component
|
|
@@ -44,6 +43,5 @@ const Button = React$1.forwardRef(({ className, variant, size, asChild = false,
|
|
|
44
43
|
});
|
|
45
44
|
});
|
|
46
45
|
Button.displayName = "Button";
|
|
47
|
-
|
|
48
46
|
//#endregion
|
|
49
|
-
export { buttonVariants as n, Button as t };
|
|
47
|
+
export { buttonVariants as n, Button as t };
|