cabana: fix webpack config & save log button

main
Andy Haden 2017-12-06 13:50:07 -08:00
parent 633624cb9c
commit 4f9ec1c180
3 changed files with 25 additions and 2 deletions

View File

@ -7,6 +7,8 @@ var ExtractTextPlugin = require('extract-text-webpack-plugin');
var ManifestPlugin = require('webpack-manifest-plugin');
var InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
var paths = require('./paths');
var path = require('path');
var fs = require('fs')
var getClientEnvironment = require('./env');
var SentryPlugin = require('webpack-sentry-plugin');
@ -126,6 +128,12 @@ module.exports = {
include: paths.appSrc,
loader: 'babel',
},
{
test: /\.(js|jsx)$/,
include: path.resolve(fs.realpathSync(process.cwd()), 'node_modules/streamsaver'),
loader: 'babel',
},
// The notation here is somewhat confusing.
// "postcss" loader applies autoprefixer to our CSS.

View File

@ -255,6 +255,14 @@ export default class Meta extends Component {
return shareUrl;
}
saveable() {
try {
'serviceWorker' in navigator && !!new ReadableStream() && !!new WritableStream()
return 'saveable';
} catch (e) {
return false;
}
}
render() {
return (
<div className='cabana-meta'>
@ -267,13 +275,14 @@ export default class Meta extends Component {
</div>
: null
}
<div className='cabana-meta-header-actions'>
<div className={`cabana-meta-header-actions ${this.saveable()}`}>
<div className='cabana-meta-header-action'>
<button onClick={this.props.showLoadDbc}>Load DBC</button>
</div>
<div className='cabana-meta-header-action'>
{this.saveable() && <div className='cabana-meta-header-action'>
<button onClick={this.props.saveLog}>Save Log</button>
</div>
}
{this.props.route ?
<div className='cabana-meta-header-action special-wide'
data-clipboard-text={this.shareUrl()}

View File

@ -32,6 +32,12 @@
&-actions {
padding: 18px 0;
}
.saveable &-action {
width: 22%;
&.special-wide {
width: 33%;
}
}
&-action {
float: left;
padding: 0 1%;