Update dependencies

Replace pre-commit hook with Husky and lint-staged
This commit is contained in:
2019-03-03 23:26:24 +00:00
parent a81cb7cce8
commit 2598314c2b
4 changed files with 3001 additions and 5637 deletions

View File

@@ -15,18 +15,20 @@ imagemin(['images/*.{png,jpg,gif}'], 'theme/images', {
}),
imageminJpegtran(),
],
}).then((files) => {
})
.then((files) => {
files.forEach((file) => {
const path = resolve(__dirname, '../', file.path);
writeFile(path, file.data, (error) => {
if (error) {
console.error(error);
process.stdout.write(`${error}\n`);
process.exit(1);
}
console.log(`File written: ${path}`);
process.stdout.write(`File written: ${path}\n`);
});
});
}).catch((error) => {
console.error(error);
})
.catch((error) => {
process.stdout.write(`${error}\n`);
process.exit(1);
});
});

View File

@@ -1,6 +1,6 @@
const { resolve } = require('path');
const { execSync } = require('child_process');
const { exec, upAll, stop } = require('docker-compose');
const { upAll, stop } = require('docker-compose');
const browsersync = require('browser-sync');
const mysql = require('mysql');
@@ -12,9 +12,7 @@ const dockerOptions = {
};
const browserSyncOptions = {
files: [
'theme/**/*',
],
files: ['theme/**/*'],
watchtask: true,
open: false,
};
@@ -29,7 +27,11 @@ process.env.COMPOSE_PROJECT_NAME = name;
// Get IP address
const getIpAddr = function getIpAddr(id) {
return execSync(`docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ${id}`).toString('utf8').trim();
return execSync(
`docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ${id}`,
)
.toString('utf8')
.trim();
};
// Update URIs in MYSQL database
@@ -42,7 +44,7 @@ const updateUriData = function updateUriData(wordpress, db) {
con.query(query, (error) => {
if (error) {
console.error('Error', error.sqlMessage);
process.stderr.write(`Error: ${error.sqlMessage}\n`);
process.exit(1);
}
});
@@ -54,11 +56,11 @@ const updateUriData = function updateUriData(wordpress, db) {
const exitHandler = function exitHandler() {
stop(dockerOptions).then(
() => {
console.log('\n');
process.stdout.write('\n');
process.exit();
},
(err) => {
console.error('Error:', err.message);
process.stderr.write(`Error: ${err.message}\n`);
process.exit(1);
},
);
@@ -73,7 +75,9 @@ process.on('uncaughtException', exitHandler.bind());
// Start Docker containers
upAll(dockerOptions).then(
() => {
console.log('Docker containers launched, starting browser-sync...');
process.stdout.write(
'Docker containers launched, starting browser-sync...',
);
const wordpress = getIpAddr(`${name}_wordpress_1`);
const db = getIpAddr(`${name}_db_1`);
if (wordpress && db) {
@@ -82,12 +86,14 @@ upAll(dockerOptions).then(
browserSyncOptions.proxy = wordpress;
bs.init(browserSyncOptions);
} else {
console.error('Error', 'No IP address for Docker containers. Aborting.');
process.stderr.write(
'Error: No IP address for Docker containers. Aborting.\n',
);
process.exit(1);
}
},
(err) => {
console.error('Error', err.message);
console.error(`Error: ${err.message}\n`);
process.exit(1);
},
);

8512
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -12,13 +12,13 @@
"build": "run-s images css:compile js:compile",
"css": "run-p -c css:*",
"css:compile": "postcss -o theme/style.css css/index.css",
"css:lint": "stylelint --config .stylelintrc \"css/**/*.css\"",
"css:lint": "stylelint css/*.css",
"images": "node build/imagemin.js",
"jest": "jest",
"jest:watch": "jest --watch",
"js": "run-s js:*",
"js:compile": "rollup --config rollup.config.js",
"js:lint": "eslint js/",
"js:lint": "eslint build js",
"serve": "node build/serve.js",
"start": "run-p watch serve",
"test": "run-s css:lint js:lint jest",
@@ -27,43 +27,59 @@
"watch:images": "nodemon -q --watch images -e png,jpg,gif --exec npm run images",
"watch:js": "nodemon -q --watch js -e js --exec npm run js"
},
"devDependencies": {
"browser-sync": "^2.26.3",
"docker-compose": "^0.9.3",
"mysql": "^2.16.0",
"nodemon": "^1.18.7",
"pre-commit": "^1.2.2"
},
"dependencies": {
"@babel/cli": "^7.2.3",
"@babel/core": "^7.2.0",
"@babel/preset-env": "^7.2.3",
"@babel/core": "^7.3.4",
"@babel/preset-env": "^7.3.4",
"babel-core": "^7.0.0-bridge.0",
"babel-jest": "^23.6.0",
"cssnano": "^4.1.8",
"eslint": "^5.12.0",
"babel-jest": "^24.1.0",
"browser-sync": "^2.26.3",
"cssnano": "^4.1.10",
"docker-compose": "^0.12.0",
"eslint": "^5.15.0",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-plugin-import": "^2.14.0",
"eslint-plugin-import": "^2.16.0",
"husky": "^1.3.1",
"imagemin": "^6.1.0",
"imagemin-gifsicle": "^6.0.1",
"imagemin-jpegtran": "^6.0.0",
"imagemin-pngquant": "^7.0.0",
"jest": "^23.6.0",
"jest": "^24.1.0",
"lint-staged": "^8.1.5",
"mysql": "^2.16.0",
"nodemon": "^1.18.10",
"npm-run-all": "^4.1.5",
"postcss-banner": "^3.0.0",
"postcss-cli": "^6.1.1",
"postcss-banner": "^3.0.1",
"postcss-cli": "^6.1.2",
"postcss-import": "^12.0.1",
"postcss-normalize": "^7.0.1",
"postcss-preset-env": "^6.4.0",
"rollup": "^1.1.0",
"rollup-plugin-babel": "^4.3.0",
"rollup-plugin-uglify": "^6.0.1",
"stylelint": "^9.9.0",
"stylelint-config-standard": "^18.0.0"
"postcss-preset-env": "^6.6.0",
"rollup": "^1.4.0",
"rollup-plugin-babel": "^4.3.2",
"rollup-plugin-uglify": "^6.0.2",
"stylelint": "^9.10.1",
"stylelint-config-standard": "^18.2.0"
},
"pre-commit": [
"test"
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"build/*.js": [
"eslint --fix build",
"git add"
],
"css/*.css": [
"stylelint --fix css/*.css",
"git add"
],
"js/*.js": [
"eslint --fix js",
"jest",
"git add"
]
},
"browserslist": [
"last 1 version",
"not dead",