1
0
mirror of https://github.com/BoostIo/Boostnote synced 2025-12-13 01:36:22 +00:00

refactor file structure

This commit is contained in:
Rokt33r
2016-05-12 20:45:21 +09:00
parent c851f8f006
commit 18b6d8289f
22 changed files with 43 additions and 470 deletions

View File

@@ -1,18 +1,30 @@
const electron = require('electron')
import { connect } from 'react-redux'
const ipc = electron.ipcRenderer
import React, { PropTypes } from 'react'
import HomePage from './HomePage'
import SideNav from './SideNav'
import ArticleTopBar from './ArticleTopBar'
import ArticleList from './ArticleList'
import ArticleDetail from './ArticleDetail'
import Repository from 'browser/lib/Repository'
export default class MainContainer extends React.Component {
class Main extends React.Component {
constructor (props) {
super(props)
this.state = {updateAvailable: false}
}
componentDidMount () {
let { dispatch } = this.props
ipc.on('update-available', function (message) {
this.setState({updateAvailable: true})
}.bind(this))
// Reload all data
Repository.loadAll()
.then((allData) => {
dispatch({type: 'INIT_ALL', data: allData})
})
}
updateApp () {
@@ -27,12 +39,31 @@ export default class MainContainer extends React.Component {
{this.state.updateAvailable ? (
<button onClick={this.updateApp} className='appUpdateButton'><i className='fa fa-cloud-download'/> Update available!</button>
) : null}
<HomePage {...this.props}/>
<SideNav
ref='nav'
{...this.props}
/>
<ArticleTopBar
ref='top'
{...this.props}
/>
<ArticleList
ref='list'
{...this.props}
/>
<ArticleDetail
ref='detail'
{...this.props}
/>
</div>
)
}
}
MainContainer.propTypes = {
children: PropTypes.element
Main.propTypes = {
dispatch: PropTypes.func,
repositories: PropTypes.array
}
export default connect((x) => x)(Main)