@pixpilot/shadcn 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/components/index.cjs +6 -4
  2. package/dist/components/index.d.cts +6 -4
  3. package/dist/components/index.d.ts +6 -4
  4. package/dist/components/index.js +7 -5
  5. package/dist/components/ui/OrContinueWithSeparator.d.cts +2 -2
  6. package/dist/components/ui/OrContinueWithSeparator.d.ts +2 -2
  7. package/dist/components/ui/button.cjs +3 -1
  8. package/dist/components/ui/button.js +3 -1
  9. package/dist/components/ui/color-picker.cjs +1171 -0
  10. package/dist/components/ui/color-picker.d.cts +94 -0
  11. package/dist/components/ui/color-picker.d.ts +94 -0
  12. package/dist/components/ui/color-picker.js +1152 -0
  13. package/dist/components/ui/command.d.cts +10 -10
  14. package/dist/components/ui/command.d.ts +10 -10
  15. package/dist/components/ui/dialog.d.cts +11 -11
  16. package/dist/components/ui/dialog.d.ts +11 -11
  17. package/dist/components/ui/dropdown-menu.d.cts +16 -16
  18. package/dist/components/ui/dropdown-menu.d.ts +16 -16
  19. package/dist/components/ui/file-upload.d.cts +11 -11
  20. package/dist/components/ui/file-upload.d.ts +11 -11
  21. package/dist/components/ui/form.d.cts +7 -7
  22. package/dist/components/ui/form.d.ts +7 -7
  23. package/dist/components/ui/index.cjs +6 -4
  24. package/dist/components/ui/index.d.cts +6 -4
  25. package/dist/components/ui/index.d.ts +6 -4
  26. package/dist/components/ui/index.js +7 -5
  27. package/dist/components/ui/input-group.cjs +90 -0
  28. package/dist/components/ui/input-group.d.cts +43 -0
  29. package/dist/components/ui/input-group.d.ts +43 -0
  30. package/dist/components/ui/input-group.js +81 -0
  31. package/dist/components/ui/input.d.cts +2 -2
  32. package/dist/components/ui/input.d.ts +2 -2
  33. package/dist/components/ui/label.d.cts +2 -2
  34. package/dist/components/ui/label.d.ts +2 -2
  35. package/dist/components/ui/pagination.d.cts +8 -8
  36. package/dist/components/ui/pagination.d.ts +8 -8
  37. package/dist/components/ui/popover.d.cts +5 -5
  38. package/dist/components/ui/popover.d.ts +5 -5
  39. package/dist/components/ui/radio-group.d.cts +3 -3
  40. package/dist/components/ui/radio-group.d.ts +3 -3
  41. package/dist/components/ui/select.d.cts +11 -11
  42. package/dist/components/ui/select.d.ts +11 -11
  43. package/dist/components/ui/separator.d.cts +2 -2
  44. package/dist/components/ui/separator.d.ts +2 -2
  45. package/dist/components/ui/shadcn-io/tags/index.cjs +1 -1
  46. package/dist/components/ui/shadcn-io/tags/index.d.cts +10 -10
  47. package/dist/components/ui/shadcn-io/tags/index.d.ts +10 -10
  48. package/dist/components/ui/shadcn-io/tags/index.js +1 -1
  49. package/dist/components/ui/shadcn-io/tags-input-inline/index.d.cts +7 -7
  50. package/dist/components/ui/shadcn-io/tags-input-inline/index.d.ts +7 -7
  51. package/dist/components/ui/sheet.d.cts +9 -9
  52. package/dist/components/ui/sheet.d.ts +9 -9
  53. package/dist/components/ui/slider.d.cts +2 -2
  54. package/dist/components/ui/slider.d.ts +2 -2
  55. package/dist/components/ui/switch.d.cts +2 -2
  56. package/dist/components/ui/switch.d.ts +2 -2
  57. package/dist/components/ui/tabs.cjs +24 -4
  58. package/dist/components/ui/tabs.d.cts +15 -5
  59. package/dist/components/ui/tabs.d.ts +15 -5
  60. package/dist/components/ui/tabs.js +23 -4
  61. package/dist/components/ui/textarea.d.cts +2 -2
  62. package/dist/components/ui/textarea.d.ts +2 -2
  63. package/dist/components/visually-hidden-input.cjs +116 -0
  64. package/dist/components/visually-hidden-input.js +113 -0
  65. package/dist/hooks/use-as-ref.cjs +16 -0
  66. package/dist/hooks/use-as-ref.js +14 -0
  67. package/dist/hooks/use-isomorphic-layout-effect.cjs +9 -0
  68. package/dist/hooks/use-isomorphic-layout-effect.js +7 -0
  69. package/dist/hooks/use-lazy-ref.cjs +13 -0
  70. package/dist/hooks/use-lazy-ref.js +11 -0
  71. package/dist/index.cjs +24 -4
  72. package/dist/index.d.cts +7 -5
  73. package/dist/index.d.ts +7 -5
  74. package/dist/index.js +8 -6
  75. package/dist/lib/compose-refs.cjs +44 -0
  76. package/dist/lib/compose-refs.js +42 -0
  77. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -8,27 +8,29 @@ import { Button, buttonVariants } from "./components/ui/button.js";
