@pixpilot/shadcn-ui 3.9.0 → 3.11.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 (38) hide show
  1. package/dist/absolute-fill/AbsoluteFill.d.cts +2 -2
  2. package/dist/absolute-fill/AbsoluteFill.d.ts +2 -2
  3. package/dist/button/Button.d.cts +2 -2
  4. package/dist/button/Button.d.ts +2 -2
  5. package/dist/button-extended/ButtonExtended.d.cts +2 -2
  6. package/dist/card/Card.d.cts +3 -3
  7. package/dist/color-select/ColorSelect.d.cts +2 -2
  8. package/dist/content-card/ContentCard.d.cts +2 -2
  9. package/dist/content-card/ContentCard.d.ts +2 -2
  10. package/dist/date-picker/DatePicker.d.cts +2 -2
  11. package/dist/date-picker/DatePicker.d.ts +2 -2
  12. package/dist/dialog/Dialog.d.cts +5 -5
  13. package/dist/dialog/Dialog.d.ts +5 -5
  14. package/dist/dialog/mcp.js +5 -0
  15. package/dist/drawer/Drawer.d.cts +6 -6
  16. package/dist/drawer/Drawer.d.ts +6 -6
  17. package/dist/drawer/mcp.js +6 -1
  18. package/dist/file-upload/FileUpload.d.cts +2 -2
  19. package/dist/file-upload-inline/FileUploadInline.d.cts +2 -2
  20. package/dist/file-upload-inline/FileUploadInline.d.ts +2 -2
  21. package/dist/file-upload-root/FileUploadRoot.d.cts +2 -2
  22. package/dist/file-upload-root/FileUploadRoot.d.ts +2 -2
  23. package/dist/input/Input.d.cts +2 -2
  24. package/dist/loading-overlay/LoadingOverlay.cjs +33 -2
  25. package/dist/loading-overlay/LoadingOverlay.js +34 -3
  26. package/dist/rating/Rating.d.cts +3 -3
  27. package/dist/select/Select.d.cts +2 -2
  28. package/dist/tabs/TabsTrigger.cjs +1 -1
  29. package/dist/tabs/TabsTrigger.js +1 -1
  30. package/dist/tags-input/TagsInput.d.cts +2 -2
  31. package/dist/tags-input/TagsInput.d.ts +2 -2
  32. package/dist/tags-input/TagsInputInline.d.cts +2 -2
  33. package/dist/tags-input/TagsInputInline.d.ts +2 -2
  34. package/dist/theme-toggle/ThemeModeDropdown.d.cts +2 -2
  35. package/dist/theme-toggle/ThemeModeSwitchInside.d.cts +2 -2
  36. package/dist/theme-toggle/ThemeModeSwitchOutside.d.cts +2 -2
  37. package/dist/theme-toggle/ThemeModeToggleButton.d.cts +2 -2
  38. package/package.json +8 -8
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime28 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
2
2
  import React from "react";
3
3
 
4
4
  //#region src/absolute-fill/AbsoluteFill.d.ts
@@ -10,7 +10,7 @@ import React from "react";
10
10
  */
11
11
  declare function AbsoluteFill(props: React.HTMLAttributes<HTMLDivElement> & {
12
12
  ref?: React.Ref<HTMLDivElement>;
13
- }): react_jsx_runtime28.JSX.Element;
13
+ }): react_jsx_runtime0.JSX.Element;
14
14
  declare namespace AbsoluteFill {
15
15
  var displayName: string;
16
16
  }
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import * as react_jsx_runtime1 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/absolute-fill/AbsoluteFill.d.ts
5
5
 
@@ -10,7 +10,7 @@ import * as react_jsx_runtime1 from "react/jsx-runtime";
10
10
  */
11
11
  declare function AbsoluteFill(props: React.HTMLAttributes<HTMLDivElement> & {
12
12
  ref?: React.Ref<HTMLDivElement>;
13
- }): react_jsx_runtime1.JSX.Element;
13
+ }): react_jsx_runtime0.JSX.Element;
14
14
  declare namespace AbsoluteFill {
15
15
  var displayName: string;
16
16
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime4 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime28 from "react/jsx-runtime";
2
2
  import { Button, Tooltip, TooltipContent, TooltipTrigger, buttonVariants } from "@pixpilot/shadcn";
3
3
  import React from "react";
4
4
  import { VariantProps } from "class-variance-authority";
@@ -27,7 +27,7 @@ interface ButtonProps extends React.ComponentProps<typeof Button>, VariantProps<
27
27
  }
28
28
  declare function Button$1(props: ButtonProps & {
29
29
  ref?: React.Ref<HTMLButtonElement>;
30
- }): react_jsx_runtime4.JSX.Element;
30
+ }): react_jsx_runtime28.JSX.Element;
31
31
  declare namespace Button$1 {
32
32
  var displayName: string;
33
33
  }
@@ -1,6 +1,6 @@
1
1
  import { Button, Tooltip, TooltipContent, TooltipTrigger, buttonVariants } from "@pixpilot/shadcn";
2
2
  import React from "react";
3
- import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime1 from "react/jsx-runtime";
4
4
  import { VariantProps } from "class-variance-authority";
5
5
 
6
6
  //#region src/button/Button.d.ts
@@ -27,7 +27,7 @@ interface ButtonProps extends React.ComponentProps<typeof Button>, VariantProps<
27
27
  }
