From f97707c8fa4b1f6d67e48489c78119f261acb800 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Wed, 25 Jan 2017 15:18:41 -0600 Subject: [PATCH 01/25] Styleguide start --- config/project.config.js | 4 +- config/styleguide.config.js | 13 ++++ package.json | 1 + server/main.js | 2 + .../pattern-markup/swatches_example.html | 17 +++++ src/styleguide/pattern-markup/titles.html | 6 ++ src/styleguide/pattern-markup/typography.html | 37 ++++++++++ src/styles/example-colors.scss | 17 +++++ yarn.lock | 73 +++++++++++++++++-- 9 files changed, 162 insertions(+), 8 deletions(-) create mode 100644 config/styleguide.config.js create mode 100644 src/styleguide/pattern-markup/swatches_example.html create mode 100644 src/styleguide/pattern-markup/titles.html create mode 100644 src/styleguide/pattern-markup/typography.html create mode 100644 src/styles/example-colors.scss diff --git a/config/project.config.js b/config/project.config.js index 9a816ba..146aafd 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -19,6 +19,7 @@ const config = { dir_public : 'public', dir_server : 'server', dir_test : 'tests', + dir_styleguide : 'dist/styleguide', // ---------------------------------- // Server Configuration @@ -100,7 +101,8 @@ config.paths = { base : base, client : base.bind(null, config.dir_client), public : base.bind(null, config.dir_public), - dist : base.bind(null, config.dir_dist) + dist : base.bind(null, config.dir_dist), + styleguide : base.bind(null, config.dir_styleguide) }; // ======================================================== diff --git a/config/styleguide.config.js b/config/styleguide.config.js new file mode 100644 index 0000000..5092774 --- /dev/null +++ b/config/styleguide.config.js @@ -0,0 +1,13 @@ +const project = require('../config/project.config'); + +const styleguideConfig = { + source: [ + project.paths.client('styles'), + project.paths.client('styleguide/pattern-markup') + ], + styleguide_version: '0.0.1', + destination: project.paths.dist('styleguide'), + title: 'Caxy Front End Starter Kit Styleguide' +}; + +module.exports = styleguideConfig; diff --git a/package.json b/package.json index b43674f..eafb9b1 100644 --- a/package.json +++ b/package.json @@ -100,6 +100,7 @@ "imports-loader": "^0.7.0", "ip": "^1.1.4", "json-loader": "^0.5.4", + "kss": "^3.0.0-beta.17", "node-sass": "^4.3.0", "nodemon": "^1.11.0", "path": "^0.12.7", diff --git a/server/main.js b/server/main.js index 51d5c18..389d1a6 100644 --- a/server/main.js +++ b/server/main.js @@ -37,6 +37,8 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); + app.use(express.static(project.paths.styleguide())); + // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal // rendering, you'll want to remove this middleware. diff --git a/src/styleguide/pattern-markup/swatches_example.html b/src/styleguide/pattern-markup/swatches_example.html new file mode 100644 index 0000000..5c844a0 --- /dev/null +++ b/src/styleguide/pattern-markup/swatches_example.html @@ -0,0 +1,17 @@ +
+ +

Example Color Set 1

+ + +

Example Color Set 2

+ + +
\ No newline at end of file diff --git a/src/styleguide/pattern-markup/titles.html b/src/styleguide/pattern-markup/titles.html new file mode 100644 index 0000000..b1f9eb4 --- /dev/null +++ b/src/styleguide/pattern-markup/titles.html @@ -0,0 +1,6 @@ +

Title 1: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Facere tempora est, repellendus voluptate libero laboriosam incidunt ratione.

+

Title 2: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Iure nemo deserunt consequuntur expedita officiis, vero, quia unde odit voluptas.

+

Title 3: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsam nulla exercitationem ut voluptatem deserunt laborum dicta assumenda placeat, eos dolorum.

+

Title 4: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quam voluptate fuga nihil saepe, unde, possimus tempore aut libero animi iusto est excepturi!

+
Title 5: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quo architecto sunt asperiores veniam molestias debitis quasi. Temporibus labore natus ab harum maiores.
+
Title 6: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nam enim totam quod illo, non, sed architecto illum est cupiditate, facere, eos.
\ No newline at end of file diff --git a/src/styleguide/pattern-markup/typography.html b/src/styleguide/pattern-markup/typography.html new file mode 100644 index 0000000..2bb2b13 --- /dev/null +++ b/src/styleguide/pattern-markup/typography.html @@ -0,0 +1,37 @@ + +

Heading Level 1

+ +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem beatae mollitia itaque expedita necessitatibus ratione adipisci, iure repellat porro quas consectetur non eveniet voluptas id fuga aperiam sequi. Debitis, nihil!

+ +

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec non enim in turpis pulvinar facilisis. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Ut felis.

+ +

Morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus

+ +

Heading Level 2

+ +
    +
  1. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  2. +
  3. Aliquam tincidunt mauris eu risus.
  4. +
+ +

Heading Level 3

+ +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ducimus dolore excepturi ad expedita, doloremque id enim iusto ratione tempore amet perferendis numquam, nulla nostrum magnam quam neque, necessitatibus dicta! Ipsa!

+ +
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus magna. Cras in mi at felis aliquet congue. Ut a est eget ligula molestie gravida. Curabitur massa. Donec eleifend, libero at sagittis mollis, tellus est malesuada tellus, at luctus turpis elit sit amet quam. Vivamus pretium ornare est." +
+ — Source Person, Additional Info +
+
+ +

Consectetur adipisicing elit. Qui unde voluptates voluptatem et autem eos eaque iusto atque ea aliquam laborum cupiditate pariatur explicabo, dicta molestias sapiente laboriosam eveniet! Rem.

+ +

Heading Level 4:

+ + + +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ducimus dolore excepturi ad expedita, doloremque id enim iusto ratione tempore amet perferendis numquam, nulla nostrum magnam quam neque, necessitatibus dicta! Ipsa!

diff --git a/src/styles/example-colors.scss b/src/styles/example-colors.scss new file mode 100644 index 0000000..ec463fe --- /dev/null +++ b/src/styles/example-colors.scss @@ -0,0 +1,17 @@ +// Example Color Swatches +// +// Markup: swatches_example.html +// +// Styleguide 1.0 + +$example-color-1: ( + 'base': #072736, + 'light': #1F5363, + 'dark': #041c25 +); + +$example-color-2: ( + 'base': #df1e36, + 'light': lighten(#df1e36, 20%), + 'dark': darken(#df1e36, 10%) +); \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index ae8014a..fedf074 100644 --- a/yarn.lock +++ b/yarn.lock @@ -160,7 +160,7 @@ async@^0.9.0: version "0.9.2" resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" -async@^1.3.0, async@^1.5.0: +async@^1.3.0, async@^1.4.0, async@^1.5.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -654,7 +654,7 @@ block-stream@*: dependencies: inherits "~2.0.0" -bluebird@^3.4.7: +bluebird@^3.3.3, bluebird@^3.4.7: version "3.4.7" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3" @@ -779,6 +779,17 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" +caxy-styleguide-plugin@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/caxy-styleguide-plugin/-/caxy-styleguide-plugin-0.1.1.tgz#6ec46d26f1009f12ece6f58aabb4fb96ed3fb5b5" + dependencies: + normalize-css "^2.3.1" + +"caxy-styleguide-plugin@file:./../styleguide-plugin": + version "0.1.1" + dependencies: + normalize-css "^2.3.1" + center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" @@ -1689,6 +1700,10 @@ for-own@^0.1.4: dependencies: for-in "^0.1.5" +foreachasync@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/foreachasync/-/foreachasync-3.0.0.tgz#5502987dc8714be3392097f32e0071c9dee07cf6" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -1867,6 +1882,16 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" +handlebars@^4.0.0: + version "4.0.6" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" @@ -2355,6 +2380,18 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" +kss@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.yarnpkg.com/kss/-/kss-3.0.0-beta.17.tgz#10a6300c8884dc06f2a72b6627f5c0ca7717f565" + dependencies: + bluebird "^3.3.3" + fs-extra "^1.0.0" + glob "^7.0.3" + handlebars "^4.0.0" + marked "^0.3.6" + twig "^0.10.2" + yargs "^6.0.0" + latest-version@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-1.0.1.tgz#72cfc46e3e8d1be651e1ebb54ea9f6ea96f374bb" @@ -2397,6 +2434,10 @@ loader-utils@0.2.x, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0. json5 "^0.5.0" object-assign "^4.0.1" +locutus@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/locutus/-/locutus-2.0.6.tgz#4f7338cc3f0da9f656502490772c1cdce0cfd26f" + lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -2547,6 +2588,10 @@ map-stream@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" +marked@^0.3.6: + version "0.3.6" + resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" + math-expression-evaluator@^1.2.14: version "1.2.14" resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.14.tgz#39511771ed9602405fba9affff17eb4d2a3843ab" @@ -2634,7 +2679,7 @@ mime@1.3.4, mime@^1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.2: +minimatch@3.0.x, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: @@ -2900,7 +2945,7 @@ onetime@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" -optimist@~0.6.0: +optimist@^0.6.1, optimist@~0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: @@ -3845,7 +3890,7 @@ source-map-support@^0.4.2: dependencies: source-map "^0.5.3" -source-map@0.4.x, source-map@~0.4.1: +source-map@0.4.x, source-map@^0.4.4, source-map@~0.4.1: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: @@ -4124,6 +4169,14 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" +twig@^0.10.2: + version "0.10.3" + resolved "https://registry.yarnpkg.com/twig/-/twig-0.10.3.tgz#67604e08e1920ebf2faf80a901e256189c8a3c67" + dependencies: + locutus "^2.0.5" + minimatch "3.0.x" + walk "2.3.x" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -4141,7 +4194,7 @@ typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -uglify-js@2.7.x, uglify-js@~2.7.3: +uglify-js@2.7.x, uglify-js@^2.6, uglify-js@~2.7.3: version "2.7.5" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.5.tgz#4612c0c7baaee2ba7c487de4904ae122079f2ca8" dependencies: @@ -4273,6 +4326,12 @@ vm-browserify@0.0.4: dependencies: indexof "0.0.1" +walk@2.3.x: + version "2.3.9" + resolved "https://registry.yarnpkg.com/walk/-/walk-2.3.9.tgz#31b4db6678f2ae01c39ea9fb8725a9031e558a7b" + dependencies: + foreachasync "^3.0.0" + watchpack@^0.2.1: version "0.2.9" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-0.2.9.tgz#62eaa4ab5e5ba35fdfc018275626e3c0f5e3fb0b" @@ -4452,7 +4511,7 @@ yargs@^4.7.1: y18n "^3.2.1" yargs-parser "^2.4.1" -yargs@^6.6.0: +yargs@^6.0.0, yargs@^6.6.0: version "6.6.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" dependencies: From 4566dd52c5eb7a3597c921efd48194e2aa63ce7f Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Wed, 25 Jan 2017 17:30:17 -0600 Subject: [PATCH 02/25] WIP --- server/main.js | 2 +- yarn.lock | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/server/main.js b/server/main.js index 389d1a6..fca1190 100644 --- a/server/main.js +++ b/server/main.js @@ -37,7 +37,7 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); - app.use(express.static(project.paths.styleguide())); + app.use('/styleguide', express.static(project.paths.styleguide())); // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal diff --git a/yarn.lock b/yarn.lock index fedf074..cad7545 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,14 +779,13 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -caxy-styleguide-plugin@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/caxy-styleguide-plugin/-/caxy-styleguide-plugin-0.1.1.tgz#6ec46d26f1009f12ece6f58aabb4fb96ed3fb5b5" +"caxy-styleguide-core@file:./../styleguide-core": + version "0.1.0" dependencies: normalize-css "^2.3.1" -"caxy-styleguide-plugin@file:./../styleguide-plugin": - version "0.1.1" +"caxy-styleguide-plugin@file:./../styleguide-core": + version "0.1.0" dependencies: normalize-css "^2.3.1" From 20f83efc636f46bcf1df12d51da2e39c55719012 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 01:01:29 -0600 Subject: [PATCH 03/25] Use caxy-styleguide-core plugin --- config/styleguide.config.js | 12 ++- config/webpack.config.js | 5 +- src/main.js | 7 +- .../project-assets/_project-specific.scss | 82 +++++++++++++++++++ src/styleguide/project-assets/homepage.md | 10 +++ src/styles/core.scss | 1 + yarn.lock | 22 +++-- 7 files changed, 129 insertions(+), 10 deletions(-) create mode 100644 src/styleguide/project-assets/_project-specific.scss create mode 100644 src/styleguide/project-assets/homepage.md diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 5092774..4287f59 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -3,8 +3,18 @@ const project = require('../config/project.config'); const styleguideConfig = { source: [ project.paths.client('styles'), - project.paths.client('styleguide/pattern-markup') + project.paths.client('styleguide/pattern-markup'), + project.paths.client('styleguide/project-assets') ], + sass: { + files: [ + project.paths.client('styleguide/project-assets/_project-specific.scss') + ], + includePaths: [ + project.paths.base('node_modules'), + project.paths.client('styles') + ] + }, styleguide_version: '0.0.1', destination: project.paths.dist('styleguide'), title: 'Caxy Front End Starter Kit Styleguide' diff --git a/config/webpack.config.js b/config/webpack.config.js index 2671a16..06bc58b 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,6 +5,8 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); +const StyleguidePlugin = require('caxy-styleguide-core/src/styleguide-webpack-plugin'); +const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. const __DEV__ = project.globals.__DEV__; @@ -60,7 +62,8 @@ webpackConfig.plugins = [ minify : { collapseWhitespace : true } - }) + }), + new StyleguidePlugin(styleguideConfig) ]; // Ensure that the compiler exits on errors during testing so that diff --git a/src/main.js b/src/main.js index fd064cc..67fb136 100644 --- a/src/main.js +++ b/src/main.js @@ -3,10 +3,15 @@ import './styles/core.scss' const MOUNT_NODE = document.getElementById('root'); let render = () => { + if (__STYLEGUIDE__) { + // Do not do anything when on the styleguide. + return; + } + MOUNT_NODE.innerHTML = 'Caxy Front End Starter Kit!'; }; -if (__DEV__) { +if (__DEV__ && !__STYLEGUIDE__) { if (module.hot) { // Development render functions. const renderApp = render; diff --git a/src/styleguide/project-assets/_project-specific.scss b/src/styleguide/project-assets/_project-specific.scss new file mode 100644 index 0000000..afc48fa --- /dev/null +++ b/src/styleguide/project-assets/_project-specific.scss @@ -0,0 +1,82 @@ +@import 'caxy-styleguide-core/src/styleguide/caxy-zaba-template/scss/_mixins-styleguide.scss'; + +// ------------------------------------------------------------------------------ +// Project Specific Settings +// ------------------------------------------------------------------------------ +// +// Add any information related to your styleguide that is styleguide-specific +// here. This file currently manages breakpoint display and color swatch +// population. + + + + + + +// ------------------------------------------------------------------------------ +// Breakpoint Display +// ------------------------------------------------------------------------------ + +$example-screen-micro: 20.3125rem; +$example-screen-small: 42.5rem; +$example-screen-medium: 57.5rem; +$example-screen-large: 75rem; +$example-screen-xlarge: 88.75rem; +$example-screen-xxlarge: 100rem; + +#width-marker { + + @media (min-width: $example-screen-micro) { + &::after { + content: "Breakpoint: Micro (#{$example-screen-micro})"; + } + } + @media (min-width: $example-screen-small) { + &::after { + content: "Breakpoint: Small (#{$example-screen-small})"; + } + } + @media (min-width: $example-screen-medium) { + &::after { + content: "Breakpoint: Medium (#{$example-screen-medium})"; + } + } + @media (min-width: $example-screen-large) { + &::after { + content: "Breakpoint: Large (#{$example-screen-large})"; + } + } + @media (min-width: $example-screen-xlarge) { + &::after { + content: "Breakpoint: XLarge (#{$example-screen-xlarge})"; + } + } + @media (min-width: $example-screen-xxlarge) { + &::after { + content: "Breakpoint: XXLarge (#{$example-screen-xxlarge})"; + } + } +} + + + + + +// ------------------------------------------------------------------------------ +// Color Swatches +// ------------------------------------------------------------------------------ + +// Path to either individual files or folders for your project's color variables +@import '../../styles/example-colors.scss'; + +// The $color-sets object is required if working swatches are needed. It can either +// remain here, or be pulled into your project's color variable file. +$color-sets: ( + "example-1": $example-color-1, + "example-2": $example-color-2 +); + +// Do not remove or edit below; needed to create swatches based on your color sets. +.kss-swatch { + @include make-swatches($color-sets); +} diff --git a/src/styleguide/project-assets/homepage.md b/src/styleguide/project-assets/homepage.md new file mode 100644 index 0000000..b8a74c8 --- /dev/null +++ b/src/styleguide/project-assets/homepage.md @@ -0,0 +1,10 @@ +# Welcome to the Caxy Boilerplate Style Guide + +A record of patterns and components will be maintained here as they are +added to the style guide, grouped by version number. + +--- + +## Version 1 + +Description of the patterns added with version 1 should be added here. diff --git a/src/styles/core.scss b/src/styles/core.scss index 1f48b48..898d2af 100644 --- a/src/styles/core.scss +++ b/src/styles/core.scss @@ -1,2 +1,3 @@ @import '~normalize-css/normalize.css'; +@import './example-colors'; diff --git a/yarn.lock b/yarn.lock index cad7545..2a0c16c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,15 +779,16 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -"caxy-styleguide-core@file:./../styleguide-core": - version "0.1.0" - dependencies: - normalize-css "^2.3.1" - -"caxy-styleguide-plugin@file:./../styleguide-core": - version "0.1.0" +caxy-styleguide-core@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/caxy-styleguide-core/-/caxy-styleguide-core-0.0.2.tgz#07924902bc89e7a0eb446d447e6a38f5eb73b81d" dependencies: + debug "^2.6.0" + fs-extra "^2.0.0" + kss "^3.0.0-beta.17" + node-sass "^4.3.0" normalize-css "^2.3.1" + path "^0.12.7" center-align@^0.1.1: version "0.1.3" @@ -1735,6 +1736,13 @@ fs-extra@^1.0.0: jsonfile "^2.1.0" klaw "^1.0.0" +fs-extra@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.0.0.tgz#337352bded4a0b714f3eb84de8cea765e9d37600" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" From d8aad71456734b5ef793ae0eb494f82e692fd4e9 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 01:21:42 -0600 Subject: [PATCH 04/25] Use caxy-styleguide-webpack-plugin package --- config/webpack.config.js | 2 +- server/main.js | 1 + yarn.lock | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/config/webpack.config.js b/config/webpack.config.js index 06bc58b..838e9af 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,7 +5,7 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); -const StyleguidePlugin = require('caxy-styleguide-core/src/styleguide-webpack-plugin'); +const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. diff --git a/server/main.js b/server/main.js index fca1190..e51390e 100644 --- a/server/main.js +++ b/server/main.js @@ -37,6 +37,7 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); + // Serve the KSS styleguide as static assets. app.use('/styleguide', express.static(project.paths.styleguide())); // This rewrites all routes requests to the root /index.html file diff --git a/yarn.lock b/yarn.lock index 2a0c16c..926cde2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -790,6 +790,13 @@ caxy-styleguide-core@^0.0.2: normalize-css "^2.3.1" path "^0.12.7" +caxy-styleguide-webpack-plugin@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.1.tgz#9353ef7ec851c4520d315376a60615a3e6e09a5f" + dependencies: + caxy-styleguide-core "^0.0.2" + kss "^3.0.0-beta.17" + center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" From ab9da9a5cb197f91247e7b4efe3da688e5ed0f46 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 17:34:58 -0600 Subject: [PATCH 05/25] Split kss builder caxy zaba out --- config/styleguide.config.js | 12 +++++++++++- package.json | 4 +++- src/main.js | 4 ++-- yarn.lock | 15 ++++++++++++--- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 4287f59..40263d1 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -1,4 +1,5 @@ const project = require('../config/project.config'); +const builder = require('kss-caxy-zaba-template'); const styleguideConfig = { source: [ @@ -17,7 +18,16 @@ const styleguideConfig = { }, styleguide_version: '0.0.1', destination: project.paths.dist('styleguide'), - title: 'Caxy Front End Starter Kit Styleguide' + title: 'Caxy Front End Starter Kit Styleguide', + hide_pattern_status: true, + builder: project.paths.base('node_modules/kss-caxy-zaba-template/src'), + custom: [ + 'devnotes', + 'hidemarkup', + 'status', + 'patterntype', + 'containspatterns' + ] }; module.exports = styleguideConfig; diff --git a/package.json b/package.json index eafb9b1..6c05199 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,9 @@ "bugs": "https://github.com/caxy/front-end-starter-kit/issues", "homepage": "https://github.com/caxy/front-end-starter-kit#readme", "dependencies": { - "normalize-css": "^2.3.1" + "normalize-css": "^2.3.1", + "caxy-styleguide-webpack-plugin": "^0.0.2", + "kss-caxy-zaba-template": "^0.0.2" }, "devDependencies": { "babel-core": "^6.22.1", diff --git a/src/main.js b/src/main.js index 67fb136..c57b24a 100644 --- a/src/main.js +++ b/src/main.js @@ -3,7 +3,7 @@ import './styles/core.scss' const MOUNT_NODE = document.getElementById('root'); let render = () => { - if (__STYLEGUIDE__) { + if ((typeof __STYLEGUIDE__ !== 'undefined' && __STYLEGUIDE__)) { // Do not do anything when on the styleguide. return; } @@ -11,7 +11,7 @@ let render = () => { MOUNT_NODE.innerHTML = 'Caxy Front End Starter Kit!'; }; -if (__DEV__ && !__STYLEGUIDE__) { +if (__DEV__ && (typeof __STYLEGUIDE__ === 'undefined' || !__STYLEGUIDE__)) { if (module.hot) { // Development render functions. const renderApp = render; diff --git a/yarn.lock b/yarn.lock index 926cde2..f1d8472 100644 --- a/yarn.lock +++ b/yarn.lock @@ -790,9 +790,9 @@ caxy-styleguide-core@^0.0.2: normalize-css "^2.3.1" path "^0.12.7" -caxy-styleguide-webpack-plugin@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.1.tgz#9353ef7ec851c4520d315376a60615a3e6e09a5f" +caxy-styleguide-webpack-plugin@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.2.tgz#61c7dbb2d2709e7acf6ad25bc8d0255ab975f228" dependencies: caxy-styleguide-core "^0.0.2" kss "^3.0.0-beta.17" @@ -2394,6 +2394,15 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" +kss-caxy-zaba-template@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.2.tgz#b466d5ae9cc751e529704012e45ced31a9dea264" + dependencies: + fs-extra "^2.0.0" + kss "^3.0.0-beta.17" + node-sass "^4.3.0" + path "^0.12.7" + kss@^3.0.0-beta.17: version "3.0.0-beta.17" resolved "https://registry.yarnpkg.com/kss/-/kss-3.0.0-beta.17.tgz#10a6300c8884dc06f2a72b6627f5c0ca7717f565" From d3acf28ef36bd93b0c645d38691c1ec562854ab6 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Fri, 27 Jan 2017 14:14:52 -0600 Subject: [PATCH 06/25] Fix issues with styleguide assets --- config/project.config.js | 10 ++- config/styleguide.config.js | 64 +++++++++++-------- config/webpack.config.js | 13 ++-- package.json | 6 +- server/main.js | 2 +- .../project-assets/_project-specific.scss | 2 +- src/styleguide/project-assets/homepage.md | 2 +- yarn.lock | 27 ++------ 8 files changed, 69 insertions(+), 57 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index 146aafd..adc8af3 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -21,6 +21,14 @@ const config = { dir_test : 'tests', dir_styleguide : 'dist/styleguide', + // ---------------------------------- + // Styleguide Configuration + // ---------------------------------- + styleguide_enabled : true, + styleguide_version : '0.0.1', + styleguide_title : 'Caxy Front End Starter Kit Style Guide', + styleguide_hide_pattern_status: true, + // ---------------------------------- // Server Configuration // ---------------------------------- @@ -102,7 +110,7 @@ config.paths = { client : base.bind(null, config.dir_client), public : base.bind(null, config.dir_public), dist : base.bind(null, config.dir_dist), - styleguide : base.bind(null, config.dir_styleguide) + styleguideOutput : base.bind(null, config.dir_styleguide) }; // ======================================================== diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 40263d1..2574b7d 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -1,33 +1,47 @@ const project = require('../config/project.config'); -const builder = require('kss-caxy-zaba-template'); +/** + * Configuration object for the kss-node styleguide. + * + * This config is passed into StyleguidePlugin (caxy-styleguide-webpack-plugin) in webpack.config.js + * when the styleguide is enabled. + */ const styleguideConfig = { - source: [ - project.paths.client('styles'), - project.paths.client('styleguide/pattern-markup'), - project.paths.client('styleguide/project-assets') + // Project-specific settings pulled from project.config.js. + styleguide_version: project.styleguide_version, + title: project.styleguide_title, + hide_pattern_status: project.styleguide_hide_pattern_status, + destination: project.paths.styleguideOutput(), + + // Source directories for KSS documentation. + source: [ + project.paths.client('styles'), + project.paths.client('styleguide/pattern-markup'), + project.paths.client('styleguide/project-assets') + ], + + // Custom SASS files to be included in styleguide, but not application. + sass: { + files: [ + project.paths.client('styleguide/project-assets/_project-specific.scss') ], - sass: { - files: [ - project.paths.client('styleguide/project-assets/_project-specific.scss') - ], - includePaths: [ - project.paths.base('node_modules'), - project.paths.client('styles') - ] - }, - styleguide_version: '0.0.1', - destination: project.paths.dist('styleguide'), - title: 'Caxy Front End Starter Kit Styleguide', - hide_pattern_status: true, - builder: project.paths.base('node_modules/kss-caxy-zaba-template/src'), - custom: [ - 'devnotes', - 'hidemarkup', - 'status', - 'patterntype', - 'containspatterns' + includePaths: [ + project.paths.base('node_modules'), + project.paths.client('styles') ] + }, + + // Use the kss-caxy-zaba-template as the builder. + builder: project.paths.base('node_modules/kss-caxy-zaba-template'), + + // Custom kss-node plugins. + custom: [ + 'devnotes', + 'hidemarkup', + 'status', + 'patterntype', + 'containspatterns' + ] }; module.exports = styleguideConfig; diff --git a/config/webpack.config.js b/config/webpack.config.js index 838e9af..9fccc9d 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,8 +5,6 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); -const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); -const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. const __DEV__ = project.globals.__DEV__; @@ -62,10 +60,17 @@ webpackConfig.plugins = [ minify : { collapseWhitespace : true } - }), - new StyleguidePlugin(styleguideConfig) + }) ]; +// Add StyleguidePlugin if styleguide is enabled. +if (project.styleguide_enabled) { + const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); + const styleguideConfig = require('./styleguide.config'); + + webpackConfig.plugins.push(new StyleguidePlugin(styleguideConfig)); +} + // Ensure that the compiler exits on errors during testing so that // they do not get skipped and misreported. if (__TEST__ && !argv.watch) { diff --git a/package.json b/package.json index 6c05199..1486c69 100644 --- a/package.json +++ b/package.json @@ -74,9 +74,9 @@ "bugs": "https://github.com/caxy/front-end-starter-kit/issues", "homepage": "https://github.com/caxy/front-end-starter-kit#readme", "dependencies": { - "normalize-css": "^2.3.1", - "caxy-styleguide-webpack-plugin": "^0.0.2", - "kss-caxy-zaba-template": "^0.0.2" + "caxy-styleguide-webpack-plugin": "^0.0.4", + "kss-caxy-zaba-template": "^0.0.5", + "normalize-css": "^2.3.1" }, "devDependencies": { "babel-core": "^6.22.1", diff --git a/server/main.js b/server/main.js index e51390e..cefdbbe 100644 --- a/server/main.js +++ b/server/main.js @@ -38,7 +38,7 @@ if (project.env === 'development') { app.use(express.static(project.paths.public())); // Serve the KSS styleguide as static assets. - app.use('/styleguide', express.static(project.paths.styleguide())); + app.use('/styleguide', express.static(project.paths.styleguideOutput())); // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal diff --git a/src/styleguide/project-assets/_project-specific.scss b/src/styleguide/project-assets/_project-specific.scss index afc48fa..4e1fcf0 100644 --- a/src/styleguide/project-assets/_project-specific.scss +++ b/src/styleguide/project-assets/_project-specific.scss @@ -1,4 +1,4 @@ -@import 'caxy-styleguide-core/src/styleguide/caxy-zaba-template/scss/_mixins-styleguide.scss'; +@import '~kss-caxy-zaba-template/scss/_mixins-styleguide.scss'; // ------------------------------------------------------------------------------ // Project Specific Settings diff --git a/src/styleguide/project-assets/homepage.md b/src/styleguide/project-assets/homepage.md index b8a74c8..c710090 100644 --- a/src/styleguide/project-assets/homepage.md +++ b/src/styleguide/project-assets/homepage.md @@ -1,4 +1,4 @@ -# Welcome to the Caxy Boilerplate Style Guide +# Welcome to the Caxy Front End Starter Kit Style Guide A record of patterns and components will be maintained here as they are added to the style guide, grouped by version number. diff --git a/yarn.lock b/yarn.lock index f1d8472..b139cff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,23 +779,9 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -caxy-styleguide-core@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/caxy-styleguide-core/-/caxy-styleguide-core-0.0.2.tgz#07924902bc89e7a0eb446d447e6a38f5eb73b81d" - dependencies: - debug "^2.6.0" - fs-extra "^2.0.0" - kss "^3.0.0-beta.17" - node-sass "^4.3.0" - normalize-css "^2.3.1" - path "^0.12.7" - -caxy-styleguide-webpack-plugin@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.2.tgz#61c7dbb2d2709e7acf6ad25bc8d0255ab975f228" - dependencies: - caxy-styleguide-core "^0.0.2" - kss "^3.0.0-beta.17" +caxy-styleguide-webpack-plugin@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.4.tgz#c54ff39099ed8094a21cf53ad1fc6094e8ebc9ce" center-align@^0.1.1: version "0.1.3" @@ -2394,12 +2380,11 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -kss-caxy-zaba-template@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.2.tgz#b466d5ae9cc751e529704012e45ced31a9dea264" +kss-caxy-zaba-template@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.5.tgz#6d704cbab4a5c1758eea5213ba1945386ea45101" dependencies: fs-extra "^2.0.0" - kss "^3.0.0-beta.17" node-sass "^4.3.0" path "^0.12.7" From 3d8897e281c6d5e5a9a3d5b5cd500c122f8d469f Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Tue, 7 Feb 2017 11:48:42 -0600 Subject: [PATCH 07/25] Yarn upgrade --- yarn.lock | 340 ++++++++++++++++++++++++++---------------------------- 1 file changed, 165 insertions(+), 175 deletions(-) diff --git a/yarn.lock b/yarn.lock index b139cff..63c3b43 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,14 +19,14 @@ acorn-jsx@^3.0.0: dependencies: acorn "^3.0.4" +acorn@4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" + acorn@^3.0.0, acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" -acorn@^4.0.1: - version "4.0.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" - ajv-keywords@^1.0.0: version "1.5.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" @@ -63,8 +63,8 @@ ansi-html@0.0.6: resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.6.tgz#bda8e33dd2ee1c20f54c08eb405713cbfc0ed80e" ansi-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" ansi-styles@^2.2.1: version "2.2.1" @@ -179,14 +179,14 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" autoprefixer@^6.3.1: - version "6.6.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.6.1.tgz#11a4077abb4b313253ec2f6e1adb91ad84253519" + version "6.7.2" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.2.tgz#172ab07b998ae9b957530928a59a40be54a45023" dependencies: - browserslist "~1.5.1" - caniuse-db "^1.0.30000604" + browserslist "^1.7.1" + caniuse-db "^1.0.30000618" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^5.2.8" + postcss "^5.2.11" postcss-value-parser "^3.2.3" aws-sign2@~0.6.0: @@ -194,8 +194,8 @@ aws-sign2@~0.6.0: resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" aws4@^1.2.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" babel-code-frame@^6.11.0, babel-code-frame@^6.16.0, babel-code-frame@^6.22.0: version "6.22.0" @@ -628,8 +628,8 @@ base64-js@^1.0.2: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" bcrypt-pbkdf@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" dependencies: tweetnacl "^0.14.3" @@ -695,11 +695,12 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -browserslist@^1.0.1, browserslist@^1.5.2, browserslist@~1.5.1: - version "1.5.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.5.2.tgz#1c82fde0ee8693e6d15c49b7bff209dc06298c56" +browserslist@^1.0.1, browserslist@^1.5.2, browserslist@^1.7.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.1.tgz#cc9bd193979a2a4b09fdb3df6003fefe48ccefe1" dependencies: - caniuse-db "^1.0.30000604" + caniuse-db "^1.0.30000617" + electron-to-chromium "^1.2.1" buffer-shims@^1.0.0: version "1.0.0" @@ -762,18 +763,17 @@ camelcase@^3.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" caniuse-api@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.2.tgz#8f393c682f661c0a997b77bba6e826483fb3600e" + version "1.5.3" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.3.tgz#5018e674b51c393e4d50614275dc017e27c4a2a2" dependencies: browserslist "^1.0.1" caniuse-db "^1.0.30000346" lodash.memoize "^4.1.0" lodash.uniq "^4.3.0" - shelljs "^0.7.0" -caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000604: - version "1.0.30000607" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000607.tgz#f9d5b542f30d064c305544ff8938b217c67b88e9" +caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000617, caniuse-db@^1.0.30000618: + version "1.0.30000622" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000622.tgz#9d9690b577384990a58e33ebb903a14da735e5fd" caseless@~0.11.0: version "0.11.0" @@ -825,12 +825,11 @@ clap@^1.0.9: dependencies: chalk "^1.1.3" -clean-css@3.4.x: - version "3.4.23" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.23.tgz#604fbbca24c12feb59b02f00b84f1fb7ded6d001" +clean-css@4.0.x: + version "4.0.5" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.0.5.tgz#6a48c30dad03ebe425d209fc282baa53d36c92ca" dependencies: - commander "2.8.x" - source-map "0.4.x" + source-map "0.5.x" cli-cursor@^1.0.1: version "1.0.2" @@ -877,8 +876,8 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" color-convert@^1.3.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.8.2.tgz#be868184d7c8631766d54e7078e2672d7c7e3339" + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" dependencies: color-name "^1.1.1" @@ -918,12 +917,6 @@ combined-stream@^1.0.5, combined-stream@~1.0.5: dependencies: delayed-stream "~1.0.0" -commander@2.8.x: - version "2.8.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" - dependencies: - graceful-readlink ">= 1.0.0" - commander@2.9.x, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" @@ -990,9 +983,9 @@ constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" -content-disposition@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.1.tgz#87476c6a67c8daa87e32e87616df883ba7fb071b" +content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" content-type@~1.0.2: version "1.0.2" @@ -1142,9 +1135,9 @@ cssesc@^0.1.0: postcss-value-parser "^3.2.3" postcss-zindex "^2.0.1" -csso@~2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-2.2.1.tgz#51fbb5347e50e81e6ed51668a48490ae6fe2afe2" +csso@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.1.tgz#4f8d91a156f2f1c2aebb40b8fb1b5eb83d94d3b9" dependencies: clap "^1.0.9" source-map "^0.5.3" @@ -1311,6 +1304,10 @@ ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" +electron-to-chromium@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.2.2.tgz#e41bc9488c88e3cfa1e94bde28e8420d7d47c47c" + emojis-list@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" @@ -1431,16 +1428,16 @@ eslint-plugin-babel@^4.0.1: resolved "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-4.0.1.tgz#77de74dabd67a6bef3b16bf258f5804e971e7349" eslint-plugin-promise@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.4.0.tgz#6ba9048c2df57be77d036e0c68918bc9b4fc4195" + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.4.1.tgz#6911a9010bf84e17d82e19e0ab0f80ab3ad6db4c" eslint-plugin-standard@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-2.0.1.tgz#3589699ff9c917f2c25f76a916687f641c369ff3" eslint@^3.14.0: - version "3.14.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.14.0.tgz#2c617e5f782fda5cbee5bc8be7ef5053af8e63a3" + version "3.15.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.15.0.tgz#bdcc6a6c5ffe08160e7b93c066695362a91e30f2" dependencies: babel-code-frame "^6.16.0" chalk "^1.1.3" @@ -1448,7 +1445,7 @@ eslint@^3.14.0: debug "^2.1.1" doctrine "^1.2.2" escope "^3.6.0" - espree "^3.3.1" + espree "^3.4.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" @@ -1477,17 +1474,21 @@ eslint@^3.14.0: text-table "~0.2.0" user-home "^2.0.0" -espree@^3.3.1: - version "3.3.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.3.2.tgz#dbf3fadeb4ecb4d4778303e50103b3d36c88b89c" +espree@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.0.tgz#41656fa5628e042878025ef467e78f125cb86e1d" dependencies: - acorn "^4.0.1" + acorn "4.0.4" acorn-jsx "^3.0.0" esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" +esprima@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + esrecurse@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" @@ -1551,12 +1552,12 @@ expand-range@^1.8.1: fill-range "^2.1.0" express@^4.14.0: - version "4.14.0" - resolved "https://registry.yarnpkg.com/express/-/express-4.14.0.tgz#c1ee3f42cdc891fb3dc650a8922d51ec847d0d66" + version "4.14.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.14.1.tgz#646c237f766f148c2120aff073817b9e4d7e0d33" dependencies: accepts "~1.3.3" array-flatten "1.1.1" - content-disposition "0.5.1" + content-disposition "0.5.2" content-type "~1.0.2" cookie "0.3.1" cookie-signature "1.0.6" @@ -1565,19 +1566,19 @@ express@^4.14.0: encodeurl "~1.0.1" escape-html "~1.0.3" etag "~1.7.0" - finalhandler "0.5.0" + finalhandler "0.5.1" fresh "0.3.0" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" parseurl "~1.3.1" path-to-regexp "0.1.7" - proxy-addr "~1.1.2" + proxy-addr "~1.1.3" qs "6.2.0" range-parser "~1.2.0" - send "0.14.1" - serve-static "~1.11.1" - type-is "~1.6.13" + send "0.14.2" + serve-static "~1.11.2" + type-is "~1.6.14" utils-merge "1.0.0" vary "~1.1.0" @@ -1645,14 +1646,14 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -finalhandler@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7" +finalhandler@0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.1.tgz#2c400d8d4530935bc232549c5fa385ec07de6fcd" dependencies: debug "~2.2.0" escape-html "~1.0.3" on-finished "~2.3.0" - statuses "~1.3.0" + statuses "~1.3.1" unpipe "~1.0.0" find-cache-dir@^0.1.1: @@ -1931,8 +1932,8 @@ hawk@~3.1.3: sntp "1.x.x" he@1.1.x: - version "1.1.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.0.tgz#29319d49beec13a9b1f3c4f9b2a6dde4859bb2a7" + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" hoek@2.x.x: version "2.16.3" @@ -1946,8 +1947,8 @@ home-or-tmp@^2.0.0: os-tmpdir "^1.0.1" hosted-git-info@^2.1.4: - version "2.1.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" + version "2.2.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.2.0.tgz#7a0d097863d886c0fabbdcd37bf1758d8becf8a5" html-comment-regex@^1.1.0: version "1.1.1" @@ -1958,11 +1959,11 @@ html-entities@^1.2.0: resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.0.tgz#41948caf85ce82fed36e4e6a0ed371a6664379e2" html-minifier@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.2.3.tgz#d2ff536e24d95726c332493d8f77d84dbed85372" + version "3.3.0" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.3.0.tgz#a9b5b8eda501362d4c5699db02a8dc72013d1fab" dependencies: camel-case "3.0.x" - clean-css "3.4.x" + clean-css "4.0.x" commander "2.9.x" he "1.1.x" ncname "1.0.x" @@ -1971,8 +1972,8 @@ html-minifier@^3.2.3: uglify-js "2.7.x" html-webpack-plugin@^2.26.0: - version "2.26.0" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.26.0.tgz#ba97c8a66f912b85df80d2aeea65966c8bd9249e" + version "2.28.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.28.0.tgz#2e7863b57e5fd48fe263303e2ffc934c3064d009" dependencies: bluebird "^3.4.7" html-minifier "^3.2.3" @@ -1990,7 +1991,7 @@ htmlparser2@~3.3.0: domutils "1.1" readable-stream "1.0" -http-errors@~1.5.0, http-errors@~1.5.1: +http-errors@~1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750" dependencies: @@ -2023,8 +2024,8 @@ ignore-by-default@^1.0.0: resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" ignore@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.0.tgz#8d88f03c3002a0ac52114db25d2c673b0bf1e435" + version "3.2.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.2.tgz#1c51e1ef53bab6ddc15db4d9ac4ec139eceb3410" imports-loader@^0.7.0: version "0.7.0" @@ -2066,14 +2067,14 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -inherits@2.0.1: +inherits@2, inherits@2.0.1, inherits@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" +inherits@2.0.3, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" @@ -2302,12 +2303,19 @@ js-base64@^2.1.9: resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" js-tokens@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.0.tgz#a2f2a969caae142fb3cd56228358c89366957bd1" + version "3.0.1" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" -js-yaml@^3.4.3, js-yaml@^3.5.1, js-yaml@~3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.6.1.tgz#6e5fe67d8b205ce4d22fad05b7781e8dadcc4b30" +js-yaml@^3.4.3, js-yaml@^3.5.1: + version "3.8.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.1.tgz#782ba50200be7b9e5a8537001b7804db3ad02628" + dependencies: + argparse "^1.0.7" + esprima "^3.1.1" + +js-yaml@~3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" dependencies: argparse "^1.0.7" esprima "^2.6.0" @@ -2504,10 +2512,6 @@ lodash.defaults@^3.1.2: lodash.assign "^3.0.0" lodash.restparam "^3.0.0" -lodash.indexof@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/lodash.indexof/-/lodash.indexof-4.0.5.tgz#53714adc2cddd6ed87638f893aa9b6c24e31ef3c" - lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -2601,10 +2605,8 @@ marked@^0.3.6: resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" math-expression-evaluator@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.14.tgz#39511771ed9602405fba9affff17eb4d2a3843ab" - dependencies: - lodash.indexof "^4.0.5" + version "1.2.16" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.16.tgz#b357fa1ca9faefb8e48d10c14ef2bcb2d9f0a7c9" media-typer@0.3.0: version "0.3.0" @@ -2669,15 +2671,15 @@ micromatch@^2.1.5: parse-glob "^3.0.4" regex-cache "^0.4.2" -"mime-db@>= 1.24.0 < 2", mime-db@~1.25.0: - version "1.25.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.25.0.tgz#c18dbd7c73a5dbf6f44a024dc0d165a1e7b1c392" +"mime-db@>= 1.24.0 < 2", mime-db@~1.26.0: + version "1.26.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff" mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.13, mime-types@~2.1.7: - version "2.1.13" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.13.tgz#e07aaa9c6c6b9a7ca3012c69003ad25a39e92a88" + version "2.1.14" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee" dependencies: - mime-db "~1.25.0" + mime-db "~1.26.0" mime@1.2.x: version "1.2.11" @@ -2720,8 +2722,8 @@ mute-stream@0.0.5: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" nan@^2.3.0, nan@^2.3.2: - version "2.5.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.0.tgz#aa8f1e34531d807e9e27755b234b4a6ec0c152a8" + version "2.5.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2" natural-compare@^1.4.0: version "1.4.0" @@ -2796,8 +2798,8 @@ node-libs-browser@^0.7.0: vm-browserify "0.0.4" node-pre-gyp@^0.6.29: - version "0.6.32" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz#fc452b376e7319b3d255f5f34853ef6fd8fe1fd5" + version "0.6.33" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.33.tgz#640ac55198f6a925972e0c16c4ac26a034d5ecc9" dependencies: mkdirp "~0.5.1" nopt "~3.0.6" @@ -2810,8 +2812,8 @@ node-pre-gyp@^0.6.29: tar-pack "~3.3.0" node-sass@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.3.0.tgz#d014f64595d77b26af99e9f7a7e74704d9976bda" + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.5.0.tgz#532e37bad0ce587348c831535dbc98ea4289508b" dependencies: async-foreach "^0.1.3" chalk "^1.1.1" @@ -2923,8 +2925,8 @@ object-assign@^3.0.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" object.omit@^2.0.0: version "2.0.1" @@ -2943,7 +2945,13 @@ on-headers@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" -once@^1.3.0, once@~1.3.0, once@~1.3.3: +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +once@~1.3.0, once@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" dependencies: @@ -3112,16 +3120,16 @@ postcss-calc@^5.2.0: reduce-css-calc "^1.2.6" postcss-colormin@^2.1.8: - version "2.2.1" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.1.tgz#dc5421b6ae6f779ef6bfd47352b94abe59d0316b" + version "2.2.2" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" dependencies: colormin "^1.0.5" postcss "^5.0.13" postcss-value-parser "^3.2.3" postcss-convert-values@^2.3.4: - version "2.6.0" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.0.tgz#08c6d06130fe58a91a21ff50829e1aad6a3a1acc" + version "2.6.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" dependencies: postcss "^5.0.11" postcss-value-parser "^3.1.2" @@ -3205,8 +3213,8 @@ postcss-merge-idents@^2.1.5: postcss-value-parser "^3.1.1" postcss-merge-longhand@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.1.tgz#ff59b5dec6d586ce2cea183138f55c5876fa9cdc" + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" dependencies: postcss "^5.0.4" @@ -3364,14 +3372,14 @@ postcss-zindex@^2.0.1: postcss "^5.0.4" uniqs "^2.0.0" -postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.8, postcss@^5.2.9: - version "5.2.10" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.10.tgz#b58b64e04f66f838b7bc7cb41f7dac168568a945" +postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.11, postcss@^5.2.9: + version "5.2.12" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.12.tgz#6a2b15e35dd65634441bb0961fa796904c7890e0" dependencies: chalk "^1.1.3" js-base64 "^2.1.9" source-map "^0.5.6" - supports-color "^3.1.2" + supports-color "^3.2.3" prelude-ls@~1.1.2: version "1.1.2" @@ -3393,8 +3401,8 @@ pretty-error@^2.0.2: utila "~0.4" private@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1" + version "0.1.7" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" process-nextick-args@~1.0.6: version "1.0.7" @@ -3408,7 +3416,7 @@ progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" -proxy-addr@~1.1.2: +proxy-addr@~1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.3.tgz#dc97502f5722e888467b3fa2297a7b1ff47df074" dependencies: @@ -3450,8 +3458,8 @@ qs@~6.3.0: resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" query-string@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.0.tgz#6f39ee0ce2f713b28a6517809b4a974a623fbb42" + version "4.3.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.1.tgz#54baada6713eafc92be75c47a731f2ebd09cd11d" dependencies: object-assign "^4.1.0" strict-uri-encode "^1.0.0" @@ -3787,24 +3795,6 @@ semver-diff@^2.0.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -send@0.14.1: - version "0.14.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a" - dependencies: - debug "~2.2.0" - depd "~1.1.0" - destroy "~1.0.4" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.7.0" - fresh "0.3.0" - http-errors "~1.5.0" - mime "1.3.4" - ms "0.7.1" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.3.0" - send@0.14.2: version "0.14.2" resolved "https://registry.yarnpkg.com/send/-/send-0.14.2.tgz#39b0438b3f510be5dc6f667a11f71689368cdeef" @@ -3823,7 +3813,7 @@ send@0.14.2: range-parser "~1.2.0" statuses "~1.3.1" -serve-static@~1.11.1: +serve-static@~1.11.2: version "1.11.2" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.2.tgz#2cf9889bd4435a320cc36895c9aa57bd662e6ac7" dependencies: @@ -3852,7 +3842,7 @@ sha.js@2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba" -shelljs@^0.7.0, shelljs@^0.7.5: +shelljs@^0.7.5: version "0.7.6" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.6.tgz#379cccfb56b91c8601e4793356eb5382924de9ad" dependencies: @@ -3888,26 +3878,26 @@ sort-keys@^1.0.0: dependencies: is-plain-obj "^1.0.0" -source-list-map@^0.1.4, source-list-map@~0.1.0, source-list-map@~0.1.7: +source-list-map@^0.1.4, source-list-map@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" source-map-support@^0.4.2: - version "0.4.10" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.10.tgz#d7b19038040a14c0837a18e630a196453952b378" + version "0.4.11" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322" dependencies: source-map "^0.5.3" -source-map@0.4.x, source-map@^0.4.4, source-map@~0.4.1: +source-map@0.5.x, source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3: + version "0.5.6" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" + +source-map@^0.4.4, source-map@~0.4.1: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" @@ -3933,8 +3923,8 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: - version "1.10.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0" + version "1.10.2" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.2.tgz#d5a804ce22695515638e798dbe23273de070a5fa" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -3947,7 +3937,7 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -"statuses@>= 1.3.1 < 2", statuses@~1.3.0, statuses@~1.3.1: +"statuses@>= 1.3.1 < 2", statuses@~1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" @@ -3971,8 +3961,8 @@ stream-combiner@~0.0.4: duplexer "~0.1.1" stream-http@^2.3.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.6.1.tgz#7d20fcdfebc16b16e4174e31dd94cd9c70f10e89" + version "2.6.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.6.3.tgz#4c3ddbf9635968ea2cfd4e48d43de5def2625ac3" dependencies: builtin-status-codes "^3.0.0" inherits "^2.0.1" @@ -4061,20 +4051,20 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -supports-color@^3.1.0, supports-color@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" +supports-color@^3.1.0, supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" dependencies: has-flag "^1.0.0" svgo@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.1.tgz#287320fed972cb097e72c2bb1685f96fe08f8034" + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" dependencies: coa "~1.0.1" colors "~1.1.2" - csso "~2.2.1" - js-yaml "~3.6.1" + csso "~2.3.1" + js-yaml "~3.7.0" mkdirp "~0.5.1" sax "~1.2.1" whet.extend "~0.9.9" @@ -4142,8 +4132,8 @@ to-fast-properties@^1.0.1: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" toposort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.0.tgz#b66cf385a1a8a8e68e45b8259e7f55875e8b06ef" + version "1.0.2" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.2.tgz#be1de72431320fcefe35a7b539c1c336cbcfd32c" touch@1.0.0: version "1.0.0" @@ -4191,7 +4181,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@~1.6.13: +type-is@~1.6.14: version "1.6.14" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.14.tgz#e219639c17ded1ca0789092dd54a03826b817cb2" dependencies: @@ -4356,8 +4346,8 @@ webpack-core@~0.6.9: source-map "~0.4.1" webpack-dev-middleware@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.9.0.tgz#a1c67a3dfd8a5c5d62740aa0babe61758b4c84aa" + version "1.10.0" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.10.0.tgz#7d5be2651e692fddfafd8aaed177c16ff51f0eb8" dependencies: memory-fs "~0.4.1" mime "^1.3.4" @@ -4365,8 +4355,8 @@ webpack-dev-middleware@^1.9.0: range-parser "^1.0.3" webpack-hot-middleware@^2.15.0: - version "2.15.0" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.15.0.tgz#71995af7c0025f109df482f86f1e10379526d026" + version "2.16.1" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.16.1.tgz#ae209bcab2b9b672f1b0fdcf6c5c2a680ff118e1" dependencies: ansi-html "0.0.6" html-entities "^1.2.0" @@ -4374,10 +4364,10 @@ webpack-hot-middleware@^2.15.0: strip-ansi "^3.0.0" webpack-sources@^0.1.0: - version "0.1.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.3.tgz#15ce2fb79d0a1da727444ba7c757bf164294f310" + version "0.1.4" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.4.tgz#ccc2c817e08e5fa393239412690bb481821393cd" dependencies: - source-list-map "~0.1.0" + source-list-map "~0.1.7" source-map "~0.5.3" webpack@^1.14.0: From da5af5b700783fb1f4653ea11c07eb0634f5b34b Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Wed, 25 Jan 2017 15:18:41 -0600 Subject: [PATCH 08/25] Styleguide start --- config/project.config.js | 4 +- config/styleguide.config.js | 13 ++++ package.json | 1 + server/main.js | 2 + .../pattern-markup/swatches_example.html | 17 +++++ src/styleguide/pattern-markup/titles.html | 6 ++ src/styleguide/pattern-markup/typography.html | 37 ++++++++++ src/styles/example-colors.scss | 17 +++++ yarn.lock | 73 +++++++++++++++++-- 9 files changed, 162 insertions(+), 8 deletions(-) create mode 100644 config/styleguide.config.js create mode 100644 src/styleguide/pattern-markup/swatches_example.html create mode 100644 src/styleguide/pattern-markup/titles.html create mode 100644 src/styleguide/pattern-markup/typography.html create mode 100644 src/styles/example-colors.scss diff --git a/config/project.config.js b/config/project.config.js index 029729d..393450b 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -19,6 +19,7 @@ const config = { dir_public : 'public', dir_server : 'server', dir_test : 'tests', + dir_styleguide : 'dist/styleguide', // ---------------------------------- // Server Configuration @@ -116,7 +117,8 @@ config.paths = { base : base, client : base.bind(null, config.dir_client), public : base.bind(null, config.dir_public), - dist : base.bind(null, config.dir_dist) + dist : base.bind(null, config.dir_dist), + styleguide : base.bind(null, config.dir_styleguide) }; // ======================================================== diff --git a/config/styleguide.config.js b/config/styleguide.config.js new file mode 100644 index 0000000..5092774 --- /dev/null +++ b/config/styleguide.config.js @@ -0,0 +1,13 @@ +const project = require('../config/project.config'); + +const styleguideConfig = { + source: [ + project.paths.client('styles'), + project.paths.client('styleguide/pattern-markup') + ], + styleguide_version: '0.0.1', + destination: project.paths.dist('styleguide'), + title: 'Caxy Front End Starter Kit Styleguide' +}; + +module.exports = styleguideConfig; diff --git a/package.json b/package.json index b43674f..eafb9b1 100644 --- a/package.json +++ b/package.json @@ -100,6 +100,7 @@ "imports-loader": "^0.7.0", "ip": "^1.1.4", "json-loader": "^0.5.4", + "kss": "^3.0.0-beta.17", "node-sass": "^4.3.0", "nodemon": "^1.11.0", "path": "^0.12.7", diff --git a/server/main.js b/server/main.js index f4c9dc0..501c9cd 100644 --- a/server/main.js +++ b/server/main.js @@ -46,6 +46,8 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); + app.use(express.static(project.paths.styleguide())); + // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal // rendering, you'll want to remove this middleware. diff --git a/src/styleguide/pattern-markup/swatches_example.html b/src/styleguide/pattern-markup/swatches_example.html new file mode 100644 index 0000000..5c844a0 --- /dev/null +++ b/src/styleguide/pattern-markup/swatches_example.html @@ -0,0 +1,17 @@ +
+ +

Example Color Set 1

+
    +
  • +
  • +
  • +
+ +

Example Color Set 2

+
    +
  • +
  • +
  • +
+ +
\ No newline at end of file diff --git a/src/styleguide/pattern-markup/titles.html b/src/styleguide/pattern-markup/titles.html new file mode 100644 index 0000000..b1f9eb4 --- /dev/null +++ b/src/styleguide/pattern-markup/titles.html @@ -0,0 +1,6 @@ +

Title 1: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Facere tempora est, repellendus voluptate libero laboriosam incidunt ratione.

+

Title 2: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Iure nemo deserunt consequuntur expedita officiis, vero, quia unde odit voluptas.

+

Title 3: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsam nulla exercitationem ut voluptatem deserunt laborum dicta assumenda placeat, eos dolorum.

+

Title 4: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quam voluptate fuga nihil saepe, unde, possimus tempore aut libero animi iusto est excepturi!

+
Title 5: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quo architecto sunt asperiores veniam molestias debitis quasi. Temporibus labore natus ab harum maiores.
+
Title 6: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nam enim totam quod illo, non, sed architecto illum est cupiditate, facere, eos.
\ No newline at end of file diff --git a/src/styleguide/pattern-markup/typography.html b/src/styleguide/pattern-markup/typography.html new file mode 100644 index 0000000..2bb2b13 --- /dev/null +++ b/src/styleguide/pattern-markup/typography.html @@ -0,0 +1,37 @@ + +

Heading Level 1

+ +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem beatae mollitia itaque expedita necessitatibus ratione adipisci, iure repellat porro quas consectetur non eveniet voluptas id fuga aperiam sequi. Debitis, nihil!

+ +

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec non enim in turpis pulvinar facilisis. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Ut felis.

+ +

Morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus

+ +

Heading Level 2

+ +
    +
  1. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  2. +
  3. Aliquam tincidunt mauris eu risus.
  4. +
+ +

Heading Level 3

+ +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ducimus dolore excepturi ad expedita, doloremque id enim iusto ratione tempore amet perferendis numquam, nulla nostrum magnam quam neque, necessitatibus dicta! Ipsa!

+ +
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus magna. Cras in mi at felis aliquet congue. Ut a est eget ligula molestie gravida. Curabitur massa. Donec eleifend, libero at sagittis mollis, tellus est malesuada tellus, at luctus turpis elit sit amet quam. Vivamus pretium ornare est." +
+ — Source Person, Additional Info +
+
+ +

Consectetur adipisicing elit. Qui unde voluptates voluptatem et autem eos eaque iusto atque ea aliquam laborum cupiditate pariatur explicabo, dicta molestias sapiente laboriosam eveniet! Rem.

+ +

Heading Level 4:

+ +
    +
  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  • +
  • Aliquam tincidunt mauris eu risus.
  • +
+ +

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ducimus dolore excepturi ad expedita, doloremque id enim iusto ratione tempore amet perferendis numquam, nulla nostrum magnam quam neque, necessitatibus dicta! Ipsa!

diff --git a/src/styles/example-colors.scss b/src/styles/example-colors.scss new file mode 100644 index 0000000..ec463fe --- /dev/null +++ b/src/styles/example-colors.scss @@ -0,0 +1,17 @@ +// Example Color Swatches +// +// Markup: swatches_example.html +// +// Styleguide 1.0 + +$example-color-1: ( + 'base': #072736, + 'light': #1F5363, + 'dark': #041c25 +); + +$example-color-2: ( + 'base': #df1e36, + 'light': lighten(#df1e36, 20%), + 'dark': darken(#df1e36, 10%) +); \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index ae8014a..fedf074 100644 --- a/yarn.lock +++ b/yarn.lock @@ -160,7 +160,7 @@ async@^0.9.0: version "0.9.2" resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" -async@^1.3.0, async@^1.5.0: +async@^1.3.0, async@^1.4.0, async@^1.5.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -654,7 +654,7 @@ block-stream@*: dependencies: inherits "~2.0.0" -bluebird@^3.4.7: +bluebird@^3.3.3, bluebird@^3.4.7: version "3.4.7" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3" @@ -779,6 +779,17 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" +caxy-styleguide-plugin@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/caxy-styleguide-plugin/-/caxy-styleguide-plugin-0.1.1.tgz#6ec46d26f1009f12ece6f58aabb4fb96ed3fb5b5" + dependencies: + normalize-css "^2.3.1" + +"caxy-styleguide-plugin@file:./../styleguide-plugin": + version "0.1.1" + dependencies: + normalize-css "^2.3.1" + center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" @@ -1689,6 +1700,10 @@ for-own@^0.1.4: dependencies: for-in "^0.1.5" +foreachasync@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/foreachasync/-/foreachasync-3.0.0.tgz#5502987dc8714be3392097f32e0071c9dee07cf6" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -1867,6 +1882,16 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" +handlebars@^4.0.0: + version "4.0.6" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" @@ -2355,6 +2380,18 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" +kss@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.yarnpkg.com/kss/-/kss-3.0.0-beta.17.tgz#10a6300c8884dc06f2a72b6627f5c0ca7717f565" + dependencies: + bluebird "^3.3.3" + fs-extra "^1.0.0" + glob "^7.0.3" + handlebars "^4.0.0" + marked "^0.3.6" + twig "^0.10.2" + yargs "^6.0.0" + latest-version@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-1.0.1.tgz#72cfc46e3e8d1be651e1ebb54ea9f6ea96f374bb" @@ -2397,6 +2434,10 @@ loader-utils@0.2.x, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0. json5 "^0.5.0" object-assign "^4.0.1" +locutus@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/locutus/-/locutus-2.0.6.tgz#4f7338cc3f0da9f656502490772c1cdce0cfd26f" + lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -2547,6 +2588,10 @@ map-stream@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" +marked@^0.3.6: + version "0.3.6" + resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" + math-expression-evaluator@^1.2.14: version "1.2.14" resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.14.tgz#39511771ed9602405fba9affff17eb4d2a3843ab" @@ -2634,7 +2679,7 @@ mime@1.3.4, mime@^1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.2: +minimatch@3.0.x, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: @@ -2900,7 +2945,7 @@ onetime@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" -optimist@~0.6.0: +optimist@^0.6.1, optimist@~0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: @@ -3845,7 +3890,7 @@ source-map-support@^0.4.2: dependencies: source-map "^0.5.3" -source-map@0.4.x, source-map@~0.4.1: +source-map@0.4.x, source-map@^0.4.4, source-map@~0.4.1: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: @@ -4124,6 +4169,14 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" +twig@^0.10.2: + version "0.10.3" + resolved "https://registry.yarnpkg.com/twig/-/twig-0.10.3.tgz#67604e08e1920ebf2faf80a901e256189c8a3c67" + dependencies: + locutus "^2.0.5" + minimatch "3.0.x" + walk "2.3.x" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -4141,7 +4194,7 @@ typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -uglify-js@2.7.x, uglify-js@~2.7.3: +uglify-js@2.7.x, uglify-js@^2.6, uglify-js@~2.7.3: version "2.7.5" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.5.tgz#4612c0c7baaee2ba7c487de4904ae122079f2ca8" dependencies: @@ -4273,6 +4326,12 @@ vm-browserify@0.0.4: dependencies: indexof "0.0.1" +walk@2.3.x: + version "2.3.9" + resolved "https://registry.yarnpkg.com/walk/-/walk-2.3.9.tgz#31b4db6678f2ae01c39ea9fb8725a9031e558a7b" + dependencies: + foreachasync "^3.0.0" + watchpack@^0.2.1: version "0.2.9" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-0.2.9.tgz#62eaa4ab5e5ba35fdfc018275626e3c0f5e3fb0b" @@ -4452,7 +4511,7 @@ yargs@^4.7.1: y18n "^3.2.1" yargs-parser "^2.4.1" -yargs@^6.6.0: +yargs@^6.0.0, yargs@^6.6.0: version "6.6.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" dependencies: From 429941014c5f144fa46c3399b8bb0bd056333006 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Wed, 25 Jan 2017 17:30:17 -0600 Subject: [PATCH 09/25] WIP --- server/main.js | 2 +- yarn.lock | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/server/main.js b/server/main.js index 501c9cd..d873006 100644 --- a/server/main.js +++ b/server/main.js @@ -46,7 +46,7 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); - app.use(express.static(project.paths.styleguide())); + app.use('/styleguide', express.static(project.paths.styleguide())); // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal diff --git a/yarn.lock b/yarn.lock index fedf074..cad7545 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,14 +779,13 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -caxy-styleguide-plugin@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/caxy-styleguide-plugin/-/caxy-styleguide-plugin-0.1.1.tgz#6ec46d26f1009f12ece6f58aabb4fb96ed3fb5b5" +"caxy-styleguide-core@file:./../styleguide-core": + version "0.1.0" dependencies: normalize-css "^2.3.1" -"caxy-styleguide-plugin@file:./../styleguide-plugin": - version "0.1.1" +"caxy-styleguide-plugin@file:./../styleguide-core": + version "0.1.0" dependencies: normalize-css "^2.3.1" From 165456dcb712d89e595997eadaae6e7cd85abe29 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 01:01:29 -0600 Subject: [PATCH 10/25] Use caxy-styleguide-core plugin --- config/styleguide.config.js | 12 ++- config/webpack.config.js | 5 +- src/main.js | 7 +- .../project-assets/_project-specific.scss | 82 +++++++++++++++++++ src/styleguide/project-assets/homepage.md | 10 +++ src/styles/core.scss | 1 + yarn.lock | 22 +++-- 7 files changed, 129 insertions(+), 10 deletions(-) create mode 100644 src/styleguide/project-assets/_project-specific.scss create mode 100644 src/styleguide/project-assets/homepage.md diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 5092774..4287f59 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -3,8 +3,18 @@ const project = require('../config/project.config'); const styleguideConfig = { source: [ project.paths.client('styles'), - project.paths.client('styleguide/pattern-markup') + project.paths.client('styleguide/pattern-markup'), + project.paths.client('styleguide/project-assets') ], + sass: { + files: [ + project.paths.client('styleguide/project-assets/_project-specific.scss') + ], + includePaths: [ + project.paths.base('node_modules'), + project.paths.client('styles') + ] + }, styleguide_version: '0.0.1', destination: project.paths.dist('styleguide'), title: 'Caxy Front End Starter Kit Styleguide' diff --git a/config/webpack.config.js b/config/webpack.config.js index 95b85c7..a55a621 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,6 +5,8 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); +const StyleguidePlugin = require('caxy-styleguide-core/src/styleguide-webpack-plugin'); +const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. const __DEV__ = project.globals.__DEV__; @@ -65,7 +67,8 @@ webpackConfig.plugins = [ minify : { collapseWhitespace : true } - }) + }), + new StyleguidePlugin(styleguideConfig) ]; // Ensure that the compiler exits on errors during testing so that diff --git a/src/main.js b/src/main.js index fd064cc..67fb136 100644 --- a/src/main.js +++ b/src/main.js @@ -3,10 +3,15 @@ import './styles/core.scss' const MOUNT_NODE = document.getElementById('root'); let render = () => { + if (__STYLEGUIDE__) { + // Do not do anything when on the styleguide. + return; + } + MOUNT_NODE.innerHTML = 'Caxy Front End Starter Kit!'; }; -if (__DEV__) { +if (__DEV__ && !__STYLEGUIDE__) { if (module.hot) { // Development render functions. const renderApp = render; diff --git a/src/styleguide/project-assets/_project-specific.scss b/src/styleguide/project-assets/_project-specific.scss new file mode 100644 index 0000000..afc48fa --- /dev/null +++ b/src/styleguide/project-assets/_project-specific.scss @@ -0,0 +1,82 @@ +@import 'caxy-styleguide-core/src/styleguide/caxy-zaba-template/scss/_mixins-styleguide.scss'; + +// ------------------------------------------------------------------------------ +// Project Specific Settings +// ------------------------------------------------------------------------------ +// +// Add any information related to your styleguide that is styleguide-specific +// here. This file currently manages breakpoint display and color swatch +// population. + + + + + + +// ------------------------------------------------------------------------------ +// Breakpoint Display +// ------------------------------------------------------------------------------ + +$example-screen-micro: 20.3125rem; +$example-screen-small: 42.5rem; +$example-screen-medium: 57.5rem; +$example-screen-large: 75rem; +$example-screen-xlarge: 88.75rem; +$example-screen-xxlarge: 100rem; + +#width-marker { + + @media (min-width: $example-screen-micro) { + &::after { + content: "Breakpoint: Micro (#{$example-screen-micro})"; + } + } + @media (min-width: $example-screen-small) { + &::after { + content: "Breakpoint: Small (#{$example-screen-small})"; + } + } + @media (min-width: $example-screen-medium) { + &::after { + content: "Breakpoint: Medium (#{$example-screen-medium})"; + } + } + @media (min-width: $example-screen-large) { + &::after { + content: "Breakpoint: Large (#{$example-screen-large})"; + } + } + @media (min-width: $example-screen-xlarge) { + &::after { + content: "Breakpoint: XLarge (#{$example-screen-xlarge})"; + } + } + @media (min-width: $example-screen-xxlarge) { + &::after { + content: "Breakpoint: XXLarge (#{$example-screen-xxlarge})"; + } + } +} + + + + + +// ------------------------------------------------------------------------------ +// Color Swatches +// ------------------------------------------------------------------------------ + +// Path to either individual files or folders for your project's color variables +@import '../../styles/example-colors.scss'; + +// The $color-sets object is required if working swatches are needed. It can either +// remain here, or be pulled into your project's color variable file. +$color-sets: ( + "example-1": $example-color-1, + "example-2": $example-color-2 +); + +// Do not remove or edit below; needed to create swatches based on your color sets. +.kss-swatch { + @include make-swatches($color-sets); +} diff --git a/src/styleguide/project-assets/homepage.md b/src/styleguide/project-assets/homepage.md new file mode 100644 index 0000000..b8a74c8 --- /dev/null +++ b/src/styleguide/project-assets/homepage.md @@ -0,0 +1,10 @@ +# Welcome to the Caxy Boilerplate Style Guide + +A record of patterns and components will be maintained here as they are +added to the style guide, grouped by version number. + +--- + +## Version 1 + +Description of the patterns added with version 1 should be added here. diff --git a/src/styles/core.scss b/src/styles/core.scss index 1f48b48..898d2af 100644 --- a/src/styles/core.scss +++ b/src/styles/core.scss @@ -1,2 +1,3 @@ @import '~normalize-css/normalize.css'; +@import './example-colors'; diff --git a/yarn.lock b/yarn.lock index cad7545..2a0c16c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,15 +779,16 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -"caxy-styleguide-core@file:./../styleguide-core": - version "0.1.0" - dependencies: - normalize-css "^2.3.1" - -"caxy-styleguide-plugin@file:./../styleguide-core": - version "0.1.0" +caxy-styleguide-core@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/caxy-styleguide-core/-/caxy-styleguide-core-0.0.2.tgz#07924902bc89e7a0eb446d447e6a38f5eb73b81d" dependencies: + debug "^2.6.0" + fs-extra "^2.0.0" + kss "^3.0.0-beta.17" + node-sass "^4.3.0" normalize-css "^2.3.1" + path "^0.12.7" center-align@^0.1.1: version "0.1.3" @@ -1735,6 +1736,13 @@ fs-extra@^1.0.0: jsonfile "^2.1.0" klaw "^1.0.0" +fs-extra@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.0.0.tgz#337352bded4a0b714f3eb84de8cea765e9d37600" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" From acffea318f819428de9bfe9453ec9b9fd3ae4ff4 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 01:21:42 -0600 Subject: [PATCH 11/25] Use caxy-styleguide-webpack-plugin package --- config/webpack.config.js | 2 +- server/main.js | 1 + yarn.lock | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/config/webpack.config.js b/config/webpack.config.js index a55a621..b184bd6 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,7 +5,7 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); -const StyleguidePlugin = require('caxy-styleguide-core/src/styleguide-webpack-plugin'); +const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. diff --git a/server/main.js b/server/main.js index d873006..a03ff8d 100644 --- a/server/main.js +++ b/server/main.js @@ -46,6 +46,7 @@ if (project.env === 'development') { // when the application is compiled. app.use(express.static(project.paths.public())); + // Serve the KSS styleguide as static assets. app.use('/styleguide', express.static(project.paths.styleguide())); // This rewrites all routes requests to the root /index.html file diff --git a/yarn.lock b/yarn.lock index 2a0c16c..926cde2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -790,6 +790,13 @@ caxy-styleguide-core@^0.0.2: normalize-css "^2.3.1" path "^0.12.7" +caxy-styleguide-webpack-plugin@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.1.tgz#9353ef7ec851c4520d315376a60615a3e6e09a5f" + dependencies: + caxy-styleguide-core "^0.0.2" + kss "^3.0.0-beta.17" + center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" From 89f30873614f5ae85e6ecf16f82b4d438ec88fa9 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Thu, 26 Jan 2017 17:34:58 -0600 Subject: [PATCH 12/25] Split kss builder caxy zaba out --- config/styleguide.config.js | 12 +++++++++++- package.json | 4 +++- src/main.js | 4 ++-- yarn.lock | 15 ++++++++++++--- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 4287f59..40263d1 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -1,4 +1,5 @@ const project = require('../config/project.config'); +const builder = require('kss-caxy-zaba-template'); const styleguideConfig = { source: [ @@ -17,7 +18,16 @@ const styleguideConfig = { }, styleguide_version: '0.0.1', destination: project.paths.dist('styleguide'), - title: 'Caxy Front End Starter Kit Styleguide' + title: 'Caxy Front End Starter Kit Styleguide', + hide_pattern_status: true, + builder: project.paths.base('node_modules/kss-caxy-zaba-template/src'), + custom: [ + 'devnotes', + 'hidemarkup', + 'status', + 'patterntype', + 'containspatterns' + ] }; module.exports = styleguideConfig; diff --git a/package.json b/package.json index eafb9b1..6c05199 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,9 @@ "bugs": "https://github.com/caxy/front-end-starter-kit/issues", "homepage": "https://github.com/caxy/front-end-starter-kit#readme", "dependencies": { - "normalize-css": "^2.3.1" + "normalize-css": "^2.3.1", + "caxy-styleguide-webpack-plugin": "^0.0.2", + "kss-caxy-zaba-template": "^0.0.2" }, "devDependencies": { "babel-core": "^6.22.1", diff --git a/src/main.js b/src/main.js index 67fb136..c57b24a 100644 --- a/src/main.js +++ b/src/main.js @@ -3,7 +3,7 @@ import './styles/core.scss' const MOUNT_NODE = document.getElementById('root'); let render = () => { - if (__STYLEGUIDE__) { + if ((typeof __STYLEGUIDE__ !== 'undefined' && __STYLEGUIDE__)) { // Do not do anything when on the styleguide. return; } @@ -11,7 +11,7 @@ let render = () => { MOUNT_NODE.innerHTML = 'Caxy Front End Starter Kit!'; }; -if (__DEV__ && !__STYLEGUIDE__) { +if (__DEV__ && (typeof __STYLEGUIDE__ === 'undefined' || !__STYLEGUIDE__)) { if (module.hot) { // Development render functions. const renderApp = render; diff --git a/yarn.lock b/yarn.lock index 926cde2..f1d8472 100644 --- a/yarn.lock +++ b/yarn.lock @@ -790,9 +790,9 @@ caxy-styleguide-core@^0.0.2: normalize-css "^2.3.1" path "^0.12.7" -caxy-styleguide-webpack-plugin@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.1.tgz#9353ef7ec851c4520d315376a60615a3e6e09a5f" +caxy-styleguide-webpack-plugin@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.2.tgz#61c7dbb2d2709e7acf6ad25bc8d0255ab975f228" dependencies: caxy-styleguide-core "^0.0.2" kss "^3.0.0-beta.17" @@ -2394,6 +2394,15 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" +kss-caxy-zaba-template@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.2.tgz#b466d5ae9cc751e529704012e45ced31a9dea264" + dependencies: + fs-extra "^2.0.0" + kss "^3.0.0-beta.17" + node-sass "^4.3.0" + path "^0.12.7" + kss@^3.0.0-beta.17: version "3.0.0-beta.17" resolved "https://registry.yarnpkg.com/kss/-/kss-3.0.0-beta.17.tgz#10a6300c8884dc06f2a72b6627f5c0ca7717f565" From a30663e9e5a30c38a8e5dfb43b0fb394c5eeafc4 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Fri, 27 Jan 2017 14:14:52 -0600 Subject: [PATCH 13/25] Fix issues with styleguide assets --- config/project.config.js | 10 ++- config/styleguide.config.js | 64 +++++++++++-------- config/webpack.config.js | 13 ++-- package.json | 6 +- server/main.js | 2 +- .../project-assets/_project-specific.scss | 2 +- src/styleguide/project-assets/homepage.md | 2 +- yarn.lock | 27 ++------ 8 files changed, 69 insertions(+), 57 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index 393450b..4b3864f 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -21,6 +21,14 @@ const config = { dir_test : 'tests', dir_styleguide : 'dist/styleguide', + // ---------------------------------- + // Styleguide Configuration + // ---------------------------------- + styleguide_enabled : true, + styleguide_version : '0.0.1', + styleguide_title : 'Caxy Front End Starter Kit Style Guide', + styleguide_hide_pattern_status: true, + // ---------------------------------- // Server Configuration // ---------------------------------- @@ -118,7 +126,7 @@ config.paths = { client : base.bind(null, config.dir_client), public : base.bind(null, config.dir_public), dist : base.bind(null, config.dir_dist), - styleguide : base.bind(null, config.dir_styleguide) + styleguideOutput : base.bind(null, config.dir_styleguide) }; // ======================================================== diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 40263d1..2574b7d 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -1,33 +1,47 @@ const project = require('../config/project.config'); -const builder = require('kss-caxy-zaba-template'); +/** + * Configuration object for the kss-node styleguide. + * + * This config is passed into StyleguidePlugin (caxy-styleguide-webpack-plugin) in webpack.config.js + * when the styleguide is enabled. + */ const styleguideConfig = { - source: [ - project.paths.client('styles'), - project.paths.client('styleguide/pattern-markup'), - project.paths.client('styleguide/project-assets') + // Project-specific settings pulled from project.config.js. + styleguide_version: project.styleguide_version, + title: project.styleguide_title, + hide_pattern_status: project.styleguide_hide_pattern_status, + destination: project.paths.styleguideOutput(), + + // Source directories for KSS documentation. + source: [ + project.paths.client('styles'), + project.paths.client('styleguide/pattern-markup'), + project.paths.client('styleguide/project-assets') + ], + + // Custom SASS files to be included in styleguide, but not application. + sass: { + files: [ + project.paths.client('styleguide/project-assets/_project-specific.scss') ], - sass: { - files: [ - project.paths.client('styleguide/project-assets/_project-specific.scss') - ], - includePaths: [ - project.paths.base('node_modules'), - project.paths.client('styles') - ] - }, - styleguide_version: '0.0.1', - destination: project.paths.dist('styleguide'), - title: 'Caxy Front End Starter Kit Styleguide', - hide_pattern_status: true, - builder: project.paths.base('node_modules/kss-caxy-zaba-template/src'), - custom: [ - 'devnotes', - 'hidemarkup', - 'status', - 'patterntype', - 'containspatterns' + includePaths: [ + project.paths.base('node_modules'), + project.paths.client('styles') ] + }, + + // Use the kss-caxy-zaba-template as the builder. + builder: project.paths.base('node_modules/kss-caxy-zaba-template'), + + // Custom kss-node plugins. + custom: [ + 'devnotes', + 'hidemarkup', + 'status', + 'patterntype', + 'containspatterns' + ] }; module.exports = styleguideConfig; diff --git a/config/webpack.config.js b/config/webpack.config.js index b184bd6..6f29609 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -5,8 +5,6 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const project = require('./project.config'); const debug = require('debug')('app:config:webpack'); -const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); -const styleguideConfig = require('./styleguide.config'); // Helper variables to determine the environment. const __DEV__ = project.globals.__DEV__; @@ -67,10 +65,17 @@ webpackConfig.plugins = [ minify : { collapseWhitespace : true } - }), - new StyleguidePlugin(styleguideConfig) + }) ]; +// Add StyleguidePlugin if styleguide is enabled. +if (project.styleguide_enabled) { + const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); + const styleguideConfig = require('./styleguide.config'); + + webpackConfig.plugins.push(new StyleguidePlugin(styleguideConfig)); +} + // Ensure that the compiler exits on errors during testing so that // they do not get skipped and misreported. if (__TEST__ && !argv.watch) { diff --git a/package.json b/package.json index 6c05199..1486c69 100644 --- a/package.json +++ b/package.json @@ -74,9 +74,9 @@ "bugs": "https://github.com/caxy/front-end-starter-kit/issues", "homepage": "https://github.com/caxy/front-end-starter-kit#readme", "dependencies": { - "normalize-css": "^2.3.1", - "caxy-styleguide-webpack-plugin": "^0.0.2", - "kss-caxy-zaba-template": "^0.0.2" + "caxy-styleguide-webpack-plugin": "^0.0.4", + "kss-caxy-zaba-template": "^0.0.5", + "normalize-css": "^2.3.1" }, "devDependencies": { "babel-core": "^6.22.1", diff --git a/server/main.js b/server/main.js index a03ff8d..4b38e84 100644 --- a/server/main.js +++ b/server/main.js @@ -47,7 +47,7 @@ if (project.env === 'development') { app.use(express.static(project.paths.public())); // Serve the KSS styleguide as static assets. - app.use('/styleguide', express.static(project.paths.styleguide())); + app.use('/styleguide', express.static(project.paths.styleguideOutput())); // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal diff --git a/src/styleguide/project-assets/_project-specific.scss b/src/styleguide/project-assets/_project-specific.scss index afc48fa..4e1fcf0 100644 --- a/src/styleguide/project-assets/_project-specific.scss +++ b/src/styleguide/project-assets/_project-specific.scss @@ -1,4 +1,4 @@ -@import 'caxy-styleguide-core/src/styleguide/caxy-zaba-template/scss/_mixins-styleguide.scss'; +@import '~kss-caxy-zaba-template/scss/_mixins-styleguide.scss'; // ------------------------------------------------------------------------------ // Project Specific Settings diff --git a/src/styleguide/project-assets/homepage.md b/src/styleguide/project-assets/homepage.md index b8a74c8..c710090 100644 --- a/src/styleguide/project-assets/homepage.md +++ b/src/styleguide/project-assets/homepage.md @@ -1,4 +1,4 @@ -# Welcome to the Caxy Boilerplate Style Guide +# Welcome to the Caxy Front End Starter Kit Style Guide A record of patterns and components will be maintained here as they are added to the style guide, grouped by version number. diff --git a/yarn.lock b/yarn.lock index f1d8472..b139cff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -779,23 +779,9 @@ caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" -caxy-styleguide-core@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/caxy-styleguide-core/-/caxy-styleguide-core-0.0.2.tgz#07924902bc89e7a0eb446d447e6a38f5eb73b81d" - dependencies: - debug "^2.6.0" - fs-extra "^2.0.0" - kss "^3.0.0-beta.17" - node-sass "^4.3.0" - normalize-css "^2.3.1" - path "^0.12.7" - -caxy-styleguide-webpack-plugin@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.2.tgz#61c7dbb2d2709e7acf6ad25bc8d0255ab975f228" - dependencies: - caxy-styleguide-core "^0.0.2" - kss "^3.0.0-beta.17" +caxy-styleguide-webpack-plugin@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/caxy-styleguide-webpack-plugin/-/caxy-styleguide-webpack-plugin-0.0.4.tgz#c54ff39099ed8094a21cf53ad1fc6094e8ebc9ce" center-align@^0.1.1: version "0.1.3" @@ -2394,12 +2380,11 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -kss-caxy-zaba-template@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.2.tgz#b466d5ae9cc751e529704012e45ced31a9dea264" +kss-caxy-zaba-template@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/kss-caxy-zaba-template/-/kss-caxy-zaba-template-0.0.5.tgz#6d704cbab4a5c1758eea5213ba1945386ea45101" dependencies: fs-extra "^2.0.0" - kss "^3.0.0-beta.17" node-sass "^4.3.0" path "^0.12.7" From 333a0f5f16bfb2bd1f0725dda7ff3fdeb2c049e9 Mon Sep 17 00:00:00 2001 From: Josh Schroeder Date: Tue, 7 Feb 2017 11:48:42 -0600 Subject: [PATCH 14/25] Yarn upgrade --- yarn.lock | 340 ++++++++++++++++++++++++++---------------------------- 1 file changed, 165 insertions(+), 175 deletions(-) diff --git a/yarn.lock b/yarn.lock index b139cff..63c3b43 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,14 +19,14 @@ acorn-jsx@^3.0.0: dependencies: acorn "^3.0.4" +acorn@4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" + acorn@^3.0.0, acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" -acorn@^4.0.1: - version "4.0.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" - ajv-keywords@^1.0.0: version "1.5.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" @@ -63,8 +63,8 @@ ansi-html@0.0.6: resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.6.tgz#bda8e33dd2ee1c20f54c08eb405713cbfc0ed80e" ansi-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" ansi-styles@^2.2.1: version "2.2.1" @@ -179,14 +179,14 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" autoprefixer@^6.3.1: - version "6.6.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.6.1.tgz#11a4077abb4b313253ec2f6e1adb91ad84253519" + version "6.7.2" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.2.tgz#172ab07b998ae9b957530928a59a40be54a45023" dependencies: - browserslist "~1.5.1" - caniuse-db "^1.0.30000604" + browserslist "^1.7.1" + caniuse-db "^1.0.30000618" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^5.2.8" + postcss "^5.2.11" postcss-value-parser "^3.2.3" aws-sign2@~0.6.0: @@ -194,8 +194,8 @@ aws-sign2@~0.6.0: resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" aws4@^1.2.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" babel-code-frame@^6.11.0, babel-code-frame@^6.16.0, babel-code-frame@^6.22.0: version "6.22.0" @@ -628,8 +628,8 @@ base64-js@^1.0.2: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" bcrypt-pbkdf@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" dependencies: tweetnacl "^0.14.3" @@ -695,11 +695,12 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -browserslist@^1.0.1, browserslist@^1.5.2, browserslist@~1.5.1: - version "1.5.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.5.2.tgz#1c82fde0ee8693e6d15c49b7bff209dc06298c56" +browserslist@^1.0.1, browserslist@^1.5.2, browserslist@^1.7.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.1.tgz#cc9bd193979a2a4b09fdb3df6003fefe48ccefe1" dependencies: - caniuse-db "^1.0.30000604" + caniuse-db "^1.0.30000617" + electron-to-chromium "^1.2.1" buffer-shims@^1.0.0: version "1.0.0" @@ -762,18 +763,17 @@ camelcase@^3.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" caniuse-api@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.2.tgz#8f393c682f661c0a997b77bba6e826483fb3600e" + version "1.5.3" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.3.tgz#5018e674b51c393e4d50614275dc017e27c4a2a2" dependencies: browserslist "^1.0.1" caniuse-db "^1.0.30000346" lodash.memoize "^4.1.0" lodash.uniq "^4.3.0" - shelljs "^0.7.0" -caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000604: - version "1.0.30000607" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000607.tgz#f9d5b542f30d064c305544ff8938b217c67b88e9" +caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000617, caniuse-db@^1.0.30000618: + version "1.0.30000622" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000622.tgz#9d9690b577384990a58e33ebb903a14da735e5fd" caseless@~0.11.0: version "0.11.0" @@ -825,12 +825,11 @@ clap@^1.0.9: dependencies: chalk "^1.1.3" -clean-css@3.4.x: - version "3.4.23" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.23.tgz#604fbbca24c12feb59b02f00b84f1fb7ded6d001" +clean-css@4.0.x: + version "4.0.5" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.0.5.tgz#6a48c30dad03ebe425d209fc282baa53d36c92ca" dependencies: - commander "2.8.x" - source-map "0.4.x" + source-map "0.5.x" cli-cursor@^1.0.1: version "1.0.2" @@ -877,8 +876,8 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" color-convert@^1.3.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.8.2.tgz#be868184d7c8631766d54e7078e2672d7c7e3339" + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" dependencies: color-name "^1.1.1" @@ -918,12 +917,6 @@ combined-stream@^1.0.5, combined-stream@~1.0.5: dependencies: delayed-stream "~1.0.0" -commander@2.8.x: - version "2.8.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" - dependencies: - graceful-readlink ">= 1.0.0" - commander@2.9.x, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" @@ -990,9 +983,9 @@ constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" -content-disposition@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.1.tgz#87476c6a67c8daa87e32e87616df883ba7fb071b" +content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" content-type@~1.0.2: version "1.0.2" @@ -1142,9 +1135,9 @@ cssesc@^0.1.0: postcss-value-parser "^3.2.3" postcss-zindex "^2.0.1" -csso@~2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-2.2.1.tgz#51fbb5347e50e81e6ed51668a48490ae6fe2afe2" +csso@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.1.tgz#4f8d91a156f2f1c2aebb40b8fb1b5eb83d94d3b9" dependencies: clap "^1.0.9" source-map "^0.5.3" @@ -1311,6 +1304,10 @@ ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" +electron-to-chromium@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.2.2.tgz#e41bc9488c88e3cfa1e94bde28e8420d7d47c47c" + emojis-list@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" @@ -1431,16 +1428,16 @@ eslint-plugin-babel@^4.0.1: resolved "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-4.0.1.tgz#77de74dabd67a6bef3b16bf258f5804e971e7349" eslint-plugin-promise@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.4.0.tgz#6ba9048c2df57be77d036e0c68918bc9b4fc4195" + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.4.1.tgz#6911a9010bf84e17d82e19e0ab0f80ab3ad6db4c" eslint-plugin-standard@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-2.0.1.tgz#3589699ff9c917f2c25f76a916687f641c369ff3" eslint@^3.14.0: - version "3.14.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.14.0.tgz#2c617e5f782fda5cbee5bc8be7ef5053af8e63a3" + version "3.15.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.15.0.tgz#bdcc6a6c5ffe08160e7b93c066695362a91e30f2" dependencies: babel-code-frame "^6.16.0" chalk "^1.1.3" @@ -1448,7 +1445,7 @@ eslint@^3.14.0: debug "^2.1.1" doctrine "^1.2.2" escope "^3.6.0" - espree "^3.3.1" + espree "^3.4.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" @@ -1477,17 +1474,21 @@ eslint@^3.14.0: text-table "~0.2.0" user-home "^2.0.0" -espree@^3.3.1: - version "3.3.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.3.2.tgz#dbf3fadeb4ecb4d4778303e50103b3d36c88b89c" +espree@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.0.tgz#41656fa5628e042878025ef467e78f125cb86e1d" dependencies: - acorn "^4.0.1" + acorn "4.0.4" acorn-jsx "^3.0.0" esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" +esprima@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + esrecurse@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" @@ -1551,12 +1552,12 @@ expand-range@^1.8.1: fill-range "^2.1.0" express@^4.14.0: - version "4.14.0" - resolved "https://registry.yarnpkg.com/express/-/express-4.14.0.tgz#c1ee3f42cdc891fb3dc650a8922d51ec847d0d66" + version "4.14.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.14.1.tgz#646c237f766f148c2120aff073817b9e4d7e0d33" dependencies: accepts "~1.3.3" array-flatten "1.1.1" - content-disposition "0.5.1" + content-disposition "0.5.2" content-type "~1.0.2" cookie "0.3.1" cookie-signature "1.0.6" @@ -1565,19 +1566,19 @@ express@^4.14.0: encodeurl "~1.0.1" escape-html "~1.0.3" etag "~1.7.0" - finalhandler "0.5.0" + finalhandler "0.5.1" fresh "0.3.0" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" parseurl "~1.3.1" path-to-regexp "0.1.7" - proxy-addr "~1.1.2" + proxy-addr "~1.1.3" qs "6.2.0" range-parser "~1.2.0" - send "0.14.1" - serve-static "~1.11.1" - type-is "~1.6.13" + send "0.14.2" + serve-static "~1.11.2" + type-is "~1.6.14" utils-merge "1.0.0" vary "~1.1.0" @@ -1645,14 +1646,14 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -finalhandler@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7" +finalhandler@0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.1.tgz#2c400d8d4530935bc232549c5fa385ec07de6fcd" dependencies: debug "~2.2.0" escape-html "~1.0.3" on-finished "~2.3.0" - statuses "~1.3.0" + statuses "~1.3.1" unpipe "~1.0.0" find-cache-dir@^0.1.1: @@ -1931,8 +1932,8 @@ hawk@~3.1.3: sntp "1.x.x" he@1.1.x: - version "1.1.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.0.tgz#29319d49beec13a9b1f3c4f9b2a6dde4859bb2a7" + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" hoek@2.x.x: version "2.16.3" @@ -1946,8 +1947,8 @@ home-or-tmp@^2.0.0: os-tmpdir "^1.0.1" hosted-git-info@^2.1.4: - version "2.1.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" + version "2.2.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.2.0.tgz#7a0d097863d886c0fabbdcd37bf1758d8becf8a5" html-comment-regex@^1.1.0: version "1.1.1" @@ -1958,11 +1959,11 @@ html-entities@^1.2.0: resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.0.tgz#41948caf85ce82fed36e4e6a0ed371a6664379e2" html-minifier@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.2.3.tgz#d2ff536e24d95726c332493d8f77d84dbed85372" + version "3.3.0" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.3.0.tgz#a9b5b8eda501362d4c5699db02a8dc72013d1fab" dependencies: camel-case "3.0.x" - clean-css "3.4.x" + clean-css "4.0.x" commander "2.9.x" he "1.1.x" ncname "1.0.x" @@ -1971,8 +1972,8 @@ html-minifier@^3.2.3: uglify-js "2.7.x" html-webpack-plugin@^2.26.0: - version "2.26.0" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.26.0.tgz#ba97c8a66f912b85df80d2aeea65966c8bd9249e" + version "2.28.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.28.0.tgz#2e7863b57e5fd48fe263303e2ffc934c3064d009" dependencies: bluebird "^3.4.7" html-minifier "^3.2.3" @@ -1990,7 +1991,7 @@ htmlparser2@~3.3.0: domutils "1.1" readable-stream "1.0" -http-errors@~1.5.0, http-errors@~1.5.1: +http-errors@~1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750" dependencies: @@ -2023,8 +2024,8 @@ ignore-by-default@^1.0.0: resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" ignore@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.0.tgz#8d88f03c3002a0ac52114db25d2c673b0bf1e435" + version "3.2.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.2.tgz#1c51e1ef53bab6ddc15db4d9ac4ec139eceb3410" imports-loader@^0.7.0: version "0.7.0" @@ -2066,14 +2067,14 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -inherits@2.0.1: +inherits@2, inherits@2.0.1, inherits@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" +inherits@2.0.3, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" @@ -2302,12 +2303,19 @@ js-base64@^2.1.9: resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" js-tokens@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.0.tgz#a2f2a969caae142fb3cd56228358c89366957bd1" + version "3.0.1" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" -js-yaml@^3.4.3, js-yaml@^3.5.1, js-yaml@~3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.6.1.tgz#6e5fe67d8b205ce4d22fad05b7781e8dadcc4b30" +js-yaml@^3.4.3, js-yaml@^3.5.1: + version "3.8.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.1.tgz#782ba50200be7b9e5a8537001b7804db3ad02628" + dependencies: + argparse "^1.0.7" + esprima "^3.1.1" + +js-yaml@~3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" dependencies: argparse "^1.0.7" esprima "^2.6.0" @@ -2504,10 +2512,6 @@ lodash.defaults@^3.1.2: lodash.assign "^3.0.0" lodash.restparam "^3.0.0" -lodash.indexof@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/lodash.indexof/-/lodash.indexof-4.0.5.tgz#53714adc2cddd6ed87638f893aa9b6c24e31ef3c" - lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -2601,10 +2605,8 @@ marked@^0.3.6: resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" math-expression-evaluator@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.14.tgz#39511771ed9602405fba9affff17eb4d2a3843ab" - dependencies: - lodash.indexof "^4.0.5" + version "1.2.16" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.16.tgz#b357fa1ca9faefb8e48d10c14ef2bcb2d9f0a7c9" media-typer@0.3.0: version "0.3.0" @@ -2669,15 +2671,15 @@ micromatch@^2.1.5: parse-glob "^3.0.4" regex-cache "^0.4.2" -"mime-db@>= 1.24.0 < 2", mime-db@~1.25.0: - version "1.25.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.25.0.tgz#c18dbd7c73a5dbf6f44a024dc0d165a1e7b1c392" +"mime-db@>= 1.24.0 < 2", mime-db@~1.26.0: + version "1.26.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff" mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.13, mime-types@~2.1.7: - version "2.1.13" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.13.tgz#e07aaa9c6c6b9a7ca3012c69003ad25a39e92a88" + version "2.1.14" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee" dependencies: - mime-db "~1.25.0" + mime-db "~1.26.0" mime@1.2.x: version "1.2.11" @@ -2720,8 +2722,8 @@ mute-stream@0.0.5: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" nan@^2.3.0, nan@^2.3.2: - version "2.5.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.0.tgz#aa8f1e34531d807e9e27755b234b4a6ec0c152a8" + version "2.5.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2" natural-compare@^1.4.0: version "1.4.0" @@ -2796,8 +2798,8 @@ node-libs-browser@^0.7.0: vm-browserify "0.0.4" node-pre-gyp@^0.6.29: - version "0.6.32" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz#fc452b376e7319b3d255f5f34853ef6fd8fe1fd5" + version "0.6.33" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.33.tgz#640ac55198f6a925972e0c16c4ac26a034d5ecc9" dependencies: mkdirp "~0.5.1" nopt "~3.0.6" @@ -2810,8 +2812,8 @@ node-pre-gyp@^0.6.29: tar-pack "~3.3.0" node-sass@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.3.0.tgz#d014f64595d77b26af99e9f7a7e74704d9976bda" + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.5.0.tgz#532e37bad0ce587348c831535dbc98ea4289508b" dependencies: async-foreach "^0.1.3" chalk "^1.1.1" @@ -2923,8 +2925,8 @@ object-assign@^3.0.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" object.omit@^2.0.0: version "2.0.1" @@ -2943,7 +2945,13 @@ on-headers@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" -once@^1.3.0, once@~1.3.0, once@~1.3.3: +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +once@~1.3.0, once@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" dependencies: @@ -3112,16 +3120,16 @@ postcss-calc@^5.2.0: reduce-css-calc "^1.2.6" postcss-colormin@^2.1.8: - version "2.2.1" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.1.tgz#dc5421b6ae6f779ef6bfd47352b94abe59d0316b" + version "2.2.2" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" dependencies: colormin "^1.0.5" postcss "^5.0.13" postcss-value-parser "^3.2.3" postcss-convert-values@^2.3.4: - version "2.6.0" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.0.tgz#08c6d06130fe58a91a21ff50829e1aad6a3a1acc" + version "2.6.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" dependencies: postcss "^5.0.11" postcss-value-parser "^3.1.2" @@ -3205,8 +3213,8 @@ postcss-merge-idents@^2.1.5: postcss-value-parser "^3.1.1" postcss-merge-longhand@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.1.tgz#ff59b5dec6d586ce2cea183138f55c5876fa9cdc" + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" dependencies: postcss "^5.0.4" @@ -3364,14 +3372,14 @@ postcss-zindex@^2.0.1: postcss "^5.0.4" uniqs "^2.0.0" -postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.8, postcss@^5.2.9: - version "5.2.10" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.10.tgz#b58b64e04f66f838b7bc7cb41f7dac168568a945" +postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.11, postcss@^5.2.9: + version "5.2.12" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.12.tgz#6a2b15e35dd65634441bb0961fa796904c7890e0" dependencies: chalk "^1.1.3" js-base64 "^2.1.9" source-map "^0.5.6" - supports-color "^3.1.2" + supports-color "^3.2.3" prelude-ls@~1.1.2: version "1.1.2" @@ -3393,8 +3401,8 @@ pretty-error@^2.0.2: utila "~0.4" private@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1" + version "0.1.7" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" process-nextick-args@~1.0.6: version "1.0.7" @@ -3408,7 +3416,7 @@ progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" -proxy-addr@~1.1.2: +proxy-addr@~1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.3.tgz#dc97502f5722e888467b3fa2297a7b1ff47df074" dependencies: @@ -3450,8 +3458,8 @@ qs@~6.3.0: resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" query-string@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.0.tgz#6f39ee0ce2f713b28a6517809b4a974a623fbb42" + version "4.3.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.1.tgz#54baada6713eafc92be75c47a731f2ebd09cd11d" dependencies: object-assign "^4.1.0" strict-uri-encode "^1.0.0" @@ -3787,24 +3795,6 @@ semver-diff@^2.0.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -send@0.14.1: - version "0.14.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a" - dependencies: - debug "~2.2.0" - depd "~1.1.0" - destroy "~1.0.4" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.7.0" - fresh "0.3.0" - http-errors "~1.5.0" - mime "1.3.4" - ms "0.7.1" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.3.0" - send@0.14.2: version "0.14.2" resolved "https://registry.yarnpkg.com/send/-/send-0.14.2.tgz#39b0438b3f510be5dc6f667a11f71689368cdeef" @@ -3823,7 +3813,7 @@ send@0.14.2: range-parser "~1.2.0" statuses "~1.3.1" -serve-static@~1.11.1: +serve-static@~1.11.2: version "1.11.2" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.2.tgz#2cf9889bd4435a320cc36895c9aa57bd662e6ac7" dependencies: @@ -3852,7 +3842,7 @@ sha.js@2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba" -shelljs@^0.7.0, shelljs@^0.7.5: +shelljs@^0.7.5: version "0.7.6" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.6.tgz#379cccfb56b91c8601e4793356eb5382924de9ad" dependencies: @@ -3888,26 +3878,26 @@ sort-keys@^1.0.0: dependencies: is-plain-obj "^1.0.0" -source-list-map@^0.1.4, source-list-map@~0.1.0, source-list-map@~0.1.7: +source-list-map@^0.1.4, source-list-map@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" source-map-support@^0.4.2: - version "0.4.10" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.10.tgz#d7b19038040a14c0837a18e630a196453952b378" + version "0.4.11" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322" dependencies: source-map "^0.5.3" -source-map@0.4.x, source-map@^0.4.4, source-map@~0.4.1: +source-map@0.5.x, source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3: + version "0.5.6" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" + +source-map@^0.4.4, source-map@~0.4.1: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" @@ -3933,8 +3923,8 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: - version "1.10.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0" + version "1.10.2" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.2.tgz#d5a804ce22695515638e798dbe23273de070a5fa" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -3947,7 +3937,7 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -"statuses@>= 1.3.1 < 2", statuses@~1.3.0, statuses@~1.3.1: +"statuses@>= 1.3.1 < 2", statuses@~1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" @@ -3971,8 +3961,8 @@ stream-combiner@~0.0.4: duplexer "~0.1.1" stream-http@^2.3.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.6.1.tgz#7d20fcdfebc16b16e4174e31dd94cd9c70f10e89" + version "2.6.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.6.3.tgz#4c3ddbf9635968ea2cfd4e48d43de5def2625ac3" dependencies: builtin-status-codes "^3.0.0" inherits "^2.0.1" @@ -4061,20 +4051,20 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -supports-color@^3.1.0, supports-color@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" +supports-color@^3.1.0, supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" dependencies: has-flag "^1.0.0" svgo@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.1.tgz#287320fed972cb097e72c2bb1685f96fe08f8034" + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" dependencies: coa "~1.0.1" colors "~1.1.2" - csso "~2.2.1" - js-yaml "~3.6.1" + csso "~2.3.1" + js-yaml "~3.7.0" mkdirp "~0.5.1" sax "~1.2.1" whet.extend "~0.9.9" @@ -4142,8 +4132,8 @@ to-fast-properties@^1.0.1: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" toposort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.0.tgz#b66cf385a1a8a8e68e45b8259e7f55875e8b06ef" + version "1.0.2" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.2.tgz#be1de72431320fcefe35a7b539c1c336cbcfd32c" touch@1.0.0: version "1.0.0" @@ -4191,7 +4181,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@~1.6.13: +type-is@~1.6.14: version "1.6.14" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.14.tgz#e219639c17ded1ca0789092dd54a03826b817cb2" dependencies: @@ -4356,8 +4346,8 @@ webpack-core@~0.6.9: source-map "~0.4.1" webpack-dev-middleware@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.9.0.tgz#a1c67a3dfd8a5c5d62740aa0babe61758b4c84aa" + version "1.10.0" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.10.0.tgz#7d5be2651e692fddfafd8aaed177c16ff51f0eb8" dependencies: memory-fs "~0.4.1" mime "^1.3.4" @@ -4365,8 +4355,8 @@ webpack-dev-middleware@^1.9.0: range-parser "^1.0.3" webpack-hot-middleware@^2.15.0: - version "2.15.0" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.15.0.tgz#71995af7c0025f109df482f86f1e10379526d026" + version "2.16.1" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.16.1.tgz#ae209bcab2b9b672f1b0fdcf6c5c2a680ff118e1" dependencies: ansi-html "0.0.6" html-entities "^1.2.0" @@ -4374,10 +4364,10 @@ webpack-hot-middleware@^2.15.0: strip-ansi "^3.0.0" webpack-sources@^0.1.0: - version "0.1.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.3.tgz#15ce2fb79d0a1da727444ba7c757bf164294f310" + version "0.1.4" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.4.tgz#ccc2c817e08e5fa393239412690bb481821393cd" dependencies: - source-list-map "~0.1.0" + source-list-map "~0.1.7" source-map "~0.5.3" webpack@^1.14.0: From de9544a36ae867e92ce8625562bd3bcc683c4520 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Fri, 10 Feb 2017 11:58:03 -0600 Subject: [PATCH 15/25] Moves styleguide custom options to project config file. --- config/project.config.js | 7 +++++++ config/styleguide.config.js | 12 +++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index adc8af3..592fc3b 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -28,6 +28,13 @@ const config = { styleguide_version : '0.0.1', styleguide_title : 'Caxy Front End Starter Kit Style Guide', styleguide_hide_pattern_status: true, + styleguide_custom_options: [ + 'hidemarkup', + 'patterntype', + 'containspatterns', + 'devnotes', + 'status' + ], // ---------------------------------- // Server Configuration diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 2574b7d..0508173 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -20,7 +20,7 @@ const styleguideConfig = { project.paths.client('styleguide/project-assets') ], - // Custom SASS files to be included in styleguide, but not application. + // Custom SASS files to be included in styleguide, but not the project/application. sass: { files: [ project.paths.client('styleguide/project-assets/_project-specific.scss') @@ -34,14 +34,8 @@ const styleguideConfig = { // Use the kss-caxy-zaba-template as the builder. builder: project.paths.base('node_modules/kss-caxy-zaba-template'), - // Custom kss-node plugins. - custom: [ - 'devnotes', - 'hidemarkup', - 'status', - 'patterntype', - 'containspatterns' - ] + // Custom kss-node options. + custom: project.styleguide_custom_options }; module.exports = styleguideConfig; From 5012819239ed40995b17223f85b549fb272ceb18 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Fri, 10 Feb 2017 12:17:59 -0600 Subject: [PATCH 16/25] Updates styleguide config option documentation. --- config/project.config.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/config/project.config.js b/config/project.config.js index 592fc3b..1c18567 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -24,6 +24,11 @@ const config = { // ---------------------------------- // Styleguide Configuration // ---------------------------------- + // styleguide_custom_options : Enables custom variables to be inserted and populated in + // the styleguide on a per-pattern basis. + // styleguide_hide_pattern_status : Global value to enable or disable status filtering. + // Setting to `false` triggers the display of status filters on every page. Needs + // `status` to be present in styleguide_custom_options in order to render. styleguide_enabled : true, styleguide_version : '0.0.1', styleguide_title : 'Caxy Front End Starter Kit Style Guide', From 638d666b2df9007c27da0142f74751c95cfc0581 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Fri, 10 Feb 2017 12:30:35 -0600 Subject: [PATCH 17/25] Adds styleguide README from the boilerplate repo, with some minor revision. --- src/styleguide/README.md | 166 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 165 insertions(+), 1 deletion(-) diff --git a/src/styleguide/README.md b/src/styleguide/README.md index 4f56a55..d449827 100644 --- a/src/styleguide/README.md +++ b/src/styleguide/README.md @@ -1 +1,165 @@ -Assets used in the styleguide that are not used in the application +# KSS Styleguide with Caxy's Zaba Theme Builder + +TODO: How to Generate Styleguide and Viewing the Styleguide sections +likely need revision. + +This styleguide setup and builder has the following features: + +- Color Swatches +- Pattern Markers + + +## How to Generate Styleguide + +**From within the /src/styleguide folder** + +Run `npm install` to get up and running. You can then run the following +to build your styleguide: + +`npm run generate-styleguide` + +This will compile the styleguide's CSS and create the styleguide pages +based on comments found in files in the `/src/styles/` folder and the +markup HTML found in the `src/styleguide/pattern-markup/` folder. + + +## Viewing the Styleguide + +While in the src/styleguide/ folder, running `npm start` will start a +local server to aid in review, which is recommended. This will get +around quirks that can crop up with font rendering outside of a server +setting. + + +## Populating and Editing the Styleguide + +KSS uses a slight variation of markdown to populate Handlebars templates +and create your styleguide. This markdown should be included in relevant +CSS files, and provides inline documentation of your CSS as a nice +byproduct. Detailed examples can be found in the +[KSS Node project repo](https://github.com/kss-node/kss-node). + +If you find your example markup extends beyond four or five lines, it's +best to move it into a separate HTML file that KSS-node will reference, +rather than kept inside your Sass or CSS file. KSS-node crawls all +folders inside the styles folder, so if it finds any template names +referenced in your CSS they will be included in their correct position. + +Also, if you don't want your markdown to appear in your final compiled +CSS (and ideally you shouldn't), remember to use `//` to comment rather +than `/* */` so that the markdown will be omitted. + + +### Modifying the Styleguide's Homepage + +The styleguide's index page is rendered from the markdown file +`homepage.md` in the `src/styleguide/project-assets` folder. + + +### Using Pattern Markers + +Caxy's Zaba theme builder adds two pattern markers, defined with custom +kss values: + +- `PatternType` : Pattern Type +- `Status` : Pattern Status (not active by default) + +Marker values should be lowercase and are added to your markup in the +following way: + +~~~~ +// Pattern Name +// +// Pattern description... +// +// PatternType: atom +// +// Status: ready +// +// Styleguide 3.1.1 +~~~~ + + +#### Pattern Type + +Pattern types follow [Brad Frost's Atomic Design methodology](http://bradfrost.com/blog/post/atomic-web-design/). + +Use of this marker is entirely optional. If no `PatternType` value is +found, no marker displays. + +To utilize these markers, the following values are available: + +- `atom` +- `molecule` +- `organism` +- `template` +- `page` + +#### Pattern Status + +Because not all styleguide projects will be iterative, pattern status +markers are not active by default. For situations where patterns will +need some kind of indicator of their production-readiness, these status +markers can be activated. + +To activate pattern status markers for your project, set +`styleguide_hide_pattern_status` to `false` in the `./project.config.js` file. + +This marker has three values available: + +- `development` : In Development (default) +- `review` : In Review +- `ready` : Production Ready + +Pattern status markers are aggressively applied in an effort to +encourage mindful documentation. If no status is set for a given +pattern, it will automatically display as In Development. + + +### Using Color Swatches + +To populate your project's color swatches, do the following: + +#### Step 1: Create Color Sets + +Sets of colors should be grouped as follows: + +~~~~ +$color-set-1 ( + primary: $color-primary, + secondary: $color-secondary +); +~~~~ + +These should all then be added to an object named `$color-sets`: + +~~~~ +$color-sets: ( + "color-set-1": $color-set-1, + "color-set-2": $color-set-2, +); +~~~~ + +#### Step 2: Create Swatch Markup + +Swatches will be created for the styleguide via a mixin with the +following class naming convention: + +`.[color set name]--[variable name]` + +So a color in the $color-set-1 set above with the name `primary` will +end up with the class name `.color-set-1--primary`. Your markup would +then look like this: + +~~~~ +
+

Color Set 1

+
    +
  • +
  • +
+
+~~~~ + +The mixin will add the hex and rgba values to the page for reference for +you at this point. \ No newline at end of file From 51201f250d1b765d14aa07aaec887f98d5141462 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Fri, 10 Feb 2017 13:12:55 -0600 Subject: [PATCH 18/25] Replaces theme-specific README documentation with more general documentation. --- src/styleguide/README.md | 181 +++++++++------------------------------ 1 file changed, 42 insertions(+), 139 deletions(-) diff --git a/src/styleguide/README.md b/src/styleguide/README.md index d449827..c2b3157 100644 --- a/src/styleguide/README.md +++ b/src/styleguide/README.md @@ -1,165 +1,68 @@ -# KSS Styleguide with Caxy's Zaba Theme Builder +# KSS Styleguide -TODO: How to Generate Styleguide and Viewing the Styleguide sections -likely need revision. +## Folder Structure -This styleguide setup and builder has the following features: +The styleguide needs access to three sets of resources: -- Color Swatches -- Pattern Markers +* Pattern Markup +* Project Assets +* KSS Builder +### Pattern Markup -## How to Generate Styleguide - -**From within the /src/styleguide folder** - -Run `npm install` to get up and running. You can then run the following -to build your styleguide: - -`npm run generate-styleguide` - -This will compile the styleguide's CSS and create the styleguide pages -based on comments found in files in the `/src/styles/` folder and the -markup HTML found in the `src/styleguide/pattern-markup/` folder. - - -## Viewing the Styleguide - -While in the src/styleguide/ folder, running `npm start` will start a -local server to aid in review, which is recommended. This will get -around quirks that can crop up with font rendering outside of a server -setting. - - -## Populating and Editing the Styleguide - -KSS uses a slight variation of markdown to populate Handlebars templates -and create your styleguide. This markdown should be included in relevant -CSS files, and provides inline documentation of your CSS as a nice -byproduct. Detailed examples can be found in the -[KSS Node project repo](https://github.com/kss-node/kss-node). - -If you find your example markup extends beyond four or five lines, it's -best to move it into a separate HTML file that KSS-node will reference, -rather than kept inside your Sass or CSS file. KSS-node crawls all -folders inside the styles folder, so if it finds any template names -referenced in your CSS they will be included in their correct position. - -Also, if you don't want your markdown to appear in your final compiled -CSS (and ideally you shouldn't), remember to use `//` to comment rather -than `/* */` so that the markdown will be omitted. - - -### Modifying the Styleguide's Homepage - -The styleguide's index page is rendered from the markdown file -`homepage.md` in the `src/styleguide/project-assets` folder. - - -### Using Pattern Markers - -Caxy's Zaba theme builder adds two pattern markers, defined with custom -kss values: - -- `PatternType` : Pattern Type -- `Status` : Pattern Status (not active by default) - -Marker values should be lowercase and are added to your markup in the -following way: +KSS-node crawls through this folder to find any markup referenced in a +project's SCSS files. For example: ~~~~ // Pattern Name // // Pattern description... // -// PatternType: atom -// -// Status: ready +// Markup: Example Span // -// Styleguide 3.1.1 +// Styleguide 1.2.3 ~~~~ +In certain circumstances, this markup can become unwieldy to include in +this way. When markup becomes longer than a couple of lines, it's best +to move it into a separate markup file and reference it like this +instead: -#### Pattern Type - -Pattern types follow [Brad Frost's Atomic Design methodology](http://bradfrost.com/blog/post/atomic-web-design/). - -Use of this marker is entirely optional. If no `PatternType` value is -found, no marker displays. - -To utilize these markers, the following values are available: - -- `atom` -- `molecule` -- `organism` -- `template` -- `page` - -#### Pattern Status - -Because not all styleguide projects will be iterative, pattern status -markers are not active by default. For situations where patterns will -need some kind of indicator of their production-readiness, these status -markers can be activated. - -To activate pattern status markers for your project, set -`styleguide_hide_pattern_status` to `false` in the `./project.config.js` file. - -This marker has three values available: - -- `development` : In Development (default) -- `review` : In Review -- `ready` : Production Ready - -Pattern status markers are aggressively applied in an effort to -encourage mindful documentation. If no status is set for a given -pattern, it will automatically display as In Development. - - -### Using Color Swatches - -To populate your project's color swatches, do the following: +~~~~ +// Pattern Name +// +// Pattern description... +// +// Markup: example-span.html +// +// Styleguide 1.2.3 +~~~~ -#### Step 1: Create Color Sets +As long as the `example-span.html` file is found somewhere in the +`pattern-markup` folder, the KSS builder will pull it in to the compiled +styleguide in the appropriate place. -Sets of colors should be grouped as follows: -~~~~ -$color-set-1 ( - primary: $color-primary, - secondary: $color-secondary -); -~~~~ +### Project Assets -These should all then be added to an object named `$color-sets`: +While effort has been taken to separate project assets and code from +assets that are solely concerned with styleguide rendering and population, +there are some minor needs to project assets to be made available to the +styleguide: *Breakpoint definition* and *Color Swatch definition*. -~~~~ -$color-sets: ( - "color-set-1": $color-set-1, - "color-set-2": $color-set-2, -); -~~~~ +There may be other use cases that can be considered as needed, and the +following question should be used to asses them: -#### Step 2: Create Swatch Markup +Would this SCSS/CSS ever exist in the project's Production state? -Swatches will be created for the styleguide via a mixin with the -following class naming convention: +If the answer is "no," then the SCSS/CSS belongs in this folder. -`.[color set name]--[variable name]` +Use caution, however- the entire point of a living styleguide is to have +an accurate representation of the final production code. To add in +overrides or special-case considerations flies in the face of that goal. -So a color in the $color-set-1 set above with the name `primary` will -end up with the class name `.color-set-1--primary`. Your markup would -then look like this: -~~~~ -
-

Color Set 1

-
    -
  • -
  • -
-
-~~~~ +### KSS Builder -The mixin will add the hex and rgba values to the page for reference for -you at this point. \ No newline at end of file +Any KSS Node build can be used, but some kind of template is needed for +KSS to populate and create the final styleguide files with. \ No newline at end of file From fa1a91daa6d840c37e6e9a0a992f670fe2fc75ca Mon Sep 17 00:00:00 2001 From: beckkramer Date: Mon, 13 Feb 2017 12:02:09 -0600 Subject: [PATCH 19/25] Further clarifies KSS-specific markup requirements. --- src/styleguide/README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/styleguide/README.md b/src/styleguide/README.md index c2b3157..b122ba5 100644 --- a/src/styleguide/README.md +++ b/src/styleguide/README.md @@ -10,7 +10,7 @@ The styleguide needs access to three sets of resources: ### Pattern Markup -KSS-node crawls through this folder to find any markup referenced in a +KSS-node crawls through assets to find any markup referenced in a project's SCSS files. For example: ~~~~ @@ -38,9 +38,13 @@ instead: // Styleguide 1.2.3 ~~~~ -As long as the `example-span.html` file is found somewhere in the -`pattern-markup` folder, the KSS builder will pull it in to the compiled -styleguide in the appropriate place. +KSS allows you to identify certain folders as `source` folders for +styleguide documentation. This project has the `pattern-markup` folder +set as a source by default. + +As long as the `example-span.html` referenced above file is found +somewhere in one of the `source` folders, the KSS builder will pull it +in to the compiled styleguide in the appropriate place. ### Project Assets From 9e68dc284dc903bbf471fa740dec0919737ecbd8 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Mon, 13 Feb 2017 12:23:22 -0600 Subject: [PATCH 20/25] Moves example color file to utilities folder and updates paths. --- src/styleguide/project-assets/_project-specific.scss | 2 +- src/styles/core.scss | 2 +- src/styles/{ => utilities}/example-colors.scss | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename src/styles/{ => utilities}/example-colors.scss (100%) diff --git a/src/styleguide/project-assets/_project-specific.scss b/src/styleguide/project-assets/_project-specific.scss index 4e1fcf0..09a6bce 100644 --- a/src/styleguide/project-assets/_project-specific.scss +++ b/src/styleguide/project-assets/_project-specific.scss @@ -67,7 +67,7 @@ $example-screen-xxlarge: 100rem; // ------------------------------------------------------------------------------ // Path to either individual files or folders for your project's color variables -@import '../../styles/example-colors.scss'; +@import '../../styles/utilities/example-colors'; // The $color-sets object is required if working swatches are needed. It can either // remain here, or be pulled into your project's color variable file. diff --git a/src/styles/core.scss b/src/styles/core.scss index 898d2af..1014a17 100644 --- a/src/styles/core.scss +++ b/src/styles/core.scss @@ -1,3 +1,3 @@ @import '~normalize-css/normalize.css'; -@import './example-colors'; +@import 'utilities/example-colors'; diff --git a/src/styles/example-colors.scss b/src/styles/utilities/example-colors.scss similarity index 100% rename from src/styles/example-colors.scss rename to src/styles/utilities/example-colors.scss From 7e64c2b994c1e8854345f8b2557a9980266aa560 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Mon, 13 Feb 2017 14:24:08 -0600 Subject: [PATCH 21/25] Removes styleguide-specific config from project config. --- config/project.config.js | 8 ------- config/styleguide.config.js | 45 ++++++++++++++++++++++++++++++++++--- 2 files changed, 42 insertions(+), 11 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index fe67091..792c294 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -32,14 +32,6 @@ const config = { styleguide_enabled : true, styleguide_version : '0.0.1', styleguide_title : 'Caxy Front End Starter Kit Style Guide', - styleguide_hide_pattern_status: true, - styleguide_custom_options: [ - 'hidemarkup', - 'patterntype', - 'containspatterns', - 'devnotes', - 'status' - ], // ---------------------------------- // Server Configuration diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 0508173..728e804 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -5,12 +5,41 @@ const project = require('../config/project.config'); * * This config is passed into StyleguidePlugin (caxy-styleguide-webpack-plugin) in webpack.config.js * when the styleguide is enabled. + * + * + * Custom KSS Node Options + * + * All of these are optional, but they provide hooks between KSS and the current + * handlebars approach that allow for extra information to be displayed. + * + * All of these are benign (that is, if you don't use them, nothing happens) aside + * from `status`; `status` defaults to 'In Development' and as such needs planning + * to accommodate effectively. + * + * hidemarkup + * Not all patterns need to be accompanied by markup. In these cases, enabling this and + * adding hidemarkup: true to a given KSS markup section will hide that section's markup. + * + * patterntype + * Displays the atomic design pattern type of the current pattern. + * + * containspatterns + * If the current pattern contains other patterns defined in the styleguide, listing them + * here can be helpful (can include links). + * + * devnotes + * In cases where clients need to use the styleguide for use reference and devs need + * to reference it for implementation, devnotes can be used to split development-specific + * notes into a different area. + * + * status + * For projects that will require ongoing work or continuous integration, it may be useful + * to display the status of a given pattern. */ const styleguideConfig = { // Project-specific settings pulled from project.config.js. styleguide_version: project.styleguide_version, title: project.styleguide_title, - hide_pattern_status: project.styleguide_hide_pattern_status, destination: project.paths.styleguideOutput(), // Source directories for KSS documentation. @@ -34,8 +63,18 @@ const styleguideConfig = { // Use the kss-caxy-zaba-template as the builder. builder: project.paths.base('node_modules/kss-caxy-zaba-template'), - // Custom kss-node options. - custom: project.styleguide_custom_options + // Pattern Status filters + // Pattern status filters will be made available when this is set to false. + hide_pattern_status: true, + + // KSS Custom Options + custom: [ + 'hidemarkup', + 'patterntype', + 'containspatterns', + 'devnotes', + 'status' + ] }; module.exports = styleguideConfig; From 6916cc8e3a2a1e12f321b15267e7c4f5e1ed6db5 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Mon, 13 Feb 2017 14:43:26 -0600 Subject: [PATCH 22/25] Updates project and styleguide config files. Styleguide config now include additional information about custom options. Project config file has been altered to use an object for styleguide config, and moved further down the file to pull in path settings. --- config/project.config.js | 42 ++++++++++++++++++++++++++----------- config/styleguide.config.js | 28 +++++++------------------ 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index 792c294..0dabe14 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -21,18 +21,6 @@ const config = { dir_test : 'tests', dir_styleguide : 'dist/styleguide', - // ---------------------------------- - // Styleguide Configuration - // ---------------------------------- - // styleguide_custom_options : Enables custom variables to be inserted and populated in - // the styleguide on a per-pattern basis. - // styleguide_hide_pattern_status : Global value to enable or disable status filtering. - // Setting to `false` triggers the display of status filters on every page. Needs - // `status` to be present in styleguide_custom_options in order to render. - styleguide_enabled : true, - styleguide_version : '0.0.1', - styleguide_title : 'Caxy Front End Starter Kit Style Guide', - // ---------------------------------- // Server Configuration // ---------------------------------- @@ -133,6 +121,36 @@ config.paths = { styleguideOutput : base.bind(null, config.dir_styleguide) }; +// ---------------------------------- +// Styleguide Configuration +// ---------------------------------- +config.styleguide = { + + enabled : true, + version : '0.0.1', + title : 'Caxy Front End Starter Kit Style Guide', + + // Source directories for KSS documentation. + source: [ + config.paths.client('styles'), + config.paths.client('styleguide/pattern-markup'), + config.paths.client('styleguide/project-assets') + ], + + builder: config.paths.base('node_modules/kss-caxy-zaba-template'), + + // Custom SASS files to be included in styleguide, but not the project/application. + sass: { + files: [ + config.paths.client('styleguide/project-assets/_project-specific.scss') + ], + includePaths: [ + config.paths.base('node_modules'), + config.paths.client('styles') + ] + } +}; + // ======================================================== // Environment Configuration // ======================================================== diff --git a/config/styleguide.config.js b/config/styleguide.config.js index 728e804..6b3bcfa 100644 --- a/config/styleguide.config.js +++ b/config/styleguide.config.js @@ -7,7 +7,7 @@ const project = require('../config/project.config'); * when the styleguide is enabled. * * - * Custom KSS Node Options + * KSS Custom Options * * All of these are optional, but they provide hooks between KSS and the current * handlebars approach that allow for extra information to be displayed. @@ -38,33 +38,19 @@ const project = require('../config/project.config'); */ const styleguideConfig = { // Project-specific settings pulled from project.config.js. - styleguide_version: project.styleguide_version, - title: project.styleguide_title, + styleguide_version: project.styleguide.version, + title: project.styleguide.title, destination: project.paths.styleguideOutput(), // Source directories for KSS documentation. - source: [ - project.paths.client('styles'), - project.paths.client('styleguide/pattern-markup'), - project.paths.client('styleguide/project-assets') - ], + source: project.styleguide.source, // Custom SASS files to be included in styleguide, but not the project/application. - sass: { - files: [ - project.paths.client('styleguide/project-assets/_project-specific.scss') - ], - includePaths: [ - project.paths.base('node_modules'), - project.paths.client('styles') - ] - }, + sass: project.styleguide.sass, - // Use the kss-caxy-zaba-template as the builder. - builder: project.paths.base('node_modules/kss-caxy-zaba-template'), + builder: project.styleguide.builder, - // Pattern Status filters - // Pattern status filters will be made available when this is set to false. + // Pattern Status filters will be made available when this is set to false. hide_pattern_status: true, // KSS Custom Options From bcbee74c537cca715dbf45b7ce2229424bd72da8 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Mon, 13 Feb 2017 15:45:38 -0600 Subject: [PATCH 23/25] Fixes typo in styleguide setting name. --- config/webpack.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/webpack.config.js b/config/webpack.config.js index 6f29609..b5a02dc 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -69,7 +69,7 @@ webpackConfig.plugins = [ ]; // Add StyleguidePlugin if styleguide is enabled. -if (project.styleguide_enabled) { +if (project.styleguide.enabled) { const StyleguidePlugin = require('caxy-styleguide-webpack-plugin'); const styleguideConfig = require('./styleguide.config'); From 8818633515f14c896f115ead01d745960a43b473 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Tue, 14 Feb 2017 17:14:41 -0600 Subject: [PATCH 24/25] Adds and populates styleguide section in main README. --- README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index bf5a010..bb9ec3f 100644 --- a/README.md +++ b/README.md @@ -177,3 +177,13 @@ Babel is configured to use [babel-plugin-transform-runtime](https://www.npmjs.co ## Contributing TODO: GENERAL INFO ON CONTRIBUTING TO THIS IF WE HAVE GUIDELINES OR OTHER THINGS + +## Styleguide + +When compiled, the styleguide by default can be found at `/styleguide`. + +KSS Node uses a slight variation of markdown to populate Handlebars +templates and create your styleguide. This markdown should be included +in relevant CSS files, and provides inline documentation of your CSS as +a nice byproduct. Detailed examples can be found in the +[KSS Node project repo](https://github.com/kss-node/kss-node). From e3968f86a94993e7cafc6d0b7f68dd5f93777342 Mon Sep 17 00:00:00 2001 From: beckkramer Date: Tue, 14 Feb 2017 17:18:35 -0600 Subject: [PATCH 25/25] Creates a `destination` config option for the styleguide location. --- config/project.config.js | 4 +++- server/main.js | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/config/project.config.js b/config/project.config.js index 0dabe14..688342a 100644 --- a/config/project.config.js +++ b/config/project.config.js @@ -148,7 +148,9 @@ config.styleguide = { config.paths.base('node_modules'), config.paths.client('styles') ] - } + }, + + destination: '/styleguide' }; // ======================================================== diff --git a/server/main.js b/server/main.js index 4b38e84..2a1d51d 100644 --- a/server/main.js +++ b/server/main.js @@ -47,7 +47,7 @@ if (project.env === 'development') { app.use(express.static(project.paths.public())); // Serve the KSS styleguide as static assets. - app.use('/styleguide', express.static(project.paths.styleguideOutput())); + app.use(project.styleguide.destination, express.static(project.paths.styleguideOutput())); // This rewrites all routes requests to the root /index.html file // (ignoring file requests). If you want to implement universal