2
0
mirror of https://github.com/tenrok/bootstrap.git synced 2026-06-17 19:21:23 +03:00

Update devDependencies, gems and lots of cleanup/build fixes.

* switch to grunt-postcss and autoprefixer directly; this is the recommended way.
* uglify: specify `ie8` for compatibility
* specify `cascade:false` for autoprefixer
* specify `ieCompat` for less
* drop grunt-contrib-compress since it doesn't work with Node.js 10.x
* remove grunt-contrib-htmlmin to match the v4 docs
* clean up Gruntfile.js
* clean up .travis.yml and backport changes from v4
* build ie10-viewport-bug-workaround.less since it's used in examples
* move shrinkwrap to root
* bs-commonjs-generator.js: Use `path.posix`
* remove .hound.yml
* remove references to no longer used PR bots
* backport and adapt the sri generation script from v4
This commit is contained in:
XhmikosR
2018-09-18 18:39:35 +03:00
parent 7a2cdfb650
commit 4a5c7f21d5
18 changed files with 2279 additions and 3870 deletions
+1 -1
View File
@@ -16,7 +16,7 @@ module.exports = function generateCommonJSModule(grunt, srcFiles, destFilepath)
var destDir = path.dirname(destFilepath);
function srcPathToDestRequire(srcFilepath) {
var requirePath = path.relative(destDir, srcFilepath).replace(/\\/g, '/');
var requirePath = path.posix.relative(destDir, srcFilepath);
return 'require(\'' + requirePath + '\')';
}
+13 -13
View File
@@ -1,21 +1,21 @@
{
"paths": {
"customizerJs": [
"/docs/3.4/assets/js/vendor/autoprefixer.js",
"/docs/3.4/assets/js/vendor/less.min.js",
"/docs/3.4/assets/js/vendor/jszip.min.js",
"/docs/3.4/assets/js/vendor/uglify.min.js",
"/docs/3.4/assets/js/vendor/Blob.js",
"/docs/3.4/assets/js/vendor/FileSaver.js",
"/docs/3.4/assets/js/raw-files.min.js",
"/docs/3.4/assets/js/src/customizer.js"
"../assets/js/vendor/autoprefixer.js",
"../assets/js/vendor/less.min.js",
"../assets/js/vendor/jszip.min.js",
"../assets/js/vendor/uglify.min.js",
"../assets/js/vendor/Blob.js",
"../assets/js/vendor/FileSaver.js",
"../assets/js/raw-files.min.js",
"../assets/js/src/customizer.js"
],
"docsJs": [
"/docs/3.4/assets/js/vendor/holder.min.js",
"/docs/3.4/assets/js/vendor/clipboard.min.js",
"/docs/3.4/assets/js/vendor/anchor.min.js",
"/docs/3.4/assets/js/src/application.js",
"/docs/3.4/assets/js/src/search.js"
"../assets/js/vendor/holder.min.js",
"../assets/js/vendor/clipboard.min.js",
"../assets/js/vendor/anchor.min.js",
"../assets/js/src/application.js",
"../assets/js/src/search.js"
]
},
"config": {
+62
View File
@@ -0,0 +1,62 @@
#!/usr/bin/env node
'use strict';
/*!
* Script to generate SRI hashes for use in our docs.
* Remember to use the same vendor files as the CDN ones,
* otherwise the hashes won't match!
*
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
var crypto = require('crypto');
var fs = require('fs');
var path = require('path');
var replace = require('replace-in-file');
var configFile = path.join(__dirname, '../_config.yml');
// Array of objects which holds the files to generate SRI hashes for.
// `file` is the path from the root folder
// `configPropertyName` is the _config.yml variable's name of the file
var files = [
{
file: 'dist/css/bootstrap.min.css',
configPropertyName: 'css_hash'
},
{
file: 'dist/css/bootstrap-theme.min.css',
configPropertyName: 'css_theme_hash'
},
{
file: 'dist/js/bootstrap.min.js',
configPropertyName: 'js_hash'
}
];
files.forEach(function (file) {
fs.readFile(file.file, 'utf8', function (err, data) {
if (err) {
throw err;
}
var algo = 'sha384';
var hash = crypto.createHash(algo).update(data, 'utf8').digest('base64');
var integrity = algo + '-' + hash;
console.log(file.configPropertyName + ': ' + integrity);
try {
replace.sync({
files: configFile,
from: new RegExp('(\\s' + file.configPropertyName + ':\\s+"|\')(\\S+)("|\')'),
to: '$1' + integrity + '$3'
});
} catch (error) {
console.error('Error occurred:', error);
}
});
});
-10465
View File
File diff suppressed because it is too large Load Diff