@marktiderman/genesis-ui 1.1.1 → 1.3.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/dist/{chunk-DGRHPJ3M.js → chunk-44TULYGG.js} +3 -3
- package/dist/{chunk-DGRHPJ3M.js.map → chunk-44TULYGG.js.map} +1 -1
- package/dist/{chunk-AI6CCNWK.js → chunk-6NPEMLBA.js} +2 -2
- package/dist/chunk-6NPEMLBA.js.map +1 -0
- package/dist/{chunk-UKSBLFEK.js → chunk-6VVVGYKS.js} +4 -4
- package/dist/{chunk-UKSBLFEK.js.map → chunk-6VVVGYKS.js.map} +1 -1
- package/dist/chunk-A2OXCNNY.js +65 -0
- package/dist/chunk-A2OXCNNY.js.map +1 -0
- package/dist/{chunk-O4B5ALO7.js → chunk-AUECDWP2.js} +3 -3
- package/dist/{chunk-O4B5ALO7.js.map → chunk-AUECDWP2.js.map} +1 -1
- package/dist/{chunk-FCGFG4RV.js → chunk-D4JTQYP5.js} +3 -3
- package/dist/{chunk-FCGFG4RV.js.map → chunk-D4JTQYP5.js.map} +1 -1
- package/dist/chunk-GCQFVMPI.js +56 -0
- package/dist/chunk-GCQFVMPI.js.map +1 -0
- package/dist/{chunk-X7KMF6NH.js → chunk-IP6TMT3D.js} +3 -3
- package/dist/{chunk-X7KMF6NH.js.map → chunk-IP6TMT3D.js.map} +1 -1
- package/dist/{chunk-LDPPIBIJ.js → chunk-KB5T5LWM.js} +3 -3
- package/dist/{chunk-LDPPIBIJ.js.map → chunk-KB5T5LWM.js.map} +1 -1
- package/dist/{chunk-MUQLZFUR.js → chunk-NPNADZHM.js} +11 -5
- package/dist/chunk-NPNADZHM.js.map +1 -0
- package/dist/{chunk-6V4GJUE3.js → chunk-QSXVL5UB.js} +4 -3
- package/dist/chunk-QSXVL5UB.js.map +1 -0
- package/dist/{chunk-AIODTBWP.js → chunk-T5VX5DYO.js} +3 -2
- package/dist/chunk-T5VX5DYO.js.map +1 -0
- package/dist/chunk-YETMISCE.js +23 -0
- package/dist/chunk-YETMISCE.js.map +1 -0
- package/dist/{chunk-I6JQHP6D.js → chunk-ZJFSZFPI.js} +4 -2
- package/dist/chunk-ZJFSZFPI.js.map +1 -0
- package/dist/components/data/index.d.ts +186 -20
- package/dist/components/data/index.js +1165 -181
- package/dist/components/data/index.js.map +1 -1
- package/dist/components/ui/badge.js +1 -1
- package/dist/components/ui/button.d.ts +3 -1
- package/dist/components/ui/button.js +1 -1
- package/dist/components/ui/calendar.js +2 -2
- package/dist/components/ui/carousel.js +2 -2
- package/dist/components/ui/command-palette.d.ts +30 -0
- package/dist/components/ui/command-palette.js +6 -0
- package/dist/components/ui/command-palette.js.map +1 -0
- package/dist/components/ui/date-picker.js +3 -3
- package/dist/components/ui/form-field.js +2 -2
- package/dist/components/ui/input.js +1 -1
- package/dist/components/ui/label.js +1 -1
- package/dist/components/ui/pagination.js +2 -2
- package/dist/components/ui/textarea.js +1 -1
- package/dist/hooks/index.d.ts +4 -2
- package/dist/hooks/index.js +8 -3
- package/dist/hooks/use-data-filters.d.ts +1 -1
- package/dist/hooks/use-data-filters.js +2 -2
- package/dist/hooks/use-resource-page.d.ts +2 -1
- package/dist/hooks/use-saved-views.d.ts +28 -0
- package/dist/hooks/use-saved-views.js +3 -0
- package/dist/hooks/use-saved-views.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +24 -23
- package/dist/{navigation-qI86Ldug.d.ts → navigation-CpOEyUSb.d.ts} +4 -0
- package/dist/{use-resource-page-B-CFcikK.d.ts → use-resource-page-BXBv_Xah.d.ts} +9 -1
- package/package.json +5 -1
- package/dist/chunk-6V4GJUE3.js.map +0 -1
- package/dist/chunk-AI6CCNWK.js.map +0 -1
- package/dist/chunk-AIODTBWP.js.map +0 -1
- package/dist/chunk-I6JQHP6D.js.map +0 -1
- package/dist/chunk-MUQLZFUR.js.map +0 -1
- package/dist/chunk-W64GERJW.js +0 -22
- package/dist/chunk-W64GERJW.js.map +0 -1
|
@@ -15,7 +15,9 @@ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, Var
|
|
|
15
15
|
startIcon?: React.ReactNode;
|
|
16
16
|
/** Optional trailing icon slot. */
|
|
17
17
|
endIcon?: React.ReactNode;
|
|
18
|
+
/** Stable test/automation selector (emitted as `data-testid`). */
|
|
19
|
+
testID?: string;
|
|
18
20
|
}
|
|
19
|
-
declare function Button({ className, variant, size, ref, loading, startIcon, endIcon, disabled, type, children, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
21
|
+
declare function Button({ className, variant, size, ref, loading, startIcon, endIcon, disabled, type, children, testID, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
20
22
|
|
|
21
23
|
export { Button, type ButtonProps, buttonVariants };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { Calendar, CalendarDayButton } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { Calendar, CalendarDayButton } from '../../chunk-44TULYGG.js';
|
|
2
|
+
import '../../chunk-ZJFSZFPI.js';
|
|
3
3
|
import '../../chunk-NZ5WBA4R.js';
|
|
4
4
|
//# sourceMappingURL=calendar.js.map
|
|
5
5
|
//# sourceMappingURL=calendar.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from '../../chunk-AUECDWP2.js';
|
|
2
|
+
import '../../chunk-ZJFSZFPI.js';
|
|
3
3
|
import '../../chunk-NZ5WBA4R.js';
|
|
4
4
|
//# sourceMappingURL=carousel.js.map
|
|
5
5
|
//# sourceMappingURL=carousel.js.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
|
|
4
|
+
interface CommandPaletteItem {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
shortcut?: string;
|
|
8
|
+
group?: string;
|
|
9
|
+
onSelect: () => void;
|
|
10
|
+
}
|
|
11
|
+
interface CommandPaletteProps {
|
|
12
|
+
open: boolean;
|
|
13
|
+
onOpenChange: (open: boolean) => void;
|
|
14
|
+
commands: CommandPaletteItem[];
|
|
15
|
+
placeholder?: string;
|
|
16
|
+
emptyMessage?: string;
|
|
17
|
+
title?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Thin action registry over `CommandDialog` / cmdk.
|
|
21
|
+
* Consumers register flat commands; optional `group` buckets them.
|
|
22
|
+
*/
|
|
23
|
+
declare function CommandPalette({ open, onOpenChange, commands, placeholder, emptyMessage, title, }: CommandPaletteProps): react_jsx_runtime.JSX.Element;
|
|
24
|
+
/**
|
|
25
|
+
* Toggle a command palette with Cmd/Ctrl+K.
|
|
26
|
+
* Returns `[open, setOpen]` — pass into `<CommandPalette open onOpenChange />`.
|
|
27
|
+
*/
|
|
28
|
+
declare function useCommandPaletteHotkey(enabled?: boolean): [boolean, React.Dispatch<React.SetStateAction<boolean>>];
|
|
29
|
+
|
|
30
|
+
export { CommandPalette, type CommandPaletteItem, type CommandPaletteProps, useCommandPaletteHotkey };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { CommandPalette, useCommandPaletteHotkey } from '../../chunk-A2OXCNNY.js';
|
|
2
|
+
import '../../chunk-7OBL3H5P.js';
|
|
3
|
+
import '../../chunk-YZEA5TGK.js';
|
|
4
|
+
import '../../chunk-NZ5WBA4R.js';
|
|
5
|
+
//# sourceMappingURL=command-palette.js.map
|
|
6
|
+
//# sourceMappingURL=command-palette.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"command-palette.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { DatePicker } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { DatePicker } from '../../chunk-6VVVGYKS.js';
|
|
2
|
+
import '../../chunk-44TULYGG.js';
|
|
3
3
|
import '../../chunk-NJMO3VPA.js';
|
|
4
|
-
import '../../chunk-
|
|
4
|
+
import '../../chunk-ZJFSZFPI.js';
|
|
5
5
|
import '../../chunk-NZ5WBA4R.js';
|
|
6
6
|
//# sourceMappingURL=date-picker.js.map
|
|
7
7
|
//# sourceMappingURL=date-picker.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { FormDescription, FormError, FormField, FormLabel } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { FormDescription, FormError, FormField, FormLabel } from '../../chunk-IP6TMT3D.js';
|
|
2
|
+
import '../../chunk-T5VX5DYO.js';
|
|
3
3
|
import '../../chunk-NZ5WBA4R.js';
|
|
4
4
|
//# sourceMappingURL=form-field.js.map
|
|
5
5
|
//# sourceMappingURL=form-field.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from '../../chunk-KB5T5LWM.js';
|
|
2
|
+
import '../../chunk-ZJFSZFPI.js';
|
|
3
3
|
import '../../chunk-NZ5WBA4R.js';
|
|
4
4
|
//# sourceMappingURL=pagination.js.map
|
|
5
5
|
//# sourceMappingURL=pagination.js.map
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -4,9 +4,11 @@ export { KeyboardNavOptions, KeyboardNavResult, useKeyboardNavigation } from './
|
|
|
4
4
|
export { useIsMobile } from './use-mobile.js';
|
|
5
5
|
export { useViewPreference } from './use-view-preference.js';
|
|
6
6
|
export { Density, ViewSettings, useViewSettings } from './use-view-settings.js';
|
|
7
|
+
export { UseSavedViewsReturn, useSavedViews } from './use-saved-views.js';
|
|
7
8
|
export { RouteMap, createPrefetch } from './use-prefetch.js';
|
|
8
|
-
export { R as ResourceActions, a as ResourceColumnDef, U as UseResourcePageProps, b as UseResourcePageReturn, u as useResourcePage } from '../use-resource-page-
|
|
9
|
-
|
|
9
|
+
export { R as ResourceActions, a as ResourceColumnDef, U as UseResourcePageProps, b as UseResourcePageReturn, u as useResourcePage } from '../use-resource-page-BXBv_Xah.js';
|
|
10
|
+
export { CommandPalette, CommandPaletteItem, CommandPaletteProps, useCommandPaletteHotkey } from '../components/ui/command-palette.js';
|
|
11
|
+
import '../navigation-CpOEyUSb.js';
|
|
10
12
|
import 'react';
|
|
11
13
|
import '../ViewToggle-DDe_Luj2.js';
|
|
12
14
|
import 'react/jsx-runtime';
|
package/dist/hooks/index.js
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
export { useViewSettings } from '../chunk-OZ7ZAYCS.js';
|
|
2
1
|
export { useResourcePage } from '../chunk-QLCDAFS7.js';
|
|
2
|
+
export { useSavedViews } from '../chunk-GCQFVMPI.js';
|
|
3
3
|
export { useViewPreference } from '../chunk-XISSLIMH.js';
|
|
4
|
-
export {
|
|
5
|
-
|
|
4
|
+
export { useViewSettings } from '../chunk-OZ7ZAYCS.js';
|
|
5
|
+
export { CommandPalette, useCommandPaletteHotkey } from '../chunk-A2OXCNNY.js';
|
|
6
|
+
import '../chunk-7OBL3H5P.js';
|
|
7
|
+
import '../chunk-YZEA5TGK.js';
|
|
8
|
+
import '../chunk-NZ5WBA4R.js';
|
|
9
|
+
export { useDataFilters } from '../chunk-D4JTQYP5.js';
|
|
10
|
+
import '../chunk-6NPEMLBA.js';
|
|
6
11
|
export { useKeyboardNavigation } from '../chunk-T465NJRL.js';
|
|
7
12
|
export { useIsMobile } from '../chunk-M7AU5DDM.js';
|
|
8
13
|
export { createPrefetch } from '../chunk-HSHIZHYR.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { useDataFilters } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { useDataFilters } from '../chunk-D4JTQYP5.js';
|
|
2
|
+
import '../chunk-6NPEMLBA.js';
|
|
3
3
|
//# sourceMappingURL=use-data-filters.js.map
|
|
4
4
|
//# sourceMappingURL=use-data-filters.js.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { R as ResourceActions, a as ResourceColumnDef, U as UseResourcePageProps, b as UseResourcePageReturn, t as titleCase, u as useResourcePage } from '../use-resource-page-
|
|
2
|
+
export { R as ResourceActions, a as ResourceColumnDef, U as UseResourcePageProps, b as UseResourcePageReturn, t as titleCase, u as useResourcePage } from '../use-resource-page-BXBv_Xah.js';
|
|
3
3
|
import '../ViewToggle-DDe_Luj2.js';
|
|
4
4
|
import '@marktiderman/genesis-core/provider';
|
|
5
5
|
import 'react/jsx-runtime';
|
|
6
|
+
import './use-view-settings.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** Same shape as `DataFilters` `savedViews` items — kept local to avoid cycles. */
|
|
2
|
+
interface SavedViewItem {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
filters: Record<string, unknown>;
|
|
6
|
+
}
|
|
7
|
+
interface UseSavedViewsReturn {
|
|
8
|
+
savedViews: SavedViewItem[];
|
|
9
|
+
saveView: (name: string, filters: Record<string, unknown>) => void;
|
|
10
|
+
deleteView: (id: string) => void;
|
|
11
|
+
loadViewFilters: (id: string) => Record<string, unknown> | null;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Persist `DataFilters` saved-view shape in localStorage.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* const { savedViews, saveView, deleteView } = useSavedViews("genesis-map-views");
|
|
18
|
+
* <DataFilters
|
|
19
|
+
* savedViews={savedViews}
|
|
20
|
+
* canSaveViews
|
|
21
|
+
* onSaveView={(name) => saveView(name, currentFilters)}
|
|
22
|
+
* onLoadView={(filters) => applyFilters(filters)}
|
|
23
|
+
* onDeleteView={deleteView}
|
|
24
|
+
* />
|
|
25
|
+
*/
|
|
26
|
+
declare function useSavedViews(storageKey: string): UseSavedViewsReturn;
|
|
27
|
+
|
|
28
|
+
export { type SavedViewItem, type UseSavedViewsReturn, useSavedViews };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"use-saved-views.js"}
|
package/dist/index.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMe
|
|
|
17
17
|
export { Popover, PopoverContent, PopoverTrigger } from './components/ui/popover.js';
|
|
18
18
|
export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from './components/ui/table.js';
|
|
19
19
|
export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from './components/ui/command.js';
|
|
20
|
+
export { CommandPalette, CommandPaletteItem, CommandPaletteProps, useCommandPaletteHotkey } from './components/ui/command-palette.js';
|
|
20
21
|
export { EmptyState, NoFeaturesFound, NoFeedbackFound, NoSearchResults } from './components/ui/empty-state.js';
|
|
21
22
|
export { Label } from './components/ui/label.js';
|
|
22
23
|
export { Textarea } from './components/ui/textarea.js';
|
|
@@ -51,7 +52,7 @@ export { DatePicker, DatePickerProps } from './components/ui/date-picker.js';
|
|
|
51
52
|
export { ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent } from './components/ui/chart.js';
|
|
52
53
|
export { FormDescription, FormError, FormField, FormLabel } from './components/ui/form-field.js';
|
|
53
54
|
export { cn } from './utils.js';
|
|
54
|
-
export { D as DefaultLink, G as GenesisLinkProps, L as LinkComponent, N as NavigateFn, S as SearchParamsAdapter, d as defaultNavigate, i as isPathActive, u as useBrowserSearchParams } from './navigation-
|
|
55
|
+
export { D as DefaultLink, G as GenesisLinkProps, L as LinkComponent, N as NavigateFn, S as SearchParamsAdapter, d as defaultNavigate, i as isPathActive, u as useBrowserSearchParams } from './navigation-CpOEyUSb.js';
|
|
55
56
|
export { toast } from 'sonner';
|
|
56
57
|
import 'react/jsx-runtime';
|
|
57
58
|
import 'class-variance-authority/types';
|
package/dist/index.js
CHANGED
|
@@ -1,56 +1,57 @@
|
|
|
1
|
+
export { Tooltip } from './chunk-EI5EGKHL.js';
|
|
1
2
|
export { H1, H2, H3, H4, Large, Lead, Muted, P, Small } from './chunk-HVQCZFJ7.js';
|
|
3
|
+
export { Slider } from './chunk-LRXDZBV2.js';
|
|
4
|
+
export { Toaster, toast } from './chunk-4RAZJ6LL.js';
|
|
2
5
|
export { Tabs, TabsContent, TabsList, TabsTrigger } from './chunk-JJ4NOMMI.js';
|
|
3
6
|
export { ToggleGroup, ToggleGroupItem } from './chunk-5Q4FABZQ.js';
|
|
4
7
|
export { Toggle, toggleVariants } from './chunk-JXI2MYL3.js';
|
|
5
|
-
export {
|
|
8
|
+
export { RadioGroup, RadioGroupItem } from './chunk-TKA4LOMT.js';
|
|
6
9
|
export { ResizableHandle, ResizablePanel, ResizablePanelGroup } from './chunk-TAP3PBQT.js';
|
|
7
10
|
export { ScrollArea } from './chunk-OCTV3S4I.js';
|
|
8
|
-
export {
|
|
9
|
-
export { Toaster, toast } from './chunk-4RAZJ6LL.js';
|
|
11
|
+
export { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot } from './chunk-K23AQNOM.js';
|
|
10
12
|
export { Kbd } from './chunk-FFSDFQQN.js';
|
|
11
13
|
export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger } from './chunk-4V4H2ZM7.js';
|
|
12
14
|
export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuTriggerStyle } from './chunk-SVXDWPLO.js';
|
|
13
|
-
export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from './chunk-
|
|
14
|
-
export {
|
|
15
|
+
export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from './chunk-KB5T5LWM.js';
|
|
16
|
+
export { DatePicker } from './chunk-6VVVGYKS.js';
|
|
15
17
|
export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger } from './chunk-JYPENH7T.js';
|
|
16
18
|
export { EmptyState, NoFeaturesFound, NoFeedbackFound, NoSearchResults } from './chunk-ZDAT5JDH.js';
|
|
17
19
|
export { HoverCard, HoverCardContent, HoverCardTrigger } from './chunk-63FW5ZUA.js';
|
|
18
20
|
export { InputGroup, InputGroupInput, InputGroupPrefix, InputGroupSuffix } from './chunk-GJ6XSCNF.js';
|
|
19
|
-
export {
|
|
20
|
-
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from './chunk-O4B5ALO7.js';
|
|
21
|
+
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from './chunk-AUECDWP2.js';
|
|
21
22
|
export { ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent } from './chunk-QCJAASJT.js';
|
|
22
|
-
export { Collapsible, CollapsibleContent, CollapsibleTrigger } from './chunk-KBS4BHME.js';
|
|
23
23
|
export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger } from './chunk-UGHQFQOE.js';
|
|
24
|
-
export {
|
|
24
|
+
export { Alert, AlertDescription, AlertTitle, alertVariants } from './chunk-OZZTPE7F.js';
|
|
25
25
|
export { AspectRatio } from './chunk-WALXVR6V.js';
|
|
26
26
|
export { Avatar, AvatarFallback, AvatarImage } from './chunk-C6H7AMO4.js';
|
|
27
27
|
export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from './chunk-2MQKBZBJ.js';
|
|
28
28
|
export { ButtonGroup } from './chunk-K4YLKVMX.js';
|
|
29
|
-
export { Calendar, CalendarDayButton } from './chunk-
|
|
29
|
+
export { Calendar, CalendarDayButton } from './chunk-44TULYGG.js';
|
|
30
30
|
export { Spinner } from './chunk-OVU3Z2MT.js';
|
|
31
31
|
export { Switch } from './chunk-2MXMWBDV.js';
|
|
32
32
|
export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from './chunk-N2ZFNOOT.js';
|
|
33
|
-
export { Textarea } from './chunk-
|
|
33
|
+
export { Textarea } from './chunk-YETMISCE.js';
|
|
34
|
+
export { Progress } from './chunk-W5Y3LG5K.js';
|
|
34
35
|
export { Select, SelectContent, SelectGroup, SelectItem, SelectScrollDownButton, SelectScrollUpButton, SelectTrigger, SelectValue } from './chunk-2B3MFHBQ.js';
|
|
35
36
|
export { Separator } from './chunk-SXSCHWZU.js';
|
|
36
37
|
export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger } from './chunk-SCUT2ZCD.js';
|
|
37
38
|
export { Skeleton } from './chunk-QFM4Z2SS.js';
|
|
38
|
-
export {
|
|
39
|
-
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from './chunk-SBJV3K4G.js';
|
|
40
|
-
export { FormDescription, FormError, FormField, FormLabel } from './chunk-X7KMF6NH.js';
|
|
41
|
-
export { Label } from './chunk-AIODTBWP.js';
|
|
42
|
-
export { Input } from './chunk-6V4GJUE3.js';
|
|
43
|
-
export { Checkbox } from './chunk-WZWR2ELB.js';
|
|
44
|
-
export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from './chunk-7OBL3H5P.js';
|
|
39
|
+
export { Input } from './chunk-QSXVL5UB.js';
|
|
45
40
|
export { Popover, PopoverContent, PopoverTrigger } from './chunk-NJMO3VPA.js';
|
|
46
|
-
export {
|
|
47
|
-
export {
|
|
48
|
-
export {
|
|
41
|
+
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from './chunk-SBJV3K4G.js';
|
|
42
|
+
export { FormDescription, FormError, FormField, FormLabel } from './chunk-IP6TMT3D.js';
|
|
43
|
+
export { Label } from './chunk-T5VX5DYO.js';
|
|
49
44
|
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from './chunk-FN3FZVUR.js';
|
|
45
|
+
export { Checkbox } from './chunk-WZWR2ELB.js';
|
|
46
|
+
export { Collapsible, CollapsibleContent, CollapsibleTrigger } from './chunk-KBS4BHME.js';
|
|
47
|
+
export { Badge } from './chunk-NPNADZHM.js';
|
|
48
|
+
export { Button } from './chunk-ZJFSZFPI.js';
|
|
50
49
|
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from './chunk-5J7BP5DI.js';
|
|
51
50
|
export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from './chunk-QBZMY2AF.js';
|
|
52
|
-
export {
|
|
51
|
+
export { CommandPalette, useCommandPaletteHotkey } from './chunk-A2OXCNNY.js';
|
|
52
|
+
export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from './chunk-7OBL3H5P.js';
|
|
53
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from './chunk-YZEA5TGK.js';
|
|
53
54
|
export { cn } from './chunk-NZ5WBA4R.js';
|
|
54
|
-
export { DefaultLink, defaultNavigate, isPathActive, useBrowserSearchParams } from './chunk-
|
|
55
|
+
export { DefaultLink, defaultNavigate, isPathActive, useBrowserSearchParams } from './chunk-6NPEMLBA.js';
|
|
55
56
|
//# sourceMappingURL=index.js.map
|
|
56
57
|
//# sourceMappingURL=index.js.map
|
|
@@ -26,6 +26,10 @@ interface GenesisLinkProps {
|
|
|
26
26
|
children?: ReactNode;
|
|
27
27
|
/** Set to "page" when the link points at the active route. */
|
|
28
28
|
"aria-current"?: AnchorHTMLAttributes<HTMLAnchorElement>["aria-current"];
|
|
29
|
+
/** Accessible name — useful when the visible label is hidden (icon rail). */
|
|
30
|
+
"aria-label"?: string;
|
|
31
|
+
/** Native tooltip / title attribute. */
|
|
32
|
+
title?: string;
|
|
29
33
|
/**
|
|
30
34
|
* Stable test/automation selector. {@link DefaultLink} renders it as
|
|
31
35
|
* `data-testid`; injected router adapters (`next/link`, RR `Link`) forward it
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import { Density } from './hooks/use-view-settings.js';
|
|
3
4
|
import { V as ViewMode } from './ViewToggle-DDe_Luj2.js';
|
|
4
5
|
import { Identifier, FilterParam, SortParam } from '@marktiderman/genesis-core/provider';
|
|
5
6
|
|
|
@@ -50,8 +51,15 @@ interface DataTableProps<T> {
|
|
|
50
51
|
resizeKey?: string;
|
|
51
52
|
/** Make the first column sticky when scrolling horizontally */
|
|
52
53
|
stickyFirstColumn?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Row height / padding rhythm.
|
|
56
|
+
* - compact: ~32px (py-1 / h-8)
|
|
57
|
+
* - comfortable: default (py-2)
|
|
58
|
+
* - spacious: taller (py-3)
|
|
59
|
+
*/
|
|
60
|
+
density?: Density;
|
|
53
61
|
}
|
|
54
|
-
declare function DataTable<T>({ items, columns, getKey, onRowClick, selectable, selected, onToggleSelect, onToggleAll, renderActions, emptyMessage, columnVisibility, columnVisibilityKey, resizableColumns, pagination, pageSize: initialPageSize, pageSizeOptions, stickyHeader, resizeKey, stickyFirstColumn, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
62
|
+
declare function DataTable<T>({ items, columns, getKey, onRowClick, selectable, selected, onToggleSelect, onToggleAll, renderActions, emptyMessage, columnVisibility, columnVisibilityKey, resizableColumns, pagination, pageSize: initialPageSize, pageSizeOptions, stickyHeader, resizeKey, stickyFirstColumn, density, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
55
63
|
declare function ThumbnailCell({ src, alt, }: {
|
|
56
64
|
src?: string | null;
|
|
57
65
|
alt: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@marktiderman/genesis-ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -116,6 +116,10 @@
|
|
|
116
116
|
"types": "./dist/components/ui/command.d.ts",
|
|
117
117
|
"import": "./dist/components/ui/command.js"
|
|
118
118
|
},
|
|
119
|
+
"./command-palette": {
|
|
120
|
+
"types": "./dist/components/ui/command-palette.d.ts",
|
|
121
|
+
"import": "./dist/components/ui/command-palette.js"
|
|
122
|
+
},
|
|
119
123
|
"./context-menu": {
|
|
120
124
|
"types": "./dist/components/ui/context-menu.d.ts",
|
|
121
125
|
"import": "./dist/components/ui/context-menu.js"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/input.tsx"],"names":[],"mappings":";;;;AAIA,IAAM,KAAA,GAAc,KAAA,CAAA,UAAA;AAAA,EAClB,CAAC,EAAE,SAAA,EAAW,MAAM,GAAG,KAAA,IAAS,GAAA,KAAQ;AACtC,IAAA,uBACE,GAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,IAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,wYAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,GAAA;AAAA,QACC,GAAG;AAAA;AAAA,KACN;AAAA,EAEJ;AACF;AACA,KAAA,CAAM,WAAA,GAAc,OAAA","file":"chunk-6V4GJUE3.js","sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"../../utils\";\n\nconst Input = React.forwardRef<HTMLInputElement, React.ComponentProps<\"input\">>(\n ({ className, type, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"flex h-10 w-full min-w-0 rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n },\n);\nInput.displayName = \"Input\";\n\nexport { Input };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/navigation.tsx"],"names":[],"mappings":";;;;AA4DO,IAAM,cAA6B,CAAC;AAAA,EACzC,IAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,GAAG;AACL,CAAA,yBACG,GAAA,EAAA,EAAE,IAAA,EAAY,eAAa,MAAA,EAAS,GAAG,MACrC,QAAA,EACH;AAUK,SAAS,YAAA,CAAa,IAAY,UAAA,EAA8B;AACrE,EAAA,IAAI,UAAA,IAAc,MAAM,OAAO,KAAA;AAC/B,EAAA,IAAI,EAAA,KAAO,YAAY,OAAO,IAAA;AAC9B,EAAA,IAAI,OAAO,GAAA,IAAO,UAAA,CAAW,WAAW,EAAA,GAAK,GAAG,GAAG,OAAO,IAAA;AAC1D,EAAA,OAAO,KAAA;AACT;AAkBO,IAAM,eAAA,GAA8B,CAAC,IAAA,KAAS;AACnD,EAAA,IAAI,OAAO,MAAA,KAAW,WAAA,EAAa,MAAA,CAAO,QAAA,CAAS,OAAO,IAAI,CAAA;AAChE;AA4BO,SAAS,sBAAA,GAA8C;AAC5D,EAAA,MAAM,IAAA,GAAO,MACX,IAAI,eAAA;AAAA,IACF,OAAO,MAAA,KAAW,WAAA,GAAc,MAAA,CAAO,SAAS,MAAA,GAAS;AAAA,GAC3D;AAEF,EAAA,MAAM,CAAC,YAAA,EAAc,QAAQ,CAAA,GAAI,SAA0B,IAAI,CAAA;AAE/D,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AACnC,IAAA,MAAM,KAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA;AACnC,IAAA,MAAA,CAAO,gBAAA,CAAiB,YAAY,KAAK,CAAA;AACzC,IAAA,OAAO,MAAM,MAAA,CAAO,mBAAA,CAAoB,UAAA,EAAY,KAAK,CAAA;AAAA,EAC3D,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,eAAA,GAAkB,WAAA;AAAA,IACtB,CAAC,MAAM,OAAA,KAAY;AACjB,MAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AACnC,MAAA,MAAM,EAAA,GAAK,KAAK,QAAA,EAAS;AACzB,MAAA,MAAM,GAAA,GACJ,MAAA,CAAO,QAAA,CAAS,QAAA,IAAY,EAAA,GAAK,IAAI,EAAE,CAAA,CAAA,GAAK,EAAA,CAAA,GAAM,MAAA,CAAO,QAAA,CAAS,IAAA;AACpE,MAAA,IAAI,SAAS,OAAA,EAAS;AACpB,QAAA,MAAA,CAAO,QAAQ,YAAA,CAAa,MAAA,CAAO,OAAA,CAAQ,KAAA,EAAO,IAAI,GAAG,CAAA;AAAA,MAC3D,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,QAAQ,SAAA,CAAU,MAAA,CAAO,OAAA,CAAQ,KAAA,EAAO,IAAI,GAAG,CAAA;AAAA,MACxD;AACA,MAAA,QAAA,CAAS,IAAI,eAAA,CAAgB,IAAI,CAAC,CAAA;AAAA,IACpC,CAAA;AAAA,IACA;AAAC,GACH;AAEA,EAAA,OAAO,EAAE,cAAc,eAAA,EAAgB;AACzC","file":"chunk-AI6CCNWK.js","sourcesContent":["\"use client\";\n\n/**\n * Router-agnostic navigation primitives.\n *\n * genesis-ui does NOT depend on any router. Components that need to render a\n * link or navigate imperatively accept an injectable abstraction defined here,\n * and default to plain browser behavior (`<a>` / `window.location`). Consumers\n * on React Router or Next.js inject a thin adapter that maps these props to\n * their own `<Link>` / router.\n */\nimport {\n useCallback,\n useEffect,\n useState,\n type AnchorHTMLAttributes,\n type ComponentType,\n type ReactNode,\n} from \"react\";\n\n// ---------------------------------------------------------------------------\n// Link abstraction\n// ---------------------------------------------------------------------------\n\n/**\n * Props passed to an injectable link component. The contract is a plain anchor\n * (`href`), so the default works with NO router. A React Router consumer maps\n * `href` → `to`; a Next.js consumer passes `next/link` directly (it already\n * accepts `href`, `className`, `children`).\n *\n * @stability Beta\n */\nexport interface GenesisLinkProps {\n /** Destination path or URL. */\n href: string;\n className?: string;\n onClick?: () => void;\n children?: ReactNode;\n /** Set to \"page\" when the link points at the active route. */\n \"aria-current\"?: AnchorHTMLAttributes<HTMLAnchorElement>[\"aria-current\"];\n /**\n * Stable test/automation selector. {@link DefaultLink} renders it as\n * `data-testid`; injected router adapters (`next/link`, RR `Link`) forward it\n * to the underlying `<a>` too.\n */\n testID?: string;\n}\n\n/**\n * A component that renders a navigable link from {@link GenesisLinkProps}.\n *\n * @stability Beta\n */\nexport type LinkComponent = ComponentType<GenesisLinkProps>;\n\n/**\n * Default link — a plain `<a>`. No router required.\n *\n * @stability Beta\n */\nexport const DefaultLink: LinkComponent = ({\n href,\n children,\n testID,\n ...rest\n}) => (\n <a href={href} data-testid={testID} {...rest}>\n {children}\n </a>\n);\n\n/**\n * Default active-path matcher, mirroring React Router's `NavLink` (prefix\n * match, with `/` treated as exact). Consumers can override via an `isActive`\n * prop where components accept one.\n *\n * @stability Beta\n */\nexport function isPathActive(to: string, activePath?: string): boolean {\n if (activePath == null) return false;\n if (to === activePath) return true;\n if (to !== \"/\" && activePath.startsWith(to + \"/\")) return true;\n return false;\n}\n\n// ---------------------------------------------------------------------------\n// Imperative navigation abstraction\n// ---------------------------------------------------------------------------\n\n/**\n * Injectable imperative navigation callback.\n *\n * @stability Beta\n */\nexport type NavigateFn = (path: string) => void;\n\n/**\n * Default navigate — a full-page navigation. No router required.\n *\n * @stability Beta\n */\nexport const defaultNavigate: NavigateFn = (path) => {\n if (typeof window !== \"undefined\") window.location.assign(path);\n};\n\n// ---------------------------------------------------------------------------\n// Search-params abstraction (for URL-synced hooks)\n// ---------------------------------------------------------------------------\n\n/**\n * Minimal, router-agnostic replacement for React Router's `useSearchParams`\n * return shape. Consumers may inject their router's implementation for full\n * SPA integration; otherwise the browser History API is used.\n *\n * @stability Beta\n */\nexport interface SearchParamsAdapter {\n searchParams: URLSearchParams;\n setSearchParams: (\n next: URLSearchParams,\n options?: { replace?: boolean },\n ) => void;\n}\n\n/**\n * Browser-native {@link SearchParamsAdapter} built on the History API. Reads\n * the current query string and writes updates via `pushState`/`replaceState`,\n * staying reactive to `popstate` events. No router required.\n *\n * @stability Beta\n */\nexport function useBrowserSearchParams(): SearchParamsAdapter {\n const read = () =>\n new URLSearchParams(\n typeof window !== \"undefined\" ? window.location.search : \"\",\n );\n\n const [searchParams, setLocal] = useState<URLSearchParams>(read);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n const onPop = () => setLocal(read());\n window.addEventListener(\"popstate\", onPop);\n return () => window.removeEventListener(\"popstate\", onPop);\n }, []);\n\n const setSearchParams = useCallback<SearchParamsAdapter[\"setSearchParams\"]>(\n (next, options) => {\n if (typeof window === \"undefined\") return;\n const qs = next.toString();\n const url =\n window.location.pathname + (qs ? `?${qs}` : \"\") + window.location.hash;\n if (options?.replace) {\n window.history.replaceState(window.history.state, \"\", url);\n } else {\n window.history.pushState(window.history.state, \"\", url);\n }\n setLocal(new URLSearchParams(next));\n },\n [],\n );\n\n return { searchParams, setSearchParams };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/label.tsx"],"names":[],"mappings":";;;;;;AAOA,IAAM,aAAA,GAAgB,GAAA;AAAA,EACpB;AACF,CAAA;AAEA,IAAM,KAAA,GAAc,iBAIlB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1B,GAAA;AAAA,EAAgB,cAAA,CAAA,IAAA;AAAA,EAAf;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAW,EAAA,CAAG,aAAA,EAAc,EAAG,SAAS,CAAA;AAAA,IACvC,GAAG;AAAA;AACN,CACD;AACD,KAAA,CAAM,cAA6B,cAAA,CAAA,IAAA,CAAK,WAAA","file":"chunk-AIODTBWP.js","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport { cn } from \"../../utils\";\n\nconst labelVariants = cva(\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n);\n\nconst Label = React.forwardRef<\n React.ComponentRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/button.tsx"],"names":[],"mappings":";;;;AAIA,IAAM,cAAA,GAAiB,GAAA;AAAA,EACrB,0VAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EACE,wDAAA;AAAA,QACF,WAAA,EACE,oEAAA;AAAA,QACF,OAAA,EACE,gFAAA;AAAA,QACF,SAAA,EACE,8DAAA;AAAA,QACF,KAAA,EAAO,8CAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,gBAAA;AAAA,QACT,EAAA,EAAI,qBAAA;AAAA,QACJ,EAAA,EAAI,sBAAA;AAAA,QACJ,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR;AAEJ;AAGA,SAAS,OAAA,GAAU;AACjB,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAU,qBAAA;AAAA,MACV,KAAA,EAAM,4BAAA;AAAA,MACN,IAAA,EAAK,MAAA;AAAA,MACL,OAAA,EAAQ,WAAA;AAAA,MACR,aAAA,EAAY,MAAA;AAAA,MAEZ,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,YAAA;AAAA,YACV,EAAA,EAAG,IAAA;AAAA,YACH,EAAA,EAAG,IAAA;AAAA,YACH,CAAA,EAAE,IAAA;AAAA,YACF,MAAA,EAAO,cAAA;AAAA,YACP,WAAA,EAAY;AAAA;AAAA,SACd;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,YAAA;AAAA,YACV,IAAA,EAAK,cAAA;AAAA,YACL,CAAA,EAAE;AAAA;AAAA;AACJ;AAAA;AAAA,GACF;AAEJ;AAcA,SAAS,MAAA,CAAO;AAAA,EACd,SAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,GAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAgB;AACd,EAAA,uBACE,IAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,WAAA,EAAU,QAAA;AAAA,MACV,SAAA,EAAW,GAAG,cAAA,CAAe,EAAE,SAAS,IAAA,EAAM,SAAA,EAAW,CAAC,CAAA;AAAA,MAC1D,UAAU,QAAA,IAAY,OAAA;AAAA,MACtB,aAAW,OAAA,IAAW,MAAA;AAAA,MAGtB,MAAM,IAAA,IAAQ,QAAA;AAAA,MACb,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,OAAA,mBAAU,GAAA,CAAC,WAAQ,CAAA,GAAK,SAAA;AAAA,QACxB,QAAA;AAAA,QACA,CAAC,OAAA,IAAW;AAAA;AAAA;AAAA,GACf;AAEJ","file":"chunk-I6JQHP6D.js","sourcesContent":["import * as React from \"react\";\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport { cn } from \"../../utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-10 px-4 py-2\",\n sm: \"h-9 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"h-10 w-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\n/** Spinner rendered in the leading slot while `loading`. */\nfunction Spinner() {\n return (\n <svg\n className=\"animate-spin size-4\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z\"\n />\n </svg>\n );\n}\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n ref?: React.Ref<HTMLButtonElement>;\n /** When true, renders a spinner + disables the button (aria-busy). */\n loading?: boolean;\n /** Optional leading icon slot (replaced by the spinner while loading). */\n startIcon?: React.ReactNode;\n /** Optional trailing icon slot. */\n endIcon?: React.ReactNode;\n}\n\nfunction Button({\n className,\n variant,\n size,\n ref,\n loading = false,\n startIcon,\n endIcon,\n disabled,\n type,\n children,\n ...props\n}: ButtonProps) {\n return (\n <button\n ref={ref}\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n // Default to \"button\" so a bare button can't accidentally submit a\n // wrapping <form>; an explicit type still overrides.\n type={type ?? \"button\"}\n {...props}\n >\n {loading ? <Spinner /> : startIcon}\n {children}\n {!loading && endIcon}\n </button>\n );\n}\n\nexport { Button, buttonVariants };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/badge.tsx"],"names":[],"mappings":";;;;AAIA,IAAM,aAAA,GAAgB,GAAA;AAAA,EACpB,8LAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EACE,uDAAA;AAAA,QACF,SAAA,EACE,2DAAA;AAAA,QACF,WAAA,EACE,+DAAA;AAAA,QACF,OAAA,EAAS,iBAAA;AAAA,QACT,OAAA,EACE,kEAAA;AAAA,QACF,OAAA,EACE,kEAAA;AAAA,QACF,IAAA,EAAM,yDAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ;AAMA,SAAS,MAAM,EAAE,SAAA,EAAW,OAAA,EAAS,GAAG,OAAM,EAAe;AAC3D,EAAA,uBACE,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,EAAA,CAAG,aAAA,CAAc,EAAE,OAAA,EAAS,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAE3E","file":"chunk-MUQLZFUR.js","sourcesContent":["import * as React from \"react\";\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport { cn } from \"../../utils\";\n\nconst badgeVariants = cva(\n \"inline-flex w-fit items-center whitespace-nowrap rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground\",\n outline: \"text-foreground\",\n success:\n \"border-transparent bg-success/15 text-success dark:bg-success/20\",\n warning:\n \"border-transparent bg-warning/15 text-warning dark:bg-warning/20\",\n info: \"border-transparent bg-info/15 text-info dark:bg-info/20\",\n muted: \"border-transparent bg-muted text-muted-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLSpanElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <span className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n"]}
|
package/dist/chunk-W64GERJW.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { cn } from './chunk-NZ5WBA4R.js';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import { jsx } from 'react/jsx-runtime';
|
|
4
|
-
|
|
5
|
-
var Textarea = React.forwardRef(({ className, ...props }, ref) => {
|
|
6
|
-
return /* @__PURE__ */ jsx(
|
|
7
|
-
"textarea",
|
|
8
|
-
{
|
|
9
|
-
className: cn(
|
|
10
|
-
"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
11
|
-
className
|
|
12
|
-
),
|
|
13
|
-
ref,
|
|
14
|
-
...props
|
|
15
|
-
}
|
|
16
|
-
);
|
|
17
|
-
});
|
|
18
|
-
Textarea.displayName = "Textarea";
|
|
19
|
-
|
|
20
|
-
export { Textarea };
|
|
21
|
-
//# sourceMappingURL=chunk-W64GERJW.js.map
|
|
22
|
-
//# sourceMappingURL=chunk-W64GERJW.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/textarea.tsx"],"names":[],"mappings":";;;;AAGA,IAAM,QAAA,GAAiB,iBAGrB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,KAAQ;AAClC,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,mTAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,GAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ,CAAC;AACD,QAAA,CAAS,WAAA,GAAc,UAAA","file":"chunk-W64GERJW.js","sourcesContent":["import * as React from \"react\";\nimport { cn } from \"../../utils\";\n\nconst Textarea = React.forwardRef<\n HTMLTextAreaElement,\n React.ComponentProps<\"textarea\">\n>(({ className, ...props }, ref) => {\n return (\n <textarea\n className={cn(\n \"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n});\nTextarea.displayName = \"Textarea\";\n\nexport { Textarea };\n"]}
|