28
28
  declare function Button$1(props: ButtonProps & {
29
29
  ref?: React.Ref<HTMLButtonElement>;
30
- }): react_jsx_runtime0.JSX.Element;
30
+ }): react_jsx_runtime1.JSX.Element;
31
31
  declare namespace Button$1 {
32
32
  var displayName: string;
33
33
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime2 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime1 from "react/jsx-runtime";
2
2
  import { Button, Tooltip, TooltipContent, TooltipTrigger, buttonVariants } from "@pixpilot/shadcn";
3
3
  import React from "react";
4
4
  import { VariantProps } from "class-variance-authority";
@@ -50,7 +50,7 @@ interface ButtonExtendedProps extends React.ComponentProps<typeof Button>, Varia
50
50
  }
51
51
  declare function ButtonExtended(props: ButtonExtendedProps & {
52
52
  ref?: React.Ref<HTMLButtonElement>;
53
- }): react_jsx_runtime2.JSX.Element;
53
+ }): react_jsx_runtime1.JSX.Element;
54
54
  declare namespace ButtonExtended {
55
55
  var displayName: string;
56
56
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime0 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime2 from "react/jsx-runtime";
2
2
  import { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@pixpilot/shadcn";
3
3
  import React from "react";
4
4
 
@@ -6,10 +6,10 @@ import React from "react";
6
6
  declare function CardTitle$1({
7
7
  className,
8
8
  ...props
9
- }: React.ComponentProps<typeof CardTitle>): react_jsx_runtime0.JSX.Element;
9
+ }: React.ComponentProps<typeof CardTitle>): react_jsx_runtime2.JSX.Element;
10
10
  declare function CardHeader$1({
11
11
  className,
12
12
  ...props
13
- }: React.ComponentProps<typeof CardHeader>): react_jsx_runtime0.JSX.Element;
13
+ }: React.ComponentProps<typeof CardHeader>): react_jsx_runtime2.JSX.Element;
14
14
  //#endregion
15
15
  export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader$1 as CardHeader, CardTitle$1 as CardTitle };
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime1 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime4 from "react/jsx-runtime";
2
2
  import { Select, SelectContent } from "@pixpilot/shadcn";
3
3
  import React, { ComponentProps } from "react";
4
4
 
@@ -17,6 +17,6 @@ type BaseColorSelectProps = {
17
17
  keyboardMode?: 'cycle' | 'dropdown';
18
18
  className?: string;
19
19
  } & Omit<ComponentProps<typeof Select>, 'value' | 'onValueChange' | 'children'>;
20
- declare function ColorSelect(props: BaseColorSelectProps): react_jsx_runtime1.JSX.Element;
20
+ declare function ColorSelect(props: BaseColorSelectProps): react_jsx_runtime4.JSX.Element;
21
21
  //#endregion
22
22
  export { BaseColorSelectProps, ColorSelect, ColorSelectOption };
@@ -1,6 +1,6 @@
1
1
  import { Card } from "../card/Card.cjs";
2
2
  import "../card/index.cjs";
3
- import * as react_jsx_runtime7 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime6 from "react/jsx-runtime";
4
4
  import React, { ReactNode } from "react";
5
5
 
6
6
  //#region src/content-card/ContentCard.d.ts
@@ -9,7 +9,7 @@ interface SectionCardProps extends React.ComponentProps<typeof Card> {
9
9
  children: ReactNode;
10
10
  marginBottom?: boolean;
11
11
  }
12
- declare function ContentCard(props: SectionCardProps): react_jsx_runtime7.JSX.Element;
12
+ declare function ContentCard(props: SectionCardProps): react_jsx_runtime6.JSX.Element;
13
13
  declare namespace ContentCard {
14
14
  var displayName: string;
15
15
  }
@@ -1,7 +1,7 @@
1
1
  import { Card } from "../card/Card.js";
2
2
  import "../card/index.js";
3
3
  import React, { ReactNode } from "react";
