{"ast":null,"code":"var _jsxFileName = \"D:\\\\Project\\\\UC_Trains_Voice\\\\react-demo\\\\src\\\\MainLayout.tsx\",\n  _s = $RefreshSig$();\nimport React, { useState, useEffect } from 'react';\nimport { Layout, Menu, ConfigProvider, Button, Avatar, Modal, Space, Dropdown } from 'antd';\nimport { UserOutlined } from '@ant-design/icons';\nimport { Routes, Route, Link, useLocation, useNavigate } from 'react-router-dom';\nimport About from './Route/About';\nimport Sample from './Route/Sample';\nimport SampleVolume from './Route/SampleVolume';\nimport Assessment from './Route/Assessment';\nimport Help from './Route/Help';\nimport Main from './Route/HomePage';\nimport logoImage from '../src/icon/new-icon-removebg-preview.png';\nimport './CSS/MainLayout.css';\nimport { Flex } from 'antd';\nimport { createFromIconfontCN } from '@ant-design/icons';\nimport { Tooltip } from 'antd';\nimport AudioPlayer from 'react-h5-audio-player';\nimport { useOptionsHooks } from './hooks/useOptionsHooks';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst PlayIcon = createFromIconfontCN({\n  scriptUrl: '//at.alicdn.com/t/c/font_4566050_zpduwnlv2t.js'\n});\n_c = PlayIcon;\nconst CustomButton = ({\n  label,\n  handleIconClick\n}) => {\n  return /*#__PURE__*/_jsxDEV(Button, {\n    style: {\n      display: 'flex',\n      alignItems: 'center'\n    },\n    className: \"dropdownIcon\",\n    icon: /*#__PURE__*/_jsxDEV(PlayIcon, {\n      style: {\n        fontSize: '1.7em'\n      },\n      onClick: handleIconClick,\n      type: \"icon-audioPlay\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 49,\n      columnNumber: 9\n    }, this),\n    children: label\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 42,\n    columnNumber: 5\n  }, this);\n};\n_c2 = CustomButton;\nconst {\n  Header,\n  Content,\n  Footer\n} = Layout;\nconst defaultBackColor = \"linear-gradient(to bottom, #d7d2e6, #c9d9f3)\";\nconst defaultBackColor_2 = \"url('/transvoice/HomePage-img.png')\";\nconst marksRange = {\n  50: '50Hz',\n  600: '600Hz'\n};\nconst marksBallPos = {\n  0: '0%',\n  1: '100%'\n};\nconst marksVol = {\n  50: '50dB',\n  90: '90dB'\n};\nconst MainLayout = () => {\n  _s();\n  const {\n    gender,\n    setGender,\n    genderName,\n    audioPlayerNew,\n    audioKey,\n    audioSrc,\n    fetchAudioData,\n    handleIconClick,\n    itemsAvatar\n  } = useOptionsHooks();\n  const [isClickListen, setIsClickListen] = useState(0);\n  const location = useLocation();\n  const navigate = useNavigate();\n  const [isModalOpen, setIsModalOpen] = useState(false);\n  const [openSetting, setOpenSetting] = useState(false);\n  const [selectedItem, setSelectedItem] = useState('Settings');\n  const [showNotesPar, setShowNotesPar] = useState(true);\n  const [enableVol, setEnableVol] = useState(false);\n  const [menuKey, setMenuKey] = useState('4');\n  const [backgroundImg, setBackgroundImg] = useState(defaultBackColor);\n  useEffect(() => {\n    fetchAudioData();\n  }, [genderName]);\n  useEffect(() => {\n    switch (menuKey) {\n      case '4':\n        setBackgroundImg(defaultBackColor_2);\n        break;\n      case '6':\n        setBackgroundImg(defaultBackColor_2);\n        break;\n      default:\n        setBackgroundImg(\"transparent\");\n    }\n    window.scrollTo(0, 0);\n  }, [menuKey]);\n  useEffect(() => {\n    const pathIn = location.pathname;\n    switch (pathIn) {\n      case \"/HomePage\":\n        setMenuKey('4');\n        break;\n      case \"/Home\":\n        setMenuKey('7');\n        break;\n      case '/pitch':\n        setMenuKey('3');\n        break;\n      case '/volume':\n        setMenuKey('5');\n        break;\n      case '/assessment':\n        setMenuKey('6');\n        break;\n      case '/about':\n        setMenuKey('1');\n        break;\n      case '/Help':\n        setMenuKey('2');\n        break;\n      default:\n        setMenuKey('4');\n    }\n  }, [location.pathname]);\n  const navigateToPitch = () => {\n    setMenuKey('3');\n    navigate('/pitch');\n  };\n  const showModal = () => {\n    setIsModalOpen(true);\n  };\n  const handleCancel = () => {\n    setIsModalOpen(false);\n  };\n  const showDrawer = () => {\n    setOpenSetting(true);\n  };\n  const closeDrawer = () => {\n    setOpenSetting(false);\n  };\n  const onClickMenu = e => {\n    setSelectedItem(e.key);\n  };\n  const onChangeHz = ({\n    target: {\n      value\n    }\n  }) => {\n    setShowNotesPar(value !== 'hz');\n  };\n  const onChangeRange = rangeValue => {\n    // handle change for pitch display range\n  };\n  const onChangePosition = positionValue => {\n    // handle change for pitch indicator horizontal position\n  };\n  const onChangeSpeed = speedValue => {\n    // handle change for pitch indicator speed\n  };\n  const EnableVoluneMode = e => {\n    setEnableVol(e);\n  };\n  const onChangeThreshold = e => {\n    // handle change for threshold\n  };\n  const formatterdB = value => `${value} dB`;\n  const formatterHz = value => `${value} Hz`;\n  const formatterPos = value => `${value ? (value * 100).toFixed(0) : '0'}%`;\n\n  // render profile page\n  const renderContent = () => {\n    switch (selectedItem) {\n      case 'Profile':\n        return /*#__PURE__*/_jsxDEV(\"p\", {\n          children: \"profile\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 214,\n          columnNumber: 16\n        }, this);\n      case 'Settings':\n        return /*#__PURE__*/_jsxDEV(\"div\", {\n          children: /*#__PURE__*/_jsxDEV(Flex, {\n            vertical: true,\n            gap: \"middle\",\n            children: [/*#__PURE__*/_jsxDEV(Space, {\n              children: [/*#__PURE__*/_jsxDEV(\"p\", {\n                children: \"# Model Selection: \"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 219,\n                columnNumber: 15\n              }, this), /*#__PURE__*/_jsxDEV(Dropdown.Button, {\n                menu: {\n                  items: itemsAvatar\n                },\n                placement: \"bottom\",\n                trigger: [\"click\"],\n                overlayClassName: \"custom-dropdown\",\n                buttonsRender: ([leftButton, rightButton]) => [/*#__PURE__*/_jsxDEV(Tooltip, {\n                  children: /*#__PURE__*/_jsxDEV(Button, {\n                    style: {\n                      display: 'flex',\n                      alignItems: 'center'\n                    },\n                    onClick: handleIconClick,\n                    icon: /*#__PURE__*/_jsxDEV(PlayIcon, {\n                      style: {\n                        fontSize: '1.7em'\n                      },\n                      type: \"icon-audioPlay\"\n                    }, void 0, false, {\n                      fileName: _jsxFileName,\n                      lineNumber: 273,\n                      columnNumber: 25\n                    }, this),\n                    children: genderName === \"none\" ? \"Model Voice\" : gender === \"Female\" ? genderName : 'Male01'\n                  }, void 0, false, {\n                    fileName: _jsxFileName,\n                    lineNumber: 266,\n                    columnNumber: 21\n                  }, this)\n                }, void 0, false, {\n                  fileName: _jsxFileName,\n                  lineNumber: 265,\n                  columnNumber: 19\n                }, this)\n\n                //   <Space.Compact block className='dropdownButton'>\n                //   <Tooltip title=\"Play Audio\">\n                //     <Button icon={\n                //       <PlayIcon\n                //         style={{\n                //           fontSize: '1.7em',\n                //         }}\n                //         onClick={handleIconClick}\n                //         type=\"icon-audioPlay\"\n                //          />\n                //     }\n                //       className=\"dropdownIcon\"\n                //     >\n\n                //     </Button>\n\n                //   </Tooltip>\n\n                //   <Tooltip title=\"Change Avatar\">\n                //     <Button className=\"dropdownLastItem\" onClick={handleDropdownClick}>\n                //       {genderName === \"none\" ? \"Model Voice\" : gender === \"Female\" ? genderName : 'Male01'}\n                //     </Button>\n                //   </Tooltip>\n\n                // </Space.Compact>\n                , /*#__PURE__*/React.cloneElement(rightButton, {\n                  loading: false\n                })]\n                // open={showDropdown}\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 259,\n                columnNumber: 15\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 218,\n              columnNumber: 13\n            }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 326,\n              columnNumber: 13\n            }, this)]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 217,\n            columnNumber: 11\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 216,\n          columnNumber: 17\n        }, this);\n      case 'Other':\n        return /*#__PURE__*/_jsxDEV(\"p\", {\n          children: \"other\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 331,\n          columnNumber: 16\n        }, this);\n      default:\n        return null;\n    }\n  };\n  const menuClicked = e => {\n    console.log(e.key);\n    setMenuKey(e.key);\n  };\n  const exerciseMenu = /*#__PURE__*/_jsxDEV(Menu, {\n    className: \"exercise-menu\",\n    children: [/*#__PURE__*/_jsxDEV(Menu.Item, {\n      onClick: menuClicked,\n      children: /*#__PURE__*/_jsxDEV(Link, {\n        to: \"/pitch\",\n        children: \"PITCH\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 346,\n        columnNumber: 9\n      }, this)\n    }, \"3\", false, {\n      fileName: _jsxFileName,\n      lineNumber: 345,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Menu.Item, {\n      onClick: menuClicked,\n      children: /*#__PURE__*/_jsxDEV(Link, {\n        to: \"/volume\",\n        children: \"VOLUME\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 349,\n        columnNumber: 9\n      }, this)\n    }, \"5\", false, {\n      fileName: _jsxFileName,\n      lineNumber: 348,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 344,\n    columnNumber: 5\n  }, this);\n  const itemsMenu = [{\n    label: 'Profile',\n    key: 'Profile'\n  }, {\n    label: 'Settings',\n    key: 'Settings'\n  }, {\n    label: 'Other',\n    key: 'Other'\n  }];\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    className: \"LayoutBGP\",\n    children: /*#__PURE__*/_jsxDEV(Layout, {\n      style: {\n        ...(menuKey === '4' ? {\n          backgroundImage: defaultBackColor_2,\n          backgroundColor: 'linear-gradient(to bottom, #d7d2e6, #c9d9f3)',\n          width: '200vw',\n          backgroundSize: '10rem',\n          maxWidth: '100vw',\n          flex: 1\n        } : {\n          backgroundColor: 'transparent'\n        }),\n        isolation: \"isolate\",\n        ...(menuKey === '6' ? {\n          backgroundImage: defaultBackColor_2,\n          backgroundColor: 'linear-gradient(to bottom, #d7d2e6, #c9d9f3)',\n          width: '100vw',\n          backgroundSize: '10rem',\n          height: \"1300px\"\n        } : {\n          backgroundColor: 'transparent'\n        })\n      },\n      className: \"layout\",\n      children: [/*#__PURE__*/_jsxDEV(Header, {\n        style: {\n          display: 'flex',\n          justifyContent: 'flex-end',\n          alignItems: 'center',\n          background: 'transparent'\n        },\n        children: [/*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"TVox\",\n          children: /*#__PURE__*/_jsxDEV(\"img\", {\n            className: \"logoImg\",\n            src: logoImage,\n            alt: \"Logo\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 397,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 396,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(ConfigProvider, {\n          theme: {\n            token: {\n              borderRadius: 0\n            },\n            components: {\n              Menu: {\n                itemColor: \"rgb(78, 120, 195)\",\n                horizontalItemSelectedBg: \"rgb(134, 120, 169)\",\n                horizontalItemSelectedColor: \"white\"\n              }\n            }\n          },\n          children: /*#__PURE__*/_jsxDEV(Menu, {\n            disabledOverflow: true,\n            className: \"Menu\",\n            theme: \"light\",\n            mode: \"horizontal\",\n            selectedKeys: [menuKey],\n            children: [/*#__PURE__*/_jsxDEV(Menu.Item, {\n              onClick: menuClicked,\n              className: \"menu-item\",\n              children: /*#__PURE__*/_jsxDEV(Link, {\n                to: \"/\",\n                children: \"HOME\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 415,\n                columnNumber: 17\n              }, this)\n            }, \"4\", false, {\n              fileName: _jsxFileName,\n              lineNumber: 414,\n              columnNumber: 15\n            }, this), /*#__PURE__*/_jsxDEV(Dropdown, {\n              overlay: exerciseMenu,\n              placement: \"bottom\",\n              children: /*#__PURE__*/_jsxDEV(Menu.Item, {\n                className: \"menu-item\",\n                children: \"EXERCISES\"\n              }, \"exercises\", false, {\n                fileName: _jsxFileName,\n                lineNumber: 418,\n                columnNumber: 17\n              }, this)\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 417,\n              columnNumber: 15\n            }, this), /*#__PURE__*/_jsxDEV(Menu.Item, {\n              onClick: menuClicked,\n              className: \"menu-item\",\n              children: /*#__PURE__*/_jsxDEV(Link, {\n                to: \"/assessment\",\n                children: \"ASSESMENT\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 423,\n                columnNumber: 17\n              }, this)\n            }, \"6\", false, {\n              fileName: _jsxFileName,\n              lineNumber: 422,\n              columnNumber: 15\n            }, this), /*#__PURE__*/_jsxDEV(Menu.Item, {\n              onClick: menuClicked,\n              className: \"menu-item\",\n              children: /*#__PURE__*/_jsxDEV(Link, {\n                to: \"/Help\",\n                children: \"HELP\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 426,\n                columnNumber: 17\n              }, this)\n            }, \"2\", false, {\n              fileName: _jsxFileName,\n              lineNumber: 425,\n              columnNumber: 15\n            }, this), /*#__PURE__*/_jsxDEV(Menu.Item, {\n              onClick: menuClicked,\n              className: \"menu-item\",\n              children: /*#__PURE__*/_jsxDEV(Link, {\n                to: \"/about\",\n                children: \"CONTACT\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 429,\n                columnNumber: 17\n              }, this)\n            }, \"1\", false, {\n              fileName: _jsxFileName,\n              lineNumber: 428,\n              columnNumber: 15\n            }, this)]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 413,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 399,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"userIcon\",\n          children: /*#__PURE__*/_jsxDEV(Button, {\n            shape: \"circle\",\n            type: \"default\",\n            icon: /*#__PURE__*/_jsxDEV(UserOutlined, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 437,\n              columnNumber: 21\n            }, this),\n            onClick: showModal // Show modal on click\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 434,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 433,\n          columnNumber: 11\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 395,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(Content, {\n        className: \"ContentMain\",\n        style: {\n          display: 'flex',\n          flexDirection: 'column',\n          alignItems: 'center',\n          marginTop: \"0rem\",\n          width: \"100%\",\n          background: 'transparent',\n          overflow: 'hidden'\n        },\n        children: /*#__PURE__*/_jsxDEV(Routes, {\n          children: [/*#__PURE__*/_jsxDEV(Route, {\n            path: \"/about\",\n            element: /*#__PURE__*/_jsxDEV(About, {\n              isModalOpen: isModalOpen,\n              setIsModalOpen: setIsModalOpen,\n              showModal: showModal,\n              handleCancel: handleCancel\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 445,\n              columnNumber: 43\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 445,\n            columnNumber: 13\n          }, this), /*#__PURE__*/_jsxDEV(Route, {\n            path: \"/pitch\",\n            element: /*#__PURE__*/_jsxDEV(Sample, {\n              gender: gender,\n              setGender: setGender,\n              genderName: genderName\n              // audioPlayerNew={audioPlayerNew}\n              ,\n              audioKey: audioKey,\n              audioSrc: audioSrc,\n              fetchAudioData: fetchAudioData,\n              handleIconClick: handleIconClick,\n              itemsAvatar: itemsAvatar\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 446,\n              columnNumber: 43\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 446,\n            columnNumber: 13\n          }, this), /*#__PURE__*/_jsxDEV(Route, {\n            path: \"/volume\",\n            element: /*#__PURE__*/_jsxDEV(SampleVolume, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 460,\n              columnNumber: 44\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 460,\n            columnNumber: 13\n          }, this), /*#__PURE__*/_jsxDEV(Route, {\n            path: \"/assessment\",\n            element: /*#__PURE__*/_jsxDEV(Assessment, {\n              isModalOpen: isModalOpen,\n              setIsModalOpen: setIsModalOpen,\n              showModal: showModal,\n              handleCancel: handleCancel\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 461,\n              columnNumber: 48\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 461,\n            columnNumber: 13\n          }, this), /*#__PURE__*/_jsxDEV(Route, {\n            path: \"/Help\",\n            element: /*#__PURE__*/_jsxDEV(Help, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 462,\n              columnNumber: 42\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 462,\n            columnNumber: 13\n          }, this), /*#__PURE__*/_jsxDEV(Route, {\n            path: \"/\",\n            element: /*#__PURE__*/_jsxDEV(Main, {\n              goToSample: navigateToPitch,\n              isModalOpen: isModalOpen,\n              setIsModalOpen: setIsModalOpen,\n              showModal: showModal,\n              handleCancel: handleCancel\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 463,\n              columnNumber: 38\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 463,\n            columnNumber: 13\n          }, this)]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 444,\n          columnNumber: 11\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 443,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(Modal, {\n        title: \"Settings\",\n        open: isModalOpen,\n        className: \"AvatarModal\",\n        onCancel: () => setIsModalOpen(false),\n        footer: null,\n        children: /*#__PURE__*/_jsxDEV(\"div\", {\n          style: {\n            textAlign: 'center'\n          },\n          children: [/*#__PURE__*/_jsxDEV(Avatar, {\n            size: 64,\n            icon: /*#__PURE__*/_jsxDEV(UserOutlined, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 477,\n              columnNumber: 35\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 477,\n            columnNumber: 11\n          }, this), /*#__PURE__*/_jsxDEV(\"p\", {\n            children: \"Name Name\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 478,\n            columnNumber: 11\n          }, this), /*#__PURE__*/_jsxDEV(Menu, {\n            disabledOverflow: true,\n            onClick: onClickMenu,\n            style: {\n              justifyContent: \"center\"\n            },\n            mode: \"horizontal\",\n            selectedKeys: [selectedItem],\n            items: itemsMenu\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 480,\n            columnNumber: 11\n          }, this), renderContent(), /*#__PURE__*/_jsxDEV(Button, {\n            onClick: handleCancel,\n            children: \"Close\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 488,\n            columnNumber: 11\n          }, this)]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 476,\n          columnNumber: 9\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 469,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(AudioPlayer, {\n        autoPlayAfterSrcChange: false,\n        src: audioSrc,\n        ref: audioPlayerNew,\n        style: {\n          display: 'none'\n        },\n        onEnded: () => console.log('audio ended'),\n        onError: e => console.log('audio error', e)\n      }, audioKey, false, {\n        fileName: _jsxFileName,\n        lineNumber: 502,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(Footer, {\n        style: {\n          textAlign: 'center',\n          overflow: 'hidden',\n          background: 'transparent',\n          fontSize: '20px',\n          position: 'relative',\n          width: '100%',\n          color: 'blue',\n          padding: '25px'\n        },\n        children: [\"TruVox \\xA9\", new Date().getFullYear(), \" Created by Dr.Novak lab\"]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 512,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 375,\n      columnNumber: 7\n    }, this)\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 370,\n    columnNumber: 5\n  }, this);\n};\n_s(MainLayout, \"vP5qGF94RLcvtP2qD7Q7AzetaPM=\", false, function () {\n  return [useOptionsHooks, useLocation, useNavigate];\n});\n_c3 = MainLayout;\nexport default MainLayout;\nvar _c, _c2, _c3;\n$RefreshReg$(_c, \"PlayIcon\");\n$RefreshReg$(_c2, \"CustomButton\");\n$RefreshReg$(_c3, \"MainLayout\");","map":{"version":3,"names":["React","useState","useEffect","Layout","Menu","ConfigProvider","Button","Avatar","Modal","Space","Dropdown","UserOutlined","Routes","Route","Link","useLocation","useNavigate","About","Sample","SampleVolume","Assessment","Help","Main","logoImage","Flex","createFromIconfontCN","Tooltip","AudioPlayer","useOptionsHooks","jsxDEV","_jsxDEV","PlayIcon","scriptUrl","_c","CustomButton","label","handleIconClick","style","display","alignItems","className","icon","fontSize","onClick","type","fileName","_jsxFileName","lineNumber","columnNumber","children","_c2","Header","Content","Footer","defaultBackColor","defaultBackColor_2","marksRange","marksBallPos","marksVol","MainLayout","_s","gender","setGender","genderName","audioPlayerNew","audioKey","audioSrc","fetchAudioData","itemsAvatar","isClickListen","setIsClickListen","location","navigate","isModalOpen","setIsModalOpen","openSetting","setOpenSetting","selectedItem","setSelectedItem","showNotesPar","setShowNotesPar","enableVol","setEnableVol","menuKey","setMenuKey","backgroundImg","setBackgroundImg","window","scrollTo","pathIn","pathname","navigateToPitch","showModal","handleCancel","showDrawer","closeDrawer","onClickMenu","e","key","onChangeHz","target","value","onChangeRange","rangeValue","onChangePosition","positionValue","onChangeSpeed","speedValue","EnableVoluneMode","onChangeThreshold","formatterdB","formatterHz","formatterPos","toFixed","renderContent","vertical","gap","menu","items","placement","trigger","overlayClassName","buttonsRender","leftButton","rightButton","cloneElement","loading","menuClicked","console","log","exerciseMenu","Item","to","itemsMenu","backgroundImage","backgroundColor","width","backgroundSize","maxWidth","flex","isolation","height","justifyContent","background","src","alt","theme","token","borderRadius","components","itemColor","horizontalItemSelectedBg","horizontalItemSelectedColor","disabledOverflow","mode","selectedKeys","overlay","shape","flexDirection","marginTop","overflow","path","element","goToSample","title","open","onCancel","footer","textAlign","size","autoPlayAfterSrcChange","ref","onEnded","onError","position","color","padding","Date","getFullYear","_c3","$RefreshReg$"],"sources":["D:/Project/UC_Trains_Voice/react-demo/src/MainLayout.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\r\nimport { Layout, Menu, ConfigProvider, Button, Drawer, Avatar, Modal, Space, Radio, Slider, Switch, Dropdown } from 'antd';\r\nimport { UserOutlined } from '@ant-design/icons';\r\nimport { BrowserRouter as Router, Routes, Route, Link, useLocation, useNavigate } from 'react-router-dom';\r\nimport About from './Route/About';\r\nimport Sample from './Route/Sample';\r\n\r\nimport { FreqProvider } from './gavt/FreqContext';\r\nimport Gavt from './Route/Gavt';\r\nimport GavtPractice from './gavt/GavtPractice';\r\nimport GavtCali from './gavt/GavtCali';\r\n\r\nimport SampleVolume from './Route/SampleVolume';\r\nimport Assessment from './Route/Assessment';\r\nimport Help from './Route/Help';\r\nimport Main from './Route/HomePage';\r\nimport logoImage from '../src/icon/new-icon-removebg-preview.png';\r\nimport './CSS/MainLayout.css';\r\nimport type { MenuProps } from 'antd';\r\nimport backgroundImage from './icon/HomePage-img.png';\r\n\r\nimport { Flex } from 'antd';\r\nimport { InfoCircleOutlined, CustomerServiceFilled } from '@ant-design/icons';\r\nimport { createFromIconfontCN } from '@ant-design/icons';\r\nimport ReactDOM from 'react-dom/client';\r\nimport ReactAudioPlayer from 'react-audio-player';\r\nimport { Tooltip } from 'antd';\r\nimport AudioPlayer from 'react-h5-audio-player';\r\nimport { useOptionsHooks } from './hooks/useOptionsHooks';\r\n\r\nconst PlayIcon = createFromIconfontCN({\r\n  scriptUrl: '//at.alicdn.com/t/c/font_4566050_zpduwnlv2t.js',\r\n});\r\n\r\ninterface CustomButtonProps {\r\n  label: string;\r\n  handleIconClick?: (e: React.MouseEvent<HTMLSpanElement, MouseEvent>) => void;\r\n}\r\n\r\nconst CustomButton: React.FC<CustomButtonProps> = ({ label, handleIconClick }) => {\r\n  return (\r\n    <Button\r\n      style={{\r\n        display: 'flex',\r\n        alignItems: 'center',\r\n      }}\r\n      className='dropdownIcon'\r\n      icon={\r\n        <PlayIcon\r\n          style={{\r\n            fontSize: '1.7em',\r\n          }}\r\n          onClick={handleIconClick}\r\n          type=\"icon-audioPlay\"\r\n        />\r\n      }\r\n    >\r\n      {label}\r\n    </Button>\r\n  );\r\n};\r\n\r\nconst { Header, Content, Footer } = Layout;\r\nconst defaultBackColor = \"linear-gradient(to bottom, #d7d2e6, #c9d9f3)\";\r\nconst defaultBackColor_2 = \"url('/transvoice/HomePage-img.png')\";\r\n\r\nconst marksRange = {\r\n  50: '50Hz',\r\n  600: '600Hz',\r\n};\r\n\r\nconst marksBallPos = {\r\n  0: '0%',\r\n  1: '100%',\r\n};\r\n\r\nconst marksVol = {\r\n  50: '50dB',\r\n  90: '90dB',\r\n};\r\n\r\nconst MainLayout = () => {\r\n  const {\r\n    gender,\r\n    setGender,\r\n    genderName,\r\n    audioPlayerNew,\r\n    audioKey,\r\n    audioSrc,\r\n    fetchAudioData,\r\n    handleIconClick,\r\n    itemsAvatar,\r\n  } = useOptionsHooks();\r\n\r\n  const [isClickListen, setIsClickListen] = useState<number>(0);\r\n\r\n  const location = useLocation();\r\n  const navigate = useNavigate();\r\n  const [isModalOpen, setIsModalOpen] = useState(false);\r\n  const [openSetting, setOpenSetting] = useState(false);\r\n  const [selectedItem, setSelectedItem] = useState('Settings');\r\n  const [showNotesPar, setShowNotesPar] = useState(true);\r\n  const [enableVol, setEnableVol] = useState(false);\r\n  const [menuKey, setMenuKey] = useState<string>('4');\r\n  const [backgroundImg, setBackgroundImg] = useState<string>(defaultBackColor);\r\n\r\n\r\n  useEffect(() => {\r\n    fetchAudioData();\r\n  }, [genderName]);\r\n\r\n\r\n  useEffect(() => {\r\n    switch (menuKey) {\r\n      case '4':\r\n        setBackgroundImg(defaultBackColor_2);\r\n        break;\r\n      case '6':\r\n        setBackgroundImg(defaultBackColor_2);\r\n        break;\r\n      default:\r\n        setBackgroundImg(\"transparent\");\r\n    }\r\n\r\n    window.scrollTo(0, 0);\r\n  }, [menuKey]);\r\n\r\n  useEffect(() => {\r\n    const pathIn = location.pathname;\r\n    switch (pathIn) {\r\n      case \"/HomePage\":\r\n        setMenuKey('4');\r\n        break;\r\n      case \"/Home\":\r\n        setMenuKey('7');\r\n        break;\r\n      case '/pitch':\r\n        setMenuKey('3');\r\n        break;\r\n      case '/volume':\r\n        setMenuKey('5');\r\n        break;\r\n      case '/assessment':\r\n        setMenuKey('6');\r\n        break;\r\n      case '/about':\r\n        setMenuKey('1');\r\n        break;\r\n      case '/Help':\r\n        setMenuKey('2');\r\n        break;\r\n      default:\r\n        setMenuKey('4');\r\n    }\r\n  }, [location.pathname]);\r\n\r\n  const navigateToPitch = () => {\r\n    setMenuKey('3');\r\n    navigate('/pitch');\r\n  };\r\n\r\n  const showModal = () => {\r\n    setIsModalOpen(true);\r\n  };\r\n\r\n  const handleCancel = () => {\r\n    setIsModalOpen(false);\r\n  };\r\n\r\n  const showDrawer = () => {\r\n    setOpenSetting(true);\r\n  };\r\n\r\n  const closeDrawer = () => {\r\n    setOpenSetting(false);\r\n  };\r\n\r\n  const onClickMenu = (e: any) => {\r\n    setSelectedItem(e.key);\r\n  };\r\n\r\n  const onChangeHz = ({ target: { value } }: any) => {\r\n    setShowNotesPar(value !== 'hz');\r\n  };\r\n\r\n  const onChangeRange = (rangeValue: number[]) => {\r\n    // handle change for pitch display range\r\n  };\r\n\r\n  const onChangePosition = (positionValue: number) => {\r\n    // handle change for pitch indicator horizontal position\r\n  };\r\n\r\n  const onChangeSpeed = (speedValue: number) => {\r\n    // handle change for pitch indicator speed\r\n  };\r\n\r\n  const EnableVoluneMode = (e: boolean) => {\r\n    setEnableVol(e);\r\n  };\r\n\r\n  const onChangeThreshold = (e: number) => {\r\n    // handle change for threshold\r\n  };\r\n\r\n  const formatterdB = (value: number | undefined) => `${value} dB`;\r\n  const formatterHz = (value: number | undefined) => `${value} Hz`;\r\n  const formatterPos = (value: number | undefined) => `${value ? (value * 100).toFixed(0) : '0'}%`;\r\n\r\n  // render profile page\r\n  const renderContent = () => {\r\n    switch (selectedItem) {\r\n      case 'Profile':\r\n        return <p>profile</p>;\r\n      case 'Settings':\r\n        return (<div>\r\n          <Flex vertical gap=\"middle\">\r\n            <Space>\r\n              <p># Model Selection: </p>\r\n\r\n              {/* <Dropdown\r\n                menu={{ items: itemsAvatar, selectable: true }}\r\n                placement=\"bottom\"\r\n                trigger={[\"click\"]}\r\n                overlayClassName='custom-dropdown'\r\n              // open={showDropdown}\r\n              >\r\n\r\n                <Space.Compact block className='dropdownButton'>\r\n                  <Tooltip title=\"Play Audio\">\r\n                    <Button icon={\r\n                      <PlayIcon\r\n                        style={{\r\n                          fontSize: '1.7em',\r\n                        }}\r\n                        onClick={handleIconClick}\r\n                        type=\"icon-audioPlay\"\r\n                         />\r\n                    }\r\n                      className=\"dropdownIcon\"\r\n                    >\r\n\r\n                    </Button>\r\n\r\n                  </Tooltip>\r\n\r\n                  <Tooltip title=\"Change Avatar\">\r\n                    <Button className=\"dropdownLastItem\" onClick={handleDropdownClick}>\r\n                      {genderName === \"none\" ? \"Model Voice\" : gender === \"Female\" ? genderName : 'Male01'}\r\n                    </Button>\r\n                  </Tooltip>\r\n\r\n\r\n                </Space.Compact>\r\n\r\n\r\n              </Dropdown> */}\r\n\r\n              <Dropdown.Button\r\n                menu={{ items: itemsAvatar }}\r\n                placement=\"bottom\"\r\n                trigger={[\"click\"]}\r\n                overlayClassName='custom-dropdown'\r\n                buttonsRender={([leftButton, rightButton]) => [\r\n                  <Tooltip>\r\n                    <Button\r\n                      style={{\r\n                        display: 'flex',\r\n                        alignItems: 'center',\r\n                      }}\r\n                      onClick={handleIconClick}\r\n                      icon={\r\n                        <PlayIcon\r\n                          style={{\r\n                            fontSize: '1.7em',\r\n                          }}\r\n\r\n                          type=\"icon-audioPlay\"\r\n                        />\r\n                      }\r\n                    >\r\n                      {genderName === \"none\" ? \"Model Voice\" : gender === \"Female\" ? genderName : 'Male01'}\r\n\r\n                    </Button>\r\n\r\n                  </Tooltip>\r\n\r\n                  //   <Space.Compact block className='dropdownButton'>\r\n                  //   <Tooltip title=\"Play Audio\">\r\n                  //     <Button icon={\r\n                  //       <PlayIcon\r\n                  //         style={{\r\n                  //           fontSize: '1.7em',\r\n                  //         }}\r\n                  //         onClick={handleIconClick}\r\n                  //         type=\"icon-audioPlay\"\r\n                  //          />\r\n                  //     }\r\n                  //       className=\"dropdownIcon\"\r\n                  //     >\r\n\r\n                  //     </Button>\r\n\r\n                  //   </Tooltip>\r\n\r\n                  //   <Tooltip title=\"Change Avatar\">\r\n                  //     <Button className=\"dropdownLastItem\" onClick={handleDropdownClick}>\r\n                  //       {genderName === \"none\" ? \"Model Voice\" : gender === \"Female\" ? genderName : 'Male01'}\r\n                  //     </Button>\r\n                  //   </Tooltip>\r\n\r\n\r\n                  // </Space.Compact>\r\n\r\n                  ,\r\n\r\n                  React.cloneElement(rightButton as React.ReactElement<any, string>, { loading: false }),\r\n\r\n                ]}\r\n              // open={showDropdown}\r\n              >\r\n\r\n              </Dropdown.Button>\r\n\r\n            </Space>\r\n            <br />\r\n          </Flex>\r\n\r\n        </div>)\r\n      case 'Other':\r\n        return <p>other</p>;\r\n      default:\r\n        return null;\r\n    }\r\n  };\r\n\r\n\r\n  const menuClicked: MenuProps['onClick'] = (e) => {\r\n    console.log(e.key);\r\n    setMenuKey(e.key);\r\n  };\r\n\r\n  const exerciseMenu = (\r\n    <Menu className=\"exercise-menu\">\r\n      <Menu.Item onClick={menuClicked} key=\"3\">\r\n        <Link to=\"/pitch\">PITCH</Link>\r\n      </Menu.Item>\r\n      <Menu.Item onClick={menuClicked} key=\"5\">\r\n        <Link to=\"/volume\">VOLUME</Link>\r\n      </Menu.Item>\r\n    </Menu>\r\n  );\r\n\r\n  const itemsMenu = [\r\n    {\r\n      label: 'Profile',\r\n      key: 'Profile',\r\n    },\r\n    {\r\n      label: 'Settings',\r\n      key: 'Settings',\r\n    },\r\n    {\r\n      label: 'Other',\r\n      key: 'Other',\r\n    },\r\n  ];\r\n\r\n  return (\r\n    <div\r\n      className=\"LayoutBGP\"\r\n    >\r\n\r\n\r\n      <Layout style={{\r\n        ...(menuKey === '4'\r\n          ? {\r\n            backgroundImage: defaultBackColor_2,\r\n            backgroundColor: 'linear-gradient(to bottom, #d7d2e6, #c9d9f3)', width: '200vw', backgroundSize: '10rem', maxWidth: '100vw', flex: 1,\r\n\r\n          }\r\n          : { backgroundColor: 'transparent' }\r\n        ),\r\n\r\n        isolation: \"isolate\",\r\n        ...(menuKey === '6'\r\n          ? {\r\n            backgroundImage: defaultBackColor_2,\r\n            backgroundColor: 'linear-gradient(to bottom, #d7d2e6, #c9d9f3)', width: '100vw', backgroundSize: '10rem', height: \"1300px\"\r\n\r\n          }\r\n          : { backgroundColor: 'transparent' }\r\n        ),\r\n      }} className=\"layout\">\r\n        <Header style={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center', background: 'transparent' }}>\r\n          <div className=\"TVox\">\r\n            <img className=\"logoImg\" src={logoImage} alt=\"Logo\" />\r\n          </div>\r\n          <ConfigProvider\r\n            theme={{\r\n              token: {\r\n                borderRadius: 0,\r\n              },\r\n              components: {\r\n                Menu: {\r\n                  itemColor: \"rgb(78, 120, 195)\",\r\n                  horizontalItemSelectedBg: \"rgb(134, 120, 169)\",\r\n                  horizontalItemSelectedColor: \"white\",\r\n                },\r\n              },\r\n            }}\r\n          >\r\n            <Menu disabledOverflow={true} className=\"Menu\" theme=\"light\" mode=\"horizontal\" selectedKeys={[menuKey]}>\r\n              <Menu.Item key=\"4\" onClick={menuClicked} className=\"menu-item\">\r\n                <Link to=\"/\">HOME</Link>\r\n              </Menu.Item>\r\n              <Dropdown overlay={exerciseMenu} placement=\"bottom\">\r\n                <Menu.Item key=\"exercises\" className=\"menu-item\">\r\n                  EXERCISES\r\n                </Menu.Item>\r\n              </Dropdown>\r\n              <Menu.Item key=\"6\" onClick={menuClicked} className=\"menu-item\">\r\n                <Link to=\"/assessment\">ASSESMENT</Link>\r\n              </Menu.Item>\r\n              <Menu.Item key=\"2\" onClick={menuClicked} className=\"menu-item\">\r\n                <Link to=\"/Help\">HELP</Link>\r\n              </Menu.Item>\r\n              <Menu.Item key=\"1\" onClick={menuClicked} className=\"menu-item\">\r\n                <Link to=\"/about\">CONTACT</Link>\r\n              </Menu.Item>\r\n            </Menu>\r\n          </ConfigProvider>\r\n          <div className=\"userIcon\">\r\n            <Button\r\n              shape=\"circle\"\r\n              type=\"default\"\r\n              icon={<UserOutlined />}\r\n              onClick={showModal} // Show modal on click\r\n            />\r\n          </div>\r\n        </Header>\r\n\r\n        <Content className=\"ContentMain\" style={{ display: 'flex', flexDirection: 'column', alignItems: 'center', marginTop: \"0rem\", width: \"100%\", background: 'transparent', overflow: 'hidden' }}>\r\n          <Routes>\r\n            <Route path=\"/about\" element={<About isModalOpen={isModalOpen} setIsModalOpen={setIsModalOpen} showModal={showModal} handleCancel={handleCancel} />} />\r\n            <Route path=\"/pitch\" element={<Sample \r\n            \r\n            gender={gender}\r\n            setGender={setGender}\r\n            genderName={genderName}\r\n            // audioPlayerNew={audioPlayerNew}\r\n            audioKey={audioKey}\r\n            audioSrc={audioSrc}\r\n            fetchAudioData={fetchAudioData}\r\n            handleIconClick={handleIconClick}\r\n            itemsAvatar={itemsAvatar}\r\n            \r\n            \r\n            />} />\r\n            <Route path=\"/volume\" element={<SampleVolume />} />\r\n            <Route path=\"/assessment\" element={<Assessment isModalOpen={isModalOpen} setIsModalOpen={setIsModalOpen} showModal={showModal} handleCancel={handleCancel} />} />\r\n            <Route path=\"/Help\" element={<Help />} />\r\n            <Route path=\"/\" element={<Main goToSample={navigateToPitch} isModalOpen={isModalOpen} setIsModalOpen={setIsModalOpen} showModal={showModal} handleCancel={handleCancel} />} />\r\n          </Routes>\r\n        </Content>\r\n\r\n\r\n\r\n        <Modal\r\n        title=\"Settings\"\r\n        open={isModalOpen}\r\n        className='AvatarModal'\r\n        onCancel={() => setIsModalOpen(false)}\r\n        footer={null}\r\n      >\r\n        <div style={{ textAlign: 'center' }}>\r\n          <Avatar size={64} icon={<UserOutlined />} />\r\n          <p>Name Name</p>\r\n\r\n          <Menu disabledOverflow={true}\r\n            onClick={onClickMenu}\r\n            style={{ justifyContent: \"center\" }}\r\n            mode=\"horizontal\"\r\n            selectedKeys={[selectedItem]}\r\n            items={itemsMenu} />\r\n          {renderContent()}\r\n\r\n          <Button onClick={handleCancel}>Close</Button>\r\n        </div>\r\n\r\n\r\n      </Modal>\r\n      {/* <ReactAudioPlayer\r\n        className=\"audio-player-hidden\"\r\n        src={audioSrc}\r\n        ref={audioPlayer}\r\n        key={audioKey}\r\n        onEnded={() => console.log('audio ended')}\r\n        onError={(e) => console.log('audio error', e)}\r\n      /> */}\r\n\r\n        <AudioPlayer    \r\n        autoPlayAfterSrcChange={false}\r\n        src={audioSrc} \r\n        ref={audioPlayerNew}\r\n        key={audioKey}\r\n        style={{display: 'none'}}\r\n        onEnded={() => console.log('audio ended')}\r\n        onError={(e) => console.log('audio error', e)}\r\n        />\r\n\r\n        <Footer style={{ textAlign: 'center', overflow: 'hidden', background: 'transparent', fontSize: '20px', position: 'relative', width: '100%', color: 'blue', padding: '25px' }}>\r\n          TruVox ©{new Date().getFullYear()} Created by Dr.Novak lab\r\n        </Footer>\r\n      </Layout>\r\n\r\n    </div>\r\n  );\r\n}\r\n\r\nexport default MainLayout;\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}