Update dependencies
Replace pre-commit hook with Husky and lint-staged
This commit is contained in:
@@ -15,18 +15,20 @@ imagemin(['images/*.{png,jpg,gif}'], 'theme/images', {
|
|||||||
}),
|
}),
|
||||||
imageminJpegtran(),
|
imageminJpegtran(),
|
||||||
],
|
],
|
||||||
}).then((files) => {
|
})
|
||||||
files.forEach((file) => {
|
.then((files) => {
|
||||||
const path = resolve(__dirname, '../', file.path);
|
files.forEach((file) => {
|
||||||
writeFile(path, file.data, (error) => {
|
const path = resolve(__dirname, '../', file.path);
|
||||||
if (error) {
|
writeFile(path, file.data, (error) => {
|
||||||
console.error(error);
|
if (error) {
|
||||||
process.exit(1);
|
process.stdout.write(`${error}\n`);
|
||||||
}
|
process.exit(1);
|
||||||
console.log(`File written: ${path}`);
|
}
|
||||||
|
process.stdout.write(`File written: ${path}\n`);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
process.stdout.write(`${error}\n`);
|
||||||
|
process.exit(1);
|
||||||
});
|
});
|
||||||
}).catch((error) => {
|
|
||||||
console.error(error);
|
|
||||||
process.exit(1);
|
|
||||||
});
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
const { resolve } = require('path');
|
const { resolve } = require('path');
|
||||||
const { execSync } = require('child_process');
|
const { execSync } = require('child_process');
|
||||||
const { exec, upAll, stop } = require('docker-compose');
|
const { upAll, stop } = require('docker-compose');
|
||||||
const browsersync = require('browser-sync');
|
const browsersync = require('browser-sync');
|
||||||
const mysql = require('mysql');
|
const mysql = require('mysql');
|
||||||
|
|
||||||
@@ -12,9 +12,7 @@ const dockerOptions = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const browserSyncOptions = {
|
const browserSyncOptions = {
|
||||||
files: [
|
files: ['theme/**/*'],
|
||||||
'theme/**/*',
|
|
||||||
],
|
|
||||||
watchtask: true,
|
watchtask: true,
|
||||||
open: false,
|
open: false,
|
||||||
};
|
};
|
||||||
@@ -29,7 +27,11 @@ process.env.COMPOSE_PROJECT_NAME = name;
|
|||||||
|
|
||||||
// Get IP address
|
// Get IP address
|
||||||
const getIpAddr = function getIpAddr(id) {
|
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
|
// Update URIs in MYSQL database
|
||||||
@@ -42,7 +44,7 @@ const updateUriData = function updateUriData(wordpress, db) {
|
|||||||
|
|
||||||
con.query(query, (error) => {
|
con.query(query, (error) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
console.error('Error', error.sqlMessage);
|
process.stderr.write(`Error: ${error.sqlMessage}\n`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -54,11 +56,11 @@ const updateUriData = function updateUriData(wordpress, db) {
|
|||||||
const exitHandler = function exitHandler() {
|
const exitHandler = function exitHandler() {
|
||||||
stop(dockerOptions).then(
|
stop(dockerOptions).then(
|
||||||
() => {
|
() => {
|
||||||
console.log('\n');
|
process.stdout.write('\n');
|
||||||
process.exit();
|
process.exit();
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
console.error('Error:', err.message);
|
process.stderr.write(`Error: ${err.message}\n`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
@@ -73,7 +75,9 @@ process.on('uncaughtException', exitHandler.bind());
|
|||||||
// Start Docker containers
|
// Start Docker containers
|
||||||
upAll(dockerOptions).then(
|
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 wordpress = getIpAddr(`${name}_wordpress_1`);
|
||||||
const db = getIpAddr(`${name}_db_1`);
|
const db = getIpAddr(`${name}_db_1`);
|
||||||
if (wordpress && db) {
|
if (wordpress && db) {
|
||||||
@@ -82,12 +86,14 @@ upAll(dockerOptions).then(
|
|||||||
browserSyncOptions.proxy = wordpress;
|
browserSyncOptions.proxy = wordpress;
|
||||||
bs.init(browserSyncOptions);
|
bs.init(browserSyncOptions);
|
||||||
} else {
|
} 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);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
console.error('Error', err.message);
|
console.error(`Error: ${err.message}\n`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
8512
package-lock.json
generated
8512
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
70
package.json
70
package.json
@@ -12,13 +12,13 @@
|
|||||||
"build": "run-s images css:compile js:compile",
|
"build": "run-s images css:compile js:compile",
|
||||||
"css": "run-p -c css:*",
|
"css": "run-p -c css:*",
|
||||||
"css:compile": "postcss -o theme/style.css css/index.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",
|
"images": "node build/imagemin.js",
|
||||||
"jest": "jest",
|
"jest": "jest",
|
||||||
"jest:watch": "jest --watch",
|
"jest:watch": "jest --watch",
|
||||||
"js": "run-s js:*",
|
"js": "run-s js:*",
|
||||||
"js:compile": "rollup --config rollup.config.js",
|
"js:compile": "rollup --config rollup.config.js",
|
||||||
"js:lint": "eslint js/",
|
"js:lint": "eslint build js",
|
||||||
"serve": "node build/serve.js",
|
"serve": "node build/serve.js",
|
||||||
"start": "run-p watch serve",
|
"start": "run-p watch serve",
|
||||||
"test": "run-s css:lint js:lint jest",
|
"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: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"
|
"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": {
|
"dependencies": {
|
||||||
"@babel/cli": "^7.2.3",
|
"@babel/cli": "^7.2.3",
|
||||||
"@babel/core": "^7.2.0",
|
"@babel/core": "^7.3.4",
|
||||||
"@babel/preset-env": "^7.2.3",
|
"@babel/preset-env": "^7.3.4",
|
||||||
"babel-core": "^7.0.0-bridge.0",
|
"babel-core": "^7.0.0-bridge.0",
|
||||||
"babel-jest": "^23.6.0",
|
"babel-jest": "^24.1.0",
|
||||||
"cssnano": "^4.1.8",
|
"browser-sync": "^2.26.3",
|
||||||
"eslint": "^5.12.0",
|
"cssnano": "^4.1.10",
|
||||||
|
"docker-compose": "^0.12.0",
|
||||||
|
"eslint": "^5.15.0",
|
||||||
"eslint-config-airbnb-base": "^13.1.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": "^6.1.0",
|
||||||
"imagemin-gifsicle": "^6.0.1",
|
"imagemin-gifsicle": "^6.0.1",
|
||||||
"imagemin-jpegtran": "^6.0.0",
|
"imagemin-jpegtran": "^6.0.0",
|
||||||
"imagemin-pngquant": "^7.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",
|
"npm-run-all": "^4.1.5",
|
||||||
"postcss-banner": "^3.0.0",
|
"postcss-banner": "^3.0.1",
|
||||||
"postcss-cli": "^6.1.1",
|
"postcss-cli": "^6.1.2",
|
||||||
"postcss-import": "^12.0.1",
|
"postcss-import": "^12.0.1",
|
||||||
"postcss-normalize": "^7.0.1",
|
"postcss-normalize": "^7.0.1",
|
||||||
"postcss-preset-env": "^6.4.0",
|
"postcss-preset-env": "^6.6.0",
|
||||||
"rollup": "^1.1.0",
|
"rollup": "^1.4.0",
|
||||||
"rollup-plugin-babel": "^4.3.0",
|
"rollup-plugin-babel": "^4.3.2",
|
||||||
"rollup-plugin-uglify": "^6.0.1",
|
"rollup-plugin-uglify": "^6.0.2",
|
||||||
"stylelint": "^9.9.0",
|
"stylelint": "^9.10.1",
|
||||||
"stylelint-config-standard": "^18.0.0"
|
"stylelint-config-standard": "^18.2.0"
|
||||||
|
},
|
||||||
|
"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"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"pre-commit": [
|
|
||||||
"test"
|
|
||||||
],
|
|
||||||
"browserslist": [
|
"browserslist": [
|
||||||
"last 1 version",
|
"last 1 version",
|
||||||
"not dead",
|
"not dead",
|
||||||
|
|||||||
Reference in New Issue
Block a user