From a8373248c0b646a7288520a4548a6cd8dd7764c1 Mon Sep 17 00:00:00 2001 From: ndittren <36773036+ndittren@users.noreply.github.com> Date: Fri, 11 Oct 2024 13:10:09 -0400 Subject: [PATCH] Restructure folders --- media/js/src/app.jsx | 7 +- media/js/src/{ => containers}/dashboard.jsx | 2 +- .../js/src/simulationTwo/hypothesisTest2.jsx | 152 ------- .../simulationTwo/nullHypothesisSection2.jsx | 60 --- media/js/src/simulationTwo/quiz2.jsx | 420 ------------------ .../src/simulationTwo/simulationTwoQuiz.jsx | 154 ------- .../simulation1}/criticalValue.jsx | 4 +- .../src/simulations/simulation1/glossary.jsx | 12 + .../simulation1}/graphCoefficientsSection.jsx | 2 +- .../simulation1}/hypothesisTest.jsx | 2 +- .../simulation1}/modalCV.jsx | 2 +- .../simulation1}/modalGlossary.jsx | 2 +- .../simulation1}/modalPvalue.jsx | 2 +- .../simulation1}/multipleChoiceQuestion.jsx | 2 +- .../simulation1}/nullHypothesisSection.jsx | 2 +- .../simulation1}/pvalueComponent.jsx | 4 +- .../simulation1}/quiz.jsx | 0 .../simulation1}/scatterPlot.jsx | 0 .../simulation1}/simulationIntro.jsx | 10 +- .../simulation1}/simulationOne.jsx | 4 +- .../simulation1}/simulationOneQuiz.jsx | 4 +- .../components}/controlVariable.jsx | 4 +- .../simulation2/components}/learningGoals.jsx | 2 +- .../components}/multipleChoiceQuestion2.jsx | 2 +- .../simulation2/components}/scatterPlot2.jsx | 0 .../simulation2/components}/simulationTwo.jsx | 8 +- .../simulation2/components}/variables.jsx | 2 +- .../simulation2}/dataAttr.jsx | 2 +- .../simulations/simulation2}/datasets.json | 0 .../simulation2/tests}/dataAttr.test.jsx | 3 +- media/js/src/{ => utils}/katexComponent.jsx | 0 media/js/src/{ => utils}/utils.jsx | 0 media/js/src/{ => utils}/utils.test.jsx | 0 33 files changed, 47 insertions(+), 823 deletions(-) rename media/js/src/{ => containers}/dashboard.jsx (99%) delete mode 100644 media/js/src/simulationTwo/hypothesisTest2.jsx delete mode 100644 media/js/src/simulationTwo/nullHypothesisSection2.jsx delete mode 100644 media/js/src/simulationTwo/quiz2.jsx delete mode 100644 media/js/src/simulationTwo/simulationTwoQuiz.jsx rename media/js/src/{simulationOne => simulations/simulation1}/criticalValue.jsx (99%) create mode 100644 media/js/src/simulations/simulation1/glossary.jsx rename media/js/src/{simulationOne => simulations/simulation1}/graphCoefficientsSection.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/hypothesisTest.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/modalCV.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/modalGlossary.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/modalPvalue.jsx (99%) rename media/js/src/{ => simulations/simulation1}/multipleChoiceQuestion.jsx (98%) rename media/js/src/{simulationOne => simulations/simulation1}/nullHypothesisSection.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/pvalueComponent.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/quiz.jsx (100%) rename media/js/src/{simulationOne => simulations/simulation1}/scatterPlot.jsx (100%) rename media/js/src/{simulationOne => simulations/simulation1}/simulationIntro.jsx (94%) rename media/js/src/{simulationOne => simulations/simulation1}/simulationOne.jsx (99%) rename media/js/src/{simulationOne => simulations/simulation1}/simulationOneQuiz.jsx (99%) rename media/js/src/{simulationTwo => simulations/simulation2/components}/controlVariable.jsx (98%) rename media/js/src/{simulationTwo => simulations/simulation2/components}/learningGoals.jsx (98%) rename media/js/src/{ => simulations/simulation2/components}/multipleChoiceQuestion2.jsx (99%) rename media/js/src/{simulationTwo => simulations/simulation2/components}/scatterPlot2.jsx (100%) rename media/js/src/{simulationTwo => simulations/simulation2/components}/simulationTwo.jsx (97%) rename media/js/src/{simulationTwo => simulations/simulation2/components}/variables.jsx (94%) rename media/js/src/{ => simulations/simulation2}/dataAttr.jsx (99%) rename {json => media/js/src/simulations/simulation2}/datasets.json (100%) rename media/js/src/{ => simulations/simulation2/tests}/dataAttr.test.jsx (98%) rename media/js/src/{ => utils}/katexComponent.jsx (100%) rename media/js/src/{ => utils}/utils.jsx (100%) rename media/js/src/{ => utils}/utils.test.jsx (100%) diff --git a/media/js/src/app.jsx b/media/js/src/app.jsx index df5e37ec..e3b0a374 100644 --- a/media/js/src/app.jsx +++ b/media/js/src/app.jsx @@ -1,8 +1,9 @@ import React, { useState, useEffect } from 'react'; import { BrowserRouter as Router, Route, Routes } from 'react-router-dom'; -import { Dashboard } from './dashboard'; -import { SimulationOne } from './simulationOne/simulationOne'; -import { SimulationTwo } from './simulationTwo/simulationTwo'; +import { Dashboard } from './containers/dashboard'; +import { SimulationOne} from './simulations/simulation1/simulationOne'; +// eslint-disable-next-line max-len +import { SimulationTwo } from './simulations/simulation2/components/simulationTwo'; const isSuperUser = window.MetricsMentor.currentUser.is_superuser; diff --git a/media/js/src/dashboard.jsx b/media/js/src/containers/dashboard.jsx similarity index 99% rename from media/js/src/dashboard.jsx rename to media/js/src/containers/dashboard.jsx index fa4a3ed4..6e65629a 100644 --- a/media/js/src/dashboard.jsx +++ b/media/js/src/containers/dashboard.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { useParams, Link } from 'react-router-dom'; -import { Footer } from './footer'; +import { Footer } from '../footer'; import PropTypes from 'prop-types'; diff --git a/media/js/src/simulationTwo/hypothesisTest2.jsx b/media/js/src/simulationTwo/hypothesisTest2.jsx deleted file mode 100644 index ec694a60..00000000 --- a/media/js/src/simulationTwo/hypothesisTest2.jsx +++ /dev/null @@ -1,152 +0,0 @@ -import React, { useState, useEffect } from 'react'; -import { Katex } from '../katexComponent'; -import PropTypes from 'prop-types'; -import { Quiz2 } from './quiz2'; -import axios from 'axios'; - -export const HypothesisTest2 = ({ - selectedOption, appRvalue, tvalue, hypothesizedSlope, n, onComplete, - completedChoices -}) => { - const [pvalues, setPvalues] = useState(null); - const [alpha, setAlpha] = useState(null); - const [alphaSelected, setAlphaSelected] = useState(false); - let hypothesis; - let hypothesisTest; - - const nullHypothesis = `\\Eta_0: {\\beta_1} = ${hypothesizedSlope}`; - - switch (selectedOption) { - case 'A': - hypothesis = `\\Eta_1: {\\beta_1}{\\neq } ${hypothesizedSlope}`; - hypothesisTest = 'value_two_sided'; - break; - case 'B': - hypothesis = `\\Eta_1: {\\beta_1}{\\gt} ${hypothesizedSlope}`; - hypothesisTest = 'value_right'; - break; - case 'C': - hypothesis = `\\Eta_1: {\\beta_1}{\\lt} ${hypothesizedSlope}`; - hypothesisTest = 'value_left'; - break; - default: - hypothesis = ''; - } - - const handleAlphaChange = (event) => { - const newAlpha = parseFloat(event.target.value); - setAlpha(newAlpha); - setAlphaSelected(true); - }; - - - const calculatePvalue = async() => { - - try { - const response = await axios.post('/calculate_pvalue/', - {n, tvalue}); - - setPvalues(response.data); - - } catch (error) { - console.error('Error calculating pvalue:', error); - } - }; - let pvalue; - if (pvalues) { - pvalue = pvalues[hypothesisTest].toFixed(4); - } - - useEffect(() => { - calculatePvalue(); - }, []); - - return ( - <> -
-
- • -
-
-
-
-

