@imfusion/web-ui 0.6.4-dev.8.g41d03f2f → 0.6.4-dev.84.gbfc0d437

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 (139) hide show
  1. package/README.md +19 -55
  2. package/dist/assets/vendors/base-ui.d.ts +2 -3
  3. package/dist/breakpoints/min-width.d.ts +3 -7
  4. package/dist/breakpoints/registry.d.ts +3 -9
  5. package/dist/{code-Ce8uiPsv.js → code-D2lwxHgd.js} +15 -15
  6. package/dist/codegen/gen-breakpoints-css.d.ts +0 -4
  7. package/dist/codegen/gen-token-css.d.ts +0 -2
  8. package/dist/components/app-shell/app-shell.d.ts +7 -11
  9. package/dist/components/button/button.d.ts +7 -12
  10. package/dist/components/callout/callout.d.ts +11 -18
  11. package/dist/components/card/card.d.ts +11 -10
  12. package/dist/components/checkbox/checkbox.d.ts +2 -38
  13. package/dist/components/chip/chip.cva.d.ts +2 -4
  14. package/dist/components/chip/chip.d.ts +1 -1
  15. package/dist/components/code/code.d.ts +2 -2
  16. package/dist/components/collapsible/collapsible.d.ts +4 -35
  17. package/dist/components/copy-button/copy-button.d.ts +1 -1
  18. package/dist/components/drawer/drawer.d.ts +17 -100
  19. package/dist/components/field/field.d.ts +7 -67
  20. package/dist/components/fieldset/fieldset.d.ts +2 -15
  21. package/dist/components/icon/icon.d.ts +2 -2
  22. package/dist/components/input/input.d.ts +2 -8
  23. package/dist/components/logo/imfusion/imfusion.d.ts +2 -5
  24. package/dist/components/logo/imfusion/marks.d.ts +10 -0
  25. package/dist/components/logo/logo.d.ts +3 -3
  26. package/dist/components/navigation-menu/subs/flyout-link.d.ts +5 -19
  27. package/dist/components/navigation-menu/subs/inline-submenu.d.ts +2 -4
  28. package/dist/components/navigation-menu/subs/link.d.ts +6 -23
  29. package/dist/components/navigation-menu/subs/overlay.d.ts +6 -51
  30. package/dist/components/navigation-menu/subs/shared.d.ts +4 -14
  31. package/dist/components/navigation-menu/subs/structure.d.ts +7 -29
  32. package/dist/components/navigation-menu/subs/trigger.d.ts +11 -20
  33. package/dist/components/number-field/index.d.ts +2 -0
  34. package/dist/components/number-field/number-field.d.ts +72 -0
  35. package/dist/components/number-field/number-field.meta.d.ts +2 -0
  36. package/dist/components/popover/popover.d.ts +23 -98
  37. package/dist/components/row/row.d.ts +1 -1
  38. package/dist/components/select/select.d.ts +26 -189
  39. package/dist/components/separator/separator.d.ts +5 -4
  40. package/dist/components/slider/slider.d.ts +7 -77
  41. package/dist/components/spinner/spinner.d.ts +13 -8
  42. package/dist/components/stack/stack.d.ts +3 -4
  43. package/dist/components/switch/switch.d.ts +2 -31
  44. package/dist/components/table/table.d.ts +10 -18
  45. package/dist/components/tabs/tabs.d.ts +18 -52
  46. package/dist/components/toast/toast.d.ts +16 -103
  47. package/dist/components/toggle/toggle.d.ts +3 -21
  48. package/dist/components/toggle-group/toggle-group.d.ts +3 -20
  49. package/dist/components/tooltip/tooltip.d.ts +26 -85
  50. package/dist/components/typo/typo.d.ts +25 -25
  51. package/dist/docgen/gen-docgen.utils.d.ts +3 -4
  52. package/dist/hooks/use-color-scheme.d.ts +5 -11
  53. package/dist/hooks/use-media-query.d.ts +2 -7
  54. package/dist/{icons-Cy1HAosO.js → icons-CaGCCwG-.js} +7 -7
  55. package/dist/icons.js +1 -1
  56. package/dist/index.d.ts +1 -0
  57. package/dist/index.js +1486 -1368
  58. package/dist/integrations/code-highlight/highlighter.d.ts +1 -56
  59. package/dist/integrations/code-highlight.js +41 -189
  60. package/dist/integrations/image-display-options/image-display-options-view.utils.d.ts +0 -1
  61. package/dist/integrations/image-display-options.js +54 -54
  62. package/dist/llms/evals/runner/affected.d.ts +2 -0
  63. package/dist/llms/evals/runner/benchmark.d.ts +12 -0
  64. package/dist/llms/evals/runner/compare.d.ts +2 -0
  65. package/dist/llms/evals/runner/config.d.ts +29 -0
  66. package/dist/llms/evals/runner/evidence.d.ts +7 -0
  67. package/dist/llms/evals/runner/execute.d.ts +32 -0
  68. package/dist/llms/evals/runner/grade.d.ts +10 -0
  69. package/dist/llms/evals/runner/report-md.d.ts +2 -0
  70. package/dist/llms/evals/runner/report.d.ts +4 -0
  71. package/dist/llms/evals/runner/run.d.ts +2 -0
  72. package/dist/llms/evals/runner/scenario.d.ts +3 -0
  73. package/dist/llms/evals/runner/types.d.ts +140 -0
  74. package/dist/llms/evals/runner/workspace.d.ts +2 -0
  75. package/dist/llms/evals/runner/write-generated.d.ts +1 -0
  76. package/dist/provider/web-ui-provider.d.ts +4 -1
  77. package/dist/style.css +1 -1
  78. package/dist/{tabs-DIe1Utiy.js → tabs-By5ir2pt.js} +162 -159
  79. package/dist/tokens/apply.d.ts +4 -9
  80. package/dist/tokens/control-registry.d.ts +3 -6
  81. package/dist/tokens/types.d.ts +7 -24
  82. package/dist/tokens/use-token-controls.d.ts +3 -12
  83. package/dist/types/meta.d.ts +15 -32
  84. package/dist/utils/index.d.ts +1 -0
  85. package/dist/utils/resolve-state-props.d.ts +4 -0
  86. package/dist/vite/brand-assets.d.ts +3 -0
  87. package/dist/vite/index.d.ts +2 -0
  88. package/dist/vite/readable-css-module-names.d.ts +11 -0
  89. package/dist/vite.js +55 -0
  90. package/dist/web-ui-cli.js +322 -0
  91. package/docs/user-guide/AgentTooling.mdx +127 -0
  92. package/docs/user-guide/BrandAssets.mdx +102 -0
  93. package/docs/user-guide/Changelog.mdx +23 -0
  94. package/docs/user-guide/GettingStarted.mdx +70 -0
  95. package/docs/user-guide/HowItsBuilt.mdx +113 -0
  96. package/docs/user-guide/Tokens.mdx +87 -0
  97. package/docs/user-guide/UsagePatterns.mdx +122 -0
  98. package/package.json +27 -22
  99. package/src/assets/public/favicon/apple-touch-icon.png +0 -0
  100. package/src/assets/public/favicon/favicon-16.png +0 -0
  101. package/src/assets/public/favicon/favicon-32.png +0 -0
  102. package/src/assets/public/favicon/favicon.ico +0 -0
  103. package/src/assets/public/favicon/favicon.svg +7 -0
  104. package/src/assets/public/favicon/icon-192.png +0 -0
  105. package/src/assets/public/favicon/icon-512.png +0 -0
  106. package/src/assets/public/favicon/og-image.png +0 -0
  107. package/src/assets/public/spinner/imfusion-spinner-black.webp +0 -0
  108. package/src/assets/public/spinner/imfusion-spinner-blue.webp +0 -0
  109. package/src/assets/public/spinner/imfusion-spinner-white.webp +0 -0
  110. package/src/docgen/doc.gen.json +3255 -603
  111. package/src/llms/install-templates/AGENTS.md +4 -4
  112. package/src/llms/install-templates/hooks/baseline-staleness.sh +9 -2
  113. package/src/llms/llms.gen.txt +7 -1
  114. package/src/llms/skills/imf-web-ui/SKILL.md +44 -21
  115. package/src/llms/skills/imf-web-ui-audit/SKILL.md +25 -11
  116. package/src/llms/skills/imf-web-ui-components/SKILL.md +4 -1
  117. package/src/llms/skills/imf-web-ui-conventions/SKILL.md +2 -2
  118. package/src/llms/skills/imf-web-ui-conventions/templates/AUDIT_CHECKLIST.md +0 -1
  119. package/src/llms/skills/imf-web-ui-conventions/templates/REPORT.md +21 -2
  120. package/src/llms/skills/imf-web-ui-conventions/topics/agent-tooling.md +15 -10
  121. package/src/llms/skills/imf-web-ui-conventions/topics/assets.md +7 -4
  122. package/src/llms/skills/imf-web-ui-conventions/topics/data.md +3 -1
  123. package/src/llms/skills/imf-web-ui-conventions/topics/docs-structure.md +2 -2
  124. package/src/llms/skills/imf-web-ui-conventions/topics/git.md +4 -2
  125. package/src/llms/skills/imf-web-ui-conventions/topics/library-setup.md +10 -1
  126. package/src/llms/skills/imf-web-ui-conventions/topics/styling.md +2 -2
  127. package/src/llms/skills/imf-web-ui-conventions/topics/tokens.md +4 -2
  128. package/src/llms/skills/imf-web-ui-conventions/topics/tooling.md +13 -11
  129. package/src/llms/skills/imf-web-ui-setup/SKILL.md +17 -9
  130. package/src/llms/skills/imf-web-ui-update/SKILL.md +36 -14
  131. package/src/llms/skills/imf-web-ui-ux/SKILL.md +5 -3
  132. package/src/llms/tokens.gen.json +71 -7
  133. package/bin/install.js +0 -446
  134. package/dist/build/vite-css-module-names/index.d.ts +0 -20
  135. package/dist/build/vite-css-module-names.js +0 -17
  136. package/dist/components/spinner/spinner.geometry.d.ts +0 -37
  137. package/dist/integrations/code-highlight/languages/cmake.d.ts +0 -1
  138. package/dist/integrations/code-highlight/languages/cpp.d.ts +0 -1
  139. /package/dist/{meta-CySnRuVp.js → meta-j-7HGrWv.js} +0 -0
