{"ast":null,"code":"var _jsxFileName = \"/var/www/gavt/react-demo/src/gavt/ResonanceMenu.jsx\",\n  _s = $RefreshSig$();\nimport React from 'react';\nimport { Link, useLocation } from 'react-router-dom';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst ResonanceMenu = () => {\n  _s();\n  const location = useLocation();\n  const menuItems = [{\n    path: '/resonance',\n    name: 'Tutorial'\n  }, {\n    path: '/resonance/selection',\n    name: 'Setup'\n  }, {\n    path: '/resonance/practice',\n    name: 'Practice'\n  }];\n  const isPracticePage = location.pathname === '/resonance/practice';\n  const handlePracticeClick = e => {\n    if (!isPracticePage) {\n      alert('You must select at least one vowel on Setup Page first');\n      e.preventDefault();\n    }\n  };\n  return /*#__PURE__*/_jsxDEV(\"nav\", {\n    className: \"nav\",\n    children: menuItems.map((item, index) => /*#__PURE__*/_jsxDEV(React.Fragment, {\n      children: [/*#__PURE__*/_jsxDEV(Link, {\n        to: item.path,\n        className: `link ${location.pathname === item.path ? 'active' : ''}`,\n        onClick: item.path === '/resonance/practice' ? handlePracticeClick : undefined,\n        children: item.name\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 26,\n        columnNumber: 9\n      }, this), index < menuItems.length - 1 && /*#__PURE__*/_jsxDEV(\"span\", {\n        className: \"separator\",\n        children: \"|\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 33,\n        columnNumber: 44\n      }, this)]\n    }, item.name, true, {\n      fileName: _jsxFileName,\n      lineNumber: 25,\n      columnNumber: 9\n    }, this))\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 23,\n    columnNumber: 5\n  }, this);\n};\n_s(ResonanceMenu, \"pkHmaVRPskBaU4tMJuJJpV42k1I=\", false, function () {\n  return [useLocation];\n});\n_c = ResonanceMenu;\nexport default ResonanceMenu;\nvar _c;\n$RefreshReg$(_c, \"ResonanceMenu\");","map":{"version":3,"names":["React","Link","useLocation","jsxDEV","_jsxDEV","ResonanceMenu","_s","location","menuItems","path","name","isPracticePage","pathname","handlePracticeClick","e","alert","preventDefault","className","children","map","item","index","Fragment","to","onClick","undefined","fileName","_jsxFileName","lineNumber","columnNumber","length","_c","$RefreshReg$"],"sources":["/var/www/gavt/react-demo/src/gavt/ResonanceMenu.jsx"],"sourcesContent":["import React from 'react';\nimport { Link, useLocation } from 'react-router-dom';\n\nconst ResonanceMenu = () => {\n  const location = useLocation();\n  const menuItems = [\n    { path: '/resonance', name: 'Tutorial' },\n    { path: '/resonance/selection', name: 'Setup' },\n    { path: '/resonance/practice', name: 'Practice' },  \n  ];\n\n  const isPracticePage = location.pathname === '/resonance/practice';\n\n  const handlePracticeClick = (e) => {\n    if (!isPracticePage) {\n      alert('You must select at least one vowel on Setup Page first');\n      e.preventDefault();\n    }\n  };\n\n\n  return (\n    <nav className=\"nav\">\n      {menuItems.map((item, index) => (\n        <React.Fragment key={item.name}>\n        <Link \n            to={item.path} \n            className={`link ${location.pathname === item.path ? 'active' : ''}`}\n            onClick={item.path === '/resonance/practice' ? handlePracticeClick : undefined}\n          >\n            {item.name}\n          </Link>\n          {index < menuItems.length - 1 && <span className=\"separator\">|</span>}\n        </React.Fragment>\n      ))}\n    </nav>\n  );\n}\n\nexport default ResonanceMenu;"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,WAAW,QAAQ,kBAAkB;AAAC,SAAAC,MAAA,IAAAC,OAAA;AAErD,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAAAC,EAAA;EAC1B,MAAMC,QAAQ,GAAGL,WAAW,CAAC,CAAC;EAC9B,MAAMM,SAAS,GAAG,CAChB;IAAEC,IAAI,EAAE,YAAY;IAAEC,IAAI,EAAE;EAAW,CAAC,EACxC;IAAED,IAAI,EAAE,sBAAsB;IAAEC,IAAI,EAAE;EAAQ,CAAC,EAC/C;IAAED,IAAI,EAAE,qBAAqB;IAAEC,IAAI,EAAE;EAAW,CAAC,CAClD;EAED,MAAMC,cAAc,GAAGJ,QAAQ,CAACK,QAAQ,KAAK,qBAAqB;EAElE,MAAMC,mBAAmB,GAAIC,CAAC,IAAK;IACjC,IAAI,CAACH,cAAc,EAAE;MACnBI,KAAK,CAAC,wDAAwD,CAAC;MAC/DD,CAAC,CAACE,cAAc,CAAC,CAAC;IACpB;EACF,CAAC;EAGD,oBACEZ,OAAA;IAAKa,SAAS,EAAC,KAAK;IAAAC,QAAA,EACjBV,SAAS,CAACW,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,kBACzBjB,OAAA,CAACJ,KAAK,CAACsB,QAAQ;MAAAJ,QAAA,gBACfd,OAAA,CAACH,IAAI;QACDsB,EAAE,EAAEH,IAAI,CAACX,IAAK;QACdQ,SAAS,EAAG,QAAOV,QAAQ,CAACK,QAAQ,KAAKQ,IAAI,CAACX,IAAI,GAAG,QAAQ,GAAG,EAAG,EAAE;QACrEe,OAAO,EAAEJ,IAAI,CAACX,IAAI,KAAK,qBAAqB,GAAGI,mBAAmB,GAAGY,SAAU;QAAAP,QAAA,EAE9EE,IAAI,CAACV;MAAI;QAAAgB,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OACN,CAAC,EACNR,KAAK,GAAGb,SAAS,CAACsB,MAAM,GAAG,CAAC,iBAAI1B,OAAA;QAAMa,SAAS,EAAC,WAAW;QAAAC,QAAA,EAAC;MAAC;QAAAQ,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAM,CAAC;IAAA,GARlDT,IAAI,CAACV,IAAI;MAAAgB,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OASd,CACjB;EAAC;IAAAH,QAAA,EAAAC,YAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,OACC,CAAC;AAEV,CAAC;AAAAvB,EAAA,CAlCKD,aAAa;EAAA,QACAH,WAAW;AAAA;AAAA6B,EAAA,GADxB1B,aAAa;AAoCnB,eAAeA,aAAa;AAAC,IAAA0B,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}