diff options
author | dan <[email protected]> | 2024-01-03 18:36:53 -0500 |
---|---|---|
committer | dan <[email protected]> | 2024-01-03 18:36:53 -0500 |
commit | 98be17522ef0474a40b134a3ca4e0d2e8096d469 (patch) | |
tree | 9ae3b31c03aa2b3cbd8c2f6942445a1c5a439a4e /src/pages/SurveyAnswer | |
parent | 3baf3c177f86dcc01ce49e14daec7c5c895eefe6 (diff) | |
download | draggable-form-demo-98be17522ef0474a40b134a3ca4e0d2e8096d469.tar.gz draggable-form-demo-98be17522ef0474a40b134a3ca4e0d2e8096d469.tar.bz2 draggable-form-demo-98be17522ef0474a40b134a3ca4e0d2e8096d469.zip |
Diffstat (limited to 'src/pages/SurveyAnswer')
-rw-r--r-- | src/pages/SurveyAnswer/index.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/pages/SurveyAnswer/index.js b/src/pages/SurveyAnswer/index.js new file mode 100644 index 0000000..d1676c1 --- /dev/null +++ b/src/pages/SurveyAnswer/index.js @@ -0,0 +1,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> + ); +} |