{"ast":null,"code":"var _jsxFileName = \"/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/src/gavt/Word.tsx\",\n  _s = $RefreshSig$();\nimport * as chainData from './data/chain.json';\nimport RefTable from './table/RefTable';\nimport { vowelMapping } from './GavtForm';\nimport React, { useState, useEffect, useMemo } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { Card, Button, Flex, Tag, Modal, message } from 'antd';\nimport { RetweetOutlined, LeftCircleOutlined, RightCircleOutlined } from '@ant-design/icons';\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst reversedVowelMapping = Object.fromEntries(Object.entries(vowelMapping).map(([key, value]) => [value, key]));\nconst Word = ({\n  refFreqArray,\n  currentVowelIdx,\n  onNextVowel\n}) => {\n  _s();\n  const [phraseIndex, setPhraseIndex] = useState(0);\n  const [chainId, setChainId] = useState(1);\n  const [phrases, setPhrases] = useState([]);\n  const [currentPhrase, setCurrentPhrase] = useState('');\n  const [refOpen, setRefOpen] = useState(false);\n  const navigate = useNavigate();\n  const currentVowel = useMemo(() => (refFreqArray === null || refFreqArray === void 0 ? void 0 : refFreqArray[currentVowelIdx]) || {\n    vowel: '',\n    freq: 0\n  }, [refFreqArray, currentVowelIdx]);\n  useEffect(() => {\n    if (!refFreqArray || refFreqArray.length === 0 || currentVowelIdx >= refFreqArray.length) {\n      message.error('No vowel data provided. Please select vowels first. Redirecting to home page...');\n      setTimeout(() => {\n        navigate('/resonance/selection');\n      }, 2000);\n    }\n  }, [refFreqArray, currentVowelIdx, navigate]);\n  useEffect(() => {\n    setChainId(1);\n    setPhraseIndex(0);\n    if (currentVowel.vowel) {\n      const vowelData = chainData[currentVowel.vowel];\n      const firstChain = vowelData[0];\n      if (firstChain) {\n        setPhrases(firstChain.phrases);\n        setCurrentPhrase(firstChain.phrases[0]);\n      }\n    }\n  }, [currentVowel]);\n  useEffect(() => {\n    if (currentVowel.vowel) {\n      const vowelData = chainData[currentVowel.vowel];\n      const chain = vowelData.find(chain => chain.chainId === chainId);\n      if (chain) {\n        setPhrases(chain.phrases);\n        setCurrentPhrase(chain.phrases[0]);\n      }\n    }\n  }, [currentVowel, chainId]);\n  const handleMoreComplex = () => {\n    if (phraseIndex < phrases.length - 1) {\n      setPhraseIndex(phraseIndex + 1);\n      setCurrentPhrase(phrases[phraseIndex + 1]);\n    }\n  };\n  const handleLessComplex = () => {\n    if (phraseIndex > 0) {\n      setPhraseIndex(phraseIndex - 1);\n      setCurrentPhrase(phrases[phraseIndex - 1]);\n    }\n  };\n  const handleNextChain = () => {\n    const newChainId = chainId % 3 + 1;\n    setChainId(newChainId);\n    const newChain = chainData[currentVowel.vowel].find(chain => chain.chainId === newChainId);\n    if (newChain) {\n      setPhrases(newChain.phrases);\n      setCurrentPhrase(newChain.phrases[0]);\n      setPhraseIndex(0);\n    }\n  };\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      children: /*#__PURE__*/_jsxDEV(\"p\", {\n        children: \"Read the text and try to match the second peak (R2) to the slider. \"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 97,\n        columnNumber: 13\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 95,\n      columnNumber: 13\n    }, this), /*#__PURE__*/_jsxDEV(\"p\", {\n      children: [\"Current target vowel is: \", /*#__PURE__*/_jsxDEV(Tag, {\n        color: \"purple\",\n        children: reversedVowelMapping[currentVowel.vowel] || currentVowel.vowel\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 99,\n        columnNumber: 41\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 99,\n      columnNumber: 13\n    }, this), /*#__PURE__*/_jsxDEV(Flex, {\n      gap: \"small\",\n      style: {\n        margin: '10px'\n      },\n      children: [/*#__PURE__*/_jsxDEV(Button, {\n        icon: /*#__PURE__*/_jsxDEV(RetweetOutlined, {}, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 105,\n          columnNumber: 31\n        }, this),\n        onClick: onNextVowel,\n        disabled: refFreqArray.length === 1,\n        children: \"Try a different vowel\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 105,\n        columnNumber: 17\n      }, this), /*#__PURE__*/_jsxDEV(Button, {\n        icon: /*#__PURE__*/_jsxDEV(RetweetOutlined, {}, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 106,\n          columnNumber: 31\n        }, this),\n        onClick: handleNextChain,\n        children: \"Try a different phrase chain\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 106,\n        columnNumber: 17\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 104,\n      columnNumber: 13\n    }, this), /*#__PURE__*/_jsxDEV(Card, {\n      hoverable: true,\n      title: `${currentPhrase}`,\n      bordered: false,\n      style: {\n        width: 300\n      },\n      children: /*#__PURE__*/_jsxDEV(\"p\", {\n        children: `${phrases[0]} `\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 115,\n        columnNumber: 17\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 109,\n      columnNumber: 13\n    }, this), /*#__PURE__*/_jsxDEV(Flex, {\n      gap: \"small\",\n      style: {\n        margin: '10px'\n      },\n      children: [/*#__PURE__*/_jsxDEV(Button, {\n        icon: /*#__PURE__*/_jsxDEV(LeftCircleOutlined, {}, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 118,\n          columnNumber: 31\n        }, this),\n        onClick: handleLessComplex,\n        disabled: phraseIndex === 0,\n        children: \"Less complex\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 118,\n        columnNumber: 17\n      }, this), /*#__PURE__*/_jsxDEV(Button, {\n        type: \"primary\",\n        icon: /*#__PURE__*/_jsxDEV(RightCircleOutlined, {}, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 119,\n          columnNumber: 46\n        }, this),\n        onClick: handleMoreComplex,\n        disabled: phraseIndex === phrases.length - 1,\n        children: \"More complex\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 119,\n        columnNumber: 17\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 117,\n      columnNumber: 13\n    }, this), /*#__PURE__*/_jsxDEV(Modal, {\n      title: \"Reference Frequency Values\",\n      centered: true,\n      open: refOpen,\n      onOk: () => setRefOpen(false),\n      onCancel: () => setRefOpen(false),\n      width: 1000,\n      footer: [/*#__PURE__*/_jsxDEV(Button, {\n        type: \"primary\",\n        onClick: () => setRefOpen(false),\n        children: \"OK\"\n      }, \"submit\", false, {\n        fileName: _jsxFileName,\n        lineNumber: 129,\n        columnNumber: 17\n      }, this)],\n      children: /*#__PURE__*/_jsxDEV(RefTable, {}, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 134,\n        columnNumber: 17\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 121,\n      columnNumber: 13\n    }, this)]\n  }, void 0, true);\n};\n_s(Word, \"2OmexbUIgIE9pptV6kFPJClt9fE=\", false, function () {\n  return [useNavigate];\n});\n_c = Word;\nexport default Word;\nvar _c;\n$RefreshReg$(_c, \"Word\");","map":{"version":3,"names":["chainData","RefTable","vowelMapping","React","useState","useEffect","useMemo","useNavigate","Card","Button","Flex","Tag","Modal","message","RetweetOutlined","LeftCircleOutlined","RightCircleOutlined","jsxDEV","_jsxDEV","Fragment","_Fragment","reversedVowelMapping","Object","fromEntries","entries","map","key","value","Word","refFreqArray","currentVowelIdx","onNextVowel","_s","phraseIndex","setPhraseIndex","chainId","setChainId","phrases","setPhrases","currentPhrase","setCurrentPhrase","refOpen","setRefOpen","navigate","currentVowel","vowel","freq","length","error","setTimeout","vowelData","firstChain","chain","find","handleMoreComplex","handleLessComplex","handleNextChain","newChainId","newChain","children","fileName","_jsxFileName","lineNumber","columnNumber","color","gap","style","margin","icon","onClick","disabled","hoverable","title","bordered","width","type","centered","open","onOk","onCancel","footer","_c","$RefreshReg$"],"sources":["/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/src/gavt/Word.tsx"],"sourcesContent":["import * as chainData from './data/chain.json';\nimport RefTable from './table/RefTable';\nimport { vowelMapping } from './GavtForm';\n\nimport React, { useState, useEffect, useMemo } from 'react';\nimport { useNavigate } from 'react-router-dom';\n\nimport { Card, Button, Flex, Tag, Modal, message } from 'antd';\nimport { RetweetOutlined, LeftCircleOutlined, RightCircleOutlined } from '@ant-design/icons';\n\ninterface WordProps {\n    refFreqArray: {\n      vowel: string;\n      freq: number;\n    }[];\n    currentVowelIdx: number;\n    onNextVowel: () => void;\n}\n\nconst reversedVowelMapping: Record<string, string> = Object.fromEntries(\n    Object.entries(vowelMapping).map(([key, value]) => [value, key])\n);\n\nconst Word: React.FC<WordProps> = ({ refFreqArray, currentVowelIdx, onNextVowel }) => {\n    const [phraseIndex, setPhraseIndex] = useState(0);\n    const [chainId, setChainId] = useState(1);\n    const [phrases, setPhrases] = useState<string[]>([]);\n    const [currentPhrase, setCurrentPhrase] = useState('');\n    const [refOpen, setRefOpen] = useState(false);\n    const navigate = useNavigate();\n    const currentVowel = useMemo(() =>refFreqArray?.[currentVowelIdx] || { vowel: '', freq: 0 }, [refFreqArray, currentVowelIdx]);\n\n    useEffect(() => {\n        if (!refFreqArray || refFreqArray.length === 0 || currentVowelIdx >= refFreqArray.length) {\n          message.error('No vowel data provided. Please select vowels first. Redirecting to home page...');\n          setTimeout(() => {\n            navigate('/resonance/selection');\n          }, 2000);\n        }\n      }, [refFreqArray, currentVowelIdx, navigate]);\n\n    useEffect(() => {\n        setChainId(1);\n        setPhraseIndex(0);\n    \n        if (currentVowel.vowel) {\n            const vowelData = chainData[currentVowel.vowel as keyof typeof chainData];\n            const firstChain = vowelData[0];\n            if (firstChain) {\n                setPhrases(firstChain.phrases);\n                setCurrentPhrase(firstChain.phrases[0]);\n            }\n        }\n    }, [currentVowel]);\n\n    useEffect(() => {\n        if (currentVowel.vowel) {\n            const vowelData = chainData[currentVowel.vowel as keyof typeof chainData];\n            const chain = vowelData.find(chain => chain.chainId === chainId);\n            if (chain) {\n                setPhrases(chain.phrases);\n                setCurrentPhrase(chain.phrases[0]);\n            }\n        }\n    }, [currentVowel, chainId]);\n\n    const handleMoreComplex = () => {\n        if (phraseIndex < phrases.length - 1) {\n            setPhraseIndex(phraseIndex + 1);\n            setCurrentPhrase(phrases[phraseIndex + 1]);\n        }\n    };\n\n    const handleLessComplex = () => {\n        if (phraseIndex > 0) {\n            setPhraseIndex(phraseIndex - 1);\n            setCurrentPhrase(phrases[phraseIndex - 1]);\n        }\n    };\n\n    const handleNextChain = () => {\n        const newChainId = (chainId % 3) + 1;\n        setChainId(newChainId);\n\n        const newChain = chainData[currentVowel.vowel as keyof typeof chainData].find(chain => chain.chainId === newChainId);\n        if (newChain) {\n            setPhrases(newChain.phrases);\n            setCurrentPhrase(newChain.phrases[0]);\n            setPhraseIndex(0);\n        }\n    };\n    \n    return(\n        <>\n            <div>\n            {/* <p>Vowels you just chose to practice: <Tag color='purple'>{refFreqArray.map(f => reversedVowelMapping[f.vowel] || f.vowel).join(', ')}</Tag></p> */}\n            <p>Read the text and try to match the second peak (R2) to the slider. </p>\n            </div>\n            <p>Current target vowel is: <Tag color='purple'>{reversedVowelMapping[currentVowel.vowel] || currentVowel.vowel}</Tag></p>\n            {/* <p>\n                <a onClick={()=>setRefOpen(true)}>Reference Frequency Value </a>\n                of <Tag color='purple'>{reversedVowelMapping[currentVowel.vowel] || currentVowel.vowel}</Tag>: <Tag color='yellow'>{currentVowel.freq} Hz </Tag>.\n            </p> */}\n            <Flex gap=\"small\" style={{margin:'10px'}}>\n                <Button icon={<RetweetOutlined />} onClick={onNextVowel} disabled={refFreqArray.length === 1}>Try a different vowel</Button>\n                <Button icon={<RetweetOutlined />} onClick={handleNextChain}>Try a different phrase chain</Button>\n            </Flex>\n        \n            <Card \n                hoverable\n                title={`${currentPhrase}`}\n                bordered={false}\n                style={{ width: 300 }}\n            >\n                <p>{`${phrases[0]} `}</p>\n            </Card>\n            <Flex gap=\"small\" style={{margin:'10px'}}>\n                <Button icon={<LeftCircleOutlined />} onClick={handleLessComplex} disabled={phraseIndex === 0}>Less complex</Button>\n                <Button type=\"primary\" icon={<RightCircleOutlined />} onClick={handleMoreComplex} disabled={phraseIndex === phrases.length - 1}>More complex</Button>\n            </Flex>\n            <Modal\n                title=\"Reference Frequency Values\"\n                centered\n                open={refOpen}\n                onOk={() => setRefOpen(false)}\n                onCancel={() => setRefOpen(false)}\n                width={1000}\n                footer={[\n                <Button key=\"submit\" type=\"primary\" onClick={() => setRefOpen(false)}>\n                    OK\n                </Button>\n                ]}\n            >\n                <RefTable />\n            </Modal>\n        </>\n    )\n};\n\nexport default Word;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}