From 8bc8da74db6f1f14bc21c5d55f1e3c6c4c0c990e Mon Sep 17 00:00:00 2001 From: Stephan Date: Tue, 8 May 2018 23:00:46 +0200 Subject: [PATCH] demo.1 - added possibility to add data into tempaltes via json - restructured output files - some work on styles --- README.md | 5 +- gulpfile.js | 232 +++++---- package-lock.json | 693 +++++++++++++++++++++++++ package.json | 2 + source/data.json | 34 ++ source/pages/{demo => }/blank.njk | 0 source/pages/demo/intro.njk | 4 +- source/pages/demo/os.njk | 2 +- source/pages/index.njk | 27 +- source/pages/tests.njk | 99 ++-- source/style/elements/_grouping.scss | 6 - source/style/elements/_textlevel.scss | 38 ++ source/style/elements/_typography.scss | 13 +- source/style/global/_common.scss | 29 +- source/style/global/_config.scss | 11 +- source/templates/demo.njk | 4 +- source/templates/maintenance.njk | 4 +- test/test.js | 0 18 files changed, 1004 insertions(+), 199 deletions(-) create mode 100644 source/data.json rename source/pages/{demo => }/blank.njk (100%) delete mode 100644 test/test.js diff --git a/README.md b/README.md index 62990bb..88e0669 100644 --- a/README.md +++ b/README.md @@ -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*. -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. ## LOGIC diff --git a/gulpfile.js b/gulpfile.js index 8a87b58..bcc8bd9 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -15,6 +15,8 @@ var build = { root: 'build' } + +var fs = require('fs'); // Load plugins const gulp = require('gulp'), rename = require('gulp-rename'), @@ -25,12 +27,13 @@ concat = require('gulp-concat'), pump = require('pump'), sourcemap = require('gulp-sourcemaps'), prefix = require('gulp-autoprefixer'), -testsass = require('gulp-sass'), -sass = require('gulp-ruby-sass'), +sass = require('gulp-sass'), +rubysass = require('gulp-ruby-sass'), nunjucks = require('gulp-nunjucks-render'); cssnano = require('gulp-cssnano'), jshint = require('gulp-jshint'), jscs = require('gulp-jscs'), +useref = require('gulp-useref'), sasslint = require('gulp-sass-lint'), uglifyjs = require('uglify-es'), composer = require('gulp-uglify/composer'), @@ -42,16 +45,19 @@ changed = require('gulp-changed'), newer = require('gulp-newer'), plumber = require('gulp-plumber'), notify = require('gulp-notify'), +data = require('gulp-data'), browsersync = require('browser-sync').create(); 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)') .pipe(plumbError('Error Running Sass')) .pipe(sourcemap.init()) - .pipe(testsass({ + .pipe(sass({ includePaths: ['source/bower_components'] })) .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({ open: false, 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)') .pipe(plumbError('Error Running Nunjucks')) + .pipe(data(function() { + return JSON.parse(fs.readFileSync('./source/data.json')) + })) .pipe(nunjucks({ path: ['source/templates'], envOptions: { @@ -128,14 +140,17 @@ gulp.task('clean:dev', function() { + + + // Task - Clean build directory gulp.task('clean', function() { return del([build.scripts, build.styles, build.images]); }); // Task - Styles -gulp.task('styles', () => sass(source.styles, {sourcemap: true}) -.on('error', sass.logError) +gulp.task('styles', () => rubysass(source.styles, {sourcemap: true}) +.on('error', rubysass.logError) // .pipe(newer({dest: build.styles, ext: '.css'})) .pipe(prefix('last 2 version')) .pipe(gulp.dest(build.styles)) @@ -172,106 +187,115 @@ gulp.task('images', function() { return gulp.src(source.images) .pipe(changed(build.images)) // .pipe(cache(imagemin({ - // optimizationLevel: 3, - // progressive: true, - // interlaced: true }))) - // ) - .pipe(gulp.dest(build.images)) - // .pipe(notify({ message: 'Images task complete' })) - ; -}); + // optimizationLevel: 3, + // progressive: true, + // interlaced: true }))) + // ) + .pipe(gulp.dest(build.images)) + // .pipe(notify({ message: 'Images task complete' })) + ; + }); -// Task - Vendor -gulp.task('vendor', function() { - return gulp.src(source.vendor) - .pipe(plumbError()) - .pipe(gulp.dest(build.vendor)) - ; -}); + // Task - Vendor + gulp.task('vendor', function() { + return gulp.src(source.vendor) + .pipe(plumbError()) + .pipe(gulp.dest(build.vendor)) + ; + }); -//Task - Nunjucks -gulp.task('nunjucks', function() { - return gulp.src(source.pages) - // .pipe(changed(build.root)) - .pipe(nunjucks({ - path: ['source/templates'], - envOptions: { - trimBlocks: true - } - })) - .pipe(gulp.dest(build.root)) -}); + //Task - Nunjucks + gulp.task('oldnunjucks', function() { + return gulp.src(source.pages) + // .pipe(changed(build.root)) + .pipe(nunjucks({ + path: ['source/templates'], + envOptions: { + trimBlocks: true + } + })) + .pipe(gulp.dest(build.root)) + }); -// a task that ensures the other task is complete before reloading browsers -gulp.task('overwatch', ['nunjucks', 'styles'], function(done) { + // a task that ensures the other task is complete before reloading browsers + gulp.task('overwatch', ['oldnunjucks', 'styles'], function(done) { browsersync.reload(); 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]; - remember.forget('scripts', event.path); + + + // 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)', ['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 - }) - }); -} diff --git a/package-lock.json b/package-lock.json index 226d7c1..268dd6b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -131,12 +131,39 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "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": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", "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": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -149,6 +176,12 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "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": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", @@ -159,6 +192,15 @@ "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": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", @@ -205,6 +247,12 @@ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", "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": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", @@ -280,6 +328,12 @@ "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", "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": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", @@ -544,6 +598,12 @@ "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", "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": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", @@ -1425,6 +1485,24 @@ "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": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", @@ -1571,6 +1649,12 @@ "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": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", @@ -2134,6 +2218,21 @@ "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": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", @@ -2216,6 +2315,23 @@ "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", "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": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", @@ -2450,6 +2566,16 @@ "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", "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": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -2506,6 +2632,12 @@ "integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8=", "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": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-2.1.2.tgz", @@ -2532,6 +2664,16 @@ "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": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3075,6 +3217,17 @@ "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": { "version": "2.0.2", "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": { "version": "3.0.8", "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", @@ -3830,6 +4165,12 @@ "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": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -4196,6 +4537,12 @@ "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": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", @@ -4294,6 +4641,23 @@ "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": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", @@ -4333,6 +4697,12 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "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": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", @@ -4653,6 +5023,15 @@ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "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": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", @@ -4662,6 +5041,15 @@ "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": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -5138,6 +5526,12 @@ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", "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": { "version": "1.2.17", "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", @@ -5615,6 +6009,15 @@ "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": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", @@ -5716,6 +6119,26 @@ "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=", "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": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", @@ -5998,6 +6421,12 @@ "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", "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": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", @@ -6057,6 +6486,15 @@ "integrity": "sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=", "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": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", @@ -6115,6 +6553,37 @@ "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=", "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": { "version": "2.1.2", "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": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", @@ -7592,6 +8105,27 @@ "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": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -7722,6 +8256,15 @@ "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", "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": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -8351,6 +8894,15 @@ "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=", "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": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -8572,6 +9124,15 @@ "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": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz", @@ -8830,6 +9391,16 @@ "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": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", @@ -8855,6 +9426,52 @@ "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": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", @@ -8873,6 +9490,15 @@ "integrity": "sha1-fMKRUfD18sQZRvEZ9ZMv5VQXASU=", "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": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", @@ -9059,6 +9685,12 @@ "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", "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": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", @@ -9082,6 +9714,12 @@ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "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": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/utile/-/utile-0.2.1.tgz", @@ -9135,6 +9773,12 @@ "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": { "version": "1.0.1", "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": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", diff --git a/package.json b/package.json index d8cbb6c..8d5dead 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "gulp-changed": "^3.1.0", "gulp-concat": "^2.6.1", "gulp-cssnano": "^2.1.2", + "gulp-data": "^1.3.1", "gulp-if": "^2.0.2", "gulp-jscs": "^4.0.0", "gulp-jshint": "^2.0.4", @@ -39,6 +40,7 @@ "gulp-sass-lint": "^1.3.3", "gulp-sourcemaps": "^2.6.1", "gulp-uglify": "^3.0.0", + "gulp-useref": "^3.1.5", "gulp.spritesmith": "^6.5.1", "jshint": "^2.9.5", "jshint-stylish": "^2.2.1", diff --git a/source/data.json b/source/data.json new file mode 100644 index 0000000..0086589 --- /dev/null +++ b/source/data.json @@ -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" + } + ] +} diff --git a/source/pages/demo/blank.njk b/source/pages/blank.njk similarity index 100% rename from source/pages/demo/blank.njk rename to source/pages/blank.njk diff --git a/source/pages/demo/intro.njk b/source/pages/demo/intro.njk index 97ffbd1..85ea3b1 100644 --- a/source/pages/demo/intro.njk +++ b/source/pages/demo/intro.njk @@ -486,9 +486,9 @@

