Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Update all dependencies! Notably to Preact 4 and Babel 6
  • Loading branch information
developit committed Apr 9, 2016
1 parent b201bc9 commit 6bb4812
Show file tree
Hide file tree
Showing 6 changed files with 93 additions and 69 deletions.
13 changes: 10 additions & 3 deletions .babelrc
@@ -1,5 +1,12 @@
{
"sourceMaps": "inline",
"jsxPragma": "h",
"stage": 0
"sourceMaps": true,
"presets": [
"es2015-minimal",
"stage-0"
],
"plugins": [
"add-module-exports",
["transform-decorators-legacy"],
["transform-react-jsx", { "pragma": "h" }]
]
}
10 changes: 5 additions & 5 deletions electron/index.js
Expand Up @@ -5,7 +5,7 @@ import menu from './menu';

const HOST = `localhost:${process.env.PORT || 19998}`;

const DEV = process.env.ENV==='dev';
const DEV = process.env.ENV==='development';

// adds debug features like hotkeys for triggering dev tools and reload
if (DEV) {
Expand All @@ -24,8 +24,8 @@ function createMainWindow() {
const win = new BrowserWindow({
width: DEV ? 1200 : 800,
height: DEV ? 600 : 500,
'min-width': 500,
'min-height': 200,
minWidth: 500,
minHeight: 200,
'accept-first-mouse': true,
'title-bar-style': 'hidden'
});
Expand All @@ -37,11 +37,11 @@ function createMainWindow() {
});

if (DEV) {
win.loadUrl(`http://${HOST}/`);
win.loadURL(`http://${HOST}/`);
win.toggleDevTools();
}
else {
win.loadUrl(`file://${__dirname}/../index.html`);
win.loadURL(`file://${__dirname}/../index.html`);
}

return win;
Expand Down
58 changes: 32 additions & 26 deletions package.json
Expand Up @@ -17,15 +17,15 @@
"electronVersion": "0.34.0",
"scripts": {
"test": "eslint src",
"start": "ENV=dev parallelshell 'npm run dev' 'npm run thenelectron'",
"dev": "npm run build:assets && npm run build:transpilewrap && webpack-dev-server --hot --inline",
"start": "ENV=development npm-run-all build:assets build:transpilewrap --parallel dev thenelectron",
"dev": "webpack-dev-server --hot --inline --progress",
"thenelectron": "sleep 2; electron .",
"build": "npm run build:assets && npm run build:transpilewrap && npm run build:transpile && npm run build:electron:all",
"build:test": "npm run build:assets && npm run build:transpilewrap && npm run build:transpile && npm run build:electron:osx && ./dist/${npm_package_productName}-darwin-x64/${npm_package_productName}.app/Contents/MacOS/Electron",
"build": "npm-run-all build:assets build:transpilewrap build:transpile build:electron:all",
"build:test": "npm-run-all build:assets build:transpilewrap build:transpile build:electron:osx && ./dist/${npm_package_productName}-darwin-x64/${npm_package_productName}.app/Contents/MacOS/Electron",
"build:assets": "ncp src/assets build/assets",
"build:transpilewrap": "babel electron -s -d build/electron",
"build:transpile": "ENV=prod webpack -p",
"build:electron:all": "parallelshell 'npm run build:electron:osx' 'npm run build:electron:linux' 'npm run build:electron:win'",
"build:transpile": "ENV=production webpack -p",
"build:electron:all": "npm-run-all --parallel build:electron:*",
"build:electron:osx": "npm run build:electron -- --icon ./src/assets/icon.icns --platform=darwin",
"build:electron:linux": "npm run build:electron -- --icon ./src/assets/icon.png --platform=linux",
"build:electron:win": "npm run build:electron -- --icon ./src/assets/icon.ico --platform=win32",
Expand All @@ -41,39 +41,45 @@
"electron-app"
],
"dependencies": {
"decko": "^1.1.2",
"decko": "^1.1.3",
"dropbox": "robertknight/dropbox-js#5568865764d9deab69836569a69d72d200c88293",
"neatime": "^1.0.0",
"photon": "connors/photon#v0.1.2-alpha",
"praline": "^0.3.1",
"preact": "^2.1.0",
"preact-photon": "^1.0.6",
"request": "^2.67.0",
"preact": "^4.5.1",
"preact-photon": "^1.1.1",
"request": "^2.70.0",
"tmp": "0.0.28",
"wildemitter": "^1.2.0"
},
"devDependencies": {
"autoprefixer-loader": "^3.1.0",
"babel": "^5.8.23",
"babel-core": "^5.8.25",
"babel-loader": "^5.3.2",
"css-loader": "^0.23.0",
"electron-debug": "^0.2.1",
"electron-packager": "^5.0.0",
"electron-prebuilt": "^0.34.0",
"extract-text-webpack-plugin": "^0.9.1",
"autoprefixer": "^6.3.6",
"babel-cli": "^6.7.5",
"babel-core": "^6.7.6",
"babel-loader": "^6.2.4",
"babel-plugin-add-module-exports": "^0.1.2",
"babel-plugin-transform-decorators-legacy": "^1.3.4",
"babel-plugin-transform-react-jsx": "^6.7.5",
"babel-preset-es2015": "^6.6.0",
"babel-preset-es2015-minimal": "^1.1.0",
"babel-preset-stage-0": "^6.5.0",
"css-loader": "^0.23.1",
"electron-debug": "^0.6.0",
"electron-packager": "^6.0.1",
"electron-prebuilt": "^0.37.5",
"extract-text-webpack-plugin": "^1.0.1",
"file-loader": "^0.8.4",
"html-webpack-plugin": "^1.6.2",
"less": "^2.5.3",
"html-webpack-plugin": "^2.15.0",
"less": "^2.6.1",
"less-loader": "^2.2.1",
"ncp": "^2.0.0",
"parallelshell": "^2.0.0",
"postcss-loader": "^0.8.2",
"raw-loader": "^0.5.1",
"redux": "^3.0.4",
"redux": "^3.4.0",
"source-map-loader": "^0.1.5",
"style-loader": "^0.13.0",
"url-loader": "^0.5.6",
"webpack": "^1.12.8",
"webpack-dev-server": "^1.12.1"
"url-loader": "^0.5.7",
"webpack": "^1.12.14",
"webpack-dev-server": "^1.14.1"
}
}
16 changes: 7 additions & 9 deletions src/app.js
Expand Up @@ -9,14 +9,12 @@ import { createMenu, createDomMenu, showMenu } from 'menu';
import dropbox from 'dropbox-client';

