Skip to content

Commit

Permalink
update babel and friends
Browse files Browse the repository at this point in the history
  • Loading branch information
nolanlawson committed Oct 31, 2016
1 parent 27fd2f2 commit 8276818
Show file tree
Hide file tree
Showing 18 changed files with 45 additions and 48 deletions.
4 changes: 4 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"presets": ["es2015"],
"plugins": ["transform-regenerator"]
}
1 change: 1 addition & 0 deletions bin/build-monster-moves-database.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ async function doIt() {
var out = fs.createWriteStream('src/assets/monster-moves.txt');
var stream = shortRevs();
await target.dump(stream);
stream.pipe(out);
}

doIt().catch(console.log.bind(console));
4 changes: 3 additions & 1 deletion bin/build-monsters-skim-database.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,9 @@ async function doIt() {
await source.replicate.to(target);

var out = fs.createWriteStream('src/assets/skim-monsters.txt');
await target.dump(out);
var stream = shortRevs();
await target.dump(stream);
stream.pipe(out);
}

doIt().catch(console.log.bind(console));
1 change: 0 additions & 1 deletion bin/build-monsters-supplemental-database.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ PouchDB.plugin({loadIt: load.load});
var memdown = require('memdown');
var bluebird = require('bluebird');
var fs = bluebird.promisifyAll(require('fs'));
var pick = require('lodash').pick;
var zpad = require('zpad');

var species = require('../src/js/shared/data/species');
Expand Down
2 changes: 1 addition & 1 deletion bin/build-types-database.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ async function doIt() {
multiplier: multiplier,
name: thisName
});
}
};
}

doc.ineffective.forEach(addMapping(0.5));
Expand Down
24 changes: 12 additions & 12 deletions bin/build.js
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ module.exports = async function build(debug) {
'<script src=js/common.js></script>',
`<script>${common}</script>`);

await fs.writeFileAsync(__dirname + '/../www/index.html', html, 'utf-8')
await fs.writeFileAsync(__dirname + '/../www/index.html', html, 'utf-8');
}

async function inlineCriticalCss(html) {
Expand Down Expand Up @@ -136,7 +136,7 @@ module.exports = async function build(debug) {
promises.push(fs.writeFileAsync(partFile, cssPart, 'utf-8'));
counter++;
}
return await* promises;
return await Promise.all(promises);
}

async function buildCss() {
Expand All @@ -160,7 +160,7 @@ module.exports = async function build(debug) {
promises.push(fs.writeFileAsync('./www/css/style.css', mainCss, 'utf-8'));
}

await* promises;
await Promise.all(promises);
}

function startBrowserify(files) {
Expand All @@ -172,7 +172,7 @@ module.exports = async function build(debug) {
opts.plugin = [bundleCollapser];
}
var b = browserify(files, opts);
b = b.transform('babelify');
b = b.transform('async-await-browserify').transform('babelify');
if (debug) {
b = b.plugin('errorify');
} else {
Expand Down Expand Up @@ -250,7 +250,7 @@ module.exports = async function build(debug) {
});
}

await* [...browserifyPromises, factorPromise];
await Promise.all([...browserifyPromises, factorPromise]);

var allOutputFiles = [
__dirname + '/../www/js/worker.js',
Expand All @@ -261,14 +261,14 @@ module.exports = async function build(debug) {
];

if (!debug) {
await* allOutputFiles.map(function (file) {
await Promise.all(allOutputFiles.map(function (file) {
var code = uglify.minify(file, {
mangle: true,
compress: true
}).code;

return fs.writeFileAsync(file, code, 'utf-8');
});
}));
}
}

Expand All @@ -293,7 +293,7 @@ module.exports = async function build(debug) {
splitFile('./src/assets/moves.txt', './www/assets/moves.txt', 100)
];

await* promises;
await Promise.all(promises);
}

