@blocknote/shadcn 0.13.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 (75) hide show
  1. package/LICENSE +373 -0
  2. package/dist/blocknote-shadcn.js +1881 -0
  3. package/dist/blocknote-shadcn.js.map +1 -0
  4. package/dist/blocknote-shadcn.umd.cjs +28 -0
  5. package/dist/blocknote-shadcn.umd.cjs.map +1 -0
  6. package/dist/style.css +1 -0
  7. package/dist/webpack-stats.json +1 -0
  8. package/package.json +104 -0
  9. package/src/ShadCNComponentsContext.tsx +39 -0
  10. package/src/components/ui/badge.tsx +36 -0
  11. package/src/components/ui/button.tsx +56 -0
  12. package/src/components/ui/card.tsx +86 -0
  13. package/src/components/ui/dropdown-menu.tsx +195 -0
  14. package/src/components/ui/form.tsx +176 -0
  15. package/src/components/ui/input.tsx +24 -0
  16. package/src/components/ui/label.tsx +24 -0
  17. package/src/components/ui/popover.tsx +29 -0
  18. package/src/components/ui/select.tsx +152 -0
  19. package/src/components/ui/tabs.tsx +53 -0
  20. package/src/components/ui/toggle.tsx +43 -0
  21. package/src/components/ui/tooltip.tsx +28 -0
  22. package/src/form/Form.tsx +21 -0
  23. package/src/form/TextInput.tsx +61 -0
  24. package/src/index.tsx +122 -0
  25. package/src/lib/utils.ts +6 -0
  26. package/src/menu/Menu.tsx +212 -0
  27. package/src/panel/Panel.tsx +54 -0
  28. package/src/panel/PanelButton.tsx +27 -0
  29. package/src/panel/PanelFileInput.tsx +27 -0
  30. package/src/panel/PanelTab.tsx +25 -0
  31. package/src/panel/PanelTextInput.tsx +29 -0
  32. package/src/popover/popover.tsx +69 -0
  33. package/src/sideMenu/SideMenu.tsx +18 -0
  34. package/src/sideMenu/SideMenuButton.tsx +45 -0
  35. package/src/style.css +109 -0
  36. package/src/suggestionMenu/SuggestionMenu.tsx +28 -0
  37. package/src/suggestionMenu/SuggestionMenuEmptyItem.tsx +26 -0
  38. package/src/suggestionMenu/SuggestionMenuItem.tsx +47 -0
  39. package/src/suggestionMenu/SuggestionMenuLabel.tsx +22 -0
  40. package/src/suggestionMenu/SuggestionMenuLoader.tsx +18 -0
  41. package/src/tableHandle/TableHandle.tsx +43 -0
  42. package/src/toolbar/Toolbar.tsx +153 -0
  43. package/types/src/ShadCNComponentsContext.d.ts +56 -0
  44. package/types/src/components/ui/badge.d.ts +9 -0
  45. package/types/src/components/ui/button.d.ts +11 -0
  46. package/types/src/components/ui/card.d.ts +8 -0
  47. package/types/src/components/ui/dropdown-menu.d.ts +27 -0
  48. package/types/src/components/ui/form.d.ts +23 -0
  49. package/types/src/components/ui/input.d.ts +4 -0
  50. package/types/src/components/ui/label.d.ts +5 -0
  51. package/types/src/components/ui/popover.d.ts +6 -0
  52. package/types/src/components/ui/select.d.ts +13 -0
  53. package/types/src/components/ui/tabs.d.ts +7 -0
  54. package/types/src/components/ui/toggle.d.ts +12 -0
  55. package/types/src/components/ui/tooltip.d.ts +7 -0
  56. package/types/src/form/Form.d.ts +2 -0
  57. package/types/src/form/TextInput.d.ts +13 -0
  58. package/types/src/index.d.ts +12 -0
  59. package/types/src/lib/utils.d.ts +2 -0
  60. package/types/src/menu/Menu.d.ts +24 -0
  61. package/types/src/panel/Panel.d.ts +12 -0
  62. package/types/src/panel/PanelButton.d.ts +11 -0
  63. package/types/src/panel/PanelFileInput.d.ts +7 -0
  64. package/types/src/panel/PanelTab.d.ts +5 -0
  65. package/types/src/panel/PanelTextInput.d.ts +8 -0
  66. package/types/src/popover/popover.d.ts +11 -0
  67. package/types/src/sideMenu/SideMenu.d.ts +5 -0
  68. package/types/src/sideMenu/SideMenuButton.d.ts +15 -0
  69. package/types/src/suggestionMenu/SuggestionMenu.d.ts +6 -0
  70. package/types/src/suggestionMenu/SuggestionMenuEmptyItem.d.ts +5 -0
  71. package/types/src/suggestionMenu/SuggestionMenuItem.d.ts +8 -0
  72. package/types/src/suggestionMenu/SuggestionMenuLabel.d.ts +5 -0
  73. package/types/src/suggestionMenu/SuggestionMenuLoader.d.ts +5 -0
  74. package/types/src/tableHandle/TableHandle.d.ts +14 -0
  75. package/types/src/toolbar/Toolbar.d.ts +25 -0
