aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/SurveyAnswer/index.js
blob: d1676c148d75ac62529f1ad3a0569442be4ff424 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import { useState } from "react";
import { useParams } from "react-router-dom";
import Form from "../../components/FormBuilder/FinalForm";
import useLocalStorage from "../../hooks/useLocalStorage";

export default function SurveyAnswers() {
  const { runId, surveyId } = useParams();
  const [resultsSet, setResultsSet] = useLocalStorage(
    `results-${surveyId}-${runId}`,
    {},
  );
  const [answerSetId] = useState(crypto.randomUUID());
  const results = (resultsSet && resultsSet[answerSetId]) || {
    datetime: new Date().toISOString(),
  };

  function setResults(newResults) {
    setResultsSet({ ...resultsSet, [answerSetId]: newResults });
  }

  return (
    <div>
      {runId}
      <Form formId={surveyId} results={results} setResults={setResults} />
    </div>
  );
}