8
8
  import { Calendar, CalendarDayButton } from "./components/ui/calendar.js";
9
9
  import { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "./components/ui/card.js";
10
10
  import { Checkbox } from "./components/ui/checkbox.js";
11
+ import { Input } from "./components/ui/input.js";
12
+ import { Popover, PopoverAnchor, PopoverContent, PopoverTrigger } from "./components/ui/popover.js";
13
+ import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue } from "./components/ui/select.js";
14
+ import { ColorPicker, ColorPickerAlphaSlider, ColorPickerArea, ColorPickerContent, ColorPickerEyeDropper, ColorPickerFormatSelect, ColorPickerHueSlider, ColorPickerInput, ColorPickerSwatch, ColorPickerTrigger, colorUtils, useStore } from "./components/ui/color-picker.js";
11
15
  import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from "./components/ui/dialog.js";
12
16
  import { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from "./components/ui/command.js";
13
17
  import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./components/ui/dropdown-menu.js";
14
- import { FileUploadClear, FileUploadDropzone, FileUploadItem, FileUploadItemDelete, FileUploadItemMetadata, FileUploadItemPreview, FileUploadItemProgress, FileUploadList, FileUploadRoot, FileUploadTrigger, useStore } from "./components/ui/file-upload.js";
18
+ import { FileUploadClear, FileUploadDropzone, FileUploadItem, FileUploadItemDelete, FileUploadItemMetadata, FileUploadItemPreview, FileUploadItemProgress, FileUploadList, FileUploadRoot, FileUploadTrigger, useStore as useStore$1 } from "./components/ui/file-upload.js";
15
19
  import { Label } from "./components/ui/label.js";
16
20
  import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField } from "./components/ui/form.js";
17
- import { Input } from "./components/ui/input.js";
21
+ import { Textarea } from "./components/ui/textarea.js";
22
+ import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea } from "./components/ui/input-group.js";
18
23
  import { Separator } from "./components/ui/separator.js";
19
24
  import { OrContinueWithSeparator } from "./components/ui/OrContinueWithSeparator.js";
20
25
  import { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from "./components/ui/pagination.js";
21
- import { Popover, PopoverAnchor, PopoverContent, PopoverTrigger } from "./components/ui/popover.js";
22
26
  import { RadioGroup, RadioGroupItem } from "./components/ui/radio-group.js";
23
- import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue } from "./components/ui/select.js";
24
27
  import { Tags, TagsContent, TagsEmpty, TagsGroup, TagsInput, TagsItem, TagsList, TagsTrigger, TagsValue } from "./components/ui/shadcn-io/tags/index.js";
