using shadToggle to node too

This commit is contained in:
anovazzi1 2023-06-14 18:17:35 -03:00
commit 7538a1e37a
4 changed files with 26 additions and 3 deletions

View file

@ -25,6 +25,7 @@ import React from "react";
import { nodeColors } from "../../../../utils"; import { nodeColors } from "../../../../utils";
import ShadTooltip from "../../../../components/ShadTooltipComponent"; import ShadTooltip from "../../../../components/ShadTooltipComponent";
import { PopUpContext } from "../../../../contexts/popUpContext"; import { PopUpContext } from "../../../../contexts/popUpContext";
import ToggleShadComponent from "../../../../components/toggleShadComponent";
export default function ParameterComponent({ export default function ParameterComponent({
left, left,
@ -193,7 +194,7 @@ export default function ParameterComponent({
</div> </div>
) : left === true && type === "bool" ? ( ) : left === true && type === "bool" ? (
<div className="mt-2"> <div className="mt-2">
<ToggleComponent <ToggleShadComponent
disabled={disabled} disabled={disabled}
enabled={enabled} enabled={enabled}
setEnabled={(t) => { setEnabled={(t) => {
@ -201,6 +202,7 @@ export default function ParameterComponent({
setEnabled(t); setEnabled(t);
}} }}
size="large"
/> />
</div> </div>
) : left === true && type === "float" ? ( ) : left === true && type === "float" ? (

View file

@ -1,4 +1,3 @@
import { classNames } from "../../utils";
import { useEffect } from "react"; import { useEffect } from "react";
import { ToggleComponentType } from "../../types/components"; import { ToggleComponentType } from "../../types/components";
import { Switch } from "../ui/switch"; import { Switch } from "../ui/switch";
@ -7,17 +6,36 @@ export default function ToggleShadComponent({
enabled, enabled,
setEnabled, setEnabled,
disabled, disabled,
size
}: ToggleComponentType) { }: ToggleComponentType) {
useEffect(() => { useEffect(() => {
if (disabled) { if (disabled) {
setEnabled(false); setEnabled(false);
} }
}, [disabled, setEnabled]); }, [disabled, setEnabled]);
let scaleX, scaleY;
switch(size){
case "small":
scaleX = 0.6;
scaleY = 0.6;
break;
case "medium":
scaleX = 0.8;
scaleY = 0.8;
break;
case "large":
scaleX = 1;
scaleY = 1;
break;
default:
scaleX = 1;
scaleY = 1;
}
return ( return (
<div className={disabled ? "pointer-events-none cursor-not-allowed" : ""}> <div className={disabled ? "pointer-events-none cursor-not-allowed" : ""}>
<Switch <Switch
style={{ style={{
transform: "scaleX(0.6) scaleY(0.6)", transform: `scaleX(${scaleX}) scaleY(${scaleY})`,
}} }}
className="data-[state=unchecked]:bg-slate-500" className="data-[state=unchecked]:bg-slate-500"
checked={enabled} checked={enabled}

View file

@ -198,6 +198,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) {
setEnabled(e); setEnabled(e);
save(); save();
}} }}
size="small"
disabled={false} disabled={false}
/> />
</div> </div>
@ -296,6 +297,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) {
changeAdvanced(data.node.template[n]) changeAdvanced(data.node.template[n])
} }
disabled={false} disabled={false}
size="small"
/> />
</div> </div>
</TableCell> </TableCell>

View file

@ -20,6 +20,7 @@ export type ToggleComponentType = {
enabled: boolean; enabled: boolean;
setEnabled: (state: boolean) => void; setEnabled: (state: boolean) => void;
disabled: boolean; disabled: boolean;
size: "small" | "medium" | "large";
}; };
export type DropDownComponentType = { export type DropDownComponentType = {
value: string; value: string;