@@ -1,20 +1,10 @@
1
1
  import { NavigationMenu as NavigationMenuPrimitive } from '@base-ui/react/navigation-menu';
2
2
  /**
3
- * Shared upstream type aliases for the NavigationMenu sub-parts. Each sub-part
4
- * file lives beside its own `.module.css`; these Base UI prop types are the one
5
- * thing they all reference, so they live here rather than being restated.
3
+ * Upstream types for the NavigationMenu parts that add Web UI props on top, and
4
+ * the orientation union those parts share. A part that only passes upstream
5
+ * props through annotates them inline instead.
6
6
  */
7
- export type UpstreamRoot = React.ComponentProps<typeof NavigationMenuPrimitive.Root>;
8
- export type UpstreamList = React.ComponentProps<typeof NavigationMenuPrimitive.List>;
9
- export type UpstreamItem = React.ComponentProps<typeof NavigationMenuPrimitive.Item>;
7
+ export type UpstreamRoot<Value = unknown> = React.ComponentProps<typeof NavigationMenuPrimitive.Root<Value>>;
10
8
  export type UpstreamTrigger = React.ComponentProps<typeof NavigationMenuPrimitive.Trigger>;
11
- export type UpstreamIcon = React.ComponentProps<typeof NavigationMenuPrimitive.Icon>;
12
- export type UpstreamContent = React.ComponentProps<typeof NavigationMenuPrimitive.Content>;
13
9
  export type UpstreamLink = React.ComponentProps<typeof NavigationMenuPrimitive.Link>;