Überschrift als Block-Verweis

-
section>div.box__inline_left>img^p+p
+
section>div.float_space_left>img^p+p
-
Avatar
+
Avatar

Vorname Name
Straße 1, 01234 Stadt

+49 (0)123 1337 0000
name@domain.tld

div.box__main_indent
diff --git a/source/pages/demo/os.njk b/source/pages/demo/os.njk index c360ddf..ba29c44 100644 --- a/source/pages/demo/os.njk +++ b/source/pages/demo/os.njk @@ -2,7 +2,7 @@ {% set pageId = "os" %} {% set pageClass = "" %} -{% extends "default.njk" %} +{% extends "demo.njk" %} {% block title %}demo{% endblock %} {% block head %} diff --git a/source/pages/index.njk b/source/pages/index.njk index d3aaca7..c6cd661 100644 --- a/source/pages/index.njk +++ b/source/pages/index.njk @@ -12,18 +12,27 @@ {% block body_content %}
-

Demo Pages

+

This is HIPPIE

+

You can start using it by replacing this file with your own index page.

+

The folder demo contains examples and also an overview of definitions made.
Follow the white rabbit.

+ +

Demo Pages

-

Overview about all the styles

+
+  ()()
+  (..)
+C(")(")
+

Overview about all the styles

diff --git a/source/pages/tests.njk b/source/pages/tests.njk index 1e07e96..39c8021 100644 --- a/source/pages/tests.njk +++ b/source/pages/tests.njk @@ -9,17 +9,18 @@ {{ super() }} {% endblock %} {% block body_content %} +
@@ -32,55 +33,55 @@ // Page specific // ------------------------------------------------------------------------------ $( document ).ready(function() { - console.log('HIPPIE Tests'); + console.log('HIPPIE Tests'); }); function capLock(e){ - kc = e.keyCode?e.keyCode:e.which; - sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false); - if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk)) - document.getElementById('divMayus').style.visibility = 'visible'; - else - document.getElementById('divMayus').style.visibility = 'hidden'; + kc = e.keyCode?e.keyCode:e.which; + sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false); + if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk)) + document.getElementById('divMayus').style.visibility = 'visible'; + else + document.getElementById('divMayus').style.visibility = 'hidden'; } function capsDetect() { - var body = document.getElementsByTagName('body')[0]; - var isShiftPressed = false; - var isCapsOn = false; - var capsWarning = document.getElementById('error'); - body.addEventListener('keydown', function(e) { - var keyCode = e.keyCode ? e.keyCode : e.which; - if (keyCode === 16) { - isShiftPressed = true; - } - }); - body.addEventListener('keyup', function(e) { - var keyCode = e.keyCode ? e.keyCode : e.which; - if (keyCode === 16) { - isShiftPressed = false; - } - if (keyCode === 20) { - if (isCapsOn) { - isCapsOn = false; - capsWarning.style.display = 'none'; - } else { - isCapsOn = true; - capsWarning.style.display = 'inline-block'; - } - } - }); - body.addEventListener('keypress', function(e) { - var keyCode = e.keyCode ? e.keyCode : e.which; - if (keyCode <= 40) - return; - if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) { - isCapsOn = true; - capsWarning.style.display = 'inline-block'; - } else { - capsWarning.style.display = 'none'; - } - }); + var body = document.getElementsByTagName('body')[0]; + var isShiftPressed = false; + var isCapsOn = false; + var capsWarning = document.getElementById('error'); + body.addEventListener('keydown', function(e) { + var keyCode = e.keyCode ? e.keyCode : e.which; + if (keyCode === 16) { + isShiftPressed = true; + } + }); + body.addEventListener('keyup', function(e) { + var keyCode = e.keyCode ? e.keyCode : e.which; + if (keyCode === 16) { + isShiftPressed = false; + } + if (keyCode === 20) { + if (isCapsOn) { + isCapsOn = false; + capsWarning.style.display = 'none'; + } else { + isCapsOn = true; + capsWarning.style.display = 'inline-block'; + } + } + }); + body.addEventListener('keypress', function(e) { + var keyCode = e.keyCode ? e.keyCode : e.which; + if (keyCode <= 40) + return; + if (keyCode >= 65 && keyCode <= 90 && !isShiftPressed) { + isCapsOn = true; + capsWarning.style.display = 'inline-block'; + } else { + capsWarning.style.display = 'none'; + } + }); } capsDetect(); diff --git a/source/style/elements/_grouping.scss b/source/style/elements/_grouping.scss index 940302f..ff9153f 100644 --- a/source/style/elements/_grouping.scss +++ b/source/style/elements/_grouping.scss @@ -186,12 +186,6 @@ div { } -// Inline -.box__inline_left { - @extend .float_space_left; - // padding: $basic_space / 2; -} - // Columns .block__column_line { diff --git a/source/style/elements/_textlevel.scss b/source/style/elements/_textlevel.scss index 1713243..6a3e1c2 100644 --- a/source/style/elements/_textlevel.scss +++ b/source/style/elements/_textlevel.scss @@ -164,3 +164,41 @@ ins { 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; +} diff --git a/source/style/elements/_typography.scss b/source/style/elements/_typography.scss index 68718b0..2986a6d 100644 --- a/source/style/elements/_typography.scss +++ b/source/style/elements/_typography.scss @@ -4,19 +4,19 @@ %basic { font-family: $primary_font_family; font-size: $text_size_1; - line-height: $text_line_1; + line-height: $text_line_basic; } %basic_mono { - font-family: $third_font_family; + font-family: $monospace_font_family; font-size: $text_size_1; - line-height: $text_line_1; + line-height: $text_line_mono; } %basic_print { - font-family: $third_font_family; + font-family: $print_font_family; font-size: $text_size_1; - line-height: $text_line_1; + line-height: $text_line_basic; } %head_all { @@ -27,7 +27,7 @@ font-family: $secondary_font_family; font-size: $head_size_1; font-weight: 300; - line-height: $head_line_1; + line-height: $head_line_basic; } %head_2 { @@ -53,7 +53,6 @@ %solo { @extend %basic; - color: $basic_font_color; } %short { diff --git a/source/style/global/_common.scss b/source/style/global/_common.scss index 9c282f9..8799da2 100644 --- a/source/style/global/_common.scss +++ b/source/style/global/_common.scss @@ -57,16 +57,6 @@ height: 100vh; } -.txt_center { - text-align: center !important; -} -.txt_right { - text-align: right !important; -} -.txt_left { - text-align: left !important; -} - .space_right { margin-right: $space_3; } @@ -108,8 +98,16 @@ overflow: auto; } -.float_space_left { +.float_left { float: left; +} + +.float_right { + float: right; +} + +.float_space_left { + @extend .float_left; margin-right: $space_3; } @@ -123,6 +121,15 @@ } +// Inlining +// ------------------------------------------------------------------------------ + +.inline { + display: inline-block; +} + + + // Positioned elements // ------------------------------------------------------------------------------ %full_viewport { diff --git a/source/style/global/_config.scss b/source/style/global/_config.scss index 4442f8a..2215a9d 100644 --- a/source/style/global/_config.scss +++ b/source/style/global/_config.scss @@ -52,11 +52,12 @@ $head_size_4: 1.35em !default; $text_size_1: 1em; $text_size_2: 20; -$text_line_1: 1.5 !default; -$head_line_1: $text_line_1; -$head_line_2: $text_line_1; -$head_line_3: $text_line_1; -$head_line_4: $text_line_1; +$text_line_basic: 1.3 !default; +$text_line_mono: 1.1 !default; +$head_line_basic: $text_line_basic !default; +$head_line_2: $head_line_basic; +$head_line_3: $head_line_basic; +$head_line_4: $head_line_basic; $print_font_family: #{'Times New Roman', times} !default; $monospace_font_family: #{'Courier New', monospace} !default; diff --git a/source/templates/demo.njk b/source/templates/demo.njk index 33a1c63..c87b98a 100644 --- a/source/templates/demo.njk +++ b/source/templates/demo.njk @@ -28,7 +28,7 @@ - + {% endblock %} @@ -51,7 +51,7 @@ crossorigin="anonymous"> {# #} - + {% block script %}{% endblock %} diff --git a/source/templates/maintenance.njk b/source/templates/maintenance.njk index 54fea55..1604c81 100644 --- a/source/templates/maintenance.njk +++ b/source/templates/maintenance.njk @@ -16,8 +16,8 @@ - - + + {% endblock %} diff --git a/test/test.js b/test/test.js deleted file mode 100644 index e69de29..0000000