console.log('building...');
Expand All @@ -302,25 +302,25 @@ module.exports = async function build(debug) {

async function buildProd() {
console.log('buildProd()');
await* [buildHtml(), buildCss(), buildJS(), buildStatic()];
await Promise.all([buildHtml(), buildCss(), buildJS(), buildStatic()]);
await inlineCriticalJs();
console.log('wrote files to www/');
}

async function buildDev() {
console.log('buildDev()');
await* [buildHtml(), buildCss(), buildJS(), buildStatic()];
await Promise.all([buildHtml(), buildCss(), buildJS(), buildStatic()]);
console.log('wrote files to www/');
watch('src/index.html', {recursive: true}, async () => {
await buildHtml();
console.log('rebuild html');
});
watch('src/js', {recursive: true}, async () => {
await* [buildHtml(), buildJS()];
await Promise.all([buildHtml(), buildJS()]);
console.log('rebuild html+js');
});
watch('src/css', {recursive: true}, async () => {
await* [buildHtml(), buildCss()];
await Promise.all([buildHtml(), buildCss()]);
console.log('rebuild html+css');
});
}
Expand Down
16 changes: 9 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,23 @@
"description": "",
"main": "index.js",
"scripts": {
"serve": "babel-node bin/dev-server.js",
"serve": "async-node bin/dev-server.js",
"lint": "eslint bin/*js src/js",
"build-pokeapi": "bash ./bin/build-pokeapi.sh",
"build-monsters-database": "babel-node ./bin/build-monsters-database.js",
"build": "babel-node bin/build-production.js"
"build-monsters-database": "async-node ./bin/build-monsters-database.js",
"build": "async-node bin/build-production.js"
},
"keywords": [],
"author": "Nolan Lawson <nolan@nolanlawson.com>",
"license": "Apache-2.0",
"devDependencies": {
"async-await-browserify": "^1.0.0",
"async-to-gen": "^1.1.4",
"autoprefixer": "^6.1.0",
"babel": "^5.8.29",
"babel-eslint": "^4.1.3",
"babelify": "^6.4.0",
"babel-eslint": "^4.1.8",
"babel-plugin-transform-regenerator": "^6.16.1",
"babel-preset-es2015": "^6.16.0",
"babelify": "^7.3.0",
"bluebird": "^2.10.2",
"browserify": "^11.2.0",
"bundle-collapser": "^1.2.1",
Expand Down Expand Up @@ -62,7 +65,6 @@
"pouchdb-server": "^1.0.0",
"pouchdb-upsert": "^1.1.3",
"pseudo-worker": "^1.0.0",
"regenerator": "0.8.41",
"rimraf": "^2.4.3",
"serviceworker-cache-polyfill": "^3.0.0",
"short-revs": "^1.0.0",
Expand Down
1 change: 0 additions & 1 deletion src/js/client/critical/asyncSpritesCss.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
var supportsWebp = require('../../shared/util/supportsWebp');
var constants = require('../../shared/util/constants');
var numSpriteCssFiles = constants.numSpriteCssFiles;
var numLoresSpriteCssFiles = constants.numLoresSpriteCssFiles;

function loadCssAsync(filename) {
var link = document.createElement('link');
Expand Down
1 change: 0 additions & 1 deletion src/js/client/main/themeManager.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
var worker = require('./../shared/worker');
var $ = require('./jqueryLite');

var themeMeta;
Expand Down
2 changes: 1 addition & 1 deletion src/js/serviceWorker/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
require('regenerator/runtime');
require('regenerator-runtime/runtime');
require('serviceworker-cache-polyfill');

var semver = require('../shared/util/semverLite');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ function renderResistances(types) {
return {
name: typeName,
multiplier: multipliers[typeName]
}
};
}).sort((a, b) => {
if (a.multiplier !== b.multiplier) {
return a.multiplier < b.multiplier ? 1 : -1;
Expand Down
2 changes: 1 addition & 1 deletion src/js/shared/renderMonsterDetailView/renderEvolutions.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ function renderArrow(color) {
}, [h("path", {
"attributes": {"d": "M24 16V8l16 16-16 16v-8H8V16z"},
"namespace": "http://www.w3.org/2000/svg"
})])
})]);
}

