diff --git a/src/frontend/src/components/flowToolbarComponent/components/playground-button.tsx b/src/frontend/src/components/flowToolbarComponent/components/playground-button.tsx new file mode 100644 index 000000000..261dfe56f --- /dev/null +++ b/src/frontend/src/components/flowToolbarComponent/components/playground-button.tsx @@ -0,0 +1,50 @@ +import ForwardedIconComponent from "@/components/genericIconComponent"; +import ShadTooltip from "@/components/shadTooltipComponent"; +import IOModal from "@/modals/IOModal/newModal"; + +const PlaygroundButton = ({ hasIO, open, setOpen, canvasOpen }) => { + const PlayIcon = () => ( + + ); + + const ButtonLabel = () => Playground; + + const ActiveButton = () => ( +
+ + +
+ ); + + const DisabledButton = () => ( +
+ + +
+ ); + + return hasIO ? ( + + + + ) : ( + +
+ +
+
+ ); +}; + +export default PlaygroundButton; diff --git a/src/frontend/src/components/flowToolbarComponent/index.tsx b/src/frontend/src/components/flowToolbarComponent/index.tsx index 0784f5e98..fedc7f259 100644 --- a/src/frontend/src/components/flowToolbarComponent/index.tsx +++ b/src/frontend/src/components/flowToolbarComponent/index.tsx @@ -15,6 +15,7 @@ import { useShortcutsStore } from "../../stores/shortcuts"; import { useStoreStore } from "../../stores/storeStore"; import { classNames, isThereModal } from "../../utils/utils"; import ForwardedIconComponent from "../genericIconComponent"; +import PlaygroundButton from "./components/playground-button"; export default function FlowToolbar(): JSX.Element { const preventDefault = true; @@ -125,38 +126,12 @@ export default function FlowToolbar(): JSX.Element { >
- {hasIO ? ( - -
- - Playground -
-
- ) : ( - -
- - Playground -
-
- )} +
{ENABLE_API && ( <> diff --git a/src/frontend/src/style/applies.css b/src/frontend/src/style/applies.css index e4089c842..42cadc8f6 100644 --- a/src/frontend/src/style/applies.css +++ b/src/frontend/src/style/applies.css @@ -1268,6 +1268,10 @@ .toolbar-wrapper { @apply flex h-10 items-center gap-1 rounded-xl border border-border bg-background p-1 shadow-sm; } + + .playground-btn-flow-toolbar { + @apply relative inline-flex h-8 w-full items-center justify-center gap-1.5 rounded px-3 py-1.5 text-sm font-semibold transition-all duration-500 ease-in-out; + } } /* Gradient background */