summaryrefslogtreecommitdiff
path: root/animism-align/frontend/app/views/editor/sidebar/sidebar.container.js
diff options
context:
space:
mode:
Diffstat (limited to 'animism-align/frontend/app/views/editor/sidebar/sidebar.container.js')
-rw-r--r--animism-align/frontend/app/views/editor/sidebar/sidebar.container.js44
1 files changed, 44 insertions, 0 deletions
diff --git a/animism-align/frontend/app/views/editor/sidebar/sidebar.container.js b/animism-align/frontend/app/views/editor/sidebar/sidebar.container.js
new file mode 100644
index 0000000..350505b
--- /dev/null
+++ b/animism-align/frontend/app/views/editor/sidebar/sidebar.container.js
@@ -0,0 +1,44 @@
+import React, { Component } from 'react'
+import { connect } from 'react-redux'
+// import { Link } from 'react-router-dom'
+
+import './sidebar.css'
+
+import actions from 'app/actions'
+
+import Script from './components/script.component.js'
+import TableOfContents from './components/tableOfContents.component.js'
+import WaveUpload from './components/waveUpload.component.js'
+
+class Sidebar extends Component {
+ state = {
+ mode: "toc",
+ }
+ componentDidMount(){
+ if (!this.props.peaks.length) {
+ this.setState({ mode: "wav" })
+ }
+ }
+
+ render() {
+ const { mode } = this.state
+ return (
+ <div className='sidebar'>
+ <div className='buttons'>
+ <button className={mode === "txt" ? "active" : ""} onClick={() => this.setState({ mode: "txt" })}>text</button>
+ <button className={mode === "wav" ? "active" : ""} onClick={() => this.setState({ mode: "wav" })}>wav</button>
+ <button className={mode === "toc" ? "active" : ""} onClick={() => this.setState({ mode: "toc" })}>contents</button>
+ </div>
+ {mode === 'toc' && <TableOfContents />}
+ {mode === 'txt' && <Script />}
+ {mode === 'wav' && <WaveUpload />}
+ </div>
+ )
+ }
+}
+
+const mapStateToProps = state => ({
+ peaks: state.align.peaks,
+})
+
+export default connect(mapStateToProps)(Sidebar)