Merge branch 'master' into greenkeeper/music-metadata-3.2.2
# Conflicts: # package-lock.json
This commit is contained in:
2737
package-lock.json
generated
2737
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
32
package.json
32
package.json
@@ -14,13 +14,13 @@
|
||||
"airplayer": "^2.0.0",
|
||||
"application-config": "^1.0.0",
|
||||
"arch": "^2.0.0",
|
||||
"auto-launch": "^4.0.1",
|
||||
"auto-launch": "^5.0.5",
|
||||
"bitfield": "^1.0.2",
|
||||
"capture-frame": "^2.0.0",
|
||||
"chokidar": "^2.0.4",
|
||||
"chromecasts": "^1.9.1",
|
||||
"cp-file": "^6.0.0",
|
||||
"create-torrent": "^3.24.5",
|
||||
"create-torrent": "^3.33.0",
|
||||
"debounce": "^1.0.0",
|
||||
"deep-equal": "^1.0.1",
|
||||
"dlnacasts": "^0.1.0",
|
||||
@@ -28,20 +28,20 @@
|
||||
"es6-error": "^4.0.0",
|
||||
"fn-getter": "^1.0.0",
|
||||
"iso-639-1": "^1.2.1",
|
||||
"languagedetect": "^1.1.1",
|
||||
"languagedetect": "^1.2.0",
|
||||
"location-history": "^1.0.0",
|
||||
"material-ui": "^0.17.0",
|
||||
"material-ui": "^0.20.2",
|
||||
"mkdirp": "^0.5.1",
|
||||
"music-metadata": "^3.3.0",
|
||||
"network-address": "^1.1.0",
|
||||
"parse-torrent": "^6.0.1",
|
||||
"prettier-bytes": "^1.0.1",
|
||||
"react": "^15.4.2",
|
||||
"react-dom": "^15.4.2",
|
||||
"react-tap-event-plugin": "^2.0.1",
|
||||
"prop-types": "^15.6.2",
|
||||
"react": "^16.5.2",
|
||||
"react-dom": "^16.5.2",
|
||||
"rimraf": "^2.5.2",
|
||||
"run-parallel": "^1.1.6",
|
||||
"semver": "^5.1.0",
|
||||
"semver": "^5.6.0",
|
||||
"simple-concat": "^1.0.0",
|
||||
"simple-get": "^3.0.3",
|
||||
"srt-to-vtt": "^1.1.1",
|
||||
@@ -52,25 +52,25 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"babel-eslint": "^9.0.0",
|
||||
"buble": "^0.19.3",
|
||||
"buble": "^0.19.6",
|
||||
"cross-zip": "^2.0.1",
|
||||
"depcheck": "^0.6.4",
|
||||
"electron": "1.6.16",
|
||||
"electron-osx-sign": "^0.4.10",
|
||||
"depcheck": "^0.6.11",
|
||||
"electron": "^1.8.8",
|
||||
"electron-osx-sign": "^0.4.11",
|
||||
"electron-packager": "~8.5.1",
|
||||
"electron-winstaller": "^2.6.4",
|
||||
"gh-release": "^3.2.1",
|
||||
"gh-release": "^3.4.0",
|
||||
"minimist": "^1.2.0",
|
||||
"nobin-debian-installer": "0.0.10",
|
||||
"nodemon": "^1.10.2",
|
||||
"nodemon": "^1.18.8",
|
||||
"opn": "^5.4.0",
|
||||
"plist": "^3.0.1",
|
||||
"pngjs": "^3.0.0",
|
||||
"run-series": "^1.1.4",
|
||||
"spectron": "^3.3.0",
|
||||
"standard": "*",
|
||||
"tape": "^4.6.0",
|
||||
"walk-sync": "^0.3.1"
|
||||
"tape": "^4.9.1",
|
||||
"walk-sync": "^0.3.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.0.0"
|
||||
|
||||
@@ -3,19 +3,11 @@ module.exports = {
|
||||
uninstall
|
||||
}
|
||||
|
||||
const config = require('../config')
|
||||
const { APP_NAME } = require('../config')
|
||||
const AutoLaunch = require('auto-launch')
|
||||
const { app } = require('electron')
|
||||
|
||||
// On Mac, work around a bug in auto-launch where it opens a Terminal window
|
||||
// See https://github.com/Teamwork/node-auto-launch/issues/28#issuecomment-222194437
|
||||
const appPath = process.platform === 'darwin'
|
||||
? app.getPath('exe').replace(/\.app\/Content.*/, '.app')
|
||||
: undefined // Use the default
|
||||
|
||||
const appLauncher = new AutoLaunch({
|
||||
name: config.APP_NAME,
|
||||
path: appPath,
|
||||
name: APP_NAME,
|
||||
isHidden: true
|
||||
})
|
||||
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
const React = require('react')
|
||||
const PropTypes = require('prop-types')
|
||||
|
||||
const colors = require('material-ui/styles/colors')
|
||||
|
||||
class Heading extends React.Component {
|
||||
static get propTypes () {
|
||||
return {
|
||||
level: React.PropTypes.number
|
||||
level: PropTypes.number
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
const colors = require('material-ui/styles/colors')
|
||||
const electron = require('electron')
|
||||
const React = require('react')
|
||||
const PropTypes = require('prop-types')
|
||||
|
||||
const remote = electron.remote
|
||||
|
||||
@@ -11,15 +12,15 @@ const TextField = require('material-ui/TextField').default
|
||||
// Uses the system Open File dialog.
|
||||
// You can't edit the text field directly.
|
||||
class PathSelector extends React.Component {
|
||||
static get propTypes () {
|
||||
static propTypes () {
|
||||
return {
|
||||
className: React.PropTypes.string,
|
||||
dialog: React.PropTypes.object,
|
||||
displayValue: React.PropTypes.string,
|
||||
id: React.PropTypes.string,
|
||||
onChange: React.PropTypes.func,
|
||||
title: React.PropTypes.string.isRequired,
|
||||
value: React.PropTypes.string
|
||||
className: PropTypes.string,
|
||||
dialog: PropTypes.object,
|
||||
displayValue: PropTypes.string,
|
||||
id: PropTypes.string,
|
||||
onChange: PropTypes.func,
|
||||
title: PropTypes.string.isRequired,
|
||||
value: PropTypes.string
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +65,8 @@ class PathSelector extends React.Component {
|
||||
const textFieldStyle = {
|
||||
flex: '1'
|
||||
}
|
||||
const text = this.props.displayValue || this.props.value
|
||||
|
||||
const text = this.props.displayValue || this.props.value || ''
|
||||
const buttonStyle = {
|
||||
marginLeft: 10
|
||||
}
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
const React = require('react')
|
||||
const PropTypes = require('prop-types')
|
||||
|
||||
const RaisedButton = require('material-ui/RaisedButton').default
|
||||
|
||||
class ShowMore extends React.Component {
|
||||
static get propTypes () {
|
||||
return {
|
||||
defaultExpanded: React.PropTypes.bool,
|
||||
hideLabel: React.PropTypes.string,
|
||||
showLabel: React.PropTypes.string
|
||||
defaultExpanded: PropTypes.bool,
|
||||
hideLabel: PropTypes.string,
|
||||
showLabel: PropTypes.string
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -39,9 +39,6 @@ const TorrentPlayer = require('./lib/torrent-player')
|
||||
// Perf optimization: Needed immediately, so do not lazy load it below
|
||||
const TorrentListController = require('./controllers/torrent-list-controller')
|
||||
|
||||
// Required by Material UI -- adds `onTouchTap` event
|
||||
require('react-tap-event-plugin')()
|
||||
|
||||
const App = require('./pages/app')
|
||||
|
||||
// Electron apps have two processes: a main process (node) runs first and starts
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const path = require('path')
|
||||
const React = require('react')
|
||||
const PropTypes = require('prop-types')
|
||||
|
||||
const colors = require('material-ui/styles/colors')
|
||||
const Checkbox = require('material-ui/Checkbox').default
|
||||
@@ -238,7 +239,7 @@ class PreferencesPage extends React.Component {
|
||||
class PreferencesSection extends React.Component {
|
||||
static get propTypes () {
|
||||
return {
|
||||
title: React.PropTypes.string
|
||||
title: PropTypes.string
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -147,7 +147,7 @@ module.exports = class TorrentList extends React.Component {
|
||||
}
|
||||
}
|
||||
return (
|
||||
<div style={styles.wrapper}>
|
||||
<div key='progress-bar' style={styles.wrapper}>
|
||||
<LinearProgress style={styles.progress} mode='determinate' value={progress} />
|
||||
</div>
|
||||
)
|
||||
@@ -200,7 +200,7 @@ module.exports = class TorrentList extends React.Component {
|
||||
const minutesStr = (hours || minutes) ? minutes + 'm' : ''
|
||||
const secondsStr = seconds + 's'
|
||||
|
||||
return (<span>{hoursStr} {minutesStr} {secondsStr} remaining</span>)
|
||||
return (<span key='eta'>{hoursStr} {minutesStr} {secondsStr} remaining</span>)
|
||||
}
|
||||
|
||||
function renderTorrentStatus () {
|
||||
@@ -370,16 +370,16 @@ module.exports = class TorrentList extends React.Component {
|
||||
|
||||
return (
|
||||
<div key='radial-progress' className={'radial-progress ' + cssClass}>
|
||||
<div key='circle' className='circle'>
|
||||
<div key='mask-full' className='mask full' style={transformFill}>
|
||||
<div key='fill' className='fill' style={transformFill} />
|
||||
<div className='circle'>
|
||||
<div className='mask full' style={transformFill}>
|
||||
<div className='fill' style={transformFill} />
|
||||
</div>
|
||||
<div key='mask-half' className='mask half'>
|
||||
<div key='fill' className='fill' style={transformFill} />
|
||||
<div key='fill-fix' className='fill fix' style={transformFix} />
|
||||
<div className='mask half'>
|
||||
<div className='fill' style={transformFill} />
|
||||
<div className='fill fix' style={transformFix} />
|
||||
</div>
|
||||
</div>
|
||||
<div key='inset' className='inset' />
|
||||
<div className='inset' />
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -393,7 +393,7 @@ function getErrorMessage (torrentSummary) {
|
||||
const err = torrentSummary.error
|
||||
if (err === 'path-missing') {
|
||||
return (
|
||||
<span>
|
||||
<span key='path-missing'>
|
||||
Path missing.<br />
|
||||
Fix and restart the app, or delete the torrent.
|
||||
</span>
|
||||
|
||||
Reference in New Issue
Block a user