- added possibility to add data into tempaltes via json
- restructured output files
- some work on styles
This commit is contained in:
Stephan 2018-05-08 23:00:46 +02:00
parent 1bb57b109b
commit 8bc8da74db
18 changed files with 1004 additions and 199 deletions

View file

@ -6,7 +6,10 @@ Clone the repo `https://github.com/sthag/hippie.git`.
Change to the newly created folder. By default this would be *hippie*. Change to the newly created folder. By default this would be *hippie*.
Run the command *gulp*. Run the command `npm install`.
This will install all nodejs dependencies into the filder *node_modules*.
Run the command `gulp`.
This will create a folder *build* with the resulting files. This will create a folder *build* with the resulting files.
## LOGIC ## LOGIC

View file

@ -15,6 +15,8 @@ var build = {
root: 'build' root: 'build'
} }
var fs = require('fs');
// Load plugins // Load plugins
const gulp = require('gulp'), const gulp = require('gulp'),
rename = require('gulp-rename'), rename = require('gulp-rename'),
@ -25,12 +27,13 @@ concat = require('gulp-concat'),
pump = require('pump'), pump = require('pump'),
sourcemap = require('gulp-sourcemaps'), sourcemap = require('gulp-sourcemaps'),
prefix = require('gulp-autoprefixer'), prefix = require('gulp-autoprefixer'),
testsass = require('gulp-sass'), sass = require('gulp-sass'),
sass = require('gulp-ruby-sass'), rubysass = require('gulp-ruby-sass'),
nunjucks = require('gulp-nunjucks-render'); nunjucks = require('gulp-nunjucks-render');
cssnano = require('gulp-cssnano'), cssnano = require('gulp-cssnano'),
jshint = require('gulp-jshint'), jshint = require('gulp-jshint'),
jscs = require('gulp-jscs'), jscs = require('gulp-jscs'),
useref = require('gulp-useref'),
sasslint = require('gulp-sass-lint'), sasslint = require('gulp-sass-lint'),
uglifyjs = require('uglify-es'), uglifyjs = require('uglify-es'),
composer = require('gulp-uglify/composer'), composer = require('gulp-uglify/composer'),
@ -42,16 +45,19 @@ changed = require('gulp-changed'),
newer = require('gulp-newer'), newer = require('gulp-newer'),
plumber = require('gulp-plumber'), plumber = require('gulp-plumber'),
notify = require('gulp-notify'), notify = require('gulp-notify'),
data = require('gulp-data'),
browsersync = require('browser-sync').create(); browsersync = require('browser-sync').create();
var minify = composer(uglifyjs, console); var minify = composer(uglifyjs, console);
// TEST - Tasks
gulp.task('test', function() {
// Task for the looks
gulp.task('sass', function() {
return gulp.src('source/style/**/*.+(scss|sass)') return gulp.src('source/style/**/*.+(scss|sass)')
.pipe(plumbError('Error Running Sass')) .pipe(plumbError('Error Running Sass'))
.pipe(sourcemap.init()) .pipe(sourcemap.init())
.pipe(testsass({ .pipe(sass({
includePaths: ['source/bower_components'] includePaths: ['source/bower_components']
})) }))
.pipe(prefix(['>= 4%', 'last 2 version'])) .pipe(prefix(['>= 4%', 'last 2 version']))
@ -62,7 +68,9 @@ gulp.task('test', function() {
})) }))
}); });
gulp.task('testsync', function() {
// Task for automagically reload browsers
gulp.task('syncreload', function() {
browsersync.init({ browsersync.init({
open: false, open: false,
server: 'build', server: 'build',
@ -70,9 +78,13 @@ gulp.task('testsync', function() {
}); });
}); });
gulp.task('testnunjucks', function() { // templating engine
gulp.task('nunjucks', function() {
return gulp.src('source/pages/**/*.+(html|njk)') return gulp.src('source/pages/**/*.+(html|njk)')
.pipe(plumbError('Error Running Nunjucks')) .pipe(plumbError('Error Running Nunjucks'))
.pipe(data(function() {
return JSON.parse(fs.readFileSync('./source/data.json'))
}))
.pipe(nunjucks({ .pipe(nunjucks({
path: ['source/templates'], path: ['source/templates'],
envOptions: { envOptions: {
@ -128,14 +140,17 @@ gulp.task('clean:dev', function() {
// Task - Clean build directory // Task - Clean build directory
gulp.task('clean', function() { gulp.task('clean', function() {
return del([build.scripts, build.styles, build.images]); return del([build.scripts, build.styles, build.images]);
}); });
// Task - Styles // Task - Styles
gulp.task('styles', () => sass(source.styles, {sourcemap: true}) gulp.task('styles', () => rubysass(source.styles, {sourcemap: true})
.on('error', sass.logError) .on('error', rubysass.logError)
// .pipe(newer({dest: build.styles, ext: '.css'})) // .pipe(newer({dest: build.styles, ext: '.css'}))
.pipe(prefix('last 2 version')) .pipe(prefix('last 2 version'))
.pipe(gulp.dest(build.styles)) .pipe(gulp.dest(build.styles))
@ -172,106 +187,115 @@ gulp.task('images', function() {
return gulp.src(source.images) return gulp.src(source.images)
.pipe(changed(build.images)) .pipe(changed(build.images))
// .pipe(cache(imagemin({ // .pipe(cache(imagemin({
// optimizationLevel: 3, // optimizationLevel: 3,
// progressive: true, // progressive: true,
// interlaced: true }))) // interlaced: true })))
// ) // )
.pipe(gulp.dest(build.images)) .pipe(gulp.dest(build.images))
// .pipe(notify({ message: 'Images task complete' })) // .pipe(notify({ message: 'Images task complete' }))
; ;
}); });
// Task - Vendor // Task - Vendor
gulp.task('vendor', function() { gulp.task('vendor', function() {
return gulp.src(source.vendor) return gulp.src(source.vendor)
.pipe(plumbError()) .pipe(plumbError())
.pipe(gulp.dest(build.vendor)) .pipe(gulp.dest(build.vendor))
; ;
}); });
//Task - Nunjucks //Task - Nunjucks
gulp.task('nunjucks', function() { gulp.task('oldnunjucks', function() {
return gulp.src(source.pages) return gulp.src(source.pages)
// .pipe(changed(build.root)) // .pipe(changed(build.root))
.pipe(nunjucks({ .pipe(nunjucks({
path: ['source/templates'], path: ['source/templates'],
envOptions: { envOptions: {
trimBlocks: true trimBlocks: true
} }
})) }))
.pipe(gulp.dest(build.root)) .pipe(gulp.dest(build.root))
}); });
// a task that ensures the other task is complete before reloading browsers // a task that ensures the other task is complete before reloading browsers
gulp.task('overwatch', ['nunjucks', 'styles'], function(done) { gulp.task('overwatch', ['oldnunjucks', 'styles'], function(done) {
browsersync.reload(); browsersync.reload();
done(); done();
});
// TEST - Watch
gulp.task('watch-js', ['lint:js'], browsersync.reload);
gulp.task('testwatch', function() {
gulp.watch('source/code/**/*.js', ['watch-js'])
gulp.watch('source/style/**/*.+(scss|sass)', ['test', 'lint:scss']);
gulp.watch([
'source/templates/**/*',
'source/pages/**/*.+(html|njk)'
], ['testnunjucks']);
});
// Watch for file changes
gulp.task('watch', ['styles', 'scripts', 'nunjucks'], function() {
browsersync.init({
open: false,
server: build.root,
// proxy: "http://verser.vrt/virtual/"
}); });
gulp.watch(source.scripts, ['scripts']).on('change', function(event) {
if (event.type === 'deleted') {
delete cache.caches['scripts'][event.path]; // TEST - Watch
remember.forget('scripts', event.path); gulp.task('watch-js', ['lint:js'], browsersync.reload);
gulp.task('testwatch', function() {
gulp.watch('source/code/**/*.js', ['watch-js'])
gulp.watch('source/style/**/*.+(scss|sass)', ['sass', 'lint:scss']);
gulp.watch([
'source/templates/**/*',
'source/pages/**/*.+(html|njk)',
'source/data.json'
], ['nunjucks']);
});
// Old watch for file changes
gulp.task('watch', ['styles', 'scripts', 'oldnunjucks'], function() {
browsersync.init({
open: false,
server: build.root,
// proxy: "http://verser.vrt/virtual/"
});
gulp.watch(source.scripts, ['scripts']).on('change', function(event) {
if (event.type === 'deleted') {
delete cache.caches['scripts'][event.path];
remember.forget('scripts', event.path);
}
});
// gulp.watch(source.watch, ['overwatch']);
gulp.watch(source.watch, ['styles', 'oldnunjucks']).on('change', browsersync.reload);
// gulp.watch(source.images, ['images']);
});
gulp.task('olddefault', ['clean', 'styles', 'scripts', 'images', 'nunjucks']);
// The default task (called when you run `gulp` from cli)
gulp.task('default', function(callback) {
sequencer(
'clean:dev',
['sprites', 'lint:js', 'lint:scss'],
['sass', 'nunjucks'],
['syncreload', 'testwatch'],
callback
)
});
// function errorHandler(err) {
// // Logs out error in the command line
// console.log(err.toString());
// // Ends the current pipe, so Gulp watch doesn't break
// this.emit('end');
// }
function plumbError(errTitle) {
return plumber({
errorHandler: notify.onError({
// Customizing error title
title: errTitle || "Error running Gulp",
message: "Error: <%= error.message %>",
sound: true
})
});
} }
});
// gulp.watch(source.watch, ['overwatch']);
gulp.watch(source.watch, ['styles', 'nunjucks']).on('change', browsersync.reload);
// gulp.watch(source.images, ['images']);
});
// The default task (called when you run `gulp` from cli)
gulp.task('olddefault', ['clean', 'styles', 'scripts', 'images', 'nunjucks']);
gulp.task('default', function(callback) {
sequencer(
'clean:dev',
['sprites', 'lint:js', 'lint:scss'],
['test', 'testnunjucks'],
['testsync', 'testwatch'],
callback
)
});
// function errorHandler(err) {
// // Logs out error in the command line
// console.log(err.toString());
// // Ends the current pipe, so Gulp watch doesn't break
// this.emit('end');
// }
function plumbError(errTitle) {
return plumber({
errorHandler: notify.onError({
// Customizing error title
title: errTitle || "Error running Gulp",
message: "Error: <%= error.message %>",
sound: true
})
});
}

693
package-lock.json generated
View file

@ -131,12 +131,39 @@
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
"dev": true "dev": true
}, },
"ansi-colors": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz",
"integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==",
"dev": true,
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-cyan": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz",
"integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=",
"dev": true,
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-escapes": { "ansi-escapes": {
"version": "1.4.0", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
"integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=",
"dev": true "dev": true
}, },
"ansi-red": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz",
"integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=",
"dev": true,
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-regex": { "ansi-regex": {
"version": "2.1.1", "version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
@ -149,6 +176,12 @@
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
"dev": true "dev": true
}, },
"ansi-wrap": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz",
"integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=",
"dev": true
},
"anymatch": { "anymatch": {
"version": "1.3.2", "version": "1.3.2",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
@ -159,6 +192,15 @@
"normalize-path": "2.1.1" "normalize-path": "2.1.1"
} }
}, },
"append-buffer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz",
"integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=",
"dev": true,
"requires": {
"buffer-equal": "1.0.0"
}
},
"aproba": { "aproba": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
@ -205,6 +247,12 @@
"integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
"dev": true "dev": true
}, },
"arr-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
"integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=",
"dev": true
},
"array-differ": { "array-differ": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
@ -280,6 +328,12 @@
"integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
"dev": true "dev": true
}, },
"assign-symbols": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
"integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
"dev": true
},
"async": { "async": {
"version": "1.5.2", "version": "1.5.2",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
@ -544,6 +598,12 @@
"integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=",
"dev": true "dev": true
}, },
"buffer-equal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz",
"integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=",
"dev": true
},
"builtin-modules": { "builtin-modules": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@ -1425,6 +1485,24 @@
"clone": "1.0.2" "clone": "1.0.2"
} }
}, },
"define-properties": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz",
"integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=",
"dev": true,
"requires": {
"foreach": "2.0.5",
"object-keys": "1.0.11"
},
"dependencies": {
"object-keys": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz",
"integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=",
"dev": true
}
}
},
"defined": { "defined": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
@ -1571,6 +1649,12 @@
"domelementtype": "1.3.0" "domelementtype": "1.3.0"
} }
}, },
"duplexer": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
"integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
"dev": true
},
"duplexer2": { "duplexer2": {
"version": "0.0.2", "version": "0.0.2",
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
@ -2134,6 +2218,21 @@
"es5-ext": "0.10.30" "es5-ext": "0.10.30"
} }
}, },
"event-stream": {
"version": "3.3.4",
"resolved": "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
"integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=",
"dev": true,
"requires": {
"duplexer": "0.1.1",
"from": "0.1.7",
"map-stream": "0.1.0",
"pause-stream": "0.0.11",
"split": "0.3.3",
"stream-combiner": "0.0.4",
"through": "2.3.8"
}
},
"eventemitter3": { "eventemitter3": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz",
@ -2216,6 +2315,23 @@
"integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
"dev": true "dev": true
}, },
"extend-shallow": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
"integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=",
"dev": true,
"requires": {
"kind-of": "1.1.0"
},
"dependencies": {
"kind-of": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
"integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=",
"dev": true
}
}
},
"extglob": { "extglob": {
"version": "0.3.2", "version": "0.3.2",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
@ -2450,6 +2566,16 @@
"integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=",
"dev": true "dev": true
}, },
"flush-write-stream": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz",
"integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==",
"dev": true,
"requires": {
"inherits": "2.0.3",
"readable-stream": "2.3.3"
}
},
"for-in": { "for-in": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
@ -2506,6 +2632,12 @@
"integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8=", "integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8=",
"dev": true "dev": true
}, },
"from": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
"integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=",
"dev": true
},
"front-matter": { "front-matter": {
"version": "2.1.2", "version": "2.1.2",
"resolved": "https://registry.npmjs.org/front-matter/-/front-matter-2.1.2.tgz", "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-2.1.2.tgz",
@ -2532,6 +2664,16 @@
"universalify": "0.1.1" "universalify": "0.1.1"
} }
}, },
"fs-mkdirp-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz",
"integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=",
"dev": true,
"requires": {
"graceful-fs": "4.1.11",
"through2": "2.0.3"
}
},
"fs.realpath": { "fs.realpath": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@ -3075,6 +3217,17 @@
"vinyl-sourcemaps-apply": "0.2.1" "vinyl-sourcemaps-apply": "0.2.1"
} }
}, },
"gulp-data": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/gulp-data/-/gulp-data-1.3.1.tgz",
"integrity": "sha512-fvpQJvgVyhkwRcFP3Y9QUS9sWvIFsAlJDinQjhLuknmHZz52jH0gHmTujYBFjr9aTlTHlrAayY5m1d0tA1HzGQ==",
"dev": true,
"requires": {
"plugin-error": "0.1.2",
"through2": "2.0.3",
"util-extend": "1.0.3"
}
},
"gulp-if": { "gulp-if": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz", "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz",
@ -3581,6 +3734,188 @@
} }
} }
}, },
"gulp-useref": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/gulp-useref/-/gulp-useref-3.1.5.tgz",
"integrity": "sha1-vrjgCcGfgZ9gTejRkdsSi9JEqnA=",
"dev": true,
"requires": {
"event-stream": "3.3.4",
"extend": "3.0.1",
"glob": "7.1.2",
"gulp-concat": "2.6.1",
"gulp-if": "2.0.2",
"is-relative-url": "1.0.0",
"plugin-error": "1.0.1",
"through2": "2.0.3",
"useref": "1.4.1",
"vinyl-fs": "3.0.2"
},
"dependencies": {
"arr-diff": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
"integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
"dev": true
},
"arr-union": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
"integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
"dev": true
},
"clone": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
"integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=",
"dev": true
},
"clone-stats": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
"integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=",
"dev": true
},
"extend-shallow": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
"integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
"dev": true,
"requires": {
"assign-symbols": "1.0.0",
"is-extendable": "1.0.1"
}
},
"glob-parent": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
"dev": true,
"requires": {
"is-glob": "3.1.0",
"path-dirname": "1.0.2"
}
},
"glob-stream": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz",
"integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=",
"dev": true,
"requires": {
"extend": "3.0.1",
"glob": "7.1.2",
"glob-parent": "3.1.0",
"is-negated-glob": "1.0.0",
"ordered-read-streams": "1.0.1",
"pumpify": "1.4.0",
"readable-stream": "2.3.3",
"remove-trailing-separator": "1.1.0",
"to-absolute-glob": "2.0.2",
"unique-stream": "2.2.1"
}
},
"is-extendable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
"integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
"dev": true,
"requires": {
"is-plain-object": "2.0.4"
}
},
"is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
"dev": true
},
"is-glob": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
"integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
"dev": true,
"requires": {
"is-extglob": "2.1.1"
}
},
"ordered-read-streams": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz",
"integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=",
"dev": true,
"requires": {
"readable-stream": "2.3.3"
}
},
"plugin-error": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz",
"integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==",
"dev": true,
"requires": {
"ansi-colors": "1.1.0",
"arr-diff": "4.0.0",
"arr-union": "3.1.0",
"extend-shallow": "3.0.2"
}
},
"replace-ext": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=",
"dev": true
},
"unique-stream": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz",
"integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=",
"dev": true,
"requires": {
"json-stable-stringify": "1.0.1",
"through2-filter": "2.0.0"
}
},
"vinyl": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz",
"integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=",
"dev": true,
"requires": {
"clone": "2.1.1",
"clone-buffer": "1.0.0",
"clone-stats": "1.0.0",
"cloneable-readable": "1.0.0",
"remove-trailing-separator": "1.1.0",
"replace-ext": "1.0.0"
}
},
"vinyl-fs": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.2.tgz",
"integrity": "sha512-AUSFda1OukBwuLPBTbyuO4IRWgfXmqC4UTW0f8xrCa8Hkv9oyIU+NSqBlgfOLZRoUt7cHdo75hKQghCywpIyIw==",
"dev": true,
"requires": {
"fs-mkdirp-stream": "1.0.0",
"glob-stream": "6.1.0",
"graceful-fs": "4.1.11",
"is-valid-glob": "1.0.0",
"lazystream": "1.0.0",
"lead": "1.0.0",
"object.assign": "4.1.0",
"pumpify": "1.4.0",
"readable-stream": "2.3.3",
"remove-bom-buffer": "3.0.0",
"remove-bom-stream": "1.2.0",
"resolve-options": "1.1.0",
"through2": "2.0.3",
"to-through": "2.0.0",
"value-or-function": "3.0.0",
"vinyl": "2.1.0",
"vinyl-sourcemap": "1.1.0"
}
}
}
},
"gulp-util": { "gulp-util": {
"version": "3.0.8", "version": "3.0.8",
"resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz",
@ -3830,6 +4165,12 @@
"sparkles": "1.0.0" "sparkles": "1.0.0"
} }
}, },
"has-symbols": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
"integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=",
"dev": true
},
"has-unicode": { "has-unicode": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
@ -4196,6 +4537,12 @@
"xtend": "4.0.1" "xtend": "4.0.1"
} }
}, },
"is-negated-glob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
"integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=",
"dev": true
},
"is-number": { "is-number": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
@ -4294,6 +4641,23 @@
"is-unc-path": "0.1.2" "is-unc-path": "0.1.2"
} }
}, },
"is-relative-url": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-relative-url/-/is-relative-url-1.0.0.tgz",
"integrity": "sha1-h6nTXop4m0ngebTX1p1kYS6ODh8=",
"dev": true,
"requires": {
"is-absolute-url": "1.0.0"
},
"dependencies": {
"is-absolute-url": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-1.0.0.tgz",
"integrity": "sha1-LX7w/QuyqI2sfpIlPGgIoKziS/s=",
"dev": true
}
}
},
"is-resolvable": { "is-resolvable": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz",
@ -4333,6 +4697,12 @@
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
"dev": true "dev": true
}, },
"is-valid-glob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
"integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=",
"dev": true
},
"is-windows": { "is-windows": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz",
@ -4653,6 +5023,15 @@
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
"dev": true "dev": true
}, },
"lazystream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
"integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
"dev": true,
"requires": {
"readable-stream": "2.3.3"
}
},
"lcid": { "lcid": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
@ -4662,6 +5041,15 @@
"invert-kv": "1.0.0" "invert-kv": "1.0.0"
} }
}, },
"lead": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz",
"integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=",
"dev": true,
"requires": {
"flush-write-stream": "1.0.3"
}
},
"levn": { "levn": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
@ -5138,6 +5526,12 @@
"integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
"dev": true "dev": true
}, },
"map-stream": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
"integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=",
"dev": true
},
"math-expression-evaluator": { "math-expression-evaluator": {
"version": "1.2.17", "version": "1.2.17",
"resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz",
@ -5615,6 +6009,15 @@
"sort-keys": "1.1.2" "sort-keys": "1.1.2"
} }
}, },
"now-and-later": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.0.tgz",
"integrity": "sha1-vGHLtFbXnLMiB85HygUTb/Ln1u4=",
"dev": true,
"requires": {
"once": "1.4.0"
}
},
"npmlog": { "npmlog": {
"version": "4.1.2", "version": "4.1.2",
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
@ -5716,6 +6119,26 @@
"integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=", "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=",
"dev": true "dev": true
}, },
"object.assign": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
"integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
"dev": true,
"requires": {
"define-properties": "1.1.2",
"function-bind": "1.1.1",
"has-symbols": "1.0.0",
"object-keys": "1.0.11"
},
"dependencies": {
"object-keys": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz",
"integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=",
"dev": true
}
}
},
"object.defaults": { "object.defaults": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
@ -5998,6 +6421,12 @@
"integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=",
"dev": true "dev": true
}, },
"path-dirname": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
"integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
"dev": true
},
"path-exists": { "path-exists": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
@ -6057,6 +6486,15 @@
"integrity": "sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=", "integrity": "sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=",
"dev": true "dev": true
}, },
"pause-stream": {
"version": "0.0.11",
"resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
"integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=",
"dev": true,
"requires": {
"through": "2.3.8"
}
},
"performance-now": { "performance-now": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
@ -6115,6 +6553,37 @@
"integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=", "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=",
"dev": true "dev": true
}, },
"plugin-error": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
"integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=",
"dev": true,
"requires": {
"ansi-cyan": "0.1.1",
"ansi-red": "0.1.1",
"arr-diff": "1.1.0",
"arr-union": "2.1.0",
"extend-shallow": "1.1.4"
},
"dependencies": {
"arr-diff": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
"integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=",
"dev": true,
"requires": {
"arr-flatten": "1.1.0",
"array-slice": "0.2.3"
}
},
"array-slice": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
"integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
"dev": true
}
}
},
"plur": { "plur": {
"version": "2.1.2", "version": "2.1.2",
"resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz",
@ -7289,6 +7758,50 @@
} }
} }
}, },
"pumpify": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.4.0.tgz",
"integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==",
"dev": true,
"requires": {
"duplexify": "3.5.4",
"inherits": "2.0.3",
"pump": "2.0.1"
},
"dependencies": {
"duplexify": {
"version": "3.5.4",
"resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz",
"integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==",
"dev": true,
"requires": {
"end-of-stream": "1.4.1",
"inherits": "2.0.3",
"readable-stream": "2.3.3",
"stream-shift": "1.0.0"
}
},
"end-of-stream": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
"integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
"dev": true,
"requires": {
"once": "1.4.0"
}
},
"pump": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
"integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
"dev": true,
"requires": {
"end-of-stream": "1.4.1",
"once": "1.4.0"
}
}
}
},
"punycode": { "punycode": {
"version": "1.4.1", "version": "1.4.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
@ -7592,6 +8105,27 @@
"is-equal-shallow": "0.1.3" "is-equal-shallow": "0.1.3"
} }
}, },
"remove-bom-buffer": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz",
"integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==",
"dev": true,
"requires": {
"is-buffer": "1.1.5",
"is-utf8": "0.2.1"
}
},
"remove-bom-stream": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz",
"integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=",
"dev": true,
"requires": {
"remove-bom-buffer": "3.0.0",
"safe-buffer": "5.1.1",
"through2": "2.0.3"
}
},
"remove-trailing-separator": { "remove-trailing-separator": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
@ -7722,6 +8256,15 @@
"integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
"dev": true "dev": true
}, },
"resolve-options": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz",
"integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=",
"dev": true,
"requires": {
"value-or-function": "3.0.0"
}
},
"resolve-url": { "resolve-url": {
"version": "0.2.1", "version": "0.2.1",
"resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
@ -8351,6 +8894,15 @@
"integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=", "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=",
"dev": true "dev": true
}, },
"split": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
"integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=",
"dev": true,
"requires": {
"through": "2.3.8"
}
},
"sprintf-js": { "sprintf-js": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@ -8572,6 +9124,15 @@
"readable-stream": "2.3.3" "readable-stream": "2.3.3"
} }
}, },
"stream-combiner": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
"integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=",
"dev": true,
"requires": {
"duplexer": "0.1.1"
}
},
"stream-consume": { "stream-consume": {
"version": "0.1.0", "version": "0.1.0",
"resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz", "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz",
@ -8830,6 +9391,16 @@
"xtend": "4.0.1" "xtend": "4.0.1"
} }
}, },
"through2-filter": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz",
"integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=",
"dev": true,
"requires": {
"through2": "2.0.3",
"xtend": "4.0.1"
}
},
"tildify": { "tildify": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz",
@ -8855,6 +9426,52 @@
"next-tick": "1.0.0" "next-tick": "1.0.0"
} }
}, },
"to-absolute-glob": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz",
"integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=",
"dev": true,
"requires": {
"is-absolute": "1.0.0",
"is-negated-glob": "1.0.0"
},
"dependencies": {
"is-absolute": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
"integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
"dev": true,
"requires": {
"is-relative": "1.0.0",
"is-windows": "1.0.2"
}
},
"is-relative": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
"integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
"dev": true,
"requires": {
"is-unc-path": "1.0.0"
}
},
"is-unc-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
"integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
"dev": true,
"requires": {
"unc-path-regex": "0.1.2"
}
},
"is-windows": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
"integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
"dev": true
}
}
},
"to-array": { "to-array": {
"version": "0.1.4", "version": "0.1.4",
"resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
@ -8873,6 +9490,15 @@
"integrity": "sha1-fMKRUfD18sQZRvEZ9ZMv5VQXASU=", "integrity": "sha1-fMKRUfD18sQZRvEZ9ZMv5VQXASU=",
"dev": true "dev": true
}, },
"to-through": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz",
"integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=",
"dev": true,
"requires": {
"through2": "2.0.3"
}
},
"tough-cookie": { "tough-cookie": {
"version": "2.3.3", "version": "2.3.3",
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz",
@ -9059,6 +9685,12 @@
"integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=",
"dev": true "dev": true
}, },
"useref": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/useref/-/useref-1.4.1.tgz",
"integrity": "sha1-Atq60QsahQJdlkJS/KMbgFkxrX0=",
"dev": true
},
"util": { "util": {
"version": "0.10.3", "version": "0.10.3",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
@ -9082,6 +9714,12 @@
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"dev": true "dev": true
}, },
"util-extend": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz",
"integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=",
"dev": true
},
"utile": { "utile": {
"version": "0.2.1", "version": "0.2.1",
"resolved": "https://registry.npmjs.org/utile/-/utile-0.2.1.tgz", "resolved": "https://registry.npmjs.org/utile/-/utile-0.2.1.tgz",
@ -9135,6 +9773,12 @@
"spdx-expression-parse": "1.0.4" "spdx-expression-parse": "1.0.4"
} }
}, },
"value-or-function": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz",
"integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=",
"dev": true
},
"vendors": { "vendors": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.1.tgz", "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.1.tgz",
@ -9298,6 +9942,55 @@
} }
} }
}, },
"vinyl-sourcemap": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz",
"integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=",
"dev": true,
"requires": {
"append-buffer": "1.0.2",
"convert-source-map": "1.5.0",
"graceful-fs": "4.1.11",
"normalize-path": "2.1.1",
"now-and-later": "2.0.0",
"remove-bom-buffer": "3.0.0",
"vinyl": "2.1.0"
},
"dependencies": {
"clone": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
"integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=",
"dev": true
},
"clone-stats": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
"integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=",
"dev": true
},
"replace-ext": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=",
"dev": true
},
"vinyl": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz",
"integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=",
"dev": true,
"requires": {
"clone": "2.1.1",
"clone-buffer": "1.0.0",
"clone-stats": "1.0.0",
"cloneable-readable": "1.0.0",
"remove-trailing-separator": "1.1.0",
"replace-ext": "1.0.0"
}
}
}
},
"vinyl-sourcemaps-apply": { "vinyl-sourcemaps-apply": {
"version": "0.2.1", "version": "0.2.1",
"resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz",

View file

@ -25,6 +25,7 @@
"gulp-changed": "^3.1.0", "gulp-changed": "^3.1.0",
"gulp-concat": "^2.6.1", "gulp-concat": "^2.6.1",
"gulp-cssnano": "^2.1.2", "gulp-cssnano": "^2.1.2",
"gulp-data": "^1.3.1",
"gulp-if": "^2.0.2", "gulp-if": "^2.0.2",
"gulp-jscs": "^4.0.0", "gulp-jscs": "^4.0.0",
"gulp-jshint": "^2.0.4", "gulp-jshint": "^2.0.4",
@ -39,6 +40,7 @@
"gulp-sass-lint": "^1.3.3", "gulp-sass-lint": "^1.3.3",
"gulp-sourcemaps": "^2.6.1", "gulp-sourcemaps": "^2.6.1",
"gulp-uglify": "^3.0.0", "gulp-uglify": "^3.0.0",
"gulp-useref": "^3.1.5",
"gulp.spritesmith": "^6.5.1", "gulp.spritesmith": "^6.5.1",
"jshint": "^2.9.5", "jshint": "^2.9.5",
"jshint-stylish": "^2.2.1", "jshint-stylish": "^2.2.1",

34
source/data.json Normal file
View file

@ -0,0 +1,34 @@
{
"demolinks": [
{
"href": "demo/intro.html",
"text": "Intro"
},
{
"href": "demo/os.html",
"text": "OS"
},
{
"href": "demo/error/404.html",
"text": "404"
},
{
"href": "demo/error/500.html",
"text": "500"
}
],
"links": [
{
"href": "elements.html",
"text": "Elements"
},
{
"href": "blank.html",
"text": "Blank"
},
{
"href": "tests.html",
"text": "Tests"
}
]
}

View file

@ -486,9 +486,9 @@
<a href=""> <a href="">
<h4>Überschrift als Block-Verweis</h4> <h4>Überschrift als Block-Verweis</h4>
</a> </a>
<pre class="pre__code"><code>section>div.box__inline_left>img^p+p</code></pre> <pre class="pre__code"><code>section>div.float_space_left>img^p+p</code></pre>
<section class="overflow"> <section class="overflow">
<div class="box__inline_left demo__avatar"><img src="./art/bullet.gif" width="256" height="256" alt="Avatar"></div> <div class="float_space_left demo__avatar"><img src="./art/bullet.gif" width="256" height="256" alt="Avatar"></div>
<p>Vorname Name<br>Straße 1, 01234 Stadt</p><p>+49 (0)123 1337 0000<br><a class="lineLink" href="mailto:name@domain.tld">name@domain.tld</a></p> <p>Vorname Name<br>Straße 1, 01234 Stadt</p><p>+49 (0)123 1337 0000<br><a class="lineLink" href="mailto:name@domain.tld">name@domain.tld</a></p>
</section> </section>
<pre class="pre__code"><code>div.box__main_indent</code></pre> <pre class="pre__code"><code>div.box__main_indent</code></pre>

View file

@ -2,7 +2,7 @@
{% set pageId = "os" %} {% set pageId = "os" %}
{% set pageClass = "" %} {% set pageClass = "" %}
{% extends "default.njk" %} {% extends "demo.njk" %}
{% block title %}demo{% endblock %} {% block title %}demo{% endblock %}
{% block head %} {% block head %}

View file

@ -12,18 +12,27 @@
{% block body_content %} {% block body_content %}
<div class="wrap"> <div class="wrap">
<div class="hello"> <div class="hello">
<h2>Demo Pages</h2> <h2>This is HIPPIE</h2>
<p>You can start using it by replacing this file with your own index page.</p>
<p>The folder <i>demo</i> contains examples and also an overview of definitions made.<br/>Follow the white rabbit.</p>
<h3>Demo Pages</h3>
<ul class="list__link"> <ul class="list__link">
<li><a href="demo/intro.html">Intro</a></li> <!-- Loops through "demo-links" array -->
<li><a href="demo/os.html">OS</a></li> {% for link in demolinks %}
<li><a href="demo/blank.html">Blank</a></li> <li><a href="{{link.href}}">{{link.text}}</a></li>
<li><a href="demo/error/404.html">404</a></li> {% endfor %}
<li><a href="demo/error/500.html">500</a></li>
</ul> </ul>
<h2>Overview about all the styles</h2> <pre class="txt-tiny txt_white">
()()
(..)
C(")(")</pre>
<h3>Overview about all the styles</h3>
<ul class="list__link"> <ul class="list__link">
<li><a href="elements.html">Elements</a></li> <!-- Loops through "links" array -->
<li><a href="tests.html">Tests</a></li> {% for link in links %}
<li><a href="{{link.href}}">{{link.text}}</a></li>
{% endfor %}
</ul> </ul>
</div> </div>
</div> </div>

View file

@ -9,17 +9,18 @@
{{ super() }} {{ super() }}
<style> <style>
#error { #error {
border: 1px solid #FFFF66; border: 1px solid #FFFF66;
background-color: #FFFFCC; background-color: #FFFFCC;
display: inline-block; display: inline-block;
margin-left: 10px; margin-left: 10px;
padding: 3px; padding: 3px;
display: none; display: none;
} }
</style> </style>
{% endblock %} {% endblock %}
{% block body_content %} {% block body_content %}
<input type="password" name="txtPassword" onkeypress="capLock(event)" /> <input type="password" name="txtPassword" onkeypress="capLock(event)" />
<div id="divMayus" style="visibility:hidden">Caps Lock is on.</div> <div id="divMayus" style="visibility:hidden">Caps Lock is on.</div>
<form action=""> <form action="">
@ -32,55 +33,55 @@
// Page specific // Page specific
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
$( document ).ready(function() { $( document ).ready(function() {
console.log('HIPPIE Tests'); console.log('HIPPIE Tests');
}); });
function capLock(e){ function capLock(e){
kc = e.keyCode?e.keyCode:e.which; kc = e.keyCode?e.keyCode:e.which;
sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false); sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false);
if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk)) if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk))
document.getElementById('divMayus').style.visibility = 'visible'; document.getElementById('divMayus').style.visibility = 'visible';
else else
document.getElementById('divMayus').style.visibility = 'hidden'; document.getElementById('divMayus').style.visibility = 'hidden';
} }
function capsDetect() { function capsDetect() {
var body = document.getElementsByTagName('body')[0]; var body = document.getElementsByTagName('body')[0];
var isShiftPressed = false; var isShiftPressed = false;
var isCapsOn = false; var isCapsOn = false;
var capsWarning = document.getElementById('error'); var capsWarning = document.getElementById('error');
body.addEventListener('keydown', function(e) { body.addEventListener('keydown', function(e) {
var keyCode = e.keyCode ? e.keyCode : e.which; var keyCode = e.keyCode ? e.keyCode : e.which;
if (keyCode === 16) { if (keyCode === 16) {
isShiftPressed = true; isShiftPressed = true;
} }
}); });
body.addEventListener('keyup', function(e) { body.addEventListener('keyup', function(e) {
var keyCode = e.keyCode ? e.keyCode : e.which; var keyCode = e.keyCode ? e.keyCode : e.which;
if (keyCode === 16) { if (keyCode === 16) {
isShiftPressed = false; isShiftPressed = false;
} }
if (keyCode === 20) { if (keyCode === 20) {
if (isCapsOn) { if (isCapsOn) {
isCapsOn = false; isCapsOn = false;
capsWarning.style.display = 'none'; capsWarning.style.display = 'none';
} else { } else {
isCapsOn = true; isCapsOn = true;
capsWarning.style.display = 'inline-block'; capsWarning.style.display = 'inline-block';
} }
} }
}); });
body.addEventListener('keypress', function(e) { body.addEventListener('keypress', function(e) {
var keyCode = e.keyCode ? e.keyCode : e.which; var keyCode = e.keyCode ? e.keyCode : e.which;
if (keyCode <= 40) if (keyCode <= 40)
return; return;
if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) { if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) {
isCapsOn = true; isCapsOn = true;
capsWarning.style.display = 'inline-block'; capsWarning.style.display = 'inline-block';
} else { } else {
capsWarning.style.display = 'none'; capsWarning.style.display = 'none';
} }
}); });
} }
capsDetect(); capsDetect();
</script> </script>

