mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-05-03 10:00:07 -04:00
feat: text-to-diagram (#7325)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
This commit is contained in:
parent
dd8a7d41e2
commit
14845a343b
37 changed files with 1381 additions and 510 deletions
38
src/components/TTDDialog/TTDDialogTabs.tsx
Normal file
38
src/components/TTDDialog/TTDDialogTabs.tsx
Normal file
|
@ -0,0 +1,38 @@
|
|||
import * as RadixTabs from "@radix-ui/react-tabs";
|
||||
import { ReactNode } from "react";
|
||||
import { useExcalidrawSetAppState } from "../App";
|
||||
|
||||
const TTDDialogTabs = ({
|
||||
children,
|
||||
tab,
|
||||
...rest
|
||||
}: {
|
||||
children: ReactNode;
|
||||
tab: string;
|
||||
}) => {
|
||||
const setAppState = useExcalidrawSetAppState();
|
||||
|
||||
return (
|
||||
<RadixTabs.Root
|
||||
className="ttd-dialog-tabs-root"
|
||||
value={tab}
|
||||
onValueChange={(
|
||||
// at least in test enviros, `tab` can be `undefined`
|
||||
tab: string | undefined,
|
||||
) => {
|
||||
if (tab) {
|
||||
setAppState({
|
||||
openDialog: { name: "ttd", tab },
|
||||
});
|
||||
}
|
||||
}}
|
||||
{...rest}
|
||||
>
|
||||
{children}
|
||||
</RadixTabs.Root>
|
||||
);
|
||||
};
|
||||
|
||||
TTDDialogTabs.displayName = "TTDDialogTabs";
|
||||
|
||||
export default TTDDialogTabs;
|
Loading…
Add table
Add a link
Reference in a new issue