14
- export type UpstreamPortal = React.ComponentProps<typeof NavigationMenuPrimitive.Portal>;
15
- export type UpstreamPositioner = React.ComponentProps<typeof NavigationMenuPrimitive.Positioner>;
16
- export type UpstreamPopup = React.ComponentProps<typeof NavigationMenuPrimitive.Popup>;
17
- export type UpstreamViewport = React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>;
18
- export type UpstreamArrow = React.ComponentProps<typeof NavigationMenuPrimitive.Arrow>;
19
- export type UpstreamBackdrop = React.ComponentProps<typeof NavigationMenuPrimitive.Backdrop>;
20
10
  export type Orientation = "horizontal" | "vertical";
@@ -1,15 +1,13 @@
1
1
  import { NavigationMenu as NavigationMenuPrimitive } from '@base-ui/react/navigation-menu';
2
- import { Orientation, UpstreamContent, UpstreamItem, UpstreamList, UpstreamRoot, UpstreamViewport } from './shared';
3
- type RootProps<Value = unknown> = Omit<React.ComponentProps<typeof NavigationMenuPrimitive.Root<Value>>, "className" | "orientation"> & {
2
+ import { Orientation, UpstreamRoot } from './shared';
3
+ interface RootProps<Value = unknown> extends Omit<UpstreamRoot<Value>, "orientation"> {
4
4
  /**
5
5
  * Layout of the menu. `horizontal` is a top nav bar; `vertical` stacks the
6
6
  * whole menu into a side rail with flyouts opening to the side.
7
7
  * @default 'horizontal'
8
8
  */
9
9
  orientation?: Orientation;
10
- className?: UpstreamRoot["className"];
11
- render?: UpstreamRoot["render"];
12
- };
10
+ }
13
11
  /**
14
12
  * NavigationMenu.Root — groups all parts and manages which item is open.
15
13
  * Renders a `<nav>`.
@@ -21,43 +19,23 @@ export declare function Root<Value = unknown>({ orientation, className, ...props
21
19
  export declare namespace Root {
22
20
  var displayName: string;
23
21
  }
24
- type ListProps = Omit<React.HTMLAttributes<HTMLUListElement>, "className"> & {
25
- className?: UpstreamList["className"];
26
- render?: UpstreamList["render"];
27
- };
28
22
  /** NavigationMenu.List — the strip of items. Renders a `<ul>`. */