4
- import * as react_jsx_runtime19 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime6 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/content-card/ContentCard.d.ts
7
7
  interface SectionCardProps extends React.ComponentProps<typeof Card> {
@@ -9,7 +9,7 @@ interface SectionCardProps extends React.ComponentProps<typeof Card> {
9
9
  children: ReactNode;
10
10
  marginBottom?: boolean;
11
11
  }
12
- declare function ContentCard(props: SectionCardProps): react_jsx_runtime19.JSX.Element;
12
+ declare function ContentCard(props: SectionCardProps): react_jsx_runtime6.JSX.Element;
13
13
  declare namespace ContentCard {
14
14
  var displayName: string;
15
15
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime13 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime5 from "react/jsx-runtime";
2
2
  import { Calendar } from "@pixpilot/shadcn";
3
3
  import { ComponentProps } from "react";
4
4
 
@@ -10,7 +10,7 @@ type DatePickerProps = {
10
10
  placeholder?: string;
11
11
  showClearButton?: boolean;
12
12
  } & Omit<ComponentProps<typeof Calendar>, 'selected' | 'onSelect' | 'mode'>;
13
- declare function DatePicker(props: DatePickerProps): react_jsx_runtime13.JSX.Element;
13
+ declare function DatePicker(props: DatePickerProps): react_jsx_runtime5.JSX.Element;
14
14
  declare namespace DatePicker {
15
15
  var displayName: string;
16
16
  }
@@ -1,6 +1,6 @@
1
1
  import { Calendar } from "@pixpilot/shadcn";
2
2
  import { ComponentProps } from "react";
3
- import * as react_jsx_runtime18 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime7 from "react/jsx-runtime";
4
4
 
5
5
  //#region src/date-picker/DatePicker.d.ts
6
6
  type DatePickerProps = {
@@ -10,7 +10,7 @@ type DatePickerProps = {
10
10
  placeholder?: string;
11
11
  showClearButton?: boolean;
12
12
  } & Omit<ComponentProps<typeof Calendar>, 'selected' | 'onSelect' | 'mode'>;
13
- declare function DatePicker(props: DatePickerProps): react_jsx_runtime18.JSX.Element;
13
+ declare function DatePicker(props: DatePickerProps): react_jsx_runtime7.JSX.Element;
14
14
  declare namespace DatePicker {
15
15
  var displayName: string;
16
16
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime14 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime7 from "react/jsx-runtime";
2
2
  import { DialogClose, DialogContent } from "@pixpilot/shadcn";
3
3
  import * as React$1 from "react";
4
4
 
@@ -7,12 +7,12 @@ interface DialogContentProps extends React$1.ComponentPropsWithoutRef<typeof Dia
7
7
  fullscreen?: boolean;
8
8
  }
9
9
  declare const DialogContent$1: React$1.ForwardRefExoticComponent<DialogContentProps & React$1.RefAttributes<HTMLDivElement>>;
10
- declare function DialogHeader(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime14.JSX.Element;
11
- declare function DialogBody(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime14.JSX.Element;
12
- declare function DialogFooter(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime14.JSX.Element;
10
+ declare function DialogHeader(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime7.JSX.Element;
11
+ declare function DialogBody(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime7.JSX.Element;
12
+ declare function DialogFooter(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime7.JSX.Element;
13
13
  declare function DialogClose$1({
14
14
  className,
15
15
  ...props
16
- }: React$1.ComponentPropsWithoutRef<typeof DialogClose>): react_jsx_runtime14.JSX.Element;
16
+ }: React$1.ComponentPropsWithoutRef<typeof DialogClose>): react_jsx_runtime7.JSX.Element;
17
17
  //#endregion
18
18
  export { DialogBody, DialogClose$1 as DialogClose, DialogContent$1 as DialogContent, DialogContentProps, DialogFooter, DialogHeader };
@@ -1,18 +1,18 @@
1
1
  import { DialogClose, DialogContent } from "@pixpilot/shadcn";
2
2
  import * as React$1 from "react";
3
- import * as react_jsx_runtime13 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime8 from "react/jsx-runtime";
4
4
 
5
5
  //#region src/dialog/Dialog.d.ts
6
6
  interface DialogContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogContent> {
7
7
  fullscreen?: boolean;
8
8
  }
9
9
  declare const DialogContent$1: React$1.ForwardRefExoticComponent<DialogContentProps & React$1.RefAttributes<HTMLDivElement>>;
10
- declare function DialogHeader$1(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime13.JSX.Element;
11
- declare function DialogBody(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime13.JSX.Element;
12
- declare function DialogFooter$1(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime13.JSX.Element;
10
+ declare function DialogHeader$1(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime8.JSX.Element;
11
+ declare function DialogBody(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime8.JSX.Element;
12
+ declare function DialogFooter$1(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime8.JSX.Element;
13
13
  declare function DialogClose$1({
14
14
  className,
15
15
  ...props
16
- }: React$1.ComponentPropsWithoutRef<typeof DialogClose>): react_jsx_runtime13.JSX.Element;
16
+ }: React$1.ComponentPropsWithoutRef<typeof DialogClose>): react_jsx_runtime8.JSX.Element;
17
17
  //#endregion
18
18
  export { DialogBody, DialogClose$1 as DialogClose, DialogContent$1 as DialogContent, DialogContentProps, DialogFooter$1 as DialogFooter, DialogHeader$1 as DialogHeader };
@@ -23,6 +23,11 @@ const meta = {
23
23
  onPointerDownOutside: "Called when a pointer event occurs outside the content; call preventDefault to keep it open.",
24
24
  onFocusOutside: "Called when focus moves outside the content; call preventDefault to keep it open.",
25
25
  onInteractOutside: "Called on any interaction (pointer or focus) outside the content; call preventDefault to keep it open.",
26
+ deferPointerDownOutside: {
27
+ description: "When true, defer pointerdown outside handling to allow other handlers to run first.",
28
+ type: "boolean",
29
+ defaultValue: "false"
30
+ },
26
31
  showCloseButton: {
27
32
  description: "Whether to render the built-in close (×) button in the top corner.",
28
33
  type: "boolean",
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime8 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime11 from "react/jsx-runtime";
2
2
  import { Drawer, DrawerClose, DrawerContent } from "@pixpilot/shadcn";
3
3
  import * as React$1 from "react";
4
4
  import * as _radix_ui_react_dialog0 from "@radix-ui/react-dialog";
@@ -22,7 +22,7 @@ type DrawerProps = React$1.ComponentProps<typeof Drawer> & NoDragProps;
22
22
  declare function Drawer$1({
23
23
  noDrag,
24
24
  ...props
25
- }: DrawerProps): react_jsx_runtime8.JSX.Element;
25
+ }: DrawerProps): react_jsx_runtime11.JSX.Element;
26
26
  type DrawerContentProps = React$1.ComponentPropsWithoutRef<typeof DrawerContent> & NoDragProps & {
27
27
  /**
28
28
  * Detach the drawer from the viewport edges: adds a gap on every side and
@@ -44,19 +44,19 @@ declare const DrawerContent$1: React$1.ForwardRefExoticComponent<Omit<Omit<_radi
44
44
  declare function DrawerHeader({
45
45
  noDrag,
46
46
  ...props
47
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
47
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime11.JSX.Element;
48
48
  declare function DrawerBody({
49
49
  noDrag,
50
50
  ...props
51
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
51
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime11.JSX.Element;
52
52
  declare function DrawerFooter({
53
53
  noDrag,
54
54
  ...props
55
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
55
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime11.JSX.Element;
56
56
  declare function DrawerClose$1({
57
57
  className,
58
58
  noDrag,
59
59
  ...props
60
- }: React$1.ComponentPropsWithoutRef<typeof DrawerClose> & NoDragProps): react_jsx_runtime8.JSX.Element;
60
+ }: React$1.ComponentPropsWithoutRef<typeof DrawerClose> & NoDragProps): react_jsx_runtime11.JSX.Element;
61
61
  //#endregion
62
62
  export { Drawer$1 as Drawer, DrawerBody, DrawerClose$1 as DrawerClose, DrawerContent$1 as DrawerContent, DrawerContentProps, DrawerFooter, DrawerHeader, DrawerProps };
@@ -1,6 +1,6 @@
1
1
  import { Drawer, DrawerClose, DrawerContent } from "@pixpilot/shadcn";
2
2
  import * as React$1 from "react";
3
- import * as react_jsx_runtime8 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime12 from "react/jsx-runtime";
4
4
  import * as _radix_ui_react_dialog0 from "@radix-ui/react-dialog";
5
5
 
6
6
  //#region src/drawer/Drawer.d.ts
@@ -22,7 +22,7 @@ type DrawerProps = React$1.ComponentProps<typeof Drawer> & NoDragProps;
22
22
  declare function Drawer$1({
23
23
  noDrag,
24
24
  ...props
25
- }: DrawerProps): react_jsx_runtime8.JSX.Element;
25
+ }: DrawerProps): react_jsx_runtime12.JSX.Element;
26
26
  type DrawerContentProps = React$1.ComponentPropsWithoutRef<typeof DrawerContent> & NoDragProps & {
27
27
  /**
28
28
  * Detach the drawer from the viewport edges: adds a gap on every side and
@@ -44,19 +44,19 @@ declare const DrawerContent$1: React$1.ForwardRefExoticComponent<Omit<Omit<_radi
44
44
  declare function DrawerHeader({
45
45
  noDrag,
46
46
  ...props
47
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
47
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime12.JSX.Element;
48
48
  declare function DrawerBody({
49
49
  noDrag,
50
50
  ...props
51
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
51
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime12.JSX.Element;
52
52
  declare function DrawerFooter({
53
53
  noDrag,
54
54
  ...props
55
- }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime8.JSX.Element;
55
+ }: React$1.HTMLAttributes<HTMLDivElement> & NoDragProps): react_jsx_runtime12.JSX.Element;
56
56
  declare function DrawerClose$1({
57
57
  className,
58
58
  noDrag,
59
59
  ...props
60
- }: React$1.ComponentPropsWithoutRef<typeof DrawerClose> & NoDragProps): react_jsx_runtime8.JSX.Element;
60
+ }: React$1.ComponentPropsWithoutRef<typeof DrawerClose> & NoDragProps): react_jsx_runtime12.JSX.Element;
61
61
  //#endregion
62
62
  export { Drawer$1 as Drawer, DrawerBody, DrawerClose$1 as DrawerClose, DrawerContent$1 as DrawerContent, DrawerContentProps, DrawerFooter, DrawerHeader, DrawerProps };
@@ -32,7 +32,12 @@ const meta = {
32
32
  onEscapeKeyDown: "Called when the Escape key is pressed; call preventDefault to keep the drawer open.",
33
33
  onPointerDownOutside: "Called when a pointer event occurs outside the content; call preventDefault to keep it open.",
34
34
  onFocusOutside: "Called when focus moves outside the content; call preventDefault to keep it open.",
35
- onInteractOutside: "Called on any interaction (pointer or focus) outside the content; call preventDefault to keep it open."
35
+ onInteractOutside: "Called on any interaction (pointer or focus) outside the content; call preventDefault to keep it open.",
36
+ deferPointerDownOutside: {
37
+ description: "When true, defer pointerdown outside handling to allow other handlers to run first.",
38
+ type: "boolean",
39
+ defaultValue: "false"
40
+ }
36
41
  }),
37
42
  notes: [
38
43
  "Compose with the Drawer root, DrawerTrigger, DrawerTitle, and DrawerDescription from the shadcn drawer primitives.",
@@ -1,7 +1,7 @@
1
1
  import { FileUploadProps } from "./types/index.cjs";
2
- import * as react_jsx_runtime6 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/file-upload/FileUpload.d.ts
5
- declare function FileUpload(props: FileUploadProps): react_jsx_runtime6.JSX.Element;
5
+ declare function FileUpload(props: FileUploadProps): react_jsx_runtime0.JSX.Element;
6
6
  //#endregion
7
7
  export { FileUpload };
@@ -1,10 +1,10 @@
1
1
  import { FileUploadInlineProps } from "./types.cjs";
2
- import * as react_jsx_runtime19 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime16 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/file-upload-inline/FileUploadInline.d.ts
5
5
  /**
6
6
  * FileUploadInline - An inline file upload component using FileUpload primitives
7
7
  */
8
- declare function FileUploadInline(props: FileUploadInlineProps): react_jsx_runtime19.JSX.Element;
8
+ declare function FileUploadInline(props: FileUploadInlineProps): react_jsx_runtime16.JSX.Element;
9
9
  //#endregion
10
10
  export { FileUploadInline };
@@ -1,10 +1,10 @@
1
1
  import { FileUploadInlineProps } from "./types.js";
2
- import * as react_jsx_runtime6 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime18 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/file-upload-inline/FileUploadInline.d.ts
5
5
  /**
6
6
  * FileUploadInline - An inline file upload component using FileUpload primitives
7
7
  */
8
- declare function FileUploadInline(props: FileUploadInlineProps): react_jsx_runtime6.JSX.Element;
8
+ declare function FileUploadInline(props: FileUploadInlineProps): react_jsx_runtime18.JSX.Element;
9
9
  //#endregion
10
10
  export { FileUploadInline };
@@ -1,11 +1,11 @@
1
1
  import { FileUploadRootProps } from "./types.cjs";
2
- import * as react_jsx_runtime18 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime17 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/file-upload-root/FileUploadRoot.d.ts
5
5
  /**
6
6
  * FileUploadInline - An inline file upload component using FileUpload primitives
7
7
  */
8
- declare function FileUploadRoot(props: FileUploadRootProps): react_jsx_runtime18.JSX.Element;
8
+ declare function FileUploadRoot(props: FileUploadRootProps): react_jsx_runtime17.JSX.Element;
9
9
  declare namespace FileUploadRoot {
10
10
  var displayName: string;
11
11
  }
@@ -1,11 +1,11 @@
1
1
  import { FileUploadRootProps } from "./types.js";
2
- import * as react_jsx_runtime7 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime19 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/file-upload-root/FileUploadRoot.d.ts
5
5
  /**
6
6
  * FileUploadInline - An inline file upload component using FileUpload primitives
7
7
  */
8
- declare function FileUploadRoot(props: FileUploadRootProps): react_jsx_runtime7.JSX.Element;
8
+ declare function FileUploadRoot(props: FileUploadRootProps): react_jsx_runtime19.JSX.Element;
9
9
  declare namespace FileUploadRoot {
10
10
  var displayName: string;
11
11
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime3 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime20 from "react/jsx-runtime";
2
2
  import { InputProps } from "@pixpilot/shadcn";
3
3
  import * as React$1 from "react";
4
4
 
@@ -10,6 +10,6 @@ type InputProps$1 = InputProps & {
10
10
  prefixClassName?: string;
11
11
  suffixClassName?: string;
12
12
  };
13
- declare function Input(props: InputProps$1): react_jsx_runtime3.JSX.Element;
13
+ declare function Input(props: InputProps$1): react_jsx_runtime20.JSX.Element;
14
14
  //#endregion
15
15
  export { Input, InputProps$1 as InputProps };
@@ -18,6 +18,8 @@ const FADE_DURATION = 300;
18
18
  const LoadingOverlay = (props) => {
19
19
  const { backdrop = true, placement = "center", show, inDelay = DEFAULT_DELAY, outDelay = DEFAULT_DELAY, message, scope = "container", size = "default", className, slots } = props;
20
20
  const contentProps = slots?.content || {};
21
+ const overlayRef = (0, react.useRef)(null);
22
+ const [containerBounds, setContainerBounds] = (0, react.useState)();
21
23
  const { mounted, visible } = require_use_delayed_visibility.useDelayedVisibility({
22
24
  show,
23
25
  inDelay,
@@ -39,11 +41,40 @@ const LoadingOverlay = (props) => {
39
41
  default: "text-sm",
40
42
  lg: "text-base"
41
43
  }[size];
44
+ (0, react.useLayoutEffect)(() => {
45
+ const container = mounted && scope === "container" ? overlayRef.current?.parentElement : void 0;
46
+ if (!container) return () => {};
47
+ const updateBounds = () => {
48
+ const { top, left, width, height } = container.getBoundingClientRect();
49
+ setContainerBounds({
50
+ top,
51
+ left,
52
+ width,
53
+ height
54
+ });
55
+ };
56
+ updateBounds();
57
+ container.addEventListener("scroll", updateBounds, { passive: true });
58
+ window.addEventListener("resize", updateBounds);
59
+ return () => {
60
+ container.removeEventListener("scroll", updateBounds);
61
+ window.removeEventListener("resize", updateBounds);
62
+ };
63
+ }, [mounted, scope]);
42
64
  if (!mounted) return null;
43
65
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
66
+ ref: overlayRef,
44
67
  "data-slot": "loading-overlay",
45
- className: (0, __pixpilot_shadcn.cn)("inset-0 z-[9999] flex justify-center transition-opacity", scope === "fullscreen" ? "fixed" : "absolute", positionClass, backdrop ? "bg-black/50" : "pointer-events-none", visible ? "opacity-100" : "opacity-0", className),
46
- style: { transitionDuration: `${FADE_DURATION}ms` },
68
+ className: (0, __pixpilot_shadcn.cn)("inset-0 z-[9999] flex justify-center transition-opacity", "fixed", positionClass, backdrop ? "bg-black/50" : "pointer-events-none", visible ? "opacity-100" : "opacity-0", className),
69
+ style: {
70
+ transitionDuration: `${FADE_DURATION}ms`,
71
+ ...scope === "container" && containerBounds ? {
72
+ top: containerBounds.top,
73
+ left: containerBounds.left,
74
+ width: containerBounds.width,
75
+ height: containerBounds.height
76
+ } : {}
77
+ },
47
78
  role: "status",
48
79
  "aria-live": "polite",
49
80
  "aria-busy": show,
@@ -4,7 +4,7 @@
4
4
  import { useDelayedVisibility } from "../hooks/use-delayed-visibility.js";
5
5
  import { cn } from "@pixpilot/shadcn";
6
6
  import { Loader2 } from "lucide-react";
7
- import React from "react";
7
+ import React, { useLayoutEffect, useRef, useState } from "react";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
9
9
 
10
10
  //#region src/loading-overlay/LoadingOverlay.tsx
@@ -13,6 +13,8 @@ const FADE_DURATION = 300;
13
13
  const LoadingOverlay = (props) => {
14
14
  const { backdrop = true, placement = "center", show, inDelay = DEFAULT_DELAY, outDelay = DEFAULT_DELAY, message, scope = "container", size = "default", className, slots } = props;
15
15
  const contentProps = slots?.content || {};
16
+ const overlayRef = useRef(null);
17
+ const [containerBounds, setContainerBounds] = useState();
16
18
  const { mounted, visible } = useDelayedVisibility({
17
19
  show,
18
20
  inDelay,
@@ -34,11 +36,40 @@ const LoadingOverlay = (props) => {
34
36
  default: "text-sm",
35
37
  lg: "text-base"
36
38
  }[size];
39
+ useLayoutEffect(() => {
40
+ const container = mounted && scope === "container" ? overlayRef.current?.parentElement : void 0;
41
+ if (!container) return () => {};
42
+ const updateBounds = () => {
43
+ const { top, left, width, height } = container.getBoundingClientRect();
44
+ setContainerBounds({
45
+ top,
46
+ left,
47
+ width,
48
+ height
49
+ });
50
+ };
51
+ updateBounds();
52
+ container.addEventListener("scroll", updateBounds, { passive: true });
53
+ window.addEventListener("resize", updateBounds);
54
+ return () => {
55
+ container.removeEventListener("scroll", updateBounds);
56
+ window.removeEventListener("resize", updateBounds);
57
+ };
58
+ }, [mounted, scope]);
37
59
  if (!mounted) return null;
38
60
  return /* @__PURE__ */ jsx("div", {
61
+ ref: overlayRef,
39
62
  "data-slot": "loading-overlay",
40
- className: cn("inset-0 z-[9999] flex justify-center transition-opacity", scope === "fullscreen" ? "fixed" : "absolute", positionClass, backdrop ? "bg-black/50" : "pointer-events-none", visible ? "opacity-100" : "opacity-0", className),
41
- style: { transitionDuration: `${FADE_DURATION}ms` },
63
+ className: cn("inset-0 z-[9999] flex justify-center transition-opacity", "fixed", positionClass, backdrop ? "bg-black/50" : "pointer-events-none", visible ? "opacity-100" : "opacity-0", className),
64
+ style: {
65
+ transitionDuration: `${FADE_DURATION}ms`,
66
+ ...scope === "container" && containerBounds ? {
67
+ top: containerBounds.top,
68
+ left: containerBounds.left,
69
+ width: containerBounds.width,
70
+ height: containerBounds.height
71
+ } : {}
72
+ },
42
73
  role: "status",
43
74
  "aria-live": "polite",
44
75
  "aria-busy": show,
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime20 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime18 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
  import * as class_variance_authority_types0 from "class-variance-authority/types";
@@ -35,7 +35,7 @@ declare function RatingButton({
35
35
  index,
36
36
  className,
37
37
  ...props
38
- }: RatingButtonProps): react_jsx_runtime20.JSX.Element;
38
+ }: RatingButtonProps): react_jsx_runtime18.JSX.Element;
39
39
  declare function Rating({
40
40
  value: valueProp,
41
41
  defaultValue,
@@ -53,6 +53,6 @@ declare function Rating({
53
53
  children,
54
54
  id,
55
55
  ...props
56
- }: React$1.PropsWithChildren<RatingProps>): react_jsx_runtime20.JSX.Element;
56
+ }: React$1.PropsWithChildren<RatingProps>): react_jsx_runtime18.JSX.Element;
57
57
  //#endregion
58
58
  export { Rating, RatingButton, RatingButtonProps, RatingColor, RatingOption, RatingProps };
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime5 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime21 from "react/jsx-runtime";
2
2
  import { Select, SelectContent, SelectTrigger } from "@pixpilot/shadcn";
3
3
  import React, { ComponentProps } from "react";
4
4
 
@@ -60,6 +60,6 @@ type BaseSelectProps = {
60
60
  /** Styles the visible trigger. */
61
61
  className?: string;
62
62
  } & Omit<ComponentProps<typeof SelectTrigger>, 'onChange' | 'value'>;
63
- declare function Select$1(props: BaseSelectProps): react_jsx_runtime5.JSX.Element;
63
+ declare function Select$1(props: BaseSelectProps): react_jsx_runtime21.JSX.Element;
64
64
  //#endregion
65
65
  export { BaseSelectProps, Select$1 as Select, SelectContentProps, SelectOption };
@@ -12,7 +12,7 @@ const TabsTrigger = (props) => {
12
12
  const { variant: propVariant,...rest } = props;
13
13
  const context = require_TabsContext.useTabsContext();
14
14
  const variant = propVariant || context?.variant;
15
- const underlineClasses = (0, __pixpilot_shadcn.cn)("data-[state=active]:border-primary m-0 mb-[-1px] rounded-none border-0 border-b-2 bg-transparent py-2 px-3 shadow-none");
15
+ const underlineClasses = (0, __pixpilot_shadcn.cn)("data-[state=active]:border-primary m-0 mb-[-1px] rounded-none border-0 border-b-2 bg-transparent py-2 px-3 shadow-none", "data-[state=active]:border-input data-[state=active]:bg-input/30 data-[state=active]:shadow-none");
16
16
  if (variant === "underline") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.TabsTrigger, {
17
17
  ...rest,
18
18
  className: (0, __pixpilot_shadcn.cn)(underlineClasses, rest.className)
@@ -8,7 +8,7 @@ const TabsTrigger$1 = (props) => {
8
8
  const { variant: propVariant,...rest } = props;
9
9
  const context = useTabsContext();
10
10
  const variant = propVariant || context?.variant;
11
- const underlineClasses = cn("data-[state=active]:border-primary m-0 mb-[-1px] rounded-none border-0 border-b-2 bg-transparent py-2 px-3 shadow-none");
11
+ const underlineClasses = cn("data-[state=active]:border-primary m-0 mb-[-1px] rounded-none border-0 border-b-2 bg-transparent py-2 px-3 shadow-none", "data-[state=active]:border-input data-[state=active]:bg-input/30 data-[state=active]:shadow-none");
12
12
  if (variant === "underline") return /* @__PURE__ */ jsx(TabsTrigger, {
13
13
  ...rest,
14
14
  className: cn(underlineClasses, rest.className)
@@ -1,6 +1,6 @@
1
1
  import { CommandOptionListItem } from "../command-option-list/CommandOptionList.cjs";
2
2
  import { TagsInputInline } from "./TagsInputInline.cjs";
3
- import * as react_jsx_runtime22 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime23 from "react/jsx-runtime";
4
4
  import { ComponentProps } from "react";
5
5
 
6
6
  //#region src/tags-input/TagsInput.d.ts
@@ -32,6 +32,6 @@ interface TagsInputProps extends Omit<ComponentProps<typeof TagsInputInline>, 'o
32
32
  * - Options support with dropdown (like Select)
33
33
  * - freeSolo mode for custom tags (like MUI Autocomplete)
34
34
  */
35
- declare function TagsInput(props: TagsInputProps): react_jsx_runtime22.JSX.Element;
35
+ declare function TagsInput(props: TagsInputProps): react_jsx_runtime23.JSX.Element;
36
36
  //#endregion
37
37
  export { TagsInput, TagsInputProps };
@@ -1,7 +1,7 @@
1
1
  import { CommandOptionListItem } from "../command-option-list/CommandOptionList.js";
2
2
  import { TagsInputInline } from "./TagsInputInline.js";
3
3
  import { ComponentProps } from "react";
4
- import * as react_jsx_runtime23 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime24 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/tags-input/TagsInput.d.ts
7
7
  interface TagsInputProps extends Omit<ComponentProps<typeof TagsInputInline>, 'onChange' | 'value' | 'onValueChange' | 'onValidate' | 'items' | 'max' | 'inputRef' | 'inputPlaceholder' | 'inputValue' | 'onInputFocus' | 'onInputChange' | 'onInputKeyDown' | 'onInputMouseDown' | 'onListClick' | 'canAddCurrentValue' | 'onAddCurrentInput' | 'showClear'> {
@@ -32,6 +32,6 @@ interface TagsInputProps extends Omit<ComponentProps<typeof TagsInputInline>, 'o
32
32
  * - Options support with dropdown (like Select)
33
33
  * - freeSolo mode for custom tags (like MUI Autocomplete)
34
34
  */
35
- declare function TagsInput(props: TagsInputProps): react_jsx_runtime23.JSX.Element;
35
+ declare function TagsInput(props: TagsInputProps): react_jsx_runtime24.JSX.Element;
36
36
  //#endregion
37
37
  export { TagsInput, TagsInputProps };
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime23 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime22 from "react/jsx-runtime";
2
2
  import { ChangeEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, Ref } from "react";
3
3
 
4
4
  //#region src/tags-input/TagsInputInline.d.ts
@@ -77,6 +77,6 @@ declare function TagsInputInline({
77
77
  canAddCurrentValue,
78
78
  onAddCurrentInput,
79
79
  showClear
80
- }: TagsInputInlineProps): react_jsx_runtime23.JSX.Element;
80
+ }: TagsInputInlineProps): react_jsx_runtime22.JSX.Element;
81
81
  //#endregion
82
82
  export { TagsInputInline, TagsInputInlineItem, TagsInputInlineProps };
@@ -1,5 +1,5 @@
1
1
  import { ChangeEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, Ref } from "react";
2
- import * as react_jsx_runtime24 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime23 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/tags-input/TagsInputInline.d.ts
5
5
  interface TagsInputInlineItem {
@@ -77,6 +77,6 @@ declare function TagsInputInline({
77
77
  canAddCurrentValue,
78
78
  onAddCurrentInput,
79
79
  showClear
80
- }: TagsInputInlineProps): react_jsx_runtime24.JSX.Element;
80
+ }: TagsInputInlineProps): react_jsx_runtime23.JSX.Element;
81
81
  //#endregion
82
82
  export { TagsInputInline, TagsInputInlineItem, TagsInputInlineProps };
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime24 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime25 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/theme-toggle/ThemeModeDropdown.d.ts
4
4
  interface ThemeModeDropdownProps {
@@ -18,7 +18,7 @@ interface ThemeModeDropdownProps {
18
18
  * Provides Light / Dark / System options.
19
19
  * Pure component - requires themeValue and onChange props.
20
20
  */
21
- declare function ThemeModeDropdown(props: ThemeModeDropdownProps): react_jsx_runtime24.JSX.Element;
21
+ declare function ThemeModeDropdown(props: ThemeModeDropdownProps): react_jsx_runtime25.JSX.Element;
22
22
  declare namespace ThemeModeDropdown {
23
23
  var displayName: string;
24
24
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime25 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime26 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/theme-toggle/ThemeModeSwitchInside.d.ts
4
4
  type ThemeModeSwitchInsideSize = 'sm' | 'md' | 'lg';
@@ -26,7 +26,7 @@ interface ThemeModeSwitchInsideProps {
26
26
  * Icons are embedded within the switch control.
27
27
  * Pure component - requires value and onChange props.
28
28
  */
29
- declare function ThemeModeSwitchInside(props: ThemeModeSwitchInsideProps): react_jsx_runtime25.JSX.Element;
29
+ declare function ThemeModeSwitchInside(props: ThemeModeSwitchInsideProps): react_jsx_runtime26.JSX.Element;
30
30
  declare namespace ThemeModeSwitchInside {
31
31
  var displayName: string;
32
32
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime26 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime27 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/theme-toggle/ThemeModeSwitchOutside.d.ts
4
4
  interface ThemeModeSwitchOutsideProps {
@@ -23,7 +23,7 @@ interface ThemeModeSwitchOutsideProps {
23
23
  * Icons flank the switch control on either side.
24
24
  * Pure component - requires value and onChange props.
25
25
  */
26
- declare function ThemeModeSwitchOutside(props: ThemeModeSwitchOutsideProps): react_jsx_runtime26.JSX.Element;
26
+ declare function ThemeModeSwitchOutside(props: ThemeModeSwitchOutsideProps): react_jsx_runtime27.JSX.Element;
27
27
  declare namespace ThemeModeSwitchOutside {
28
28
  var displayName: string;
29
29
  }
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime27 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime24 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/theme-toggle/ThemeModeToggleButton.d.ts
4
4
  interface ThemeModeToggleButtonProps {
@@ -14,7 +14,7 @@ interface ThemeModeToggleButtonProps {
14
14
  * Light/Dark toggle button.
15
15
  * Pure component - toggles between light and dark.
16
16
  */
17
- declare function ThemeModeToggleButton(props: ThemeModeToggleButtonProps): react_jsx_runtime27.JSX.Element;
17
+ declare function ThemeModeToggleButton(props: ThemeModeToggleButtonProps): react_jsx_runtime24.JSX.Element;
18
18
  declare namespace ThemeModeToggleButton {
19
19
  var displayName: string;
20
20
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pixpilot/shadcn-ui",
3
3
  "type": "module",
4
- "version": "3.9.0",
4
+ "version": "3.11.0",
5
5
  "description": "Custom UI components and utilities built with shadcn/ui.",
6
6
  "author": "m.doaie <m.doaie@hotmail.com>",
7
7
  "license": "MIT",
@@ -39,7 +39,7 @@
39
39
  "@modelcontextprotocol/sdk": "^1.29.0",
40
40
  "@pixpilot/hash": "^0.2.1",
41
41
  "@pixpilot/string": "^3.0.1",
42
- "@radix-ui/react-slot": "^1.2.4",
42
+ "@radix-ui/react-slot": "^1.3.3",
43
43
  "@tailwindcss/typography": "^0.5.19",
44
44
  "@tanstack/react-virtual": "^3.13.23",
45
45
  "@tiptap/core": "^3.22.3",
@@ -55,8 +55,8 @@
55
55
  "pretty-bytes": "^7.1.0",
56
56
  "react-responsive": "^10.0.1",
57
57
  "sonner": "2.0.7",
58
- "zod": "^4.3.6",
59
- "@pixpilot/shadcn": "2.1.0"
58
+ "zod": "^4.4.3",
59
+ "@pixpilot/shadcn": "2.2.0"
60
60
  },
61
61
  "devDependencies": {
62
62
  "@storybook/react": "^8.6.18",
@@ -72,13 +72,13 @@
72
72
  "tsdown": "^0.15.12",
73
73
  "tsx": "^4.21.0",
74
74
  "typescript": "^5.9.3",
75
- "@internal/eslint-config": "0.3.0",
76
- "@internal/mcp": "0.0.0",
77
75
  "@internal/hooks": "0.0.0",
76
+ "@internal/mcp": "0.0.0",
77
+ "@internal/eslint-config": "0.3.0",
78
78
  "@internal/prettier-config": "0.0.1",
79
79
  "@internal/tsconfig": "0.1.0",
80
- "@internal/vitest-config": "0.1.0",
81
- "@internal/tsdown-config": "0.1.0"
80
+ "@internal/tsdown-config": "0.1.0",
81
+ "@internal/vitest-config": "0.1.0"
82
82
  },
83
83
  "prettier": "@internal/prettier-config",
84
84
  "scripts": {