{"ast":null,"code":"var _jsxFileName = \"/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/src/Route/Gavt.tsx\",\n  _s = $RefreshSig$();\nimport { useState } from 'react';\nimport { Alert, Space, Button, Modal, Table } from 'antd';\nimport ResonanceMenu from '../gavt/ResonanceMenu';\nimport transcripts from '../gavt/transcripts';\nimport '../gavt/ResonanceMenu.css';\nimport '../gavt/Gavt.css';\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst Gavt = () => {\n  _s();\n  const [isTranscriptVisible, setIsTranscriptVisible] = useState(false);\n  const [transcriptContent, setTranscriptContent] = useState('');\n  const [currentVideo, setCurrentVideo] = useState(null);\n  const [showCanvas, setshowCanvas] = useState(false);\n  const showTranscript = part => {\n    setTranscriptContent(transcripts[part]);\n    setIsTranscriptVisible(true);\n  };\n  const handleTranscriptCancel = () => {\n    setIsTranscriptVisible(false);\n  };\n  const handleVideoSelect = url => {\n    setCurrentVideo(url);\n  };\n  const handleShowCanvas = () => {\n    setshowCanvas(!showCanvas);\n  };\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    style: {\n      display: 'flex',\n      flexDirection: 'column',\n      alignItems: 'center'\n    },\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      children: /*#__PURE__*/_jsxDEV(\"h2\", {\n        children: \"Resonance: Tutorial\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 42,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 41,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        padding: '20px'\n      },\n      children: /*#__PURE__*/_jsxDEV(Alert, {\n        style: {\n          backgroundColor: '#FFEFEF',\n          borderColor: '#FFEFEF'\n        },\n        description: /*#__PURE__*/_jsxDEV(_Fragment, {\n          children: /*#__PURE__*/_jsxDEV(\"div\", {\n            children: [\"Welcome! Here you can use a real-time display of your speech to work on resonance. NOTE: Please use the Chrome browser to access this module. Other browsers are not supported at this time.\", /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 58,\n              columnNumber: 17\n            }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 59,\n              columnNumber: 17\n            }, this), \"Resonance can be challenging to understand! We encourage you to watch at least the first three tutorial sections (video clips 1-3 minutes long) before you try out the software.\", /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 61,\n              columnNumber: 17\n            }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 62,\n              columnNumber: 17\n            }, this), \"Our software works best with an external microphone plugged into your device, even if it's just a set of earbuds with an in-line microphone.\"]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 56,\n            columnNumber: 15\n          }, this)\n        }, void 0, false),\n        type: \"info\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 49,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 44,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        width: '100%',\n        display: 'flex',\n        flexDirection: 'row',\n        justifyContent: 'space-between',\n        padding: '20px',\n        alignItems: 'stretch',\n        height: '100%'\n      },\n      children: [/*#__PURE__*/_jsxDEV(Space, {\n        direction: \"vertical\",\n        style: {\n          marginRight: '20px',\n          flex: 1\n        },\n        children: [/*#__PURE__*/_jsxDEV(Table, {\n          bordered: true,\n          pagination: false,\n          showHeader: false,\n          dataSource: [{\n            key: '1',\n            part1: 'Tutorial: Getting Started',\n            part2: 'Tutorial: Next Steps'\n          }, {\n            key: '2',\n            part1: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => handleVideoSelect('https://www.youtube.com/embed/WTs2QcTTpHo'),\n                children: \"Part 1. What is resonance? (1:30)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 95,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part1'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 101,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 94,\n              columnNumber: 19\n            }, this),\n            part2: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => handleVideoSelect('https://www.youtube.com/embed/cpn56ZHfRv8'),\n                children: \"Part 4. Strategies for resonance (2:00)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 107,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part4'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 113,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 106,\n              columnNumber: 19\n            }, this)\n          }, {\n            key: '3',\n            part1: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: \"https://youtu.be/mFJajI69MIU\",\n                target: \"_blank\",\n                rel: \"noreferrer\",\n                children: \"Part 2. Bright and dark resonance (1:15)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 121,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part2'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 124,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 120,\n              columnNumber: 19\n            }, this),\n            part2: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: \"https://youtu.be/O3m2-D61POU\",\n                target: \"_blank\",\n                rel: \"noreferrer\",\n                children: \"Part 5. Resonance chains (2:00)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 130,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part5'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 133,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 129,\n              columnNumber: 19\n            }, this)\n          }, {\n            key: '4',\n            part1: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: \"https://www.youtube.com/watch?v=wPpiuMfIb3E\",\n                target: \"_blank\",\n                rel: \"noreferrer\",\n                children: \"Part 3. Modifying resonance (1:20)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 141,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part3'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 144,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 140,\n              columnNumber: 19\n            }, this),\n            part2: /*#__PURE__*/_jsxDEV(\"div\", {\n              style: {\n                display: 'inline-flex',\n                alignItems: 'center'\n              },\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: \"https://youtu.be/PslG19nE0Yw\",\n                target: \"_blank\",\n                rel: \"noreferrer\",\n                children: \"Part 6. Pitch versus resonance (2:50)\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 150,\n                columnNumber: 21\n              }, this), /*#__PURE__*/_jsxDEV(Button, {\n                type: \"link\",\n                onClick: () => showTranscript('part6'),\n                children: \"Transcript\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 153,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 149,\n              columnNumber: 19\n            }, this)\n          }],\n          columns: [{\n            dataIndex: 'part1',\n            key: 'part1',\n            render: (text, record, index) => {\n              if (index === 0) {\n                return {\n                  children: text,\n                  props: {\n                    colSpan: 1\n                  }\n                };\n              }\n              return text;\n            }\n          }, {\n            dataIndex: 'part2',\n            key: 'part2',\n            render: (text, record, index) => {\n              if (index === 0) {\n                return {\n                  children: text,\n                  props: {\n                    colSpan: 1\n                  }\n                };\n              }\n              return text;\n            }\n          }]\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 86,\n          columnNumber: 13\n        }, this), /*#__PURE__*/_jsxDEV(Modal, {\n          title: \"Transcript\",\n          open: isTranscriptVisible,\n          onCancel: handleTranscriptCancel,\n          footer: [/*#__PURE__*/_jsxDEV(Button, {\n            onClick: handleTranscriptCancel,\n            children: \"Close\"\n          }, \"close\", false, {\n            fileName: _jsxFileName,\n            lineNumber: 198,\n            columnNumber: 15\n          }, this)],\n          children: /*#__PURE__*/_jsxDEV(\"div\", {\n            dangerouslySetInnerHTML: {\n              __html: transcriptContent\n            }\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 203,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 193,\n          columnNumber: 11\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 79,\n        columnNumber: 11\n      }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n        style: {\n          flex: 1,\n          width: '90%',\n          padding: '5px',\n          border: '1px solid #ddd',\n          borderRadius: '5px'\n        },\n        children: currentVideo ? /*#__PURE__*/_jsxDEV(\"iframe\", {\n          width: \"100%\",\n          height: \"100%\",\n          src: currentVideo,\n          title: \"YouTube Video Player\",\n          allow: \"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\",\n          allowFullScreen: true\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 215,\n          columnNumber: 13\n        }, this) : /*#__PURE__*/_jsxDEV(\"p\", {\n          children: \"Select a video to play.\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 224,\n          columnNumber: 13\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 206,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 70,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      children: /*#__PURE__*/_jsxDEV(Button, {\n        type: \"primary\",\n        style: {\n          margin: '20px 0'\n        },\n        onClick: handleShowCanvas,\n        children: \"Click here to try for yourself!\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 229,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 228,\n      columnNumber: 7\n    }, this), showCanvas && /*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        marginTop: '20px',\n        padding: '10px',\n        border: '1px solid #ddd',\n        borderRadius: '5px',\n        width: '100%',\n        backgroundColor: '#f9f9f9'\n      }\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 239,\n      columnNumber: 9\n    }, this), /*#__PURE__*/_jsxDEV(ResonanceMenu, {}, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 253,\n      columnNumber: 5\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 34,\n    columnNumber: 5\n  }, this);\n};\n_s(Gavt, \"Tenj0bXgOATOaXPA9ksUG/jHe8Q=\");\n_c = Gavt;\nexport default Gavt;\nvar _c;\n$RefreshReg$(_c, \"Gavt\");","map":{"version":3,"names":["useState","Alert","Space","Button","Modal","Table","ResonanceMenu","transcripts","jsxDEV","_jsxDEV","Fragment","_Fragment","Gavt","_s","isTranscriptVisible","setIsTranscriptVisible","transcriptContent","setTranscriptContent","currentVideo","setCurrentVideo","showCanvas","setshowCanvas","showTranscript","part","handleTranscriptCancel","handleVideoSelect","url","handleShowCanvas","style","display","flexDirection","alignItems","children","fileName","_jsxFileName","lineNumber","columnNumber","padding","backgroundColor","borderColor","description","type","width","justifyContent","height","direction","marginRight","flex","bordered","pagination","showHeader","dataSource","key","part1","part2","onClick","href","target","rel","columns","dataIndex","render","text","record","index","props","colSpan","title","open","onCancel","footer","dangerouslySetInnerHTML","__html","border","borderRadius","src","allow","allowFullScreen","margin","marginTop","_c","$RefreshReg$"],"sources":["/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/src/Route/Gavt.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { Alert, Space, Button, Modal, Table} from 'antd'\nimport ResonanceMenu from '../gavt/ResonanceMenu';\nimport transcripts from '../gavt/transcripts';\n\nimport '../gavt/ResonanceMenu.css';\nimport '../gavt/Gavt.css'\n\nconst Gavt: React.FC = () => {\n  const [isTranscriptVisible, setIsTranscriptVisible] = useState(false);\n  const [transcriptContent, setTranscriptContent] = useState('');\n  const [currentVideo, setCurrentVideo] = useState<string | null>(null);\n  const [showCanvas, setshowCanvas] = useState(false);\n\n  const showTranscript = (part: keyof typeof transcripts) => {\n    setTranscriptContent(transcripts[part]);\n    setIsTranscriptVisible(true);\n  };\n\n  const handleTranscriptCancel = () => {\n    setIsTranscriptVisible(false);\n  };\n\n  const handleVideoSelect = (url: string) => {\n    setCurrentVideo(url);\n  };\n\n  const handleShowCanvas = () => {\n    setshowCanvas(!showCanvas);\n  }\n\n  return(\n    <div\n      style={{\n        display: 'flex',\n        flexDirection: 'column',\n        alignItems: 'center'\n      }}\n    >\n      <div>\n        <h2>Resonance: Tutorial</h2>\n      </div>\n      <div \n        style={{\n          padding: '20px',\n        }}\n      >\n        <Alert\n          style={{\n            backgroundColor: '#FFEFEF',\n            borderColor: '#FFEFEF'\n          }} \n          description={\n            <>\n              <div>\n                Welcome! Here you can use a real-time display of your speech to work on resonance. NOTE: Please use the Chrome browser to access this module. Other browsers are not supported at this time.\n                <br/>\n                <br/>\n                Resonance can be challenging to understand! We encourage you to watch at least the first three tutorial sections (video clips 1-3 minutes long) before you try out the software. \n                <br/>\n                <br/>\n                Our software works best with an external microphone plugged into your device, even if it's just a set of earbuds with an in-line microphone.\n              </div>\n            </>\n          }\n          type=\"info\"\n        />\n      </div>\n      <div style={{\n        width: '100%',\n        display: 'flex',\n        flexDirection: 'row',\n        justifyContent: 'space-between',\n        padding: '20px',\n        alignItems: 'stretch',\n        height: '100%'\n      }}>          \n          <Space\n            direction=\"vertical\"\n            style={{ \n              marginRight: '20px',\n              flex: 1\n            }}\n          >\n            <Table\n            bordered\n            pagination={false}\n            showHeader={false}\n            dataSource={[\n              { key: '1', part1: 'Tutorial: Getting Started', part2: 'Tutorial: Next Steps' },\n              { key: '2', \n                part1:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}>\n                    <Button type=\"link\" onClick={() => handleVideoSelect('https://www.youtube.com/embed/WTs2QcTTpHo')}>\n                      Part 1. What is resonance? (1:30)\n                    </Button>\n                    {/* <a href=\"https://youtu.be/WTs2QcTTpHo\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 1. What is resonance? (1:30)\n                    </a> */}\n                    <Button type=\"link\" onClick={() => showTranscript('part1')}>\n                      Transcript\n                    </Button>\n                </div>,\n                part2:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}>\n                    <Button type=\"link\" onClick={() => handleVideoSelect('https://www.youtube.com/embed/cpn56ZHfRv8')}>\n                      Part 4. Strategies for resonance (2:00)\n                    </Button>\n                    {/* <a href=\"https://youtu.be/cpn56ZHfRv8\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 4. Strategies for resonance (2:00)\n                    </a> */}\n                    <Button type=\"link\" onClick={() => showTranscript('part4')}>\n                    Transcript\n                  </Button>\n                </div>                \n              },\n              { key: '3', \n                part1:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}> \n                    <a href=\"https://youtu.be/mFJajI69MIU\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 2. Bright and dark resonance (1:15)\n                    </a>\n                    <Button type=\"link\" onClick={() => showTranscript('part2')}>\n                      Transcript\n                    </Button>\n                </div>,\n                part2:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}>\n                    <a href=\"https://youtu.be/O3m2-D61POU\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 5. Resonance chains (2:00)\n                    </a>\n                    <Button type=\"link\" onClick={() => showTranscript('part5')}>\n                      Transcript\n                  </Button>\n                </div>                \n              },\n              { key: '4', \n                part1:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}> \n                    <a href=\"https://www.youtube.com/watch?v=wPpiuMfIb3E\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 3. Modifying resonance (1:20)\n                    </a>\n                    <Button type=\"link\" onClick={() => showTranscript('part3')}>\n                      Transcript\n                    </Button>\n                </div>,\n                part2:\n                  <div style={{ display:'inline-flex', alignItems: 'center' }}>\n                    <a href=\"https://youtu.be/PslG19nE0Yw\" target=\"_blank\" rel=\"noreferrer\">\n                      Part 6. Pitch versus resonance (2:50)\n                    </a>\n                    <Button type=\"link\" onClick={() => showTranscript('part6')}>\n                      Transcript\n                  </Button>\n                </div>                \n              },\n            ]}\n            columns={[\n              {\n                dataIndex: 'part1',\n                key: 'part1',\n                render: (text, record, index) => {\n                  if (index === 0) {\n                    return {\n                      children: text,\n                      props: {\n                        colSpan: 1,\n                      },\n                    };\n                  }\n                  return text;\n                },\n              },\n              {\n                dataIndex: 'part2',\n                key: 'part2',\n                render: (text, record, index) => {\n                  if (index === 0) {\n                    return {\n                      children: text,\n                      props: {\n                        colSpan: 1,\n                      },\n                    };\n                  }\n                  return text;\n                },\n              },\n            ]}\n          />\n\n          <Modal\n            title=\"Transcript\"\n            open={isTranscriptVisible}\n            onCancel={handleTranscriptCancel}\n            footer={[\n              <Button key=\"close\" onClick={handleTranscriptCancel}>\n                Close\n              </Button>,\n            ]}\n          >\n            <div dangerouslySetInnerHTML={{ __html: transcriptContent }} />\n          </Modal>\n        </Space>\n        <div \n          style={{ \n            flex: 1,\n            width: '90%', \n            padding: '5px', \n            border: '1px solid #ddd', \n            borderRadius: '5px',\n          }}>\n          {currentVideo ? (\n            <iframe\n              width=\"100%\"\n              height=\"100%\"\n              src={currentVideo}\n              title=\"YouTube Video Player\"\n              allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n              allowFullScreen\n            ></iframe>\n          ) : (\n            <p>Select a video to play.</p>\n          )}\n        </div>\n      </div>\n      <div>\n        <Button\n          type=\"primary\"\n          style={{ margin: '20px 0' }}\n          onClick={handleShowCanvas}\n        >\n          Click here to try for yourself!\n        </Button>\n      </div>\n\n      {showCanvas && (\n        <div\n          style={{\n            marginTop: '20px',\n            padding: '10px',\n            border: '1px solid #ddd',\n            borderRadius: '5px',\n            width: '100%',\n            backgroundColor: '#f9f9f9',\n          }}\n        >\n\n        </div>\n      )}\n\n    <ResonanceMenu />\n  </div>\n\n  )\n}\nexport default Gavt;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}