29
- export declare function List({ className, ...props }: ListProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function List(props: React.ComponentProps<typeof NavigationMenuPrimitive.List>): import("react/jsx-runtime").JSX.Element;
30
24
  export declare namespace List {
31
25
  var displayName: string;
32
26
  }
33
- type ItemProps = Omit<React.LiHTMLAttributes<HTMLLIElement>, "className"> & {
34
- /** Unique identifier for controlled use; auto-generated when omitted. */
35
- value?: UpstreamItem["value"];
36
- className?: UpstreamItem["className"];
37
- render?: UpstreamItem["render"];
38
- };
39
27
  /** NavigationMenu.Item — a single item in the list. Renders a `<li>`. */
40
- export declare function Item({ className, ...props }: ItemProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function Item(props: React.ComponentProps<typeof NavigationMenuPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
41
29
  export declare namespace Item {
42
30
  var displayName: string;
43
31
  }
44
- type ContentProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
45
- /** @default false */
46
- keepMounted?: UpstreamContent["keepMounted"];
47
- className?: UpstreamContent["className"];
48
- render?: UpstreamContent["render"];
49
- };
50
32
  /** NavigationMenu.Content — an item's flyout body; moved into the shared Popup when active. Renders a `<div>`. */
51
- export declare function Content({ className, ...props }: ContentProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function Content(props: React.ComponentProps<typeof NavigationMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
52
34
  export declare namespace Content {
53
35
  var displayName: string;
54
36
  }
55
- type ViewportProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
56
- className?: UpstreamViewport["className"];
57
- render?: UpstreamViewport["render"];
58
- };
59
37
  /** NavigationMenu.Viewport — clips the current content for direction-aware transitions. Renders a `<div>`. */
60
- export declare function Viewport({ className, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
38
+ export declare function Viewport(props: React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>): import("react/jsx-runtime").JSX.Element;
61
39
  export declare namespace Viewport {
62
40
  var displayName: string;
63
41
  }
@@ -1,10 +1,10 @@
1
- import { UpstreamIcon, UpstreamTrigger } from './shared';
2
- type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
1
+ import { NavigationMenu as NavigationMenuPrimitive } from '@base-ui/react/navigation-menu';
2
+ import { UpstreamTrigger } from './shared';
3
+ interface TriggerProps extends UpstreamTrigger {
3
4
  /**
4
- * Marks this section as the current page so it shows the active treatment even
5
- * when its flyout is closed — the "active trail" anchor for a nav where the
6
- * open section isn't the current one. Base UI's Trigger has no active state of
7
- * its own, so this stamps `data-active`.
5
+ * Marks this section as the current page, showing the active treatment even when its
6
+ * flyout is closed. Base UI's Trigger has no active state of its own, so this stamps
7
+ * `data-active`.
8
8
  * @default false
9
9
  */
10
10
  active?: boolean;
@@ -20,27 +20,18 @@ type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "classNa
20
20
  * @default false
21
21
  */
22
22
  nested?: boolean;
23
- /** @default true */
24
- nativeButton?: UpstreamTrigger["nativeButton"];
25
- className?: UpstreamTrigger["className"];
26
- render?: UpstreamTrigger["render"];
27
- };
23
+ }
28
24
  /**
29
25
  * NavigationMenu.Trigger — opens an item's flyout on hover or click. Renders a
30
- * `<button>`. Ships a built-in `ChevronDown` (rotates when open) so consumers
31
- * don't hand-author an indicator; pass `hideChevron` to supply a custom `Icon`,
32
- * and `nested` when the trigger opens a submenu from inside another flyout.
26
+ * `<button>` with a built-in `ChevronDown` that rotates when open; pass
27
+ * `hideChevron` for a custom `Icon`, and `nested` for a trigger inside a flyout.
33
28
  */
34
- export declare function Trigger({ active, hideChevron, nested, children, className, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
29
+ export declare function Trigger({ active, hideChevron, nested, children, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
35
30
  export declare namespace Trigger {
36
31
  var displayName: string;
37
32
  }
38
- type IconProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className"> & {
39
- className?: UpstreamIcon["className"];
40
- render?: UpstreamIcon["render"];
41
- };
42
33
  /** NavigationMenu.Icon — a chevron/marker that rotates when its trigger is open. Renders a `<span>`. */
43
- export declare function Icon({ className, ...props }: IconProps): import("react/jsx-runtime").JSX.Element;
34
+ export declare function Icon(props: React.ComponentProps<typeof NavigationMenuPrimitive.Icon>): import("react/jsx-runtime").JSX.Element;
44
35
  export declare namespace Icon {
45
36
  var displayName: string;
46
37
  }
@@ -0,0 +1,2 @@
1
+ export * as NumberField from './number-field';
2
+ export { numberFieldMeta } from './number-field.meta';
@@ -0,0 +1,72 @@
1
+ import { NumberField as NumberFieldPrimitive } from '@base-ui/react/number-field';
2
+ import { VariantProps } from 'class-variance-authority';
3
+ declare const numberFieldRoot: (props?: ({
4
+ width?: "auto" | "full" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ declare const numberFieldGroup: (props?: ({
7
+ variant?: "primary" | "outline" | "ghost" | "filled" | null | undefined;
8
+ size?: "sm" | "md" | "lg" | null | undefined;
9
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
10
+ interface RootProps extends React.ComponentProps<typeof NumberFieldPrimitive.Root> {
11
+ /** Width behavior: `auto` uses intrinsic width; `full` fills the parent. @default "auto" */
12
+ width?: VariantProps<typeof numberFieldRoot>["width"];
13
+ }
14
+ export declare function Root({ width, step, format, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare namespace Root {
16
+ var displayName: string;
17
+ }
18
+ interface GroupProps extends React.ComponentProps<typeof NumberFieldPrimitive.Group>, VariantProps<typeof numberFieldGroup> {
19
+ }
20
+ /** NumberField.Group — bordered box grouping the input with the stepper controls. */
21
+ export declare function Group({ variant, size, ...props }: GroupProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare namespace Group {
23
+ var displayName: string;
24
+ }
25
+ /** NumberField.Input — transparent, borderless mono numeric field. */
26
+ export declare function Input(props: React.ComponentProps<typeof NumberFieldPrimitive.Input>): import("react/jsx-runtime").JSX.Element;
27
+ export declare namespace Input {
28
+ var displayName: string;
29
+ }
30
+ /** NumberField.Increment — full-height square control that increases the value. */
31
+ export declare function Increment(props: React.ComponentProps<typeof NumberFieldPrimitive.Increment>): import("react/jsx-runtime").JSX.Element;
32
+ export declare namespace Increment {
33
+ var displayName: string;
34
+ }
35
+ /** NumberField.Decrement — full-height square control that decreases the value. */
36
+ export declare function Decrement(props: React.ComponentProps<typeof NumberFieldPrimitive.Decrement>): import("react/jsx-runtime").JSX.Element;
37
+ export declare namespace Decrement {
38
+ var displayName: string;
39
+ }
40
+ /** NumberField.ScrubArea — draggable region that scrubs the value on pointer move. */
41
+ export declare function ScrubArea(props: React.ComponentProps<typeof NumberFieldPrimitive.ScrubArea>): import("react/jsx-runtime").JSX.Element;
42
+ export declare namespace ScrubArea {
43
+ var displayName: string;
44
+ }
45
+ /** NumberField.ScrubAreaCursor — virtual cursor shown while scrubbing under pointer lock. */
46
+ export declare function ScrubAreaCursor(props: React.ComponentProps<typeof NumberFieldPrimitive.ScrubAreaCursor>): import("react/jsx-runtime").JSX.Element;
47
+ export declare namespace ScrubAreaCursor {
48
+ var displayName: string;
49
+ }
50
+ interface StepperProps extends RootProps, VariantProps<typeof numberFieldGroup> {
51
+ /** Control placement relative to the input. @default "trailing" */
52
+ layout?: "trailing" | "flanking";
53
+ /** Surface treatment applied to the group. @default "outline" */
54
+ variant?: "outline" | "primary" | "filled" | "ghost";
55
+ /** Control height, matching Input's scale. @default "md" */
56
+ size?: "sm" | "md" | "lg";
57
+ /**
58
+ * Drag handle rendered above the field: press and move sideways to change the value, usually
59
+ * the field's label. The scrub cursor is supplied automatically.
60
+ */
61
+ scrub?: React.ReactNode;
62
+ }
63
+ /**
64
+ * NumberField.Stepper — pre-composed Root → Group → Input + controls. Use the
65
+ * individual parts instead when a custom composition (e.g. with `Field` or
66
+ * `ScrubArea`) is needed.
67
+ */
68
+ export declare function Stepper({ layout, variant, size, width, scrub, ...props }: StepperProps): import("react/jsx-runtime").JSX.Element;
69
+ export declare namespace Stepper {
70
+ var displayName: string;
71
+ }
72
+ export {};
@@ -0,0 +1,2 @@
1
+ import { ComponentMeta } from '../../types/meta';
2
+ export declare const numberFieldMeta: ComponentMeta;
@@ -1,14 +1,12 @@
1
1
  import { Popover as PopoverPrimitive } from '@base-ui/react/popover';
2
- type UpstreamTrigger = React.ComponentProps<typeof PopoverPrimitive.Trigger>;
3
- type UpstreamPortal = React.ComponentProps<typeof PopoverPrimitive.Portal>;
4
- type UpstreamBackdrop = React.ComponentProps<typeof PopoverPrimitive.Backdrop>;
5
- type UpstreamPositioner = React.ComponentProps<typeof PopoverPrimitive.Positioner>;
6
- type UpstreamPopup = React.ComponentProps<typeof PopoverPrimitive.Popup>;
7
- type UpstreamArrow = React.ComponentProps<typeof PopoverPrimitive.Arrow>;
8
- type UpstreamViewport = React.ComponentProps<typeof PopoverPrimitive.Viewport>;
9
- type UpstreamTitle = React.ComponentProps<typeof PopoverPrimitive.Title>;
10
- type UpstreamDescription = React.ComponentProps<typeof PopoverPrimitive.Description>;
11
- type UpstreamClose = React.ComponentProps<typeof PopoverPrimitive.Close>;
2
+ import { VariantProps } from 'class-variance-authority';
3
+ declare const popoverTrigger: (props?: ({
4
+ variant?: "primary" | "secondary" | "positive" | "negative" | "outline" | "ghost" | null | undefined;
5
+ inline?: boolean | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ declare const popoverPopup: (props?: ({
8
+ variant?: "primary" | "secondary" | "positive" | "negative" | "outline" | "ghost" | null | undefined;
9
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
12
10
  export declare const createHandle: typeof PopoverPrimitive.createHandle;
13
11
  type RootProps<Payload = unknown> = React.ComponentProps<typeof PopoverPrimitive.Root<Payload>>;
14
12
  /**
@@ -21,135 +19,62 @@ export declare function Root<Payload = unknown>(props: RootProps<Payload>): impo
21
19
  export declare namespace Root {
22
20
  var displayName: string;
23
21
  }
24
- type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
25
- variant?: "ghost" | "outline" | "primary" | "secondary" | "positive" | "negative";
26
- inline?: boolean;
27
- /** @default true */
28
- nativeButton?: UpstreamTrigger["nativeButton"];
29
- /** @default false */
30
- openOnHover?: UpstreamTrigger["openOnHover"];
31
- /** @default 300 */
32
- delay?: UpstreamTrigger["delay"];
33
- /** @default 0 */
34
- closeDelay?: UpstreamTrigger["closeDelay"];
35
- handle?: UpstreamTrigger["handle"];
36
- payload?: UpstreamTrigger["payload"];
37
- className?: UpstreamTrigger["className"];
38
- render?: UpstreamTrigger["render"];
39
- };
40
22
  /** Popover.Trigger — button that opens the popover. */
41
- export declare function Trigger({ variant, inline, className, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function Trigger({ variant, inline, ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger> & VariantProps<typeof popoverTrigger>): import("react/jsx-runtime").JSX.Element;
42
24
  export declare namespace Trigger {
43
25
  var displayName: string;
44
26
  }
45
- type PortalProps = {
46
- container?: UpstreamPortal["container"];
47
- /** @default false */
48
- keepMounted?: UpstreamPortal["keepMounted"];
49
- children?: UpstreamPortal["children"];
50
- };
51
27
  /** Popover.Portal — renders the positioner in a portal outside the main document flow. */
52
- export declare function Portal(props: PortalProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function Portal(props: React.ComponentProps<typeof PopoverPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
53
29
  export declare namespace Portal {
54
30
  var displayName: string;
55
31
  }
56
- type BackdropProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
57
- className?: UpstreamBackdrop["className"];
58
- render?: UpstreamBackdrop["render"];
59
- };
60
32
  /** Popover.Backdrop — overlay beneath the popover. Receives data-open/data-closed for transitions. */
61
- export declare function Backdrop({ className, ...props }: BackdropProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function Backdrop(props: React.ComponentProps<typeof PopoverPrimitive.Backdrop>): import("react/jsx-runtime").JSX.Element;
62
34
  export declare namespace Backdrop {
63
35
  var displayName: string;
64
36
  }
65
- type PositionerProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
66
- /** @default 'bottom' */
67
- side?: UpstreamPositioner["side"];
68
- /** @default 'center' */
69
- align?: UpstreamPositioner["align"];
70
- /** @default 0 */
71
- sideOffset?: UpstreamPositioner["sideOffset"];
72
- /** @default 0 */
73
- alignOffset?: UpstreamPositioner["alignOffset"];
74
- /** @default 5 */
75
- arrowPadding?: UpstreamPositioner["arrowPadding"];
76
- anchor?: UpstreamPositioner["anchor"];
77
- /** @default false */
78
- disableAnchorTracking?: UpstreamPositioner["disableAnchorTracking"];
79
- collisionAvoidance?: UpstreamPositioner["collisionAvoidance"];
80
- /** @default 'clipping-ancestors' */
81
- collisionBoundary?: UpstreamPositioner["collisionBoundary"];
82
- /** @default 5 */
83
- collisionPadding?: UpstreamPositioner["collisionPadding"];
84
- /** @default false */
85
- sticky?: UpstreamPositioner["sticky"];
86
- className?: UpstreamPositioner["className"];
87
- render?: UpstreamPositioner["render"];
88
- };
89
37
  /** Popover.Positioner — positions the popup relative to the trigger via floating-point layout. */
90
- export declare function Positioner({ className, ...props }: PositionerProps): import("react/jsx-runtime").JSX.Element;
38
+ export declare function Positioner(props: React.ComponentProps<typeof PopoverPrimitive.Positioner>): import("react/jsx-runtime").JSX.Element;
91
39
  export declare namespace Positioner {
92
40
  var displayName: string;
93
41
  }
94
- type PopupProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
42
+ interface PopupProps extends React.ComponentProps<typeof PopoverPrimitive.Popup>, VariantProps<typeof popoverPopup> {
95
43
  /** Match to the Trigger variant to tint the popup border accordingly. */
96
- variant?: "ghost" | "outline" | "primary" | "secondary" | "positive" | "negative";
97
- className?: UpstreamPopup["className"];
98
- render?: UpstreamPopup["render"];
99
- };
44
+ variant?: VariantProps<typeof popoverPopup>["variant"];
45
+ }
100
46
  /** Popover.Popup — the visible surface of the popover. Token-mapped background, border, and shadow. */
101
- export declare function Popup({ className, variant, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare function Popup({ variant, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
102
48
  export declare namespace Popup {
103
49
  var displayName: string;
104
50
  }
105
- type ArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
106
- className?: UpstreamArrow["className"];
107
- render?: UpstreamArrow["render"];
108
- };
109
51
  /** Popover.Arrow — visual pointer arrow anchored to the popup edge. Receives data-side for orientation. */
110
- export declare function Arrow({ className, ...props }: ArrowProps): import("react/jsx-runtime").JSX.Element;
52
+ export declare function Arrow(props: React.ComponentProps<typeof PopoverPrimitive.Arrow>): import("react/jsx-runtime").JSX.Element;
111
53
  export declare namespace Arrow {
112
54
  var displayName: string;
113
55
  }
114
- type ViewportProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
115
- className?: UpstreamViewport["className"];
116
- render?: UpstreamViewport["render"];
117
- };
118
56
  /** Popover.Viewport — content wrapper that supports direction-aware animations. */
119
- export declare function Viewport({ className, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
57
+ export declare function Viewport(props: React.ComponentProps<typeof PopoverPrimitive.Viewport>): import("react/jsx-runtime").JSX.Element;
120
58
  export declare namespace Viewport {
121
59
  var displayName: string;
122
60
  }
123
- type EyebrowProps = React.HTMLAttributes<HTMLParagraphElement>;
124
61
  /** Popover.Eyebrow — small uppercase label above Title, for a category or kicker (e.g. "Glossary definition"). */
125
- export declare function Eyebrow({ className, ...props }: EyebrowProps): import("react/jsx-runtime").JSX.Element;
62
+ export declare function Eyebrow(props: React.HTMLAttributes<HTMLParagraphElement>): import("react/jsx-runtime").JSX.Element;
126
63
  export declare namespace Eyebrow {
127
64
  var displayName: string;
128
65
  }
129
- type TitleProps = React.HTMLAttributes<HTMLHeadingElement> & {
130
- render?: UpstreamTitle["render"];
131
- };
132
66
  /** Popover.Title — semantic heading for the popover's accessible name. */
133
- export declare function Title({ className, ...props }: TitleProps): import("react/jsx-runtime").JSX.Element;
67
+ export declare function Title(props: React.ComponentProps<typeof PopoverPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
134
68
  export declare namespace Title {
135
69
  var displayName: string;
136
70
  }
137
- type DescriptionProps = React.HTMLAttributes<HTMLParagraphElement> & {
138
- render?: UpstreamDescription["render"];
139
- };
140
71
  /** Popover.Description — supplementary paragraph for the popover's accessible description. */
141
- export declare function Description({ className, ...props }: DescriptionProps): import("react/jsx-runtime").JSX.Element;
72
+ export declare function Description(props: React.ComponentProps<typeof PopoverPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
142
73
  export declare namespace Description {
143
74
  var displayName: string;
144
75
  }
145
- type CloseProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
146
- /** @default true */
147
- nativeButton?: UpstreamClose["nativeButton"];
148
- className?: UpstreamClose["className"];
149
- render?: UpstreamClose["render"];
150
- };
151
76
  /** Popover.Close — button that dismisses the popover. */
152
- export declare function Close({ className, ...props }: CloseProps): import("react/jsx-runtime").JSX.Element;
77
+ export declare function Close(props: React.ComponentProps<typeof PopoverPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
153
78
  export declare namespace Close {
154
79
  var displayName: string;
155
80
  }
@@ -163,7 +88,7 @@ type InlineProps = {
163
88
  /** Hover delay in ms before the popover opens. @default 150 */
164
89
  delay?: number;
165
90
  /** Which side of the trigger the popup appears on. @default 'top' */
166
- side?: UpstreamPositioner["side"];
91
+ side?: React.ComponentProps<typeof PopoverPrimitive.Positioner>["side"];
167
92
  /** Gap between trigger and popup in px. @default 6 */
168
93
  sideOffset?: number;
169
94
  };
@@ -24,5 +24,5 @@ type Props = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof row> & {
24
24
  *
25
25
  * @see https://mantine.dev/core/group/
26
26
  */
27
- export declare function Row({ gap, align, justify, wrap, className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
27
+ export declare function Row({ gap, align, justify, wrap, ...props }: Props): import("react/jsx-runtime").JSX.Element;
28
28
  export {};