{"ast":null,"code":"var _jsxFileName = \"D:\\\\Project\\\\UC_Trains_Voice\\\\react-demo\\\\src\\\\gavt\\\\GavtPractice.tsx\",\n  _s = $RefreshSig$();\nimport React from 'react';\nimport { useState } from 'react';\nimport { useLocation, Link } from 'react-router-dom';\nimport Wave from './Wave/Wave';\nimport Word from './Word';\nimport { Divider, Breadcrumb } from 'antd';\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst GavtPractice = () => {\n  _s();\n  const [currentVowelIndex, setCurrentVowelIndex] = useState(0);\n  const location = useLocation();\n  const {\n    frequencies\n  } = location.state || {};\n  const refFreqArray = Object.entries(frequencies || {}).map(([vowel, freq]) => ({\n    vowel,\n    freq: Number(freq)\n  }));\n  const currentVowel = refFreqArray[currentVowelIndex].vowel;\n  const handleNextVowel = () => {\n    setCurrentVowelIndex(prevIndex => (prevIndex + 1) % refFreqArray.length);\n  };\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        display: 'flex',\n        justifyContent: 'start',\n        width: '70%'\n      },\n      children: /*#__PURE__*/_jsxDEV(Breadcrumb, {\n        items: [{\n          title: /*#__PURE__*/_jsxDEV(Link, {\n            to: \"/gavt\",\n            children: \"Gavt Home\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 32,\n            columnNumber: 22\n          }, this)\n        }, {\n          title: 'Practice'\n        }]\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 29,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 28,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Word, {\n      refFreqArray: refFreqArray,\n      currentVowel: currentVowel,\n      onNextVowel: handleNextVowel\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 40,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Divider, {}, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 45,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Wave, {\n      frequency: currentVowel.freq // Use custom frequency if available, otherwise use reference frequency.\n      ,\n      currentVowel: currentVowel.vowel,\n      refFreqArray: refFreqArray\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 46,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true);\n};\n_s(GavtPractice, \"/n9Kb1q//W81kOwCF0SqwEgJrAE=\", false, function () {\n  return [useLocation];\n});\n_c = GavtPractice;\nexport default GavtPractice;\nvar _c;\n$RefreshReg$(_c, \"GavtPractice\");","map":{"version":3,"names":["React","useState","useLocation","Link","Wave","Word","Divider","Breadcrumb","jsxDEV","_jsxDEV","Fragment","_Fragment","GavtPractice","_s","currentVowelIndex","setCurrentVowelIndex","location","frequencies","state","refFreqArray","Object","entries","map","vowel","freq","Number","currentVowel","handleNextVowel","prevIndex","length","children","style","display","justifyContent","width","items","title","to","fileName","_jsxFileName","lineNumber","columnNumber","onNextVowel","frequency","_c","$RefreshReg$"],"sources":["D:/Project/UC_Trains_Voice/react-demo/src/gavt/GavtPractice.tsx"],"sourcesContent":["import React from 'react';\r\nimport { useState, useEffect } from 'react';\r\nimport { useLocation, Link } from 'react-router-dom';\r\n\r\nimport Wave from './Wave/Wave';\r\nimport Word from './Word';\r\n\r\nimport { Divider, Breadcrumb } from 'antd';\r\n\r\nconst GavtPractice: React.FC = () => {\r\n  const [currentVowelIndex, setCurrentVowelIndex] = useState(0);\r\n\r\n  const location = useLocation();\r\n  const { frequencies } = location.state || {};\r\n  const refFreqArray = Object.entries(frequencies || {}).map(([vowel, freq]) => ({\r\n    vowel,\r\n    freq: Number(freq)\r\n  }));\r\n\r\n  const currentVowel = refFreqArray[currentVowelIndex].vowel;\r\n\r\n  const handleNextVowel = () => {\r\n    setCurrentVowelIndex((prevIndex) => (prevIndex + 1) % refFreqArray.length);\r\n  };\r\n\r\n  return (\r\n    <>\r\n      <div style={{display: 'flex', justifyContent: 'start', width: '70%'}}> \r\n        <Breadcrumb \r\n          items={[\r\n            {\r\n              title: <Link to=\"/gavt\">Gavt Home</Link>,\r\n            },\r\n            {\r\n              title:'Practice',\r\n            }\r\n          ]}\r\n        />\r\n      </div>\r\n      <Word \r\n        refFreqArray={refFreqArray}\r\n        currentVowel={currentVowel}\r\n        onNextVowel={handleNextVowel}\r\n      />\r\n      <Divider />\r\n      <Wave \r\n        frequency={currentVowel.freq} // Use custom frequency if available, otherwise use reference frequency.\r\n        currentVowel={currentVowel.vowel}\r\n        refFreqArray={refFreqArray}\r\n      />\r\n    </>\r\n  );\r\n};\r\n\r\nexport default GavtPractice;"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAmB,OAAO;AAC3C,SAASC,WAAW,EAAEC,IAAI,QAAQ,kBAAkB;AAEpD,OAAOC,IAAI,MAAM,aAAa;AAC9B,OAAOC,IAAI,MAAM,QAAQ;AAEzB,SAASC,OAAO,EAAEC,UAAU,QAAQ,MAAM;AAAC,SAAAC,MAAA,IAAAC,OAAA,EAAAC,QAAA,IAAAC,SAAA;AAE3C,MAAMC,YAAsB,GAAGA,CAAA,KAAM;EAAAC,EAAA;EACnC,MAAM,CAACC,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGd,QAAQ,CAAC,CAAC,CAAC;EAE7D,MAAMe,QAAQ,GAAGd,WAAW,CAAC,CAAC;EAC9B,MAAM;IAAEe;EAAY,CAAC,GAAGD,QAAQ,CAACE,KAAK,IAAI,CAAC,CAAC;EAC5C,MAAMC,YAAY,GAAGC,MAAM,CAACC,OAAO,CAACJ,WAAW,IAAI,CAAC,CAAC,CAAC,CAACK,GAAG,CAAC,CAAC,CAACC,KAAK,EAAEC,IAAI,CAAC,MAAM;IAC7ED,KAAK;IACLC,IAAI,EAAEC,MAAM,CAACD,IAAI;EACnB,CAAC,CAAC,CAAC;EAEH,MAAME,YAAY,GAAGP,YAAY,CAACL,iBAAiB,CAAC,CAACS,KAAK;EAE1D,MAAMI,eAAe,GAAGA,CAAA,KAAM;IAC5BZ,oBAAoB,CAAEa,SAAS,IAAK,CAACA,SAAS,GAAG,CAAC,IAAIT,YAAY,CAACU,MAAM,CAAC;EAC5E,CAAC;EAED,oBACEpB,OAAA,CAAAE,SAAA;IAAAmB,QAAA,gBACErB,OAAA;MAAKsB,KAAK,EAAE;QAACC,OAAO,EAAE,MAAM;QAAEC,cAAc,EAAE,OAAO;QAAEC,KAAK,EAAE;MAAK,CAAE;MAAAJ,QAAA,eACnErB,OAAA,CAACF,UAAU;QACT4B,KAAK,EAAE,CACL;UACEC,KAAK,eAAE3B,OAAA,CAACN,IAAI;YAACkC,EAAE,EAAC,OAAO;YAAAP,QAAA,EAAC;UAAS;YAAAQ,QAAA,EAAAC,YAAA;YAAAC,UAAA;YAAAC,YAAA;UAAA,OAAM;QACzC,CAAC,EACD;UACEL,KAAK,EAAC;QACR,CAAC;MACD;QAAAE,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OACH;IAAC;MAAAH,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OACC,CAAC,eACNhC,OAAA,CAACJ,IAAI;MACHc,YAAY,EAAEA,YAAa;MAC3BO,YAAY,EAAEA,YAAa;MAC3BgB,WAAW,EAAEf;IAAgB;MAAAW,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAC9B,CAAC,eACFhC,OAAA,CAACH,OAAO;MAAAgC,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAAE,CAAC,eACXhC,OAAA,CAACL,IAAI;MACHuC,SAAS,EAAEjB,YAAY,CAACF,IAAK,CAAC;MAAA;MAC9BE,YAAY,EAAEA,YAAY,CAACH,KAAM;MACjCJ,YAAY,EAAEA;IAAa;MAAAmB,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAC5B,CAAC;EAAA,eACF,CAAC;AAEP,CAAC;AAAC5B,EAAA,CA3CID,YAAsB;EAAA,QAGTV,WAAW;AAAA;AAAA0C,EAAA,GAHxBhC,YAAsB;AA6C5B,eAAeA,YAAY;AAAC,IAAAgC,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}