function renderLabel(evolution, sourceMonster, direction) {
Expand Down
2 changes: 1 addition & 1 deletion src/js/shared/renderMonsterDetailView/renderMinutia.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ function getEVsYield(supplemental) {
var [label, name] = arr;
var count = supplemental[name];
if (count > 0) {
res.push(`${count} ${label}`)
res.push(`${count} ${label}`);
}
});
return res.join(', ');
Expand Down
7 changes: 0 additions & 7 deletions src/js/shared/renderMovesList/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,6 @@ var typesToColors = require('../../shared/monster/typesToColors');
var color = require('color');
var capitalize = require('lodash/string/capitalize');

var LEARN_TYPES = [
'level up',
'machine',
'tutor',
'egg move'
];

var sortByLevel = (a, b) => a.level < b.level ? -1 : 1;
var sortByName = (a, b) => a.identifier < b.identifier ? -1 : 1;

Expand Down
16 changes: 8 additions & 8 deletions src/js/worker/databaseService.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
require('regenerator/runtime');
require('regenerator-runtime/runtime');

var zpad = require('zpad');
var find = require('lodash/collection/find');
Expand Down Expand Up @@ -40,10 +40,10 @@ async function replicateDB(db, filename, numFiles) {

console.log(`${filename}: started replication`);
if (numFiles) {
for (var i = 1; i <= numFiles; i++) {
// file was broken up into smaller files
await db.load(filename.replace('.txt', `-${i}.txt`));
}
for (var i = 1; i <= numFiles; i++) {
// file was broken up into smaller files
await db.load(filename.replace('.txt', `-${i}.txt`));
}
} else {
await db.load(filename);
}
Expand Down Expand Up @@ -78,14 +78,14 @@ async function initDBs(couchHome) {
replicateDB(dbs.evolutions.local, '../assets/evolutions.txt')
];

await* importantReplications;
await Promise.all(importantReplications);

var lessImportantReplications = [
replicateDB(dbs.moves.local, '../assets/moves.txt', 3),
replicateDB(dbs.monsterMoves.local, '../assets/monster-moves.txt', 3)
];

await* lessImportantReplications;
await Promise.all(lessImportantReplications);
} else {
console.log('this browser doesn\'t support PouchDB. cannot work offline.');
}
Expand Down Expand Up @@ -164,7 +164,7 @@ module.exports = {
doLocalFirst(db => getManyByIds(db, monsterSummary.types.map(type => type.name)), dbs.types)
];

var results = await* promises;
var results = await Promise.all(promises);
var [monster, description, evolutions, supplemental, types] = results;

stopwatch.totalTime();
Expand Down
2 changes: 1 addition & 1 deletion src/js/worker/index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require('lie/polyfill'); // regenerator requires this
var regen = require('regenerator/runtime');
var regen = require('regenerator-runtime/runtime');

if (typeof window !== 'undefined') {
// hack for the pseudoworker
Expand Down
3 changes: 1 addition & 2 deletions src/js/worker/patchMonsterDetail.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
require('regenerator/runtime');
require('regenerator-runtime/runtime');

var renderDetailView = require('../shared/renderMonsterDetailView');
var getMonsterDarkTheme = require('../shared/monster/getMonsterDarkTheme');
var dbService = require('./databaseService');
var diff = require('virtual-dom/diff');
var Stopwatch = require('../shared/util/stopwatch');
Expand Down
3 changes: 1 addition & 2 deletions src/js/worker/patchMonstersList.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
require('regenerator/runtime');
require('regenerator-runtime/runtime');

var renderMonstersList = require('../shared/renderMonstersList');
var diff = require('virtual-dom/diff');
var Stopwatch = require('../shared/util/stopwatch');
var dbService = require('./databaseService');
var startingPageSize = require('../shared/util/constants').pageSize;
var fromJson = require('vdom-as-json/fromJson');

var lastMonstersListView = fromJson(require('../shared/prerendered/monsterSummaries.json'));
Expand Down

0 comments on commit 8276818

Please sign in to comment.