export default class App extends Component {
getInitialState() {
return {
path: '/',
loading: false,
history: [],
files: []
};
}
state = {
path: '/',
loading: false,
history: [],
files: []
};

componentDidMount() {
dropbox.init( err => {
Expand Down Expand Up @@ -86,7 +84,7 @@ export default class App extends Component {
autoSync: true,
onUpload: () => {
console.log('File changed and uploaded. Reloading list.');
this.go(0);
this.navigate(0);
}
}, (err, localPath) => {
this.setState({ loading:false });
Expand Down
11 changes: 8 additions & 3 deletions src/index.js
@@ -1,5 +1,10 @@
import './styles/index.less';
import { h, render } from 'preact';
import App from './app';
import './styles/index.less';

function init() {
let App = require('./app');
render(<App />, document.body);
}
init();

render(<App />, document.body);
if (module.hot) module.hot.accept('./app', () => requestAnimationFrame(init));
54 changes: 31 additions & 23 deletions webpack.config.js → webpack.config.babel.js
@@ -1,22 +1,28 @@
var pkg = require('./package.json'),
webpack = require('webpack'),
path = require('path'),
ExtractTextPlugin = require("extract-text-webpack-plugin"),
HtmlPlugin = require('html-webpack-plugin');
import pkg from './package.json';
import path from 'path';
import webpack from 'webpack';
import ExtractTextPlugin from 'extract-text-webpack-plugin';
import HtmlWebpackPlugin from 'html-webpack-plugin';
import autoprefixer from 'autoprefixer';

const ENV = process.env.NODE_ENV || 'development';

module.exports = {
entry: './src/index.js',
context: `${__dirname}/src`,
entry: './index.js',

target: 'web',

output: {
path: path.join(__dirname, 'build'),
path: `${__dirname}/build`,
publicPath: '/',
filename: 'index.js'
},

resolve: {
modulesDirectories: [
path.resolve(__dirname, 'src/lib'),
`${__dirname}/src/lib`,
`${__dirname}/node_modules`,
'node_modules'
]
// alias: {
Expand All @@ -36,7 +42,7 @@ module.exports = {
preLoaders: [
{
test: /\.(jsx?|css|less)$/,
exclude: /(webpack\-dev\-server|socket\.io\-client)/,
exclude: /(src|webpack\-dev\-server|socket\.io\-client)/,
loader: 'source-map'
}
],
Expand All @@ -49,32 +55,36 @@ module.exports = {
},
{
test: /\.(css|less)$/,
loader: ExtractTextPlugin.extract('style?sourceMap', 'css?sourceMap!autoprefixer?browsers=last 2 version!less?sourceMap?noIeCompat')
// loaders: ['style?sourceMap', 'css?sourceMap', 'autoprefixer?browsers=last 2 version', 'less?config=--inline-urls']
loader: ExtractTextPlugin.extract(
'style?sourceMap',
'css?sourceMap!postcss!less?sourceMap'
)
},
{
test: /\.(eot|ttf|otf|woff)$/,
test: /\.(svg|woff2?|ttf|eot)$/,
loader: 'url'
}
]
},

postcss: () => [
autoprefixer({ browsers: 'last 2 versions' })
],

plugins: [
new webpack.NoErrorsPlugin(),
new ExtractTextPlugin('style.css', {
allChunks: true
}),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.DefinePlugin({
API_KEY: JSON.stringify(process.env.DROPBOX_API_KEY)
}),
new ExtractTextPlugin('style.css', {
allChunks: true
}),
new HtmlPlugin({
new HtmlWebpackPlugin({
title: pkg.productName || pkg.name,
filename: 'index.html',
minify: {
collapseWhitespace: true
}
minify: { collapseWhitespace: true }
})
],

Expand All @@ -87,12 +97,10 @@ module.exports = {
setImmediate: false
},

stats: {
colors: true
},
stats: { colors: true },

// Create Sourcemaps for the bundle
devtool: process.env.ENV==='dev' ? 'inline-source-map' : 'source-map',
devtool: ENV==='development' ? 'inline-source-map' : 'source-map',

devServer: {
port: process.env.PORT || 19998,
Expand Down

0 comments on commit 6bb4812

Please sign in to comment.