import { useState } from "react"; import { Sortable } from "src/components/Sortable/Sortable"; import { SurveyCard } from "src/components/Survey/SurveyCard"; import { TaskControlsOverridable } from "src/components/Survey/TaskControlsOverridable"; import { MessageTable } from "../Messages/MessageTable"; export const EvaluateTask = ({ tasks, trigger, mutate, mainBgClasses }) => { const [ranking, setRanking] = useState([]); const submitResponse = (task) => { trigger({ id: task.id, update_type: "message_ranking", content: { ranking, }, }); }; const fetchNextTask = () => { setRanking([]); mutate(); }; let messages = null; if (tasks[0].task.conversation) { messages = tasks[0].task.conversation.messages; messages = messages.map((message, index) => ({ ...message, id: index })); } const sortables = tasks[0].task.replies ? "replies" : "prompts"; return (
Instructions

Given the following {sortables}, sort them from best to worst, best being first, worst being last.

{messages ? : null}
setRanking(tasks[0].task[sortables].map((_, idx) => idx))} onSubmitResponse={submitResponse} onSkip={fetchNextTask} />
); };