diff --git a/frontend/package.json b/frontend/package.json index 41910ea8..472e9481 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -40,7 +40,7 @@ "@radix-ui/react-tabs": "^1.1.12", "@radix-ui/react-toggle-group": "^1.1.11", "@radix-ui/react-tooltip": "^1.2.7", - "@rjsf/shadcn": "6.0.0-beta.10", + "@rjsf/shadcn": "6.1.1", "@sentry/react": "^9.34.0", "@sentry/vite-plugin": "^3.5.0", "@tailwindcss/typography": "^0.5.16", @@ -83,9 +83,9 @@ "zustand": "^4.5.4" }, "devDependencies": { - "@rjsf/core": "6.0.0-beta.11", - "@rjsf/utils": "6.0.0-beta.11", - "@rjsf/validator-ajv8": "6.0.0-beta.11", + "@rjsf/core": "6.1.1", + "@rjsf/utils": "6.1.1", + "@rjsf/validator-ajv8": "6.1.1", "@tailwindcss/container-queries": "^0.1.1", "@types/lodash": "^4.17.20", "@types/react": "^18.2.43", diff --git a/frontend/src/components/DiffCard.tsx b/frontend/src/components/DiffCard.tsx index 9b5dac4d..eead1604 100644 --- a/frontend/src/components/DiffCard.tsx +++ b/frontend/src/components/DiffCard.tsx @@ -22,7 +22,11 @@ import { import '@/styles/diff-style-overrides.css'; import { attemptsApi } from '@/lib/api'; import type { TaskAttempt } from 'shared/types'; -import { useReview, type ReviewDraft } from '@/contexts/ReviewProvider'; +import { + useReview, + type ReviewDraft, + type ReviewComment, +} from '@/contexts/ReviewProvider'; import { CommentWidgetLine } from '@/components/diff/CommentWidgetLine'; import { ReviewCommentRenderer } from '@/components/diff/ReviewCommentRenderer'; import { @@ -149,9 +153,8 @@ export default function DiffCard({ // Transform comments to git-diff-view extendData format const extendData = useMemo(() => { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - const oldFileData: Record = {}; - const newFileData: Record = {}; + const oldFileData: Record = {}; + const newFileData: Record = {}; commentsForFile.forEach((comment) => { const lineKey = String(comment.lineNumber); @@ -181,7 +184,11 @@ export default function DiffCard({ setDraft(widgetKey, draft); }; - const renderWidgetLine = (props: any) => { + const renderWidgetLine = (props: { + side: SplitSide; + lineNumber: number; + onClose: () => void; + }) => { const widgetKey = `${filePath}-${props.side}-${props.lineNumber}`; const draft = drafts[widgetKey]; if (!draft) return null; @@ -197,7 +204,7 @@ export default function DiffCard({ ); }; - const renderExtendLine = (lineData: any) => { + const renderExtendLine = (lineData: { data: ReviewComment }) => { return ( ); diff --git a/frontend/src/components/ExecutorConfigForm.tsx b/frontend/src/components/ExecutorConfigForm.tsx index 28d1b525..41f2fe2d 100644 --- a/frontend/src/components/ExecutorConfigForm.tsx +++ b/frontend/src/components/ExecutorConfigForm.tsx @@ -1,5 +1,6 @@ import { useMemo, useEffect, useState } from 'react'; import Form from '@rjsf/core'; +import type { IChangeEvent } from '@rjsf/core'; import { RJSFValidationError } from '@rjsf/utils'; import validator from '@rjsf/validator-ajv8'; @@ -22,10 +23,10 @@ type ExecutorType = interface ExecutorConfigFormProps { executor: ExecutorType; - value: any; - onSubmit?: (formData: any) => void; - onChange?: (formData: any) => void; - onSave?: (formData: any) => Promise; + value: unknown; + onSubmit?: (formData: unknown) => void; + onChange?: (formData: unknown) => void; + onSave?: (formData: unknown) => Promise; disabled?: boolean; isSaving?: boolean; isDirty?: boolean; @@ -43,7 +44,7 @@ export function ExecutorConfigForm({ isSaving = false, isDirty = false, }: ExecutorConfigFormProps) { - const [formData, setFormData] = useState(value || {}); + const [formData, setFormData] = useState(value || {}); const [validationErrors, setValidationErrors] = useState< RJSFValidationError[] >([]); @@ -57,14 +58,16 @@ export function ExecutorConfigForm({ setValidationErrors([]); }, [value, executor]); - const handleChange = ({ formData: newFormData }: any) => { + const handleChange = (event: IChangeEvent) => { + const newFormData = event.formData; setFormData(newFormData); if (onChange) { onChange(newFormData); } }; - const handleSubmit = async ({ formData: submitData }: any) => { + const handleSubmit = async (event: IChangeEvent) => { + const submitData = event.formData; setValidationErrors([]); if (onSave) { await onSave(submitData); diff --git a/frontend/src/components/panels/DiffsPanel.tsx b/frontend/src/components/panels/DiffsPanel.tsx index 60b4ab57..d01f323a 100644 --- a/frontend/src/components/panels/DiffsPanel.tsx +++ b/frontend/src/components/panels/DiffsPanel.tsx @@ -14,7 +14,7 @@ import { TooltipProvider, TooltipTrigger, } from '@/components/ui/tooltip'; -import type { TaskAttempt } from 'shared/types'; +import type { TaskAttempt, Diff } from 'shared/types'; import GitOperations, { type GitOperationsInputs, } from '@/components/tasks/Toolbar/GitOperations.tsx'; @@ -125,7 +125,7 @@ export function DiffsPanel({ selectedAttempt, gitOps }: DiffsPanelProps) { } interface DiffsPanelContentProps { - diffs: any[]; + diffs: Diff[]; fileCount: number; added: number; deleted: number; @@ -136,7 +136,7 @@ interface DiffsPanelContentProps { selectedAttempt: TaskAttempt | null; gitOps?: GitOperationsInputs; loading: boolean; - t: (key: string, params?: any) => string; + t: (key: string, params?: Record) => string; } function DiffsPanelContent({ diff --git a/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx b/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx index d6961e36..2ec270dc 100644 --- a/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx +++ b/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx @@ -1,6 +1,6 @@ -import { +import type { ArrayFieldTemplateProps, - ArrayFieldTemplateItemType, + ArrayFieldItemTemplateProps, } from '@rjsf/utils'; import { Button } from '@/components/ui/button'; import { Plus, X } from 'lucide-react'; @@ -14,17 +14,7 @@ export const ArrayFieldTemplate = (props: ArrayFieldTemplateProps) => { return (
-
- {items.length > 0 && - items.map((element: ArrayFieldTemplateItemType) => ( - - ))} -
+
{items}
{canAdd && (