Hypothesis test

-
-
-
- -
-
-
r: {appRvalue.toFixed(3)}
-
t: {tvalue}
-

Choose significance level, alpha:

-
-
- - -
-
- - -
-
- - -
-
- {alphaSelected && ( - - )} -
-
-
- - ); -}; - -HypothesisTest2.propTypes = { - selectedOption: PropTypes.string.isRequired, - appRvalue: PropTypes.number.isRequired, - tvalue: PropTypes.number.isRequired, - coursePK: PropTypes.number, - hypothesizedSlope: PropTypes.any.isRequired, - n: PropTypes.number.isRequired, - onComplete: PropTypes.func.isRequired, - completedChoices: PropTypes.array.isRequired, -}; \ No newline at end of file diff --git a/media/js/src/simulationTwo/nullHypothesisSection2.jsx b/media/js/src/simulationTwo/nullHypothesisSection2.jsx deleted file mode 100644 index 076ea66d..00000000 --- a/media/js/src/simulationTwo/nullHypothesisSection2.jsx +++ /dev/null @@ -1,60 +0,0 @@ -import React from 'react'; -import { Katex } from '../katexComponent'; -import PropTypes from 'prop-types'; - - -export const NullHypothesisSection2 = ({ - slope, stderror, tvalue, tEquation, hypothesizedSlope, - handleNullHypothesis, startQuiz -}) => { - return ( -
-
- • -
-
-
-
-
-

- Null hypothesis

-
-
-
-
diff --git a/media/js/src/simulationOne/simulationOne.jsx b/media/js/src/simulations/simulation1/simulationOne.jsx similarity index 99% rename from media/js/src/simulationOne/simulationOne.jsx rename to media/js/src/simulations/simulation1/simulationOne.jsx index 424f7d3c..4249f36c 100644 --- a/media/js/src/simulationOne/simulationOne.jsx +++ b/media/js/src/simulations/simulation1/simulationOne.jsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import { ScatterPlot } from './scatterPlot'; -import { Katex } from '../katexComponent'; -import { authedFetch } from '../utils'; +import { Katex } from '../../utils/katexComponent'; +import { authedFetch } from '../../utils/utils'; import { SimulationOneQuiz } from './simulationOneQuiz'; import { SimIntro } from './simulationIntro'; import { GraphCoefficients } from './graphCoefficientsSection'; diff --git a/media/js/src/simulationOne/simulationOneQuiz.jsx b/media/js/src/simulations/simulation1/simulationOneQuiz.jsx similarity index 99% rename from media/js/src/simulationOne/simulationOneQuiz.jsx rename to media/js/src/simulations/simulation1/simulationOneQuiz.jsx index 4baa6dc8..6998cd64 100644 --- a/media/js/src/simulationOne/simulationOneQuiz.jsx +++ b/media/js/src/simulations/simulation1/simulationOneQuiz.jsx @@ -1,7 +1,7 @@ import React, { useEffect, useState } from 'react'; -import { Katex } from '../katexComponent'; +import { Katex } from '../../utils/katexComponent'; import { HypothesisTest } from './hypothesisTest'; -import { MultipleChoiceQuestion } from '../multipleChoiceQuestion'; +import { MultipleChoiceQuestion } from './multipleChoiceQuestion'; import PropTypes from 'prop-types'; import { Link } from 'react-router-dom'; diff --git a/media/js/src/simulationTwo/controlVariable.jsx b/media/js/src/simulations/simulation2/components/controlVariable.jsx similarity index 98% rename from media/js/src/simulationTwo/controlVariable.jsx rename to media/js/src/simulations/simulation2/components/controlVariable.jsx index 33da2e18..cc43d506 100644 --- a/media/js/src/simulationTwo/controlVariable.jsx +++ b/media/js/src/simulations/simulation2/components/controlVariable.jsx @@ -1,8 +1,8 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { formulaText, inlineKatex } from '../utils'; +import { formulaText, inlineKatex } from '../../../utils/utils'; import { labelIndex } from '../dataAttr'; -import { Katex } from '../katexComponent'; +import { Katex } from '../../../utils/katexComponent'; export const ControlVariable = ({ diff --git a/media/js/src/simulationTwo/learningGoals.jsx b/media/js/src/simulations/simulation2/components/learningGoals.jsx similarity index 98% rename from media/js/src/simulationTwo/learningGoals.jsx rename to media/js/src/simulations/simulation2/components/learningGoals.jsx index 0dffb9b0..26227a2a 100644 --- a/media/js/src/simulationTwo/learningGoals.jsx +++ b/media/js/src/simulations/simulation2/components/learningGoals.jsx @@ -1,7 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { labelIndex } from '../dataAttr'; -import { inlineKatex } from '../utils'; +import { inlineKatex } from '../../../utils/utils'; export const LearningGoals = ({ diff --git a/media/js/src/multipleChoiceQuestion2.jsx b/media/js/src/simulations/simulation2/components/multipleChoiceQuestion2.jsx similarity index 99% rename from media/js/src/multipleChoiceQuestion2.jsx rename to media/js/src/simulations/simulation2/components/multipleChoiceQuestion2.jsx index a1bfbc90..1d999bbb 100644 --- a/media/js/src/multipleChoiceQuestion2.jsx +++ b/media/js/src/simulations/simulation2/components/multipleChoiceQuestion2.jsx @@ -1,6 +1,6 @@ import React, { useEffect, useState } from 'react'; import PropTypes from 'prop-types'; -import { saveAnswer } from './utils'; +import { saveAnswer } from '../../../utils/utils'; export const MultipleChoiceQuestion2 = ({isSubmitted, setIsSubmitted, takeaways, diff --git a/media/js/src/simulationTwo/scatterPlot2.jsx b/media/js/src/simulations/simulation2/components/scatterPlot2.jsx similarity index 100% rename from media/js/src/simulationTwo/scatterPlot2.jsx rename to media/js/src/simulations/simulation2/components/scatterPlot2.jsx diff --git a/media/js/src/simulationTwo/simulationTwo.jsx b/media/js/src/simulations/simulation2/components/simulationTwo.jsx similarity index 97% rename from media/js/src/simulationTwo/simulationTwo.jsx rename to media/js/src/simulations/simulation2/components/simulationTwo.jsx index f0795a7a..880af987 100644 --- a/media/js/src/simulationTwo/simulationTwo.jsx +++ b/media/js/src/simulations/simulation2/components/simulationTwo.jsx @@ -2,11 +2,11 @@ import React, { useState, useEffect } from 'react'; import { ScatterPlot2 } from './scatterPlot2'; import { Variables } from './variables'; import { ControlVariable } from './controlVariable'; -import DATASETS from '../../../../json/datasets.json'; -import { Step } from '../step'; +import DATASETS from '../datasets.json'; +import { Step } from '../../../step.jsx'; import { LearningGoals } from './learningGoals'; -import { MultipleChoiceQuestion2 } from '../multipleChoiceQuestion2'; -import { authedFetch } from '../utils'; +import { MultipleChoiceQuestion2 } from './multipleChoiceQuestion2'; +import { authedFetch } from '../../../utils/utils.jsx'; import { dataAttr, labelIndex, takeaways2, sim2TextVariable as varText, sim2TextControl as controlText, sim2Information as info } from '../dataAttr'; diff --git a/media/js/src/simulationTwo/variables.jsx b/media/js/src/simulations/simulation2/components/variables.jsx similarity index 94% rename from media/js/src/simulationTwo/variables.jsx rename to media/js/src/simulations/simulation2/components/variables.jsx index 7757afaa..4086034d 100644 --- a/media/js/src/simulationTwo/variables.jsx +++ b/media/js/src/simulations/simulation2/components/variables.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { inlineKatex, formulaText } from '../utils'; +import { inlineKatex, formulaText } from '../../../utils/utils'; import { labelIndex as label } from '../dataAttr'; // If this get's implemented into other Simulations, rewrite as a JSX component diff --git a/media/js/src/dataAttr.jsx b/media/js/src/simulations/simulation2/dataAttr.jsx similarity index 99% rename from media/js/src/dataAttr.jsx rename to media/js/src/simulations/simulation2/dataAttr.jsx index 1db05a03..4ae96237 100644 --- a/media/js/src/dataAttr.jsx +++ b/media/js/src/simulations/simulation2/dataAttr.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { inlineKatex } from './utils'; +import { inlineKatex } from '../../utils/utils'; export const dataAttr = { affairs_sim2: { diff --git a/json/datasets.json b/media/js/src/simulations/simulation2/datasets.json similarity index 100% rename from json/datasets.json rename to media/js/src/simulations/simulation2/datasets.json diff --git a/media/js/src/dataAttr.test.jsx b/media/js/src/simulations/simulation2/tests/dataAttr.test.jsx similarity index 98% rename from media/js/src/dataAttr.test.jsx rename to media/js/src/simulations/simulation2/tests/dataAttr.test.jsx index e8338938..92b6e08e 100644 --- a/media/js/src/dataAttr.test.jsx +++ b/media/js/src/simulations/simulation2/tests/dataAttr.test.jsx @@ -1,6 +1,7 @@ import { dataAttr, labelIndex, takeaways2, sim2TextVariable as varText, - sim2TextControl as controlText, sim2Information as info } from './dataAttr'; + sim2TextControl as controlText, + sim2Information as info } from '../dataAttr'; describe('Simulation 2 Object types', () => { test('dataAttr object is defined', () => { diff --git a/media/js/src/katexComponent.jsx b/media/js/src/utils/katexComponent.jsx similarity index 100% rename from media/js/src/katexComponent.jsx rename to media/js/src/utils/katexComponent.jsx diff --git a/media/js/src/utils.jsx b/media/js/src/utils/utils.jsx similarity index 100% rename from media/js/src/utils.jsx rename to media/js/src/utils/utils.jsx diff --git a/media/js/src/utils.test.jsx b/media/js/src/utils/utils.test.jsx similarity index 100% rename from media/js/src/utils.test.jsx rename to media/js/src/utils/utils.test.jsx