summaryrefslogtreecommitdiff
path: root/frontend/app/views/page/components/tile.new.js
diff options
context:
space:
mode:
authorlens <lens@neural.garden>2020-12-26 20:59:17 +0000
committerlens <lens@neural.garden>2020-12-26 20:59:17 +0000
commit7c15f34186622410e25ee85c01d832e48e012140 (patch)
treee0a8dbd5e7b6a3936e7b9a666c2622ecc7ff1a65 /frontend/app/views/page/components/tile.new.js
parent94234db6a771f687788d3decc6dd1ba01731f7af (diff)
parent85bfb949fea4e69dabc5b7544ce70d26d3d11393 (diff)
Merge branch 'master' of asdf.us:swimmer
Diffstat (limited to 'frontend/app/views/page/components/tile.new.js')
-rw-r--r--frontend/app/views/page/components/tile.new.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/frontend/app/views/page/components/tile.new.js b/frontend/app/views/page/components/tile.new.js
new file mode 100644
index 0000000..b491fdd
--- /dev/null
+++ b/frontend/app/views/page/components/tile.new.js
@@ -0,0 +1,55 @@
+import React, { Component } from 'react'
+// import { Link } from 'react-router-dom'
+import { bindActionCreators } from 'redux'
+import { connect } from 'react-redux'
+
+import { history } from 'app/store'
+import actions from 'app/actions'
+import * as tileActions from '../../tile/tile.actions'
+import * as pageActions from '../../page/page.actions'
+
+import TileForm from '../components/tile.form'
+
+class TileNew extends Component {
+ handleSubmit(data) {
+ console.log(data)
+ actions.tile.create(data)
+ .then(res => {
+ console.log(res)
+ // const graph = this.props.graph.show.res
+ // if (res.res && res.res.id) {
+ // history.push('/' + graph.path + '/' + res.res.path)
+ // }
+ this.props.pageActions.hideAddTileForm()
+ this.props.tileActions.clearTemporaryTile()
+ })
+ .catch(err => {
+ console.error('error')
+ })
+ }
+
+ render() {
+ return (
+ <TileForm
+ isNew
+ graph={this.props.graph.show.res}
+ page={this.props.page.show.res}
+ initialData={null}
+ sortOrder={this.props.page.show.res.tiles ? this.props.page.show.res.tiles.length : []}
+ onSubmit={this.handleSubmit.bind(this)}
+ />
+ )
+ }
+}
+
+const mapStateToProps = state => ({
+ graph: state.graph,
+ page: state.page,
+})
+
+const mapDispatchToProps = dispatch => ({
+ tileActions: bindActionCreators({ ...tileActions }, dispatch),
+ pageActions: bindActionCreators({ ...pageActions }, dispatch),
+})
+
+export default connect(mapStateToProps, mapDispatchToProps)(TileNew)