refactor[components]: Add types to functions that didnt have it

This commit is contained in:
Igor Carvalho 2023-07-20 17:58:48 -03:00
commit b5c6b06b3c
27 changed files with 51 additions and 29 deletions

View file

@ -12,7 +12,7 @@ export default function AccordionComponent({
children,
open = [],
keyValue,
}: AccordionComponentType) {
}: AccordionComponentType): JSX.Element {
const [value, setValue] = useState(
open.length === 0 ? "" : getOpenAccordion()
);

View file

@ -1,4 +1,4 @@
export default function CrashErrorComponent({ error, resetErrorBoundary }) {
export default function CrashErrorComponent({ error, resetErrorBoundary }): JSX.Element {
return (
<div className="fixed left-0 top-0 z-50 flex h-full w-full items-center justify-center bg-foreground bg-opacity-50">
<div className="flex h-1/3 min-h-fit max-w-4xl flex-col justify-evenly rounded-lg bg-background p-8 text-start shadow-lg">

View file

@ -13,7 +13,7 @@ export const EditFlowSettings: React.FC<InputProps> = ({
setName,
setDescription,
updateFlow,
}) => {
}): JSX.Element => {
const [isMaxLength, setIsMaxLength] = useState(false);
const handleNameChange = (event: ChangeEvent<HTMLInputElement>) => {

View file

@ -3,7 +3,7 @@ import { RadialProgressType } from "../../types/components";
export default function RadialProgressComponent({
value,
color,
}: RadialProgressType) {
}: RadialProgressType): JSX.Element {
const style = {
"--value": value * 100,
"--size": "1.5rem",

View file

@ -16,7 +16,7 @@ const TooltipReact: FC<TooltipProps> = ({
className,
clickable,
delayShow,
}) => {
}: TooltipProps): JSX.Element => {
return (
<div className="tooltip-container">
{React.cloneElement(children as React.ReactElement, {

View file

@ -5,7 +5,7 @@ const SanitizedHTMLWrapper = ({
content,
onClick,
suppressWarning = false,
}) => {
}): JSX.Element => {
const sanitizedHTML = DOMPurify.sanitize(content);
return (

View file

@ -8,7 +8,7 @@ export default function ShadTooltip({
children,
styleClasses,
delayDuration = 500,
}: ShadToolTipType) {
}: ShadToolTipType): JSX.Element {
return (
<Tooltip delayDuration={delayDuration}>
<TooltipTrigger asChild={asChild}>{children}</TooltipTrigger>

View file

@ -5,7 +5,7 @@ export default function Tooltip({
children,
title,
placement,
}: TooltipComponentType) {
}: TooltipComponentType): JSX.Element {
return (
<LightTooltip placement={placement} title={title} arrow>
{children}

View file

@ -21,7 +21,7 @@ export const CardComponent = ({
id: string;
onDelete?: () => void;
button?: JSX.Element;
}) => {
}): JSX.Element => {
const { removeFlow } = useContext(TabsContext);
return (

View file

@ -21,7 +21,7 @@ export default function BuildTrigger({
flow: FlowType;
setIsBuilt: any;
isBuilt: boolean;
}) {
}): JSX.Element {
const { updateSSEData, isBuilding, setIsBuilding, sseData } = useSSE();
const { reactFlowInstance } = useContext(typesContext);
const { setTabsState } = useContext(TabsContext);

View file

@ -9,11 +9,12 @@ import {
} from "../../../constants/constants";
import { alertContext } from "../../../contexts/alertContext";
import IconComponent from "../../genericIconComponent";
import { chatTriggerPropType } from "../../../types/components";
export default function ChatTrigger({ open, setOpen, isBuilt, canOpen }) {
export default function ChatTrigger({ open, setOpen, isBuilt, canOpen }: chatTriggerPropType): JSX.Element {
const { setErrorData } = useContext(alertContext);
function handleClick() {
function handleClick(): void {
if (isBuilt) {
if (canOpen) {
setOpen(true);

View file

@ -10,7 +10,7 @@ import { getBuildStatus } from "../../controllers/API";
import FormModal from "../../modals/formModal";
import { NodeType } from "../../types/flow";
export default function Chat({ flow }: ChatType) {
export default function Chat({ flow }: ChatType): JSX.Element {
const [open, setOpen] = useState(false);
const [isBuilt, setIsBuilt] = useState(false);
const [canOpen, setCanOpen] = useState(false);

View file

@ -12,7 +12,7 @@ export default function CodeAreaComponent({
editNode = false,
nodeClass,
setNodeClass,
}: TextAreaComponentType) {
}: TextAreaComponentType): JSX.Element {
const [myValue, setMyValue] = useState(
typeof value == "string" ? value : JSON.stringify(value)
);

View file

@ -12,7 +12,7 @@ export default function Dropdown({
editNode = false,
numberOfOptions = 0,
apiModal = false,
}: DropDownComponentType) {
}: DropDownComponentType): JSX.Element {
const { closePopUp } = useContext(PopUpContext);
let [internalValue, setInternalValue] = useState(

View file

@ -9,7 +9,7 @@ export default function FloatComponent({
disableCopyPaste = false,
disabled,
editNode = false,
}: FloatComponentType) {
}: FloatComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value ?? "");
const { setDisableCopyPaste } = useContext(TabsContext);
const { closePopUp } = useContext(PopUpContext);

View file

@ -15,8 +15,9 @@ import { undoRedoContext } from "../../../../contexts/undoRedoContext";
import FlowSettingsModal from "../../../../modals/flowSettingsModal";
import IconComponent from "../../../genericIconComponent";
import { Button } from "../../../ui/button";
import { menuBarPropsType } from "../../../../types/components";
export const MenuBar = ({ flows, tabId }) => {
export const MenuBar = ({ flows, tabId }: menuBarPropsType): JSX.Element => {
const { updateFlow, setTabId, addFlow } = useContext(TabsContext);
const { setErrorData } = useContext(alertContext);
const { openPopUp } = useContext(PopUpContext);

View file

@ -14,7 +14,7 @@ import { Button } from "../ui/button";
import { Separator } from "../ui/separator";
import MenuBar from "./components/menuBar";
export default function Header() {
export default function Header(): JSX.Element {
const { flows, addFlow, tabId } = useContext(TabsContext);
const { openPopUp } = useContext(PopUpContext);
const { templates } = useContext(typesContext);

View file

@ -11,7 +11,7 @@ export default function InputComponent({
disabled,
password,
editNode = false,
}: InputComponentType) {
}: InputComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value ?? "");
const [pwdVisible, setPwdVisible] = useState(false);
const { setDisableCopyPaste } = useContext(TabsContext);

View file

@ -13,7 +13,7 @@ export default function InputFileComponent({
fileTypes,
onFileChange,
editNode = false,
}: FileComponentType) {
}: FileComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value);
const [loading, setLoading] = useState(false);
const { setErrorData } = useContext(alertContext);

View file

@ -11,7 +11,7 @@ export default function InputListComponent({
disabled,
editNode = false,
onAddInput,
}: InputListComponentType) {
}: InputListComponentType): JSX.Element {
const [inputList, setInputList] = useState(value ?? [""]);
const { closePopUp } = useContext(PopUpContext);

View file

@ -9,7 +9,7 @@ export default function IntComponent({
disableCopyPaste = false,
disabled,
editNode = false,
}: FloatComponentType) {
}: FloatComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value ?? "");
const { setDisableCopyPaste } = useContext(TabsContext);
const min = 0;

View file

@ -1,6 +1,6 @@
import { LoadingComponentProps } from "../../types/components";
export default function LoadingComponent({ remSize }: LoadingComponentProps) {
export default function LoadingComponent({ remSize }: LoadingComponentProps): JSX.Element {
return (
<div role="status" className="m-auto w-min">
<svg

View file

@ -16,7 +16,7 @@ export default function PromptAreaComponent({
onChange,
disabled,
editNode = false,
}: TextAreaComponentType) {
}: TextAreaComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value);
const { openPopUp } = useContext(PopUpContext);
const { reactFlowInstance } = useContext(typesContext);

View file

@ -11,7 +11,7 @@ export default function TextAreaComponent({
onChange,
disabled,
editNode = false,
}: TextAreaComponentType) {
}: TextAreaComponentType): JSX.Element {
const [myValue, setMyValue] = useState(value);
const { openPopUp, closePopUp } = useContext(PopUpContext);
const { setDisableCopyPaste } = useContext(TabsContext);

View file

@ -7,7 +7,7 @@ export default function ToggleComponent({
enabled,
setEnabled,
disabled,
}: ToggleComponentType) {
}: ToggleComponentType): JSX.Element {
// set component state as disabled
useEffect(() => {

View file

@ -6,7 +6,7 @@ export default function ToggleShadComponent({
setEnabled,
disabled,
size,
}: ToggleComponentType) {
}: ToggleComponentType): JSX.Element {
let scaleX, scaleY;
switch (size) {
case "small":

View file

@ -1,6 +1,6 @@
import { ReactElement, ReactNode } from "react";
import { APIClassType } from "../api";
import { NodeDataType } from "../flow/index";
import { FlowStyleType, NodeDataType } from "../flow/index";
import { typesContextType } from "../typesContext";
export type InputComponentType = {
@ -430,5 +430,25 @@ export type nodeToolbarType = {
value: void;
};
deleteNode: (idx: string) => void;
openPopUp: (element: any) => void;
openPopUp: (element) => JSX.Element;
};
export type chatTriggerPropType = {
open: boolean;
isBuilt: boolean;
canOpen: boolean;
setOpen: (can: boolean) => void;
}
export type headerFlowsType = {
data: object;
description: string;
id: string;
name: string;
style?: FlowStyleType;
}
export type menuBarPropsType = {
flows: Array<headerFlowsType>;
tabId: string;
}