@@ -0,0 +1,153 @@
1
+ import { ComponentProps } from "@blocknote/react";
2
+ import { forwardRef } from "react";
3
+
4
+ import { assertEmpty } from "@blocknote/core";
5
+ import { useShadCNComponentsContext } from "../ShadCNComponentsContext";
6
+ import { cn } from "../lib/utils";
7
+
8
+ type ToolbarProps = ComponentProps["FormattingToolbar"]["Root"] &
9
+ ComponentProps["LinkToolbar"]["Root"];
10
+
11
+ export const Toolbar = forwardRef<HTMLDivElement, ToolbarProps>(
12
+ (props, ref) => {
13
+ const { className, children, onMouseEnter, onMouseLeave, ...rest } = props;
14
+
15
+ assertEmpty(rest);
16
+
17
+ const ShadCNComponents = useShadCNComponentsContext()!;
18
+
19
+ return (
20
+ <ShadCNComponents.Tooltip.TooltipProvider delayDuration={0}>
21
+ <div
22
+ className={cn(
23
+ className,
24
+ "flex gap-1 p-1 bg-popover text-popover-foreground border rounded-lg shadow-md"
25
+ )}
26
+ ref={ref}
27
+ onMouseEnter={onMouseEnter}
28
+ onMouseLeave={onMouseLeave}>
29
+ {children}
30
+ </div>
31
+ </ShadCNComponents.Tooltip.TooltipProvider>
32
+ );
33
+ }
34
+ );
35
+
36
+ type ToolbarButtonProps = ComponentProps["FormattingToolbar"]["Button"] &
37
+ ComponentProps["LinkToolbar"]["Button"];
38
+
39
+ export const ToolbarButton = forwardRef<HTMLButtonElement, ToolbarButtonProps>(
40
+ (props, ref) => {
41
+ const {
42
+ className,
43
+ children,
44
+ mainTooltip,
45
+ secondaryTooltip,
46
+ icon,
47
+ isSelected,
48
+ isDisabled,
49
+ onClick,
50
+ label,
51
+ ...rest
52
+ } = props;
53
+
54
+ // false, because rest props can be added by shadcn when button is used as a trigger
55
+ // assertEmpty in this case is only used at typescript level, not runtime level
56
+ assertEmpty(rest, false);
57
+
58
+ const ShadCNComponents = useShadCNComponentsContext()!;
59
+
60
+ const trigger =
61
+ isSelected === undefined ? (
62
+ <ShadCNComponents.Button.Button
63
+ className={className}
64
+ variant="ghost"
65
+ disabled={isDisabled}
66
+ onClick={onClick}
67
+ ref={ref}
68
+ aria-label={label}
69
+ {...rest}>
70
+ {icon}
71
+ {children}
72
+ </ShadCNComponents.Button.Button>
73
+ ) : (
74
+ <ShadCNComponents.Toggle.Toggle
75
+ className={cn(
76
+ className,
77
+ "data-[state=open]:bg-accent data-[state=closed]:text-accent-foreground"
78
+ )}
79
+ aria-label={label}
80
+ onClick={onClick}
81
+ pressed={isSelected}
82
+ disabled={isDisabled}
83
+ data-state={isSelected ? "on" : "off"}
84
+ data-disabled={isDisabled}
85
+ ref={ref}
86
+ {...rest}>
87
+ {icon}
88
+ {children}
89
+ </ShadCNComponents.Toggle.Toggle>
90
+ );
91
+
92
+ return (
93
+ <ShadCNComponents.Tooltip.Tooltip>
94
+ <ShadCNComponents.Tooltip.TooltipTrigger asChild>
95
+ {trigger}
96
+ </ShadCNComponents.Tooltip.TooltipTrigger>
97
+ <ShadCNComponents.Tooltip.TooltipContent
98
+ className={"flex flex-col items-center"}>
99
+ <span>{mainTooltip}</span>
100
+ {secondaryTooltip && <span>{secondaryTooltip}</span>}
101
+ </ShadCNComponents.Tooltip.TooltipContent>
102
+ </ShadCNComponents.Tooltip.Tooltip>
103
+ );
104
+ }
105
+ );
106
+
107
+ export const ToolbarSelect = forwardRef<
108
+ HTMLDivElement,
109
+ ComponentProps["FormattingToolbar"]["Select"]
110
+ >((props, ref) => {
111
+ const { className, items, isDisabled, ...rest } = props;
112
+
113
+ assertEmpty(rest);
114
+
115
+ const ShadCNComponents = useShadCNComponentsContext()!;
116
+
117
+ // TODO?
118
+ const SelectItemContent = (props: any) => (
119
+ <div className={"flex gap-1 items-center"}>
120
+ {props.icon}
121
+ {props.text}
122
+ </div>
123
+ );
124
+
125
+ const selectedItem = items.filter((p) => p.isSelected)[0];
126
+
127
+ if (!selectedItem) {
128
+ return null;
129
+ }
130
+
131
+ return (
132
+ <ShadCNComponents.Select.Select
133
+ value={selectedItem.text}
134
+ onValueChange={(value) =>
135
+ items.find((item) => item.text === value)!.onClick?.()
136
+ }
137
+ disabled={isDisabled}>
138
+ <ShadCNComponents.Select.SelectTrigger className={"border-none"}>
139
+ <ShadCNComponents.Select.SelectValue />
140
+ </ShadCNComponents.Select.SelectTrigger>
141
+ <ShadCNComponents.Select.SelectContent className={className} ref={ref}>
142
+ {items.map((item) => (
143
+ <ShadCNComponents.Select.SelectItem
144
+ disabled={item.isDisabled}
145
+ key={item.text}
146
+ value={item.text}>
147
+ <SelectItemContent {...item} />
148
+ </ShadCNComponents.Select.SelectItem>
149
+ ))}
150
+ </ShadCNComponents.Select.SelectContent>
151
+ </ShadCNComponents.Select.Select>
152
+ );
153
+ });
@@ -0,0 +1,56 @@
1
+ /// <reference types="react" />
2
+ import * as ShadCNBadge from "./components/ui/badge";
3
+ import * as ShadCNButton from "./components/ui/button";
4
+ import * as ShadCNCard from "./components/ui/card";
5
+ import * as ShadCNDropdownMenu from "./components/ui/dropdown-menu";
6
+ import * as ShadCNForm from "./components/ui/form";
7
+ import * as ShadCNInput from "./components/ui/input";
8
+ import * as ShadCNLabel from "./components/ui/label";
9
+ import * as ShadCNPopover from "./components/ui/popover";
10
+ import * as ShadCNSelect from "./components/ui/select";
11
+ import * as ShadCNTabs from "./components/ui/tabs";
12
+ import * as ShadCNToggle from "./components/ui/toggle";
13
+ import * as ShadCNTooltip from "./components/ui/tooltip";
14
+ export declare const ShadCNDefaultComponents: {
15
+ Badge: typeof ShadCNBadge;
16
+ Button: typeof ShadCNButton;
17
+ Card: typeof ShadCNCard;
18
+ DropdownMenu: typeof ShadCNDropdownMenu;
19
+ Form: typeof ShadCNForm;
20
+ Input: typeof ShadCNInput;
21
+ Label: typeof ShadCNLabel;
22
+ Popover: typeof ShadCNPopover;
23
+ Select: typeof ShadCNSelect;
24
+ Tabs: typeof ShadCNTabs;
25
+ Toggle: typeof ShadCNToggle;
26
+ Tooltip: typeof ShadCNTooltip;
27
+ };
28
+ export type ShadCNComponents = typeof ShadCNDefaultComponents;
29
+ export declare const ShadCNComponentsContext: import("react").Context<{
30
+ Badge: typeof ShadCNBadge;
31
+ Button: typeof ShadCNButton;
32
+ Card: typeof ShadCNCard;
33
+ DropdownMenu: typeof ShadCNDropdownMenu;
34
+ Form: typeof ShadCNForm;
35
+ Input: typeof ShadCNInput;
36
+ Label: typeof ShadCNLabel;
37
+ Popover: typeof ShadCNPopover;
38
+ Select: typeof ShadCNSelect;
39
+ Tabs: typeof ShadCNTabs;
40
+ Toggle: typeof ShadCNToggle;
41
+ Tooltip: typeof ShadCNTooltip;
42
+ } | undefined>;
43
+ export declare function useShadCNComponentsContext(): {
44
+ Badge: typeof ShadCNBadge;
45
+ Button: typeof ShadCNButton;
46
+ Card: typeof ShadCNCard;
47
+ DropdownMenu: typeof ShadCNDropdownMenu;
48
+ Form: typeof ShadCNForm;
49
+ Input: typeof ShadCNInput;
50
+ Label: typeof ShadCNLabel;
51
+ Popover: typeof ShadCNPopover;
52
+ Select: typeof ShadCNSelect;
53
+ Tabs: typeof ShadCNTabs;
54
+ Toggle: typeof ShadCNToggle;
55
+ Tooltip: typeof ShadCNTooltip;
56
+ } | undefined;
@@ -0,0 +1,9 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const badgeVariants: (props?: ({
4
+ variant?: "default" | "secondary" | "destructive" | "outline" | null | undefined;
5
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
6
+ export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
7
+ }
8
+ declare function Badge({ className, variant, ...props }: BadgeProps): import("react/jsx-runtime").JSX.Element;
9
+ export { Badge, badgeVariants };
@@ -0,0 +1,11 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const buttonVariants: (props?: ({
4
+ variant?: "default" | "secondary" | "destructive" | "outline" | "link" | "ghost" | null | undefined;
5
+ size?: "default" | "sm" | "lg" | "icon" | null | undefined;
6
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
7
+ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
8
+ asChild?: boolean;
9
+ }
10
+ declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
11
+ export { Button, buttonVariants };
@@ -0,0 +1,8 @@
1
+ import * as React from "react";
2
+ declare const Card: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
3
+ declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
4
+ declare const CardTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLParagraphElement>>;
5
+ declare const CardDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
6
+ declare const CardContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
7
+ declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
8
+ export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent, };
@@ -0,0 +1,27 @@
1
+ import * as React from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ declare const DropdownMenu: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
4
+ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
5
+ declare const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
6
+ declare const DropdownMenuPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
7
+ declare const DropdownMenuSub: React.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
8
+ declare const DropdownMenuRadioGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
9
+ declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
10
+ inset?: boolean | undefined;
11
+ } & React.RefAttributes<HTMLDivElement>>;
12
+ declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
14
+ declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
15
+ inset?: boolean | undefined;
16
+ } & React.RefAttributes<HTMLDivElement>>;
17
+ declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
18
+ declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
20
+ inset?: boolean | undefined;
21
+ } & React.RefAttributes<HTMLDivElement>>;
22
+ declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
23
+ declare const DropdownMenuShortcut: {
24
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
25
+ displayName: string;
26
+ };
27
+ export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuRadioGroup, };
@@ -0,0 +1,23 @@
1
+ import * as React from "react";
2
+ import * as LabelPrimitive from "@radix-ui/react-label";
3
+ import { ControllerProps, FieldPath, FieldValues } from "react-hook-form";
4
+ declare const Form: <TFieldValues extends FieldValues, TContext = any, TTransformedValues extends FieldValues | undefined = undefined>(props: import("react-hook-form").FormProviderProps<TFieldValues, TContext, TTransformedValues>) => React.JSX.Element;
5
+ declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ ...props }: ControllerProps<TFieldValues, TName>) => import("react/jsx-runtime").JSX.Element;
6
+ declare const useFormField: () => {
7
+ invalid: boolean;
8
+ isDirty: boolean;
9
+ isTouched: boolean;
10
+ isValidating: boolean;
11
+ error?: import("react-hook-form").FieldError | undefined;
12
+ id: string;
13
+ name: string;
14
+ formItemId: string;
15
+ formDescriptionId: string;
16
+ formMessageId: string;
17
+ };
18
+ declare const FormItem: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const FormLabel: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & React.RefAttributes<HTMLLabelElement>>;
20
+ declare const FormControl: React.ForwardRefExoticComponent<Omit<import("@radix-ui/react-slot").SlotProps & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
21
+ declare const FormDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
22
+ declare const FormMessage: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
23
+ export { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField, };
@@ -0,0 +1,4 @@
1
+ import * as React from "react";
2
+ export type InputProps = React.InputHTMLAttributes<HTMLInputElement>;
3
+ declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
4
+ export { Input };
@@ -0,0 +1,5 @@
1
+ import * as React from "react";
2
+ import * as LabelPrimitive from "@radix-ui/react-label";
3
+ import { type VariantProps } from "class-variance-authority";
4
+ declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<(props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string> & React.RefAttributes<HTMLLabelElement>>;
5
+ export { Label };
@@ -0,0 +1,6 @@
1
+ import * as React from "react";
2
+ import * as PopoverPrimitive from "@radix-ui/react-popover";
3
+ declare const Popover: React.FC<PopoverPrimitive.PopoverProps>;
4
+ declare const PopoverTrigger: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React.RefAttributes<HTMLButtonElement>>;
5
+ declare const PopoverContent: React.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
6
+ export { Popover, PopoverTrigger, PopoverContent };
@@ -0,0 +1,13 @@
1
+ import * as React from "react";
2
+ import * as SelectPrimitive from "@radix-ui/react-select";
3
+ declare const Select: React.FC<SelectPrimitive.SelectProps>;
4
+ declare const SelectGroup: React.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React.RefAttributes<HTMLDivElement>>;
5
+ declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React.RefAttributes<HTMLSpanElement>>;
6
+ declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
7
+ declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ declare const SelectContent: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
+ declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
+ declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
12
+ declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectLabel, SelectItem, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, };
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ import * as TabsPrimitive from "@radix-ui/react-tabs";
3
+ declare const Tabs: React.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React.RefAttributes<HTMLDivElement>>;
4
+ declare const TabsList: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
+ declare const TabsTrigger: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
6
+ declare const TabsContent: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ export { Tabs, TabsList, TabsTrigger, TabsContent };
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import * as TogglePrimitive from "@radix-ui/react-toggle";
3
+ import { type VariantProps } from "class-variance-authority";
4
+ declare const toggleVariants: (props?: ({
5
+ variant?: "default" | "outline" | null | undefined;
6
+ size?: "default" | "sm" | "lg" | null | undefined;
7
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
8
+ declare const Toggle: React.ForwardRefExoticComponent<Omit<TogglePrimitive.ToggleProps & React.RefAttributes<HTMLButtonElement>, "ref"> & VariantProps<(props?: ({
9
+ variant?: "default" | "outline" | null | undefined;
10
+ size?: "default" | "sm" | "lg" | null | undefined;
11
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLButtonElement>>;
12
+ export { Toggle, toggleVariants };
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ import * as TooltipPrimitive from "@radix-ui/react-tooltip";
3
+ declare const TooltipProvider: React.FC<TooltipPrimitive.TooltipProviderProps>;
4
+ declare const Tooltip: React.FC<TooltipPrimitive.TooltipProps>;
5
+ declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
6
+ declare const TooltipContent: React.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
@@ -0,0 +1,2 @@
1
+ import { ComponentProps } from "@blocknote/react";
2
+ export declare const Form: (props: ComponentProps["Generic"]["Form"]["Root"]) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ export declare const TextInput: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ name: string;
5
+ label?: string | undefined;
6
+ icon: import("react").ReactNode;
7
+ autoFocus?: boolean | undefined;
8
+ placeholder: string;
9
+ value: string;
10
+ onKeyDown: (event: import("react").KeyboardEvent<HTMLInputElement>) => void;
11
+ onChange: (event: import("react").ChangeEvent<HTMLInputElement>) => void;
12
+ onSubmit?: (() => void) | undefined;
13
+ } & import("react").RefAttributes<unknown>>;
@@ -0,0 +1,12 @@
1
+ import { InlineContentSchema, StyleSchema } from "@blocknote/core";
2
+ import { BlockNoteViewRaw, Components } from "@blocknote/react";
3
+ import { ComponentProps } from "react";
4
+ import { ShadCNComponents } from "./ShadCNComponentsContext";
5
+ import "./style.css";
6
+ export declare const components: Components;
7
+ export declare const BlockNoteView: <BSchema extends Record<string, import("@blocknote/core").BlockConfig>, ISchema extends InlineContentSchema, SSchema extends StyleSchema>(props: ComponentProps<typeof BlockNoteViewRaw<BSchema, ISchema, SSchema>> & {
8
+ /**
9
+ * (optional)Provide your own shadcn component overrides
10
+ */
11
+ shadCNComponents?: Partial<ShadCNComponents>;
12
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type ClassValue } from "clsx";
2
+ export declare function cn(...inputs: ClassValue[]): string;
@@ -0,0 +1,24 @@
1
+ /// <reference types="react" />
2
+ import { ComponentProps } from "@blocknote/react";
3
+ export declare const Menu: (props: ComponentProps["Generic"]["Menu"]["Root"]) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const MenuTrigger: (props: ComponentProps["Generic"]["Menu"]["Trigger"]) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const MenuDropdown: import("react").ForwardRefExoticComponent<{
6
+ className?: string | undefined;
7
+ children?: import("react").ReactNode;
8
+ sub?: boolean | undefined;
9
+ } & import("react").RefAttributes<HTMLDivElement>>;
10
+ export declare const MenuItem: import("react").ForwardRefExoticComponent<{
11
+ className?: string | undefined;
12
+ children?: import("react").ReactNode;
13
+ subTrigger?: boolean | undefined;
14
+ icon?: import("react").ReactNode;
15
+ checked?: boolean | undefined;
16
+ onClick?: (() => void) | undefined;
17
+ } & import("react").RefAttributes<HTMLDivElement>>;
18
+ export declare const MenuDivider: import("react").ForwardRefExoticComponent<{
19
+ className?: string | undefined;
20
+ } & import("react").RefAttributes<HTMLDivElement>>;
21
+ export declare const MenuLabel: import("react").ForwardRefExoticComponent<{
22
+ className?: string | undefined;
23
+ children?: import("react").ReactNode;
24
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ export declare const Panel: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ tabs: {
5
+ name: string;
6
+ tabPanel: import("react").ReactNode;
7
+ }[];
8
+ openTab: string;
9
+ setOpenTab: (name: string) => void;
10
+ defaultOpenTab: string;
11
+ loading: boolean;
12
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ export declare const PanelButton: import("react").ForwardRefExoticComponent<({
3
+ className?: string | undefined;
4
+ onClick: () => void;
5
+ } & ({
6
+ children: import("react").ReactNode;
7
+ label?: string | undefined;
8
+ } | {
9
+ children?: undefined;
10
+ label: string;
11
+ })) & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare const PanelFileInput: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ value: File | null;
5
+ placeholder: string;
6
+ onChange: (payload: File | null) => void;
7
+ } & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const PanelTab: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ children?: import("react").ReactNode;
5
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export declare const PanelTextInput: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ value: string;
5
+ placeholder: string;
6
+ onChange: (event: import("react").ChangeEvent<HTMLInputElement>) => void;
7
+ onKeyDown: (event: import("react").KeyboardEvent<Element>) => void;
8
+ } & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { ComponentProps } from "@blocknote/react";
3
+ export declare const Popover: (props: ComponentProps["Generic"]["Popover"]["Root"]) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const PopoverTrigger: import("react").ForwardRefExoticComponent<{
5
+ children?: import("react").ReactNode;
6
+ } & import("react").RefAttributes<unknown>>;
7
+ export declare const PopoverContent: import("react").ForwardRefExoticComponent<{
8
+ className?: string | undefined;
9
+ variant: "form-popover" | "panel-popover";
10
+ children?: import("react").ReactNode;
11
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const SideMenu: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ children?: import("react").ReactNode;
5
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ export declare const SideMenuButton: import("react").ForwardRefExoticComponent<({
3
+ className?: string | undefined;
4
+ onClick?: ((e: import("react").MouseEvent<Element, MouseEvent>) => void) | undefined;
5
+ icon?: import("react").ReactNode;
6
+ onDragStart?: ((e: import("react").DragEvent<Element>) => void) | undefined;
7
+ onDragEnd?: ((e: import("react").DragEvent<Element>) => void) | undefined;
8
+ draggable?: boolean | undefined;
9
+ } & ({
10
+ children: import("react").ReactNode;
11
+ label?: string | undefined;
12
+ } | {
13
+ children?: undefined;
14
+ label: string;
15
+ })) & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare const SuggestionMenu: import("react").ForwardRefExoticComponent<{
3
+ id: string;
4
+ className?: string | undefined;
5
+ children?: import("react").ReactNode;
6
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const SuggestionMenuEmptyItem: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ children?: import("react").ReactNode;
5
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export declare const SuggestionMenuItem: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ id: string;
5
+ isSelected: boolean;
6
+ onClick: () => void;
7
+ item: import("@blocknote/react").DefaultReactSuggestionItem;
8
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const SuggestionMenuLabel: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ children?: import("react").ReactNode;
5
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const SuggestionMenuLoader: import("react").ForwardRefExoticComponent<{
3
+ className?: string | undefined;
4
+ children?: import("react").ReactNode;
5
+ } & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ export declare const TableHandle: import("react").ForwardRefExoticComponent<({
3
+ className?: string | undefined;
4
+ draggable: boolean;
5
+ onDragStart: (e: import("react").DragEvent<Element>) => void;
6
+ onDragEnd: () => void;
7
+ style?: import("react").CSSProperties | undefined;
8
+ } & ({
9
+ children: import("react").ReactNode;
10
+ label?: string | undefined;
11
+ } | {
12
+ children?: undefined;
13
+ label: string;
14
+ })) & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,25 @@
1
+ /// <reference types="react" />
2
+ import { ComponentProps } from "@blocknote/react";
3
+ export declare const Toolbar: import("react").ForwardRefExoticComponent<{
4
+ className?: string | undefined;
5
+ children?: import("react").ReactNode;
6
+ } & {
7
+ className?: string | undefined;
8
+ children?: import("react").ReactNode;
9
+ onMouseEnter?: (() => void) | undefined;
10
+ onMouseLeave?: (() => void) | undefined;
11
+ } & import("react").RefAttributes<HTMLDivElement>>;
12
+ type ToolbarButtonProps = ComponentProps["FormattingToolbar"]["Button"] & ComponentProps["LinkToolbar"]["Button"];
13
+ export declare const ToolbarButton: import("react").ForwardRefExoticComponent<ToolbarButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
14
+ export declare const ToolbarSelect: import("react").ForwardRefExoticComponent<{
15
+ className?: string | undefined;
16
+ items: {
17
+ text: string;
18
+ icon: import("react").ReactNode;
19
+ onClick: () => void;
20
+ isSelected: boolean;
21
+ isDisabled?: boolean | undefined;
22
+ }[];
23
+ isDisabled?: boolean | undefined;
24
+ } & import("react").RefAttributes<HTMLDivElement>>;
25
+ export {};