'use client'; import { useCallback, useEffect } from 'react'; import { IconReset } from '@/components/Icons'; import PickSchema from '@/components/select/PickSchema'; import Checkbox from '@/components/ui/Checkbox'; import Label from '@/components/ui/Label'; import MiniButton from '@/components/ui/MiniButton'; import TextArea from '@/components/ui/TextArea'; import TextInput from '@/components/ui/TextInput'; import AnimateFade from '@/components/wrap/AnimateFade'; import { ILibraryItem, LibraryItemID } from '@/models/library'; import { IOperationSchema } from '@/models/oss'; import { limits, patterns } from '@/utils/constants'; interface TabInputOperationProps { oss: IOperationSchema; alias: string; setAlias: React.Dispatch>; title: string; setTitle: React.Dispatch>; comment: string; setComment: React.Dispatch>; attachedID: LibraryItemID | undefined; setAttachedID: React.Dispatch>; createSchema: boolean; setCreateSchema: React.Dispatch>; } function TabInputOperation({ oss, alias, setAlias, title, setTitle, comment, setComment, attachedID, setAttachedID, createSchema, setCreateSchema }: TabInputOperationProps) { const baseFilter = useCallback((item: ILibraryItem) => !oss.schemas.includes(item.id), [oss]); useEffect(() => { if (createSchema) { setAttachedID(undefined); } }, [createSchema, setAttachedID]); return ( setTitle(event.target.value)} disabled={attachedID !== undefined} />
setAlias(event.target.value)} disabled={attachedID !== undefined} />