25
28
  import { TagsInputInLineClear, TagsInputInLineInput, TagsInputInLineItem, TagsInputInLineLabel, TagsInputInLineList, TagsInputInLineRoot } from "./components/ui/shadcn-io/tags-input-inline/index.js";
26
29
  import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from "./components/ui/sheet.js";
27
30
  import { Slider } from "./components/ui/slider.js";
28
31
  import { Switch } from "./components/ui/switch.js";
29
32
  import { Tabs, TabsContent, TabsList, TabsTrigger } from "./components/ui/tabs.js";
30
- import { Textarea } from "./components/ui/textarea.js";
31
33
  import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./components/ui/tooltip.js";
32
34
  import "./components/index.js";
33
35
 
34
- export { Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Avatar, AvatarFallback, AvatarImage, Badge, Button, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, FileUploadClear as Clear, FileUploadClear, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUploadDropzone as Dropzone, FileUploadDropzone, FileUploadRoot as FileUpload, FileUploadRoot as Root, FileUploadItem, FileUploadItem as Item, FileUploadItemDelete, FileUploadItemDelete as ItemDelete, FileUploadItemMetadata, FileUploadItemMetadata as ItemMetadata, FileUploadItemPreview, FileUploadItemPreview as ItemPreview, FileUploadItemProgress, FileUploadItemProgress as ItemProgress, FileUploadList, FileUploadList as List, FileUploadTrigger, FileUploadTrigger as Trigger, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, Input, Label, OrContinueWithSeparator, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, RadioGroup, RadioGroupItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Slider, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Tags, TagsContent, TagsEmpty, TagsGroup, TagsInput, TagsInputInLineClear, TagsInputInLineInput, TagsInputInLineItem, TagsInputInLineLabel, TagsInputInLineList, TagsInputInLineRoot, TagsItem, TagsList, TagsTrigger, TagsValue, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, buttonVariants, cn, useStore as useFileUpload, useFormField };
36
+ export { Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Avatar, AvatarFallback, AvatarImage, Badge, Button, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, FileUploadClear as Clear, FileUploadClear, ColorPicker, ColorPickerAlphaSlider, ColorPickerArea, ColorPickerContent, ColorPickerEyeDropper, ColorPickerFormatSelect, ColorPickerHueSlider, ColorPickerInput, ColorPickerSwatch, ColorPickerTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUploadDropzone as Dropzone, FileUploadDropzone, FileUploadRoot as FileUpload, FileUploadRoot as Root, FileUploadItem, FileUploadItem as Item, FileUploadItemDelete, FileUploadItemDelete as ItemDelete, FileUploadItemMetadata, FileUploadItemMetadata as ItemMetadata, FileUploadItemPreview, FileUploadItemPreview as ItemPreview, FileUploadItemProgress, FileUploadItemProgress as ItemProgress, FileUploadList, FileUploadList as List, FileUploadTrigger, FileUploadTrigger as Trigger, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Label, OrContinueWithSeparator, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, RadioGroup, RadioGroupItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Slider, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Tags, TagsContent, TagsEmpty, TagsGroup, TagsInput, TagsInputInLineClear, TagsInputInLineInput, TagsInputInLineItem, TagsInputInLineLabel, TagsInputInLineList, TagsInputInLineRoot, TagsItem, TagsList, TagsTrigger, TagsValue, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, buttonVariants, cn, colorUtils, useStore as useColorPicker, useStore$1 as useFileUpload, useFormField };
@@ -0,0 +1,44 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ let react = require("react");
3
+ react = require_rolldown_runtime.__toESM(react);
4
+
5
+ //#region src/lib/compose-refs.ts
6
+ /**
7
+ * Set a given ref to a given value
8
+ * This utility takes care of different types of refs: callback refs and RefObject(s)
9
+ */
10
+ function setRef(ref, value) {
11
+ if (typeof ref === "function") return ref(value);
12
+ if (ref !== null && ref !== void 0) ref.current = value;
13
+ }
14
+ /**
15
+ * A utility to compose multiple refs together
16
+ * Accepts callback refs and RefObject(s)
17
+ */
18
+ function composeRefs(...refs) {
19
+ return (node) => {
20
+ let hasCleanup = false;
21
+ const cleanups = refs.map((ref) => {
22
+ const cleanup = setRef(ref, node);
23
+ if (!hasCleanup && typeof cleanup === "function") hasCleanup = true;
24
+ return cleanup;
25
+ });
26
+ if (hasCleanup) return () => {
27
+ for (let i = 0; i < cleanups.length; i++) {
28
+ const cleanup = cleanups[i];
29
+ if (typeof cleanup === "function") cleanup();
30
+ else setRef(refs[i], null);
31
+ }
32
+ };
33
+ };
34
+ }
35
+ /**
36
+ * A custom hook that composes multiple refs
37
+ * Accepts callback refs and RefObject(s)
38
+ */
39
+ function useComposedRefs(...refs) {
40
+ return react.useCallback(composeRefs(...refs), refs);
41
+ }
42
+
43
+ //#endregion
44
+ exports.useComposedRefs = useComposedRefs;
@@ -0,0 +1,42 @@
1
+ import * as React from "react";
2
+
3
+ //#region src/lib/compose-refs.ts
4
+ /**
5
+ * Set a given ref to a given value
6
+ * This utility takes care of different types of refs: callback refs and RefObject(s)
7
+ */
8
+ function setRef(ref, value) {
9
+ if (typeof ref === "function") return ref(value);
10
+ if (ref !== null && ref !== void 0) ref.current = value;
11
+ }
12
+ /**
13
+ * A utility to compose multiple refs together
14
+ * Accepts callback refs and RefObject(s)
15
+ */
16
+ function composeRefs(...refs) {
17
+ return (node) => {
18
+ let hasCleanup = false;
19
+ const cleanups = refs.map((ref) => {
20
+ const cleanup = setRef(ref, node);
21
+ if (!hasCleanup && typeof cleanup === "function") hasCleanup = true;
22
+ return cleanup;
23
+ });
24
+ if (hasCleanup) return () => {
25
+ for (let i = 0; i < cleanups.length; i++) {
26
+ const cleanup = cleanups[i];
27
+ if (typeof cleanup === "function") cleanup();
28
+ else setRef(refs[i], null);
29
+ }
30
+ };
31
+ };
32
+ }
33
+ /**
34
+ * A custom hook that composes multiple refs
35
+ * Accepts callback refs and RefObject(s)
36
+ */
37
+ function useComposedRefs(...refs) {
38
+ return React.useCallback(composeRefs(...refs), refs);
39
+ }
40
+
41
+ //#endregion
42
+ export { useComposedRefs };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pixpilot/shadcn",
3
3
  "type": "module",
4
- "version": "0.4.0",
4
+ "version": "0.6.0",
5
5
  "description": "A collection of reusable UI components built with shadcn/ui and Radix UI primitives.",
6
6
  "author": "m.doaie <m.doaie@hotmail.com>",
7
7
  "license": "MIT",
@@ -79,9 +79,9 @@
79
79
  "typescript-eslint": "^8.49.0",
80
80
  "@internal/eslint-config": "0.3.0",
81
81
  "@internal/prettier-config": "0.0.1",
82
- "@internal/vitest-config": "0.1.0",
83
82
  "@internal/tsconfig": "0.1.0",
84
- "@internal/tsdown-config": "0.1.0"
83
+ "@internal/tsdown-config": "0.1.0",
84
+ "@internal/vitest-config": "0.1.0"
85
85
  },
86
86
  "prettier": "@internal/prettier-config",
87
87
  "scripts": {