View file

@ -186,12 +186,6 @@ div {
} }
// Inline
.box__inline_left {
@extend .float_space_left;
// padding: $basic_space / 2;
}
// Columns // Columns
.block__column_line { .block__column_line {

View file

@ -164,3 +164,41 @@ ins {
del { del {
} }
// General Classes
// ------------------------------------------------------------------------------
.txt-tiny {
font-size: .5em !important;
}
.txt-smaller {
font-size: .75em !important;
}
.txt-larger {
font-size: 1.2em !important;
}
.txt-huge {
font-size: 3em !important;
}
.txt_center {
text-align: center !important;
}
.txt_right {
text-align: right !important;
}
.txt_left {
text-align: left !important;
}
.txt_white {
color: white;
}
.txt_black {
color: black;
}

View file

@ -4,19 +4,19 @@
%basic { %basic {
font-family: $primary_font_family; font-family: $primary_font_family;
font-size: $text_size_1; font-size: $text_size_1;
line-height: $text_line_1; line-height: $text_line_basic;
} }
%basic_mono { %basic_mono {
font-family: $third_font_family; font-family: $monospace_font_family;
font-size: $text_size_1; font-size: $text_size_1;
line-height: $text_line_1; line-height: $text_line_mono;
} }
%basic_print { %basic_print {
font-family: $third_font_family; font-family: $print_font_family;
font-size: $text_size_1; font-size: $text_size_1;
line-height: $text_line_1; line-height: $text_line_basic;
} }
%head_all { %head_all {
@ -27,7 +27,7 @@
font-family: $secondary_font_family; font-family: $secondary_font_family;
font-size: $head_size_1; font-size: $head_size_1;
font-weight: 300; font-weight: 300;
line-height: $head_line_1; line-height: $head_line_basic;
} }
%head_2 { %head_2 {
@ -53,7 +53,6 @@
%solo { %solo {
@extend %basic; @extend %basic;
color: $basic_font_color;
} }
%short { %short {

View file

@ -57,16 +57,6 @@
height: 100vh; height: 100vh;
} }
.txt_center {
text-align: center !important;
}
.txt_right {
text-align: right !important;
}
.txt_left {
text-align: left !important;
}
.space_right { .space_right {
margin-right: $space_3; margin-right: $space_3;
} }
@ -108,8 +98,16 @@
overflow: auto; overflow: auto;
} }
.float_space_left { .float_left {
float: left; float: left;
}
.float_right {
float: right;
}
.float_space_left {
@extend .float_left;
margin-right: $space_3; margin-right: $space_3;
} }
@ -123,6 +121,15 @@
} }
// Inlining
// ------------------------------------------------------------------------------
.inline {
display: inline-block;
}
// Positioned elements // Positioned elements
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
%full_viewport { %full_viewport {

View file

@ -52,11 +52,12 @@ $head_size_4: 1.35em !default;
$text_size_1: 1em; $text_size_1: 1em;
$text_size_2: 20; $text_size_2: 20;
$text_line_1: 1.5 !default; $text_line_basic: 1.3 !default;
$head_line_1: $text_line_1; $text_line_mono: 1.1 !default;
$head_line_2: $text_line_1; $head_line_basic: $text_line_basic !default;
$head_line_3: $text_line_1; $head_line_2: $head_line_basic;
$head_line_4: $text_line_1; $head_line_3: $head_line_basic;
$head_line_4: $head_line_basic;
$print_font_family: #{'Times New Roman', times} !default; $print_font_family: #{'Times New Roman', times} !default;
$monospace_font_family: #{'Courier New', monospace} !default; $monospace_font_family: #{'Courier New', monospace} !default;

View file

@ -28,7 +28,7 @@
<link rel="shortcut icon" type="image/x-icon" href="./favicon.ico" /> <link rel="shortcut icon" type="image/x-icon" href="./favicon.ico" />
<!-- <link href='https://fonts.googleapis.com/css?family=Roboto:400,300,400italic,500,500italic,700' rel='stylesheet' type='text/css'> --> <!-- <link href='https://fonts.googleapis.com/css?family=Roboto:400,300,400italic,500,500italic,700' rel='stylesheet' type='text/css'> -->
<link rel="stylesheet" type="text/css" media="all" href="./css/example.css"/> <link rel="stylesheet" type="text/css" media="all" href="../css/example.css"/>
<!-- <link rel="stylesheet" type="text/css" media="print" href="./css/print.css"/> --> <!-- <link rel="stylesheet" type="text/css" media="print" href="./css/print.css"/> -->
{% endblock %} {% endblock %}
</head> </head>
@ -51,7 +51,7 @@
crossorigin="anonymous"></script> crossorigin="anonymous"></script>
{# <script src="bower_components/jquery/dist/jquery.js"></script> #} {# <script src="bower_components/jquery/dist/jquery.js"></script> #}
<script src="../vendor/jq-sticky-anything.min.js" type="text/javascript"></script> <script src="../vendor/jq-sticky-anything.min.js" type="text/javascript"></script>
<script src="./js/all.min.js" type="text/javascript"></script> <script src="../js/all.min.js" type="text/javascript"></script>
{% block script %}{% endblock %} {% block script %}{% endblock %}
</body> </body>
</html> </html>

View file

@ -16,8 +16,8 @@
<link rel="icon" href="./favicon.ico" type="image/vnd.microsoft.icon"> <link rel="icon" href="./favicon.ico" type="image/vnd.microsoft.icon">
<link rel="shortcut icon" type="image/x-icon" href="./favicon.ico" /> <link rel="shortcut icon" type="image/x-icon" href="./favicon.ico" />
<link rel="stylesheet" type="text/css" media="all" href="./css/maintenance.css"/> <link rel="stylesheet" type="text/css" media="all" href="../../css/maintenance.css"/>
{% endblock %} {% endblock %}
</head> </head>

View file