aboutsummaryrefslogtreecommitdiff
path: root/package.json
diff options
context:
space:
mode:
authorBardi Harborow <[email protected]>2017-04-19 21:59:12 +1000
committerBardi Harborow <[email protected]>2017-04-20 14:31:22 +1000
commitb4ac48fdec7637c0c7c69f9d3ff9fc5d21d23676 (patch)
tree78cbec7b0790da3038c657e2943baada99819497 /package.json
parent9af6bf8f7a3e3af5a001aeeeda7dc38794df3a71 (diff)
downloadbootstrap-b4ac48fdec7637c0c7c69f9d3ff9fc5d21d23676.tar.xz
bootstrap-b4ac48fdec7637c0c7c69f9d3ff9fc5d21d23676.zip
Build system overhaul.
Diffstat (limited to 'package.json')
-rw-r--r--package.json95
1 files changed, 54 insertions, 41 deletions
diff --git a/package.json b/package.json
index 7d2f2d893..e7ec5afe0 100644
--- a/package.json
+++ b/package.json
@@ -17,24 +17,40 @@
"Twitter, Inc."
],
"scripts": {
- "change-version": "node grunt/change-version.js",
- "clean-css": "cleancss --level 1 --source-map --output dist/css/bootstrap.min.css dist/css/bootstrap.css && cleancss --level 1 --source-map --output dist/css/bootstrap-grid.min.css dist/css/bootstrap-grid.css && cleancss --level 1 --source-map --output dist/css/bootstrap-reboot.min.css dist/css/bootstrap-reboot.css",
- "clean-css-docs": "cleancss --level 1 --source-map --output docs/assets/css/docs.min.css docs/assets/css/docs.min.css",
- "eslint": "eslint --ignore-path .eslintignore js && eslint --config js/tests/.eslintrc.json --env node grunt Gruntfile.js && eslint --config js/tests/.eslintrc.json docs/assets/js/src docs/assets/js/ie-emulation-modes-warning.js docs/assets/js/ie10-viewport-bug-workaround.js",
- "htmlhint": "htmlhint --config docs/.htmlhintrc _gh_pages/",
- "htmllint": "htmllint --rc docs/.htmllintrc _gh_pages/**/*.html js/tests/visual/*.html",
- "jekyll": "bundle exec jekyll build",
- "jekyll-github": "shx echo 'github: true' > $npm_config_tmp/twbsjekyll.yml && npm run jekyll -- --config _config.yml,$npm_config_tmp/twbsjekyll.yml && shx rm $npm_config_tmp/twbsjekyll.yml",
- "postcss": "postcss --config grunt/ --replace dist/css/*.css",
- "postcss-docs": "postcss --config grunt/ --replace docs/assets/css/docs.min.css && postcss --config grunt/ --replace docs/examples/**/*.css",
- "sass": "node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap.scss dist/css/bootstrap.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-grid.scss dist/css/bootstrap-grid.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-reboot.scss dist/css/bootstrap-reboot.css",
- "sass-docs": "node-sass --output-style expanded --source-map true --precision 6 docs/assets/scss/docs.scss docs/assets/css/docs.min.css",
- "scss-lint": "bundle exec scss-lint --config scss/.scss-lint.yml scss/*.scss",
- "scss-lint-docs": "bundle exec scss-lint --config scss/.scss-lint.yml --exclude docs/assets/scss/docs.scss docs/assets/scss/*.scss",
- "uglify": "uglifyjs --compress warnings=false --mangle --comments '/^!/' --output dist/js/bootstrap.min.js dist/js/bootstrap.js",
- "uglify-docs": "uglifyjs --compress warnings=false --mangle --comments '/^!/' --output docs/assets/js/docs.min.js docs/assets/js/vendor/anchor.min.js docs/assets/js/vendor/clipboard.min.js docs/assets/js/vendor/holder.min.js docs/assets/js/src/application.js",
- "update-shrinkwrap": "npm shrinkwrap --dev && shx mv ./npm-shrinkwrap.json ./grunt/npm-shrinkwrap.json",
- "test": "npm run eslint && grunt test"
+ "bash": "bash",
+ "css": "npm-run-all css-lint css-compile css-prefix css-minify",
+ "css-docs": "npm-run-all css-lint-docs css-compile-docs css-prefix-docs css-minify-docs",
+ "css-lint": "bundle exec scss-lint --config scss/.scss-lint.yml scss/*.scss",
+ "css-lint-docs": "bundle exec scss-lint --config scss/.scss-lint.yml --exclude docs/assets/scss/docs.scss docs/assets/scss/*.scss",
+ "css-compile": "node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap.scss dist/css/bootstrap.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-grid.scss dist/css/bootstrap-grid.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-reboot.scss dist/css/bootstrap-reboot.css",
+ "css-compile-docs": "node-sass --output-style expanded --source-map true --precision 6 docs/assets/scss/docs.scss docs/assets/css/docs.min.css",
+ "css-prefix": "postcss --config build/ --replace dist/css/*.css",
+ "css-prefix-docs": "postcss --config build/ --no-map --replace docs/assets/css/docs.min.css docs/examples/**/*.css",
+ "css-minify": "cleancss --level 1 --source-map --output dist/css/bootstrap.min.css dist/css/bootstrap.css && cleancss --level 1 --source-map --output dist/css/bootstrap-grid.min.css dist/css/bootstrap-grid.css && cleancss --level 1 --source-map --output dist/css/bootstrap-reboot.min.css dist/css/bootstrap-reboot.css",
+ "css-minify-docs": "cleancss --level 1 --source-map --output docs/assets/css/docs.min.css docs/assets/css/docs.min.css",
+ "js": "npm-run-all js-compile js-minify",
+ "js-docs": "npm-run-all js-lint-docs js-minify-docs",
+ "js-lint": "eslint js/ && eslint --config js/tests/.eslintrc.json --env node build/",
+ "js-lint-docs": "eslint --config js/tests/.eslintrc.json docs/assets/js/",
+ "js-compile": "npm-run-all --parallel js-compile-*",
+ "js-compile-bundle": "shx cat js/src/util.js js/src/alert.js js/src/button.js js/src/carousel.js js/src/collapse.js js/src/dropdown.js js/src/modal.js js/src/scrollspy.js js/src/tab.js js/src/tooltip.js js/src/popover.js | shx sed 's/^(import|export).*//' | babel --filename js/src/bootstrap.js | node build/stamp.js > dist/js/bootstrap.js",
+ "js-compile-plugins": "babel js/src/ --out-dir js/dist/ --source-maps",
+ "js-minify": "uglifyjs --compress warnings=false --mangle --comments '/^!/' --output dist/js/bootstrap.min.js dist/js/bootstrap.js",
+ "js-minify-docs": "uglifyjs --compress warnings=false --mangle --comments '/^!/' --output docs/assets/js/docs.min.js docs/assets/js/vendor/anchor.min.js docs/assets/js/vendor/clipboard.min.js docs/assets/js/vendor/holder.min.js docs/assets/js/src/application.js",
+ "js-test": "phantomjs ./node_modules/qunit-phantomjs-runner/runner.js js/tests/index.html 60",
+ "js-test-cloud": "ruby -run -ehttpd . -p3000 & grunt saucelabs-qunit",
+ "docs": "npm-run-all docs-compile docs-lint",
+ "docs-lint": "htmlhint --config docs/.htmlhintrc _gh_pages/ js/tests/visual/ && htmllint --rc docs/.htmllintrc _gh_pages/*.html _gh_pages/**/*.html js/tests/visual/*.html",
+ "docs-clean": "shx rm -r docs/dist/* && shx cp -r dist/* docs/dist/",
+ "docs-compile": "npm run docs-clean && bundle exec jekyll build",
+ "docs-serve": "npm run docs-clean && bundle exec jekyll serve",
+ "docs-github": "shx echo 'github: true' > $npm_config_tmp/twbsconfig.yml && npm run docs-compile -- --config _config.yml,$npm_config_tmp/twbsconfig.yml && shx rm $npm_config_tmp/twbsconfig.yml",
+ "docs-upload-preview": "build/upload-preview.sh",
+ "maintenance-dependencies": "ncu -a -x jquery && bundle update && shx echo 'Manually update docs/assets/js/vendor/*, js/tests/vendor/*, bower.json and .travis.yml'",
+ "maintenance-shrinkwrap": "npm shrinkwrap --dev && shx mv npm-shrinkwrap.json build/npm-shrinkwrap.json",
+ "release-version": "node build/change-version.js",
+ "release-zip": "cd dist/ && zip -r9 bootstrap-$npm_package_version-dist.zip * && shx mv bootstrap-$npm_package_version-dist.zip ..",
+ "test": "npm-run-all --parallel css js && npm-run-all docs"
},
"style": "dist/css/bootstrap.css",
"sass": "scss/bootstrap.scss",
@@ -53,42 +69,39 @@
},
"devDependencies": {
"autoprefixer": "^6.7.7",
- "babel-eslint": "^7.1.1",
- "babel-plugin-transform-es2015-modules-strip": "^0.1.0",
- "babel-preset-es2015": "^6.24.0",
- "clean-css-cli": "^4.0.9",
- "eslint": "^3.18.0",
+ "babel-cli": "^6.24.1",
+ "babel-eslint": "^7.2.2",
+ "babel-plugin-transform-es2015-modules-strip": "^0.1.1",
+ "babel-preset-es2015": "^7.0.0-alpha.7",
+ "clean-css-cli": "^4.0.12",
+ "eslint": "^3.19.0",
"grunt": "^1.0.1",
- "grunt-babel": "^6.0.0",
- "grunt-build-control": "^0.7.1",
- "grunt-contrib-clean": "^1.0.0",
- "grunt-contrib-compress": "^1.4.1",
- "grunt-contrib-concat": "^1.0.1",
- "grunt-contrib-connect": "^1.0.2",
- "grunt-contrib-copy": "^1.0.0",
- "grunt-contrib-qunit": "^1.3.0",
- "grunt-contrib-watch": "^1.0.0",
- "grunt-exec": "^2.0.0",
"grunt-saucelabs": "^9.0.0",
- "grunt-stamp": "^0.3.0",
"htmlhint": "^0.9.13",
"htmllint-cli": "^0.0.6",
- "is-travis": "^1.0.0",
- "load-grunt-tasks": "^3.5.2",
- "node-sass": "^4.5.0",
- "postcss-cli": "^3.0.0",
- "postcss-flexbugs-fixes": "^2.1.0",
+ "node-sass": "^4.5.2",
+ "npm-run-all": "^4.0.2",
+ "phantomjs-prebuilt": "^2.1.14",
+ "postcss-cli": "^3.1.1",
+ "postcss-flexbugs-fixes": "^2.1.1",
+ "qunit-phantomjs-runner": "^2.3.0",
+ "qunitjs": "^2.3.1",
"shelljs": "^0.7.7",
"shx": "^0.2.2",
- "time-grunt": "^1.4.0",
- "uglify-js": "^2.8.14"
+ "uglify-js": "^2.8.22"
},
"engines": {
"node": ">=4"
},
"files": [
+ ".babelrc",
+ ".eslintignore",
+ "Gruntfile.js",
"dist",
+ "build",
+ "js/.eslintrc.json",
"js/**/*.js",
+ "scss/.scss-lint.yml",
"scss/**/*.scss",
"LICENSE"
],