From edc6e6227eed651d3c702bbb1252f15f502a042d Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Thu, 6 Apr 2017 11:45:25 -0400 Subject: [PATCH] Simplify css and javascript minification --- app/appConf/minify_config.php | 75 +- app/appConf/minify_css_groups.php | 40 - app/appConf/minify_js_groups.php | 53 - app/views/header.php | 14 +- public/cache/.gitkeep | 0 public/css.js | 28 + public/css.php | 180 --- public/css/app.min.css | 1 + public/css/app.min.css.map | 1 + public/css/base.css | 912 ++---------- public/css/base.myth.css | 652 --------- public/css/{marx.myth.css => marx.css} | 283 ++-- public/cssfilter.js | 3 + public/js.php | 128 +- public/min.php | 121 -- public/package.json | 11 +- public/yarn.lock | 1780 +++++------------------- 17 files changed, 727 insertions(+), 3555 deletions(-) delete mode 100644 app/appConf/minify_css_groups.php delete mode 100644 app/appConf/minify_js_groups.php delete mode 100644 public/cache/.gitkeep create mode 100644 public/css.js delete mode 100644 public/css.php create mode 100644 public/css/app.min.css create mode 100644 public/css/app.min.css.map delete mode 100644 public/css/base.myth.css rename public/css/{marx.myth.css => marx.css} (75%) create mode 100644 public/cssfilter.js delete mode 100644 public/min.php diff --git a/app/appConf/minify_config.php b/app/appConf/minify_config.php index 22898a06..44ecd993 100644 --- a/app/appConf/minify_config.php +++ b/app/appConf/minify_config.php @@ -18,46 +18,6 @@ return [ - /* - |-------------------------------------------------------------------------- - | CSS Folder - |-------------------------------------------------------------------------- - | - | The folder where css files exist, in relation to the document root - | - */ - 'css_root' => 'css/', - - /* - |-------------------------------------------------------------------------- - | Path from - |-------------------------------------------------------------------------- - | - | Path fragment to rewrite in css files - | - */ - 'path_from' => '', - - /* - |-------------------------------------------------------------------------- - | Path to - |-------------------------------------------------------------------------- - | - | The path fragment replacement for the css files - | - */ - 'path_to' => '', - - /* - |-------------------------------------------------------------------------- - | CSS Groups file - |-------------------------------------------------------------------------- - | - | The file where the css groups are configured - | - */ - 'css_groups_file' => __DIR__ . '/minify_css_groups.php', - /* |-------------------------------------------------------------------------- | JS Folder @@ -70,13 +30,40 @@ return [ /* |-------------------------------------------------------------------------- - | JS Groups file + | JS Groups |-------------------------------------------------------------------------- | - | The file where the javascript groups are configured + | Config array for javascript files to concatenate and minify | */ - 'js_groups_file' => __DIR__ . '/minify_js_groups.php', - + 'groups' => [ + 'base' => [ + 'base/classList.js', + 'base/AnimeClient.js', + ], + 'event' => [ + 'base/events.js', + ], + 'table' => [ + 'base/sort_tables.js', + ], + 'table_edit' => [ + 'base/sort_tables.js', + 'anime_edit.js', + 'manga_edit.js', + ], + 'edit' => [ + 'anime_edit.js', + 'manga_edit.js', + ], + 'anime_collection' => [ + 'lib/mustache.js', + 'anime_collection.js', + ], + 'manga_collection' => [ + 'lib/mustache.js', + 'manga_collection.js', + ], + ] ]; // End of minify_config.php \ No newline at end of file diff --git a/app/appConf/minify_css_groups.php b/app/appConf/minify_css_groups.php deleted file mode 100644 index e0272ef5..00000000 --- a/app/appConf/minify_css_groups.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright 2015 - 2017 Timothy J. Warren - * @license http://www.opensource.org/licenses/mit-license.html MIT License - * @version 4.0 - * @link https://github.com/timw4mail/HummingBirdAnimeClient - */ - - -// -------------------------------------------------------------------------- - -/** - * This is the config array for css files to concatenate and minify - */ -return [ - /*----- - Css - -----*/ - - /* - For each group create an array like so - - 'my_group' => array( - 'path/to/css/file1.css', - 'path/to/css/file2.css' - ), - */ - 'base' => [ - 'base.css' - ] -]; -// End of css_groups.php \ No newline at end of file diff --git a/app/appConf/minify_js_groups.php b/app/appConf/minify_js_groups.php deleted file mode 100644 index 12d910ea..00000000 --- a/app/appConf/minify_js_groups.php +++ /dev/null @@ -1,53 +0,0 @@ - - * @copyright 2015 - 2017 Timothy J. Warren - * @license http://www.opensource.org/licenses/mit-license.html MIT License - * @version 4.0 - * @link https://github.com/timw4mail/HummingBirdAnimeClient - */ - - -// -------------------------------------------------------------------------- - -/** - * This is the config array for javascript files to concatenate and minify - */ -return [ - 'base' => [ - 'base/classList.js', - 'base/AnimeClient.js', - ], - 'event' => [ - 'base/events.js', - ], - 'table' => [ - 'base/sort_tables.js', - ], - 'table_edit' => [ - 'base/sort_tables.js', - 'anime_edit.js', - 'manga_edit.js', - ], - 'edit' => [ - 'anime_edit.js', - 'manga_edit.js', - ], - 'anime_collection' => [ - 'lib/mustache.js', - 'anime_collection.js', - ], - 'manga_collection' => [ - 'lib/mustache.js', - 'manga_collection.js', - ], -]; - -// End of js_groups.php \ No newline at end of file diff --git a/app/views/header.php b/app/views/header.php index 0ca31a95..04151e4a 100644 --- a/app/views/header.php +++ b/app/views/header.php @@ -6,7 +6,7 @@ - + @@ -21,17 +21,19 @@ -
- - + } + ?>
\ No newline at end of file diff --git a/public/cache/.gitkeep b/public/cache/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/public/css.js b/public/css.js new file mode 100644 index 00000000..083577a7 --- /dev/null +++ b/public/css.js @@ -0,0 +1,28 @@ +/** + * Script for optimizing css + */ +const fs = require('fs'); +const postcss = require('postcss'); +const atImport = require('postcss-import'); +const cssNext = require('postcss-cssnext'); +const cssNano = require('cssnano'); + +const css = fs.readFileSync('css/base.css', 'utf8'); + +postcss() + .use(atImport()) + .use(cssNext({ + warnForDuplicates: false + })) + .use(cssNano({ + options: { + sourcemap: false + } + })) + .process(css, { + from: 'css/base.css', + to: 'css/app.min.css' + }).then(result => { + fs.writeFileSync('css/app.min.css', result.css); + fs.writeFileSync('css/app.min.css.map', result.map); + }); \ No newline at end of file diff --git a/public/css.php b/public/css.php deleted file mode 100644 index 81e38ccc..00000000 --- a/public/css.php +++ /dev/null @@ -1,180 +0,0 @@ - - * @copyright 2015 - 2017 Timothy J. Warren - * @license http://www.opensource.org/licenses/mit-license.html MIT License - * @version 4.0 - * @link https://github.com/timw4mail/HummingBirdAnimeClient - */ - -namespace Aviat\EasyMin; - -require_once('./min.php'); - -/** - * Simple CSS Minifier - */ -class CSSMin extends BaseMin { - - protected $cssRoot; - protected $pathFrom; - protected $pathTo; - protected $group; - protected $lastModified; - protected $requestedTime; - - public function __construct(array $config, array $groups) - { - $group = $_GET['g']; - $this->cssRoot = $config['css_root']; - $this->pathFrom = $config['path_from']; - $this->pathTo = $config['path_to']; - $this->group = $groups[$group]; - $this->lastModified = $this->getLastModified(); - - $this->send(); - } - - /** - * Send the CSS - * - * @return void - */ - protected function send() - { - if($this->lastModified >= $this->getIfModified() && $this->isNotDebug()) - { - throw new FileNotChangedException(); - } - - $css = ( ! array_key_exists('debug', $_GET)) - ? $this->compress($this->getCss()) - : $this->getCss(); - - $this->output($css); - } - - /** - * Function for compressing the CSS as tightly as possible - * - * @param string $buffer - * @return string - */ - protected function compress($buffer) - { - //Remove CSS comments - $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer); - - //Remove tabs, spaces, newlines, etc. - $buffer = preg_replace('`\s+`', ' ', $buffer); - $replace = [ - ' )' => ')', - ') ' => ')', - ' }' => '}', - '} ' => '}', - ' {' => '{', - '{ ' => '{', - ', ' => ',', - ': ' => ':', - '; ' => ';', - ]; - - //Eradicate every last space! - $buffer = trim(strtr($buffer, $replace)); - $buffer = str_replace('{ ', '{', $buffer); - $buffer = str_replace('} ', '}', $buffer); - - return $buffer; - } - - /** - * Get the most recent file modification date - * - * @return int - */ - protected function getLastModified() - { - $modified = []; - - // Get all the css files, and concatenate them together - if(isset($this->group)) - { - foreach($this->group as $file) - { - $newFile = realpath("{$this->cssRoot}{$file}"); - $modified[] = filemtime($newFile); - } - } - - //Add this page for last modified check - $modified[] = filemtime(__FILE__); - - //Get the latest modified date - rsort($modified); - - return array_shift($modified); - } - - /** - * Get the css to display - * - * @return string - */ - protected function getCss() - { - $css = ''; - - foreach($this->group as $file) - { - $newFile = realpath("{$this->cssRoot}{$file}"); - $css .= file_get_contents($newFile); - } - - // Correct paths that have changed due to concatenation - // based on rules in the config file - $css = str_replace($this->pathFrom, $this->pathTo, $css); - - return $css; - } - - /** - * Output the CSS - * - * @return void - */ - protected function output($css) - { - $this->sendFinalOutput($css, 'text/css', $this->lastModified); - } -} - -// -------------------------------------------------------------------------- -// ! Start Minifying -// -------------------------------------------------------------------------- - -//Get config files -$config = require('../app/appConf/minify_config.php'); -$groups = require($config['css_groups_file']); - -if ( ! array_key_exists($_GET['g'], $groups)) -{ - throw new InvalidArgumentException('You must specify a css group that exists'); -} - -try -{ - new CSSMin($config, $groups); -} -catch (FileNotChangedException $e) -{ - BaseMin::send304(); -} - -//End of css.php \ No newline at end of file diff --git a/public/css/app.min.css b/public/css/app.min.css new file mode 100644 index 00000000..7d565419 --- /dev/null +++ b/public/css/app.min.css @@ -0,0 +1 @@ +:root{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;box-sizing:border-box;cursor:default;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.4;overflow-y:scroll;text-size-adjust:100%;scroll-behavior:smooth}audio:not([controls]){display:none}details{display:block}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}main{margin:0 auto;padding:0 1.6em 1.6em;padding:0 16px 16px;padding:0 1.6rem 1.6rem}main,pre,summary{display:block}pre{background:#efefef;color:#444;font-family:Anonymous Pro,Fira Code,Menlo,Monaco,Consolas,Courier New,monospace;font-size:1.4em;font-size:14px;font-size:1.4rem;margin:1.6em 0;margin:16px 0;margin:1.6rem 0;overflow:auto;padding:1.6em;padding:16px;padding:1.6rem;word-break:break-all;word-wrap:break-word}progress{display:inline-block}small{color:#777;font-size:75%}big{font-size:125%}template{display:none}textarea{border:1px solid #ccc;border:.1rem solid #ccc;border-radius:0;display:block;margin-bottom:8px;margin-bottom:.8rem;overflow:auto;padding:8px;padding:.8rem;resize:vertical;vertical-align:middle}[hidden]{display:none}[unselectable]{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}*,:after,:before{border-style:solid;border-width:0;box-sizing:inherit}*{font-size:inherit;line-height:inherit;margin:0;padding:0}:after,:before{text-decoration:inherit;vertical-align:inherit}a{-webkit-transition:.25s ease;color:#1271db;text-decoration:none;transition:.25s ease}audio,canvas,iframe,img,svg,video{vertical-align:middle}button,input,select,textarea{border:1px solid #ccc;border:.1rem solid #ccc;color:inherit;font-family:inherit;font-style:inherit;font-weight:inherit;min-height:1.4em}code,kbd,pre,samp{font-family:Anonymous Pro,Fira Code,Menlo,Monaco,Consolas,Courier New,monospace}table{border-collapse:collapse;border-spacing:0;margin-bottom:16px;margin-bottom:1.6rem}::-moz-selection{background-color:#b3d4fc;text-shadow:none}::selection{background-color:#b3d4fc;text-shadow:none}button::-moz-focus-inner{border:0}body{color:#444;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;font-size:1.6rem;font-style:normal;font-weight:400;padding:0}p{margin:0 0 16px;margin:0 0 1.6rem}h1,h2,h3,h4,h5,h6{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:2em 0 1.6em;margin:20px 0 16px;margin:2rem 0 1.6rem}h1{border-bottom:1px solid rgba(0,0,0,.2);border-bottom:.1rem solid rgba(0,0,0,.2);font-size:3.6em;font-size:36px;font-size:3.6rem}h1,h2{font-style:normal;font-weight:500}h2{font-size:3em;font-size:30px;font-size:3rem}h3{font-size:2.4em;font-size:24px;font-size:2.4rem;font-style:normal;font-weight:500;margin:16px 0 4px;margin:1.6rem 0 .4rem}h4{font-size:1.8em;font-size:18px;font-size:1.8rem}h4,h5{font-style:normal;font-weight:600;margin:16px 0 4px;margin:1.6rem 0 .4rem}h5{font-size:1.6em;font-size:16px;font-size:1.6rem}h6{color:#777;font-size:1.4em;font-style:normal;font-weight:600;margin:16px 0 4px;margin:1.6rem 0 .4rem}code,h6{font-size:14px;font-size:1.4rem}code{background:#efefef;color:#444;font-family:Anonymous Pro,Fira Code,Menlo,Monaco,Consolas,Courier New,monospace;word-break:break-all;word-wrap:break-word}a:focus,a:hover{text-decoration:none}dl{margin-bottom:16px;margin-bottom:1.6rem}dd{margin-left:40px;margin-left:4rem}ol,ul{margin-bottom:8px;margin-bottom:.8rem;padding-left:20px;padding-left:2rem}blockquote{border-left:2px solid #1271db;border-left:.2rem solid #1271db;font-style:italic;margin:16px 0;margin:1.6rem 0;padding-left:16px;padding-left:1.6rem}blockquote,figcaption{font-family:Georgia,Times,Times New Roman,serif}html{font-size:62.5%}article,aside,details,footer,header,main,section,summary{display:block;height:auto;margin:0 auto;width:100%}footer{clear:both;display:inline-block;float:left;max-width:100%;padding:10px 0;padding:1rem 0;text-align:center}footer,hr{border-top:1px solid rgba(0,0,0,.2);border-top:.1rem solid rgba(0,0,0,.2)}hr{display:block;margin-bottom:16px;margin-bottom:1.6rem;width:100%}img{height:auto;vertical-align:baseline}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select{border:1px solid #ccc;border:.1rem solid #ccc;border-radius:0;display:inline-block;padding:8px;padding:.8rem;vertical-align:middle}input:not([type]){-webkit-appearance:none;background-clip:padding-box;background-color:#fff;border:1px solid #ccc;border:.1rem solid #ccc;border-radius:0;color:#444;display:inline-block;padding:8px;padding:.8rem;text-align:left}input[type=color]{padding:8px 16px;padding:.8rem 1.6rem}input:not([type]):focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#b3d4fc}input[type=checkbox],input[type=radio]{vertical-align:middle}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin solid #444}input:not([type])[disabled],input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled],select[disabled],textarea[disabled]{background-color:#efefef;color:#777;cursor:not-allowed}input[readonly],select[readonly],textarea[readonly]{background-color:#efefef;border-color:#ccc;color:#777}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{border-color:#e9322d;color:#b94a48}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#ff4136}select{background-color:#fff;border:1px solid #ccc;border:.1rem solid #ccc}select[multiple]{height:auto}label{line-height:2}fieldset{border:0;margin:0;padding:8px 0;padding:.8rem 0}legend{border-bottom:1px solid #ccc;border-bottom:.1rem solid #ccc;display:block;padding:8px 0;padding:.8rem 0;width:100%}button,input[type=submit],legend{color:#444;margin-bottom:8px;margin-bottom:.8rem}button,input[type=submit]{-moz-user-select:none;-ms-user-select:none;-webkit-transition:.25s ease;-webkit-user-drag:none;-webkit-user-select:none;border:2px solid #444;border:.2rem solid #444;border-radius:0;cursor:pointer;display:inline-block;margin-right:4px;margin-right:.4rem;padding:8px 16px;padding:.8rem 1.6rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:.25s ease;user-select:none;vertical-align:baseline}button a,input[type=submit] a{color:#444}button::-moz-focus-inner,input[type=submit]::-moz-focus-inner{padding:0}button:hover,input[type=submit]:hover{background:#444;border-color:#444;color:#fff}button:hover a,input[type=submit]:hover a{color:#fff}button:active,input[type=submit]:active{background:#6a6a6a;border-color:#6a6a6a;color:#fff}button:active a,input[type=submit]:active a{color:#fff}button:disabled,input[type=submit]:disabled{box-shadow:none;cursor:not-allowed;opacity:.4}nav ul{list-style:none;margin:0;padding:0;text-align:center}nav ul li{display:inline}nav a{-webkit-transition:.25s ease;border-bottom:2px solid transparent;border-bottom:.2rem solid transparent;color:#444;padding:8px 16px;padding:.8rem 1.6rem;text-decoration:none;transition:.25s ease}nav a:hover,nav li.selected a{border-color:rgba(0,0,0,.2)}nav a:active{border-color:rgba(0,0,0,.56)}caption{padding:8px 0;padding:.8rem 0}thead th{background:#efefef;color:#444}tr{background:#fff;margin-bottom:8px;margin-bottom:.8rem}td,th{border:1px solid #ccc;border:.1rem solid #ccc;padding:8px 16px;padding:.8rem 1.6rem;text-align:center;vertical-align:inherit}tfoot tr{background:none}tfoot td{color:#efefef;font-size:8px;font-size:.8rem;font-style:italic;padding:16px 4px;padding:1.6rem .4rem}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){clip:rect(0)!important;position:absolute!important}}@media screen and max-width 40rem{article,aside,section{clear:both;display:block;max-width:100%}img{margin-right:1.6rem}}.media[hidden],[hidden=hidden],template{display:none}body{margin:.5em}button{background:hsla(0,0%,100%,.65);margin:0}table{min-width:85%;margin:0 auto}td{padding:1em;padding:10px;padding:1rem}thead td,thead th{padding:.5em;padding:5px;padding:.5rem}input[type=number]{width:4em}tbody>tr:nth-child(odd){background:#ddd}a:active,a:hover{color:#7d12db}.bracketed{color:#12db18}.bracketed,h1 a{text-shadow:1px 1px 1px #000}.bracketed:before{content:"[\00a0"}.bracketed:after{content:"\00a0]"}.bracketed:active,.bracketed:hover{color:#db7d12}.grow-1{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.flex-wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.flex-align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.flex-align-space-around{-ms-flex-line-pack:distribute;align-content:space-around}.flex-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.flex-self-center{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}.flex{display:-webkit-box;display:-ms-flexbox;display:flex}.small-font{font-size:16px;font-size:1.6rem}.justify{text-align:justify}.align_center{text-align:center!important}.align_left{text-align:left!important}.align_right{text-align:right!important}.valign_top{vertical-align:top}.no_border{border:none}.media-wrap{text-align:center;margin:0 auto}.danger{background-color:#ff4136;border-color:#924949;color:#fff}.danger:active,.danger:hover{background-color:#924949;border-color:#ff4136;color:#fff}.user-btn{border-color:#12db18;color:#12db18;text-shadow:1px 1px 1px #000;padding:0 .5em;padding:0 5px;padding:0 .5rem}.user-btn:active,.user-btn:hover{border-color:#db7d12;background-color:#db7d12}.full_width{width:100%}.cssload-loader{position:relative;left:calc(50% - 31px);width:62px;height:62px;border-radius:50%;-webkit-perspective:780px;perspective:780px}.cssload-inner{position:absolute;width:100%;height:100%;box-sizing:border-box;border-radius:50%}.cssload-inner.cssload-one{left:0;top:0;-webkit-animation:a 1.15s linear infinite;animation:a 1.15s linear infinite;border-bottom:3px solid #000}.cssload-inner.cssload-two{right:0;top:0;-webkit-animation:b 1.15s linear infinite;animation:b 1.15s linear infinite;border-right:3px solid #000}.cssload-inner.cssload-three{right:0;bottom:0;-webkit-animation:c 1.15s linear infinite;animation:c 1.15s linear infinite;border-top:3px solid #000}@-webkit-keyframes a{0%{-webkit-transform:rotateX(35deg) rotateY(-45deg) rotate(0deg);transform:rotateX(35deg) rotateY(-45deg) rotate(0deg)}to{-webkit-transform:rotateX(35deg) rotateY(-45deg) rotate(1turn);transform:rotateX(35deg) rotateY(-45deg) rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotateX(35deg) rotateY(-45deg) rotate(0deg);transform:rotateX(35deg) rotateY(-45deg) rotate(0deg)}to{-webkit-transform:rotateX(35deg) rotateY(-45deg) rotate(1turn);transform:rotateX(35deg) rotateY(-45deg) rotate(1turn)}}@-webkit-keyframes b{0%{-webkit-transform:rotateX(50deg) rotateY(10deg) rotate(0deg);transform:rotateX(50deg) rotateY(10deg) rotate(0deg)}to{-webkit-transform:rotateX(50deg) rotateY(10deg) rotate(1turn);transform:rotateX(50deg) rotateY(10deg) rotate(1turn)}}@keyframes b{0%{-webkit-transform:rotateX(50deg) rotateY(10deg) rotate(0deg);transform:rotateX(50deg) rotateY(10deg) rotate(0deg)}to{-webkit-transform:rotateX(50deg) rotateY(10deg) rotate(1turn);transform:rotateX(50deg) rotateY(10deg) rotate(1turn)}}@-webkit-keyframes c{0%{-webkit-transform:rotateX(35deg) rotateY(55deg) rotate(0deg);transform:rotateX(35deg) rotateY(55deg) rotate(0deg)}to{-webkit-transform:rotateX(35deg) rotateY(55deg) rotate(1turn);transform:rotateX(35deg) rotateY(55deg) rotate(1turn)}}@keyframes c{0%{-webkit-transform:rotateX(35deg) rotateY(55deg) rotate(0deg);transform:rotateX(35deg) rotateY(55deg) rotate(0deg)}to{-webkit-transform:rotateX(35deg) rotateY(55deg) rotate(1turn);transform:rotateX(35deg) rotateY(55deg) rotate(1turn)}}.sorting,.sorting_asc,.sorting_desc{vertical-align:text-bottom}.sorting:before{content:" ↕\00a0"}.sorting_asc:before{content:" ↑\00a0"}.sorting_desc:before{content:" ↓\00a0"}.form{width:100%}.form thead th,.form thead tr{background:inherit;border:0}.form tr>td:nth-child(odd){text-align:right;min-width:25px;max-width:30%}.form tr>td:nth-child(2n){text-align:left;width:70%}.invisible tbody>tr:nth-child(odd){background:inherit}.invisible td,.invisible th,.invisible tr{border:0}.message{position:relative;margin:.5em auto;padding:.5em;width:95%}.message .close{width:1em;height:1em;position:absolute;right:.5em;top:.5em;text-align:center;vertical-align:middle;line-height:1em}.message:hover .close:after{content:"☒"}.message:hover{cursor:pointer}.message .icon{left:.5em;top:.5em;margin-right:1em}.message.error{border:1px solid #924949;background:#f3e6e6}.message.error .icon:after{content:"✘"}.message.success{border:1px solid #1f8454;background:#70dda9}.message.success .icon:after{content:"✔"}.message.info{border:1px solid #bfbe3a;background:#ffc}.message.info .icon:after{content:"⚠"}.character,.media,.small_character{position:relative;vertical-align:top;display:inline-block;text-align:center;width:220px;height:311px;margin:.25em .125em}.character>img,.media>img,.small_character>img{width:100%}.media .edit_buttons>button{margin:.5em auto}.media_metadata>div,.medium_metadata>div,.name,.row{text-shadow:1px 2px 1px rgba(0,0,0,.85);background:#000;background:rgba(0,0,0,.45);color:#fff;padding:.25em .125em;text-align:right}.age_rating,.media_type{text-align:left}.media>.media_metadata{position:absolute;bottom:0;right:0}.media>.medium_metadata{position:absolute;bottom:0;left:0}.media>.name{position:absolute;top:0}.character:hover>.name,.media:hover>.media_metadata>div,.media:hover>.medium_metadata>div,.media:hover>.name,.media:hover>.table .row,.small_character:hover>.name{-webkit-transition:.25s ease;transition:.25s ease;background:rgba(0,0,0,.75)}.media:hover>.edit_buttons[hidden],.media:hover>button[hidden]{-webkit-transition:.25s ease;transition:.25s ease;display:block}.character>.name a,.character>.name a small,.media>.name a,.media>.name a small,.small_character>.name a,.small_character>.name a small{background:none;color:#fff;text-shadow:1px 2px 1px rgba(0,0,0,.85)}.anime .name,.manga .name{text-align:center;width:100%;padding:.5em .25em}.anime .age_rating,.anime .airing_status,.anime .completion,.anime .delete,.anime .edit,.anime .media_type,.anime .user_rating{background:none;text-align:center}.anime .table,.manga .table{position:absolute;bottom:0;left:0;width:100%}.anime .row,.manga .row{width:100%;background:#000;background:rgba(0,0,0,.45);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-line-pack:distribute;align-content:space-around;-ms-flex-pack:distribute;justify-content:space-around;text-align:center;padding:0 inherit}.anime .row>span,.manga .row>span{text-align:left}.anime .row>div,.manga .row>div{font-size:.8em;display:flex-item;-ms-flex-item-align:center;align-self:center;text-align:center;vertical-align:middle}.anime .media>button.plus_one{position:absolute;top:138px;top:calc(50% - 21.5px);left:44px;left:calc(50% - 66.5px)}.manga .row{padding:1px}.manga .media{border:1px solid #ddd;height:310px;margin:.25em}.manga .media>.edit_buttons{position:absolute;top:86px;top:calc(50% - 58.5px);left:43.5px;left:calc(50% - 66.5px)}.media.search>.name{background-color:#555;background-color:rgba(0,0,0,.35);background-size:cover;background-size:contain;background-repeat:no-repeat}.big-check{display:none}.big-check:checked+label{-webkit-transition:.25s ease;transition:.25s ease;background:rgba(0,0,0,.75)}.big-check:checked+label:after{content:"✓";font-size:15em;font-size:150px;font-size:15rem;text-align:center;color:#adff2f;position:absolute;top:147px;left:0;height:100%;width:100%}#series_list article.media{position:relative}#series_list .name,#series_list .name label{position:absolute;display:block;top:0;left:0;height:100%;width:100%;vertical-align:middle;line-height:1.25em}#series_list .name small{color:#fff}.details{margin:15px auto 0;margin:1.5rem auto 0;padding:10px;padding:1rem;font-size:inherit}.description{max-width:800px;max-width:80rem}.fixed{max-width:930px;max-width:93rem}.details .cover{display:block;width:284px}.details h2{margin-top:0}.details .flex>div{margin:10px;margin:1rem}.details .media_details{max-width:300px}.details .media_details td{padding:0 15px;padding:0 1.5rem}.details p{text-align:justify}.details .media_details td:nth-child(odd){width:1%;white-space:nowrap;text-align:right}.details .media_details td:nth-child(2n){text-align:left}.character,.small_character{background:rgba(0,0,0,.5);width:225px;height:350px;vertical-align:middle;white-space:nowrap}.small_character a{display:inline-block;width:100%;height:100%}.character .name,.small_character .name{position:absolute;bottom:0;left:0;z-index:2}.character img,.small_character img{position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:1;width:100%}.min-table{min-width:0;margin-left:0}.small_character{width:160px;height:250px}.user-page .media-wrap{text-align:left}.media a{display:inline-block;width:100%;height:100%}@media screen and (max-width:40em){nav a{line-height:4em;line-height:4rem}.media{margin:2px 0}main{padding:0 0,5em .5em;padding:0 .5rem .5rem}}.streaming-logo{width:50px;height:50px;vertical-align:middle}.cover_streaming_link .streaming-logo{width:20px;height:20px} \ No newline at end of file diff --git a/public/css/app.min.css.map b/public/css/app.min.css.map new file mode 100644 index 00000000..66dc9051 --- /dev/null +++ b/public/css/app.min.css.map @@ -0,0 +1 @@ +undefined \ No newline at end of file diff --git a/public/css/base.css b/public/css/base.css index fb108671..177282ff 100644 --- a/public/css/base.css +++ b/public/css/base.css @@ -1,675 +1,16 @@ -:root -{ - -ms-text-size-adjust:100%; - -webkit-text-size-adjust:100%; - box-sizing:border-box; - cursor:default; - font-family:'Open Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, 'Lucida Grande', sans-serif; - line-height:1.4; - overflow-y:scroll; - text-size-adjust:100%; - scroll-behavior: smooth; -} - -audio:not([controls]) -{ - display:none; -} - -details -{ - display:block; -} - -input[type=search] -{ - -webkit-appearance:textfield; -} - -input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration -{ - -webkit-appearance:none; -} - -main -{ - display:block; - margin:0 auto; - padding:0 1.6em 1.6em; - padding:0 16px 16px; - padding:0 1.6rem 1.6rem; -} - -summary -{ - display:block; -} - -pre -{ - background:#efefef; - color:#444; - display:block; - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace; - font-size:1.4em; - font-size:14px; - font-size:1.4rem; - margin:1.6em 0; - margin:16px 0; - margin:1.6rem 0; - overflow:auto; - padding:1.6em; - padding:16px; - padding:1.6rem; - word-break:break-all; - word-wrap:break-word; -} - -progress -{ - display:inline-block; -} - -small -{ - color:#777; - font-size:75%; -} - -big -{ - font-size:125%; -} - -template -{ - display:none; -} - -textarea -{ - border:1px solid #ccc; - border:.1rem solid #ccc; - border-radius:0; - display:block; - margin-bottom:8px; - margin-bottom:.8rem; - overflow:auto; - padding:8px; - padding:.8rem; - resize:vertical; - vertical-align:middle; -} - -[hidden] -{ - display:none; -} - -[unselectable] -{ - -moz-user-select:none; - -ms-user-select:none; - -webkit-user-select:none; - user-select:none; -} - -*,::before,::after -{ - border-style:solid; - border-width:0; - box-sizing:inherit; -} - -* -{ - font-size:inherit; - line-height:inherit; - margin:0; - padding:0; -} - -::before,::after -{ - text-decoration:inherit; - vertical-align:inherit; -} - -a -{ - -webkit-transition:.25s ease; - color:#1271db; - text-decoration:none; - transition:.25s ease; -} - -audio,canvas,iframe,img,svg,video -{ - vertical-align:middle; -} - -button,input,select,textarea -{ - border:1px solid #ccc; - border:.1rem solid #ccc; - color:inherit; - font-family:inherit; - font-style:inherit; - font-weight:inherit; - min-height:1.4em; -} - -code,kbd,pre,samp -{ - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace, monospace; -} - -table -{ - border-collapse:collapse; - border-spacing:0; - margin-bottom:16px; - margin-bottom:1.6rem; -} - -::-moz-selection -{ - background-color:#b3d4fc; - text-shadow:none; -} - -::selection -{ - background-color:#b3d4fc; - text-shadow:none; -} - -button::-moz-focus-inner -{ - border:0; -} - -body -{ - color:#444; - font-family:'Open Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, 'Lucida Grande', sans-serif; - font-size:16px; - font-size:1.6rem; - font-style:normal; - font-weight:400; - padding:0; -} - -p -{ - margin:0 0 16px; - margin:0 0 1.6rem; -} - -h1,h2,h3,h4,h5,h6 -{ - font-family:Lato, 'Open Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, 'Lucida Grande', sans-serif; - margin:2em 0 1.6em; - margin:20px 0 16px; - margin:2rem 0 1.6rem; -} - -h1 -{ - border-bottom:1px solid rgba(0, 0, 0, .2); - border-bottom:.1rem solid rgba(0, 0, 0, .2); - font-size:3.6em; - font-size:36px; - font-size:3.6rem; - font-style:normal; - font-weight:500; -} - -h2 -{ - font-size:3em; - font-size:30px; - font-size:3rem; - font-style:normal; - font-weight:500; -} - -h3 -{ - font-size:2.4em; - font-size:24px; - font-size:2.4rem; - font-style:normal; - font-weight:500; - margin:16px 0 4px; - margin:1.6rem 0 .4rem; -} - -h4 -{ - font-size:1.8em; - font-size:18px; - font-size:1.8rem; - font-style:normal; - font-weight:600; - margin:16px 0 4px; - margin:1.6rem 0 .4rem; -} - -h5 -{ - font-size:1.6em; - font-size:16px; - font-size:1.6rem; - font-style:normal; - font-weight:600; - margin:16px 0 4px; - margin:1.6rem 0 .4rem; -} - -h6 -{ - color:#777; - font-size:1.4em; - font-size:14px; - font-size:1.4rem; - font-style:normal; - font-weight:600; - margin:16px 0 4px; - margin:1.6rem 0 .4rem; -} - -code -{ - background:#efefef; - color:#444; - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace; - font-size:14px; - font-size:1.4rem; - word-break:break-all; - word-wrap:break-word; -} - -a:hover,a:focus -{ - text-decoration:none; -} - -dl -{ - margin-bottom:16px; - margin-bottom:1.6rem; -} - -dd -{ - margin-left:40px; - margin-left:4rem; -} - -ul,ol -{ - margin-bottom:8px; - margin-bottom:.8rem; - padding-left:20px; - padding-left:2rem; -} - -blockquote -{ - border-left:2px solid #1271db; - border-left:.2rem solid #1271db; - font-family:Georgia, Times, 'Times New Roman', serif; - font-style:italic; - margin:16px 0; - margin:1.6rem 0; - padding-left:16px; - padding-left:1.6rem; -} - -figcaption -{ - font-family:Georgia, Times, 'Times New Roman', serif; -} - -html -{ - font-size:62.5%; -} - -main,header,footer,article,section,aside,details,summary -{ - display:block; - height:auto; - margin:0 auto; - width:100%; -} - -footer -{ - border-top:1px solid rgba(0, 0, 0, .2); - border-top:.1rem solid rgba(0, 0, 0, .2); - clear:both; - display:inline-block; - float:left; - max-width:100%; - padding:10px 0; - padding:1rem 0; - text-align:center; -} - -hr -{ - border-top:1px solid rgba(0, 0, 0, .2); - border-top:.1rem solid rgba(0, 0, 0, .2); - display:block; - margin-bottom:16px; - margin-bottom:1.6rem; - width:100%; -} - -img -{ - height:auto; - /* max-width:100%; */ - vertical-align:baseline; -} - -input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],input[type=month],input[type=time],input[type=datetime],input[type=datetime-local],input[type=week],input[type=number],input[type=search],input[type=tel],input[type=color],select -{ - border:1px solid #ccc; - border:.1rem solid #ccc; - border-radius:0; - display:inline-block; - padding:8px; - padding:.8rem; - vertical-align:middle; -} - -input:not([type]) -{ - -webkit-appearance:none; - background-clip:padding-box; - background-color:#fff; - border:1px solid #ccc; - border:.1rem solid #ccc; - border-radius:0; - color:#444; - display:inline-block; - padding:8px; - padding:.8rem; - text-align:left; -} - -input[type=color] -{ - padding:8px 16px; - padding:.8rem 1.6rem; -} - -input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=url]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=week]:focus,input[type=number]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,select:focus,textarea:focus -{ - border-color:#b3d4fc; -} - -input:not([type]):focus -{ - border-color:#b3d4fc; -} - -input[type=radio],input[type=checkbox] -{ - vertical-align:middle; -} - -input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus -{ - outline:1px solid thin #444; - outline:.1rem solid thin #444; -} - -input[type=text][disabled],input[type=password][disabled],input[type=email][disabled],input[type=url][disabled],input[type=date][disabled],input[type=month][disabled],input[type=time][disabled],input[type=datetime][disabled],input[type=datetime-local][disabled],input[type=week][disabled],input[type=number][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=color][disabled],select[disabled],textarea[disabled] -{ - background-color:#efefef; - color:#777; - cursor:not-allowed; -} - -input:not([type])[disabled] -{ - background-color:#efefef; - color:#777; - cursor:not-allowed; -} - -input[readonly],select[readonly],textarea[readonly] -{ - background-color:#efefef; - border-color:#ccc; - color:#777; -} - -input:focus:invalid,textarea:focus:invalid,select:focus:invalid -{ - border-color:#e9322d; - color:#b94a48; -} - -input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus,input[type=checkbox]:focus:invalid:focus -{ - outline-color:#ff4136; -} - -select -{ - background-color:#fff; - border:1px solid #ccc; - border:.1rem solid #ccc; -} - -select[multiple] -{ - height:auto; -} - -label -{ - line-height:2; -} - -fieldset -{ - border:0; - margin:0; - padding:8px 0; - padding:.8rem 0; -} - -legend -{ - border-bottom:1px solid #ccc; - border-bottom:.1rem solid #ccc; - color:#444; - display:block; - margin-bottom:8px; - margin-bottom:.8rem; - padding:8px 0; - padding:.8rem 0; - width:100%; -} - -input[type=submit],button -{ - -moz-user-select:none; - -ms-user-select:none; - -webkit-transition:.25s ease; - -webkit-user-drag:none; - -webkit-user-select:none; - border:2px solid #444; - border:.2rem solid #444; - border-radius:0; - color:#444; - cursor:pointer; - display:inline-block; - margin-bottom:8px; - margin-bottom:.8rem; - margin-right:4px; - margin-right:.4rem; - padding:8px 16px; - padding:.8rem 1.6rem; - text-align:center; - text-decoration:none; - text-transform:uppercase; - transition:.25s ease; - user-select:none; - vertical-align:baseline; -} - -input[type=submit] a,button a -{ - color:#444; -} - -input[type=submit]::-moz-focus-inner,button::-moz-focus-inner -{ - padding:0; -} - -input[type=submit]:hover,button:hover -{ - background:#444; - border-color:#444; - color:#fff; -} - -input[type=submit]:hover a,button:hover a -{ - color:#fff; -} - -input[type=submit]:active,button:active -{ - background:#6a6a6a; - border-color:#6a6a6a; - color:#fff; -} - -input[type=submit]:active a,button:active a -{ - color:#fff; -} - -input[type=submit]:disabled,button:disabled -{ - box-shadow:none; - cursor:not-allowed; - opacity:.40; -} - -nav ul -{ - list-style:none; - margin:0; - padding:0; - text-align:center; -} - -nav ul li -{ - display:inline; -} - -nav a -{ - -webkit-transition:.25s ease; - border-bottom:2px solid transparent; - border-bottom:.2rem solid transparent; - color:#444; - padding:8px 16px; - padding:.8rem 1.6rem; - text-decoration:none; - transition:.25s ease; -} - -nav a:hover,nav li.selected a -{ - border-color:rgba(0, 0, 0, .2); -} - -nav a:active -{ - border-color:rgba(0, 0, 0, .56); -} - -caption -{ - padding:8px 0; - padding:.8rem 0; -} - -thead th -{ - background:#efefef; - color:#444; -} - -tr -{ - background:#fff; - margin-bottom:8px; - margin-bottom:.8rem; -} - -th,td -{ - border:1px solid #ccc; - border:.1rem solid #ccc; - padding:8px 16px; - padding:.8rem 1.6rem; - text-align:center; - vertical-align:inherit; -} - -tfoot tr -{ - background:none; -} - -tfoot td -{ - color:#efefef; - font-size:8px; - font-size:.8rem; - font-style:italic; - padding:16px 4px; - padding:1.6rem .4rem; -} - -@media screen { - [hidden~=screen] - { - display:inherit; - } - - [hidden~=screen]:not(:active):not(:focus):not(:target) - { - clip:rect(0000)!important; - position:absolute!important; - } -} - -@media screen and max-width 40rem { - article,section,aside - { - clear:both; - display:block; - max-width:100%; - } - - img - { - margin-right:1.6rem; - } +@import "./marx.css"; + +:root { + --link-shadow: 1px 1px 1px #000; + --shadow: 1px 2px 1px rgba(0, 0, 0, 0.85); + --title-overlay: rgba(0, 0, 0, 0.45); + --title-overlay-fallback: #000; + --text-color: #ffffff; + --normal-padding: 0.25em 0.125em; + --link-hover-color: #7d12db; + --edit-link-hover-color: #db7d12; + --edit-link-color: #12db18; + --radius: 5px; } template, [hidden="hidden"], .media[hidden] {display:none} @@ -677,7 +18,7 @@ template, [hidden="hidden"], .media[hidden] {display:none} body {margin: 0.5em;} button { - background:rgba(255, 255, 255, .65); + background:rgba(255,255,255,0.65); margin: 0; } @@ -688,13 +29,11 @@ table { td { padding:1em; - padding:10px; padding:1rem; } thead td, thead th { padding:0.5em; - padding:5px; padding:0.5rem; } @@ -707,7 +46,7 @@ tbody > tr:nth-child(odd) { } a:hover, a:active { - color:#7d12db + color: var(--link-hover-color) } /* ----------------------------------------------------------------------------- @@ -715,48 +54,33 @@ a:hover, a:active { ------------------------------------------------------------------------------*/ .bracketed { - color:#12db18; + color: var(--edit-link-color); } - .bracketed, h1 a { - text-shadow:1px 1px 1px #000; + text-shadow: var(--link-shadow); } - .bracketed:before {content: '[\00a0'} - .bracketed:after {content: '\00a0]'} - .bracketed:hover, .bracketed:active { - color:#db7d12 + color: var(--edit-link-hover-color) } -.grow-1 {-webkit-box-flex: 1;-ms-flex-positive: 1;flex-grow: 1} - -.flex-wrap {-ms-flex-wrap: wrap;flex-wrap: wrap} - -.flex-no-wrap {-ms-flex-wrap: nowrap;flex-wrap: nowrap} - -.flex-align-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end} - -.flex-align-space-around {-ms-flex-line-pack: distribute;align-content: space-around} - -.flex-justify-space-around {-ms-flex-pack: distribute;justify-content: space-around} - -.flex-self-center {-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center} - -.flex {display: -webkit-box;display: -ms-flexbox;display: flex} +.grow-1 {flex-grow: 1} +.flex-wrap {flex-wrap: wrap} +.flex-no-wrap {flex-wrap: nowrap} +.flex-align-end {align-items: flex-end} +.flex-align-space-around {align-content: space-around} +.flex-justify-space-around {justify-content: space-around} +.flex-self-center {align-self:center} +.flex {display: flex} .small-font { - font-size:16px; font-size:1.6rem; } .justify {text-align:justify} - .align_center {text-align:center !important} - .align_left {text-align:left !important} - .align_right {text-align:right !important} .valign_top {vertical-align:top} @@ -781,17 +105,15 @@ a:hover, a:active { } .user-btn { - border-color:#12db18; - color:#12db18; - text-shadow:1px 1px 1px #000; + border-color: var(--edit-link-color); + color: var(--edit-link-color); + text-shadow: var(--link-shadow); padding:0 0.5em; - padding:0 5px; padding:0 0.5rem; } - .user-btn:hover, .user-btn:active { - border-color:#db7d12; - background-color:#db7d12; + border-color: var(--edit-link-hover-color); + background-color: var(--edit-link-hover-color); } .full_width { @@ -808,8 +130,7 @@ a:hover, a:active { width: 62px; height: 62px; border-radius: 50%; - -webkit-perspective: 780px; - perspective: 780px; + perspective: 780px; } .cssload-inner { @@ -823,111 +144,65 @@ a:hover, a:active { .cssload-inner.cssload-one { left: 0%; top: 0%; - -webkit-animation: cssload-rotate-one 1.15s linear infinite; - animation: cssload-rotate-one 1.15s linear infinite; - border-bottom: 3px solid rgb(0, 0, 0); + animation: cssload-rotate-one 1.15s linear infinite; + border-bottom: 3px solid rgb(0,0,0); } .cssload-inner.cssload-two { right: 0%; top: 0%; - -webkit-animation: cssload-rotate-two 1.15s linear infinite; - animation: cssload-rotate-two 1.15s linear infinite; - border-right: 3px solid rgb(0, 0, 0); + animation: cssload-rotate-two 1.15s linear infinite; + border-right: 3px solid rgb(0,0,0); } .cssload-inner.cssload-three { right: 0%; bottom: 0%; - -webkit-animation: cssload-rotate-three 1.15s linear infinite; - animation: cssload-rotate-three 1.15s linear infinite; - border-top: 3px solid rgb(0, 0, 0); -} - -@-webkit-keyframes cssload-rotate-one { - 0% { - -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); - transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); - } - 100% { - -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); - transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); - } + animation: cssload-rotate-three 1.15s linear infinite; + border-top: 3px solid rgb(0,0,0); } @keyframes cssload-rotate-one { 0% { - -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); - transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); + transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); } 100% { - -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); - transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); - } -} - -@-webkit-keyframes cssload-rotate-two { - 0% { - -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); - transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); - } - 100% { - -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); - transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); + transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); } } @keyframes cssload-rotate-two { 0% { - -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); - transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); + transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); } 100% { - -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); - transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); - } -} - -@-webkit-keyframes cssload-rotate-three { - 0% { - -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); - transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); - } - 100% { - -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); - transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); + transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); } } @keyframes cssload-rotate-three { 0% { - -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); - transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); + transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); } 100% { - -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); - transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); + transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); } } /* ----------------------------------------------------------------------------- Table sorting and form styles ------------------------------------------------------------------------------*/ - .sorting, .sorting_asc, .sorting_desc { vertical-align:text-bottom; } - .sorting::before { content: " ↕\00a0"; } - .sorting_asc::before { content: " ↑\00a0"; } - .sorting_desc::before { content: " ↓\00a0"; } @@ -944,7 +219,6 @@ a:hover, a:active { min-width:25px; max-width:30%; } - .form tr > td:nth-child(even) { text-align:left; width:70%; @@ -953,7 +227,6 @@ a:hover, a:active { .invisible tbody > tr:nth-child(odd) { background: inherit; } - .invisible tr, .invisible td, .invisible th { border:0; } @@ -999,7 +272,7 @@ a:hover, a:active { background: #f3e6e6; } -.message.error .icon::after { + .message.error .icon::after { content: '✘'; } @@ -1007,8 +280,7 @@ a:hover, a:active { border:1px solid #1f8454; background: #70dda9; } - -.message.success .icon::after { + .message.success .icon::after { content: '✔' } @@ -1017,7 +289,7 @@ a:hover, a:active { background: #FFFFCC; } -.message.info .icon::after { + .message.info .icon::after { content: '⚠'; } @@ -1032,7 +304,7 @@ a:hover, a:active { text-align:center; width:220px; height:311px; - margin:0.25em 0.125em; + margin: var(--normal-padding); } .media > img, @@ -1045,60 +317,57 @@ a:hover, a:active { margin:0.5em auto; } -.name, + .name, .media_metadata > div, .medium_metadata > div, .row { - text-shadow:1px 2px 1px rgba(0, 0, 0, .85); - background:#000; - background:rgba(0, 0, 0, .45); - color:#ffffff; - padding:0.25em 0.125em; + text-shadow: var(--shadow); + background: var(--title-overlay-fallback); + background: var(--title-overlay); + color: var(--text-color); + padding: var(--normal-padding); text-align:right; } -.media_type, .age_rating { + .media_type, .age_rating { text-align:left; } -.media > .media_metadata { + .media > .media_metadata { position:absolute; bottom:0; right:0; } -.media > .medium_metadata { + .media > .medium_metadata { position:absolute; bottom: 0; left:0; } -.media > .name { + .media > .name { position:absolute; top: 0; } - -.small_character:hover > .name, + .small_character:hover > .name, .character:hover > .name, .media:hover > .name, .media:hover > .media_metadata > div, .media:hover > .medium_metadata > div, .media:hover > .table .row { - -webkit-transition:.25s ease; transition: .25s ease; - background:rgba(0, 0, 0, .75); + background:rgba(0,0,0,0.75); } -.media:hover > button[hidden], + .media:hover > button[hidden], .media:hover > .edit_buttons[hidden] { - -webkit-transition:.25s ease; transition: .25s ease; display:block; } -.small_character > .name a, + .small_character > .name a, .small_character > .name a small, .character > .name a, .character > .name a small, @@ -1107,13 +376,14 @@ a:hover, a:active { { background:none; color:#fff; - text-shadow:1px 2px 1px rgba(0, 0, 0, .85); + text-shadow: var(--shadow); } + + /* ----------------------------------------------------------------------------- Anime-list-specific styles ------------------------------------------------------------------------------*/ - .anime .name, .manga .name { text-align:center; width:100%; @@ -1131,6 +401,7 @@ a:hover, a:active { text-align:center; } + .anime .table, .manga .table { position:absolute; bottom:0; @@ -1140,15 +411,11 @@ a:hover, a:active { .anime .row, .manga .row { width:100%; - background:#000; - background:rgba(0, 0, 0, .45); - display: -webkit-box; - display: -ms-flexbox; + background: var(--title-overlay-fallback); + background: var(--title-overlay); display: flex; - -ms-flex-line-pack: distribute; - align-content: space-around; - -ms-flex-pack: distribute; - justify-content: space-around; + align-content: space-around; + justify-content: space-around; text-align:center; padding:0 inherit; } @@ -1160,8 +427,7 @@ a:hover, a:active { .anime .row > div, .manga .row > div { font-size:0.8em; display:flex-item; - -ms-flex-item-align:center; - align-self:center; + align-self:center; text-align:center; vertical-align:middle; } @@ -1177,7 +443,6 @@ a:hover, a:active { /* ----------------------------------------------------------------------------- Manga-list-specific styles ------------------------------------------------------------------------------*/ - .manga .row { padding:1px; } @@ -1196,13 +461,13 @@ a:hover, a:active { left: calc(50% - 66.5px); } + /* ----------------------------------------------------------------------------- Search page styles ------------------------------------------------------------------------------*/ - .media.search > .name { background-color:#555; - background-color: rgba(0, 0, 0, .35); + background-color: rgba(000,000,000,0.35); background-size: cover; background-size: contain; background-repeat: no-repeat; @@ -1213,15 +478,13 @@ a:hover, a:active { } .big-check:checked + label { - -webkit-transition:.25s ease; transition: .25s ease; - background:rgba(0, 0, 0, .75); + background:rgba(0,0,0,0.75); } .big-check:checked + label:after { content: '✓'; font-size: 15em; - font-size:150px; font-size: 15rem; text-align:center; color: greenyellow; @@ -1235,7 +498,6 @@ a:hover, a:active { #series_list article.media { position:relative; } - #series_list .name, #series_list .name label { position:absolute; display:block; @@ -1246,7 +508,6 @@ a:hover, a:active { vertical-align:middle; line-height: 1.25em; } - #series_list .name small { color: #fff; } @@ -1254,22 +515,17 @@ a:hover, a:active { /* ---------------------------------------------------------------------------- Details page styles -----------------------------------------------------------------------------*/ - .details { - margin:15px auto 0 auto; margin: 1.5rem auto 0 auto; - padding:10px; padding:1rem; font-size:inherit; } .description { - max-width:800px; max-width:80rem; } .fixed { - max-width:930px; max-width:93rem; } @@ -1284,16 +540,13 @@ a:hover, a:active { } .details .flex > div { - margin:10px; margin: 1rem; } .details .media_details { max-width:300px; } - -.details .media_details td { - padding:0 15px; + .details .media_details td { padding:0 1.5rem; } @@ -1306,27 +559,25 @@ a:hover, a:active { white-space:nowrap; text-align:right; } - .details .media_details td:nth-child(even) { text-align:left; } .character, .small_character { - background: rgba(0, 0, 0, .5); + background: rgba(0,0,0,0.5); width: 225px; height: 350px; vertical-align: middle; white-space: nowrap; } - -.small_character a { + .small_character a { display:inline-block; width: 100%; height: 100%; } -.small_character .name, + .small_character .name, .character .name { position: absolute; bottom: 0; @@ -1334,12 +585,11 @@ a:hover, a:active { z-index: 10; } -.small_character img, + .small_character img, .character img { position: relative; top: 50%; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); + transform: translateY(-50%); z-index: 5; width: 100%; } @@ -1352,7 +602,6 @@ a:hover, a:active { /* ---------------------------------------------------------------------------- User page styles -----------------------------------------------------------------------------*/ - .small_character { width: 160px; height: 250px; @@ -1391,7 +640,6 @@ a:hover, a:active { /* ---------------------------------------------------------------------------- Images / Logos -----------------------------------------------------------------------------*/ - .streaming-logo { width: 50px; height: 50px; diff --git a/public/css/base.myth.css b/public/css/base.myth.css deleted file mode 100644 index 588c02f8..00000000 --- a/public/css/base.myth.css +++ /dev/null @@ -1,652 +0,0 @@ -@import "./marx.myth.css"; - -:root { - --link-shadow: 1px 1px 1px #000; - --shadow: 1px 2px 1px rgba(0, 0, 0, 0.85); - --title-overlay: rgba(0, 0, 0, 0.45); - --title-overlay-fallback: #000; - --text-color: #ffffff; - --normal-padding: 0.25em 0.125em; - --link-hover-color: #7d12db; - --edit-link-hover-color: #db7d12; - --edit-link-color: #12db18; - --radius: 5px; -} - -template, [hidden="hidden"], .media[hidden] {display:none} - -body {margin: 0.5em;} - -button { - background:rgba(255,255,255,0.65); - margin: 0; -} - -table { - min-width:85%; - margin: 0 auto; -} - -td { - padding:1em; - padding:1rem; -} - -thead td, thead th { - padding:0.5em; - padding:0.5rem; -} - -input[type=number] { - width: 4em; -} - -tbody > tr:nth-child(odd) { - background: #ddd; -} - -a:hover, a:active { - color: var(--link-hover-color) -} - -/* ----------------------------------------------------------------------------- - Utility classes -------------------------------------------------------------------------------*/ - -.bracketed { - color: var(--edit-link-color); -} -.bracketed, h1 a { - text-shadow: var(--link-shadow); -} -.bracketed:before {content: '[\00a0'} -.bracketed:after {content: '\00a0]'} -.bracketed:hover, .bracketed:active { - color: var(--edit-link-hover-color) -} - -.grow-1 {flex-grow: 1} -.flex-wrap {flex-wrap: wrap} -.flex-no-wrap {flex-wrap: nowrap} -.flex-align-end {align-items: flex-end} -.flex-align-space-around {align-content: space-around} -.flex-justify-space-around {justify-content: space-around} -.flex-self-center {align-self:center} -.flex {display: flex} - -.small-font { - font-size:1.6rem; -} - -.justify {text-align:justify} -.align_center {text-align:center !important} -.align_left {text-align:left !important} -.align_right {text-align:right !important} - -.valign_top {vertical-align:top} - -.no_border {border:none} - -.media-wrap { - text-align:center; - margin:0 auto; -} - -.danger { - background-color: #ff4136; - border-color: #924949; - color:#fff; -} - -.danger:hover, .danger:active { - background-color: #924949; - border-color: #ff4136; - color:#fff; -} - -.user-btn { - border-color: var(--edit-link-color); - color: var(--edit-link-color); - text-shadow: var(--link-shadow); - padding:0 0.5em; - padding:0 0.5rem; -} -.user-btn:hover, .user-btn:active { - border-color: var(--edit-link-hover-color); - background-color: var(--edit-link-hover-color); -} - -.full_width { - width: 100%; -} - -/* ----------------------------------------------------------------------------- - CSS loading icon -------------------------------------------------------------------------------*/ - -.cssload-loader { - position: relative; - left: calc(50% - 31px); - width: 62px; - height: 62px; - border-radius: 50%; - perspective: 780px; -} - -.cssload-inner { - position: absolute; - width: 100%; - height: 100%; - box-sizing: border-box; - border-radius: 50%; -} - -.cssload-inner.cssload-one { - left: 0%; - top: 0%; - animation: cssload-rotate-one 1.15s linear infinite; - border-bottom: 3px solid rgb(0,0,0); -} - -.cssload-inner.cssload-two { - right: 0%; - top: 0%; - animation: cssload-rotate-two 1.15s linear infinite; - border-right: 3px solid rgb(0,0,0); -} - -.cssload-inner.cssload-three { - right: 0%; - bottom: 0%; - animation: cssload-rotate-three 1.15s linear infinite; - border-top: 3px solid rgb(0,0,0); -} - -@keyframes cssload-rotate-one { - 0% { - transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); - } - 100% { - transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); - } -} - -@keyframes cssload-rotate-two { - 0% { - transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); - } - 100% { - transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); - } -} - -@keyframes cssload-rotate-three { - 0% { - transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); - } - 100% { - transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); - } -} - -/* ----------------------------------------------------------------------------- - Table sorting and form styles -------------------------------------------------------------------------------*/ -.sorting, -.sorting_asc, -.sorting_desc { - vertical-align:text-bottom; -} -.sorting::before { - content: " ↕\00a0"; -} -.sorting_asc::before { - content: " ↑\00a0"; -} -.sorting_desc::before { - content: " ↓\00a0"; -} - -.form { width:100%; } - -.form thead th, .form thead tr { - background: inherit; - border:0; -} - -.form tr > td:nth-child(odd) { - text-align:right; - min-width:25px; - max-width:30%; -} -.form tr > td:nth-child(even) { - text-align:left; - width:70%; -} - -.invisible tbody > tr:nth-child(odd) { - background: inherit; -} -.invisible tr, .invisible td, .invisible th { - border:0; -} - -/* ----------------------------------------------------------------------------- - Message boxes -------------------------------------------------------------------------------*/ - -.message{ - position:relative; - margin:0.5em auto; - padding:0.5em; - width:95%; -} - -.message .close{ - width:1em; - height:1em; - position:absolute; - right:0.5em; - top:0.5em; - text-align:center; - vertical-align:middle; - line-height:1em; -} - -.message:hover .close:after { - content: '☒'; -} - -.message:hover { - cursor:pointer; -} - -.message .icon{ - left:0.5em; - top:0.5em; - margin-right:1em; -} - -.message.error{ - border:1px solid #924949; - background: #f3e6e6; -} - - .message.error .icon::after { - content: '✘'; - } - -.message.success{ - border:1px solid #1f8454; - background: #70dda9; -} - .message.success .icon::after { - content: '✔' - } - -.message.info{ - border:1px solid #bfbe3a; - background: #FFFFCC; -} - - .message.info .icon::after { - content: '⚠'; - } - -/* ----------------------------------------------------------------------------- - Base list styles -------------------------------------------------------------------------------*/ - -.media, .character, .small_character { - position:relative; - vertical-align:top; - display:inline-block; - text-align:center; - width:220px; - height:311px; - margin: var(--normal-padding); -} - -.media > img, -.character > img, -.small_character > img { - width: 100%; -} - -.media .edit_buttons > button { - margin:0.5em auto; -} - - .name, - .media_metadata > div, - .medium_metadata > div, - .row { - text-shadow: var(--shadow); - background: var(--title-overlay-fallback); - background: var(--title-overlay); - color: var(--text-color); - padding: var(--normal-padding); - text-align:right; - } - - .media_type, .age_rating { - text-align:left; - } - - .media > .media_metadata { - position:absolute; - bottom:0; - right:0; - } - - .media > .medium_metadata { - position:absolute; - bottom: 0; - left:0; - } - - .media > .name { - position:absolute; - top: 0; - } - .small_character:hover > .name, - .character:hover > .name, - .media:hover > .name, - .media:hover > .media_metadata > div, - .media:hover > .medium_metadata > div, - .media:hover > .table .row - { - transition: .25s ease; - background:rgba(0,0,0,0.75); - } - - .media:hover > button[hidden], - .media:hover > .edit_buttons[hidden] - { - transition: .25s ease; - display:block; - } - - .small_character > .name a, - .small_character > .name a small, - .character > .name a, - .character > .name a small, - .media > .name a, - .media > .name a small - { - background:none; - color:#fff; - text-shadow: var(--shadow); - } - - - -/* ----------------------------------------------------------------------------- - Anime-list-specific styles -------------------------------------------------------------------------------*/ -.anime .name, .manga .name { - text-align:center; - width:100%; - padding:0.5em 0.25em; -} - -.anime .media_type, -.anime .airing_status, -.anime .user_rating, -.anime .completion, -.anime .age_rating, -.anime .edit, -.anime .delete { - background: none; - text-align:center; -} - - -.anime .table, .manga .table { - position:absolute; - bottom:0; - left:0; - width:100%; -} - -.anime .row, .manga .row { - width:100%; - background: var(--title-overlay-fallback); - background: var(--title-overlay); - display: flex; - align-content: space-around; - justify-content: space-around; - text-align:center; - padding:0 inherit; -} - -.anime .row > span, .manga .row > span { - text-align:left; -} - -.anime .row > div, .manga .row > div { - font-size:0.8em; - display:flex-item; - align-self:center; - text-align:center; - vertical-align:middle; -} - -.anime .media > button.plus_one { - position:absolute; - top: 138px; - top: calc(50% - 21.5px); - left: 44px; - left: calc(50% - 66.5px); -} - -/* ----------------------------------------------------------------------------- - Manga-list-specific styles -------------------------------------------------------------------------------*/ -.manga .row { - padding:1px; -} - -.manga .media { - border:1px solid #ddd; - height:310px; - margin:0.25em; -} - -.manga .media > .edit_buttons { - position:absolute; - top: 86px; - top: calc(50% - 58.5px); - left: 43.5px; - left: calc(50% - 66.5px); -} - - -/* ----------------------------------------------------------------------------- - Search page styles -------------------------------------------------------------------------------*/ -.media.search > .name { - background-color:#555; - background-color: rgba(000,000,000,0.35); - background-size: cover; - background-size: contain; - background-repeat: no-repeat; -} - -.big-check { - display:none; -} - -.big-check:checked + label { - transition: .25s ease; - background:rgba(0,0,0,0.75); -} - -.big-check:checked + label:after { - content: '✓'; - font-size: 15em; - font-size: 15rem; - text-align:center; - color: greenyellow; - position:absolute; - top:147px; - left:0; - height:100%; - width:100%; -} - -#series_list article.media { - position:relative; -} -#series_list .name, #series_list .name label { - position:absolute; - display:block; - top:0; - left:0; - height:100%; - width:100%; - vertical-align:middle; - line-height: 1.25em; -} -#series_list .name small { - color: #fff; -} - -/* ---------------------------------------------------------------------------- - Details page styles ------------------------------------------------------------------------------*/ -.details { - margin: 1.5rem auto 0 auto; - padding:1rem; - font-size:inherit; -} - -.description { - max-width:80rem; -} - -.fixed { - max-width:93rem; -} - -.details .cover { - display: block; - width: 284px; - /* height: 402px; */ -} - -.details h2 { - margin-top: 0; -} - -.details .flex > div { - margin: 1rem; -} - -.details .media_details { - max-width:300px; -} - .details .media_details td { - padding:0 1.5rem; - } - -.details p { - text-align:justify; -} - -.details .media_details td:nth-child(odd) { - width:1%; - white-space:nowrap; - text-align:right; -} -.details .media_details td:nth-child(even) { - text-align:left; -} - -.character, -.small_character { - background: rgba(0,0,0,0.5); - width: 225px; - height: 350px; - vertical-align: middle; - white-space: nowrap; -} - .small_character a { - display:inline-block; - width: 100%; - height: 100%; - } - - .small_character .name, - .character .name { - position: absolute; - bottom: 0; - left: 0; - z-index: 10; - } - - .small_character img, - .character img { - position: relative; - top: 50%; - transform: translateY(-50%); - z-index: 5; - width: 100%; - } - -.min-table { - min-width: 0; - margin-left: 0; -} - -/* ---------------------------------------------------------------------------- - User page styles ------------------------------------------------------------------------------*/ -.small_character { - width: 160px; - height: 250px; -} - -.user-page .media-wrap { - text-align: left; -} - -.media a { - display: inline-block; - width: 100%; - height: 100%; -} - -/* ---------------------------------------------------------------------------- - Viewport-based styles ------------------------------------------------------------------------------*/ - -@media screen and (max-width: 40em) { - nav a { - line-height:4em; - line-height:4rem; - } - - .media { - margin:2px 0; - } - - main { - padding:0 0,5em 0.5em; - padding:0 0.5rem 0.5rem; - } -} - -/* ---------------------------------------------------------------------------- - Images / Logos ------------------------------------------------------------------------------*/ -.streaming-logo { - width: 50px; - height: 50px; - vertical-align:middle; -} - -.cover_streaming_link .streaming-logo { - width: 20px; - height: 20px; -} \ No newline at end of file diff --git a/public/css/marx.myth.css b/public/css/marx.css similarity index 75% rename from public/css/marx.myth.css rename to public/css/marx.css index 856fbdf0..426fefe8 100644 --- a/public/css/marx.myth.css +++ b/public/css/marx.css @@ -1,6 +1,7 @@ -:root -{ - --default-font-list:'Open Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, 'Lucida Grande', sans-serif; +:root { + --default-font-list:system-ui,sans-serif; + --monospace-font-list:'Anonymous Pro','Fira Code',Menlo,Monaco,Consolas,'Courier New',monospace; + --serif-font-list:Georgia,Times,'Times New Roman',serif; -ms-text-size-adjust:100%; -webkit-text-size-adjust:100%; box-sizing:border-box; @@ -9,48 +10,41 @@ line-height:1.4; overflow-y:scroll; text-size-adjust:100%; - scroll-behavior: smooth; + scroll-behavior:smooth; } -audio:not([controls]) -{ +audio:not([controls]) { display:none; } -details -{ +details { display:block; } -input[type=search] -{ +input[type=search] { -webkit-appearance:textfield; } -input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration -{ +input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration { -webkit-appearance:none; } -main -{ +main { display:block; margin:0 auto; padding:0 1.6em 1.6em; padding:0 1.6rem 1.6rem; } -summary -{ +summary { display:block; } -pre -{ +pre { background:#efefef; color:#444; display:block; - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace; + font-family:var(--monospace-font-list); font-size:1.4em; font-size:1.4rem; margin:1.6em 0; @@ -62,29 +56,24 @@ pre word-wrap:break-word; } -progress -{ +progress { display:inline-block; } -small -{ +small { color:#777; font-size:75%; } -big -{ +big { font-size:125%; } -template -{ +template { display:none; } -textarea -{ +textarea { border:.1rem solid #ccc; border-radius:0; display:block; @@ -95,55 +84,47 @@ textarea vertical-align:middle; } -[hidden] -{ +[hidden] { display:none; } -[unselectable] -{ +[unselectable] { -moz-user-select:none; -ms-user-select:none; -webkit-user-select:none; user-select:none; } -*,::before,::after -{ +*,::before,::after { border-style:solid; border-width:0; box-sizing:inherit; } -* -{ +* { font-size:inherit; line-height:inherit; margin:0; padding:0; } -::before,::after -{ +::before,::after { text-decoration:inherit; vertical-align:inherit; } -a -{ +a { -webkit-transition:.25s ease; color:#1271db; text-decoration:none; transition:.25s ease; } -audio,canvas,iframe,img,svg,video -{ +audio,canvas,iframe,img,svg,video { vertical-align:middle; } -button,input,select,textarea -{ +button,input,select,textarea { border:.1rem solid #ccc; color:inherit; font-family:inherit; @@ -152,37 +133,31 @@ button,input,select,textarea min-height:1.4em; } -code,kbd,pre,samp -{ - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace, monospace; +code,kbd,pre,samp { + font-family:var(--monospace-font-list); } -table -{ +table { border-collapse:collapse; border-spacing:0; margin-bottom:1.6rem; } -::-moz-selection -{ +::-moz-selection { background-color:#b3d4fc; text-shadow:none; } -::selection -{ +::selection { background-color:#b3d4fc; text-shadow:none; } -button::-moz-focus-inner -{ +button::-moz-focus-inner { border:0; } -body -{ +body { color:#444; font-family:var(--default-font-list); font-size:1.6rem; @@ -191,20 +166,17 @@ body padding:0; } -p -{ +p { margin:0 0 1.6rem; } -h1,h2,h3,h4,h5,h6 -{ - font-family:Lato, var(--default-font-list); +h1,h2,h3,h4,h5,h6 { + font-family:var(--default-font-list); margin:2em 0 1.6em; margin:2rem 0 1.6rem; } -h1 -{ +h1 { border-bottom:.1rem solid rgba(0,0,0,0.2); font-size:3.6em; font-size:3.6rem; @@ -212,16 +184,14 @@ h1 font-weight:500; } -h2 -{ +h2 { font-size:3em; font-size:3rem; font-style:normal; font-weight:500; } -h3 -{ +h3 { font-size:2.4em; font-size:2.4rem; font-style:normal; @@ -229,8 +199,7 @@ h3 margin:1.6rem 0 .4rem; } -h4 -{ +h4 { font-size:1.8em; font-size:1.8rem; font-style:normal; @@ -238,8 +207,7 @@ h4 margin:1.6rem 0 .4rem; } -h5 -{ +h5 { font-size:1.6em; font-size:1.6rem; font-style:normal; @@ -247,8 +215,7 @@ h5 margin:1.6rem 0 .4rem; } -h6 -{ +h6 { color:#777; font-size:1.4em; font-size:1.4rem; @@ -257,66 +224,56 @@ h6 margin:1.6rem 0 .4rem; } -code -{ +code { background:#efefef; color:#444; - font-family:Menlo, Monaco, Consolas, 'Courier New', monospace; + font-family:var(--monospace-font-list); font-size:1.4rem; word-break:break-all; word-wrap:break-word; } -a:hover,a:focus -{ +a:hover,a:focus { text-decoration:none; } -dl -{ +dl { margin-bottom:1.6rem; } -dd -{ +dd { margin-left:4rem; } -ul,ol -{ +ul,ol { margin-bottom:.8rem; padding-left:2rem; } -blockquote -{ +blockquote { border-left:.2rem solid #1271db; - font-family:Georgia, Times, 'Times New Roman', serif; + font-family:var(--serif-font-list); font-style:italic; margin:1.6rem 0; padding-left:1.6rem; } -figcaption -{ - font-family:Georgia, Times, 'Times New Roman', serif; +figcaption { + font-family:var(--serif-font-list); } -html -{ +html { font-size:62.5%; } -main,header,footer,article,section,aside,details,summary -{ +main,header,footer,article,section,aside,details,summary { display:block; height:auto; margin:0 auto; width:100%; } -footer -{ +footer { border-top:.1rem solid rgba(0,0,0,0.2); clear:both; display:inline-block; @@ -326,23 +283,20 @@ footer text-align:center; } -hr -{ +hr { border-top:.1rem solid rgba(0,0,0,0.2); display:block; margin-bottom:1.6rem; width:100%; } -img -{ +img { height:auto; - /* max-width:100%; */ +/* max-width:100%; */ vertical-align:baseline; } -input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],input[type=month],input[type=time],input[type=datetime],input[type=datetime-local],input[type=week],input[type=number],input[type=search],input[type=tel],input[type=color],select -{ +input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],input[type=month],input[type=time],input[type=datetime],input[type=datetime-local],input[type=week],input[type=number],input[type=search],input[type=tel],input[type=color],select { border:.1rem solid #ccc; border-radius:0; display:inline-block; @@ -350,8 +304,7 @@ input[type=text],input[type=password],input[type=email],input[type=url],input[ty vertical-align:middle; } -input:not([type]) -{ +input:not([type]) { -webkit-appearance:none; background-clip:padding-box; background-color:#fff; @@ -363,88 +316,73 @@ input:not([type]) text-align:left; } -input[type=color] -{ +input[type=color] { padding:.8rem 1.6rem; } -input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=url]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=week]:focus,input[type=number]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,select:focus,textarea:focus -{ +input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=url]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=week]:focus,input[type=number]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,select:focus,textarea:focus { border-color:#b3d4fc; } -input:not([type]):focus -{ +input:not([type]):focus { border-color:#b3d4fc; } -input[type=radio],input[type=checkbox] -{ +input[type=radio],input[type=checkbox] { vertical-align:middle; } -input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus -{ +input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus { outline:.1rem solid thin #444; } -input[type=text][disabled],input[type=password][disabled],input[type=email][disabled],input[type=url][disabled],input[type=date][disabled],input[type=month][disabled],input[type=time][disabled],input[type=datetime][disabled],input[type=datetime-local][disabled],input[type=week][disabled],input[type=number][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=color][disabled],select[disabled],textarea[disabled] -{ +input[type=text][disabled],input[type=password][disabled],input[type=email][disabled],input[type=url][disabled],input[type=date][disabled],input[type=month][disabled],input[type=time][disabled],input[type=datetime][disabled],input[type=datetime-local][disabled],input[type=week][disabled],input[type=number][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=color][disabled],select[disabled],textarea[disabled] { background-color:#efefef; color:#777; cursor:not-allowed; } -input:not([type])[disabled] -{ +input:not([type])[disabled] { background-color:#efefef; color:#777; cursor:not-allowed; } -input[readonly],select[readonly],textarea[readonly] -{ +input[readonly],select[readonly],textarea[readonly] { background-color:#efefef; border-color:#ccc; color:#777; } -input:focus:invalid,textarea:focus:invalid,select:focus:invalid -{ +input:focus:invalid,textarea:focus:invalid,select:focus:invalid { border-color:#e9322d; color:#b94a48; } -input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus,input[type=checkbox]:focus:invalid:focus -{ +input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus,input[type=checkbox]:focus:invalid:focus { outline-color:#ff4136; } -select -{ +select { background-color:#fff; border:.1rem solid #ccc; } -select[multiple] -{ +select[multiple] { height:auto; } -label -{ +label { line-height:2; } -fieldset -{ +fieldset { border:0; margin:0; padding:.8rem 0; } -legend -{ +legend { border-bottom:.1rem solid #ccc; color:#444; display:block; @@ -453,8 +391,7 @@ legend width:100%; } -input[type=submit],button -{ +input[type=submit],button { -moz-user-select:none; -ms-user-select:none; -webkit-transition:.25s ease; @@ -476,62 +413,52 @@ input[type=submit],button vertical-align:baseline; } -input[type=submit] a,button a -{ +input[type=submit] a,button a { color:#444; } -input[type=submit]::-moz-focus-inner,button::-moz-focus-inner -{ +input[type=submit]::-moz-focus-inner,button::-moz-focus-inner { padding:0; } -input[type=submit]:hover,button:hover -{ +input[type=submit]:hover,button:hover { background:#444; border-color:#444; color:#fff; } -input[type=submit]:hover a,button:hover a -{ +input[type=submit]:hover a,button:hover a { color:#fff; } -input[type=submit]:active,button:active -{ +input[type=submit]:active,button:active { background:#6a6a6a; border-color:#6a6a6a; color:#fff; } -input[type=submit]:active a,button:active a -{ +input[type=submit]:active a,button:active a { color:#fff; } -input[type=submit]:disabled,button:disabled -{ +input[type=submit]:disabled,button:disabled { box-shadow:none; cursor:not-allowed; - opacity:.40; + opacity:.4; } -nav ul -{ +nav ul { list-style:none; margin:0; padding:0; text-align:center; } -nav ul li -{ +nav ul li { display:inline; } -nav a -{ +nav a { -webkit-transition:.25s ease; border-bottom:.2rem solid transparent; color:#444; @@ -540,48 +467,40 @@ nav a transition:.25s ease; } -nav a:hover,nav li.selected a -{ +nav a:hover,nav li.selected a { border-color:rgba(0,0,0,0.2); } -nav a:active -{ +nav a:active { border-color:rgba(0,0,0,0.56); } -caption -{ +caption { padding:.8rem 0; } -thead th -{ +thead th { background:#efefef; color:#444; } -tr -{ +tr { background:#fff; margin-bottom:.8rem; } -th,td -{ +th,td { border:.1rem solid #ccc; padding:.8rem 1.6rem; text-align:center; vertical-align:inherit; } -tfoot tr -{ +tfoot tr { background:none; } -tfoot td -{ +tfoot td { color:#efefef; font-size:.8rem; font-style:italic; @@ -589,28 +508,24 @@ tfoot td } @media screen { - [hidden~=screen] - { + [hidden~=screen] { display:inherit; } - [hidden~=screen]:not(:active):not(:focus):not(:target) - { + [hidden~=screen]:not(:active):not(:focus):not(:target) { clip:rect(0000)!important; position:absolute!important; } } @media screen and max-width 40rem { - article,section,aside - { + article,section,aside { clear:both; display:block; max-width:100%; } - img - { + img { margin-right:1.6rem; } } \ No newline at end of file diff --git a/public/cssfilter.js b/public/cssfilter.js new file mode 100644 index 00000000..35d269d1 --- /dev/null +++ b/public/cssfilter.js @@ -0,0 +1,3 @@ +module.exports = function filter(filename) { + return ! String(filename).includes('min'); +} \ No newline at end of file diff --git a/public/js.php b/public/js.php index 36e0e206..8a9c2d22 100644 --- a/public/js.php +++ b/public/js.php @@ -22,29 +22,48 @@ use Aviat\Ion\Json; // Include guzzle require_once('../vendor/autoload.php'); -require_once('./min.php'); + +//Creative rewriting of /g/groupname to ?g=groupname +$pi = $_SERVER['PATH_INFO']; +$pia = explode('/', $pi); + +$piaLen = count($pia); +$i = 1; + +while($i < $piaLen) +{ + $j = $i+1; + $j = (isset($pia[$j])) ? $j : $i; + + $_GET[$pia[$i]] = $pia[$j]; + + $i = $j + 1; +}; + +class FileNotChangedException extends \Exception {} /** * Simple Javascript minfier, using google closure compiler */ -class JSMin extends BaseMin { +class JSMin { protected $jsRoot; protected $jsGroup; - protected $jsGroupsFile; + protected $configFile; protected $cacheFile; protected $lastModified; protected $requestedTime; protected $cacheModified; - public function __construct(array $config, array $groups) + public function __construct(array $config, string $configFile) { $group = $_GET['g']; + $groups = $config['groups']; $this->jsRoot = $config['js_root']; $this->jsGroup = $groups[$group]; - $this->jsGroupsFile = $config['js_groups_file']; + $this->configFile = $configFile; $this->cacheFile = "{$this->jsRoot}cache/{$group}"; $this->lastModified = $this->getLastModified(); @@ -99,7 +118,7 @@ class JSMin extends BaseMin { protected function closureCall(array $options) { $formFields = http_build_query($options); - + $request = (new Request) ->setMethod('POST') ->setUri('http://closure-compiler.appspot.com/compile') @@ -109,7 +128,7 @@ class JSMin extends BaseMin { 'Content-type' => 'application/x-www-form-urlencoded' ]) ->setBody($formFields); - + $response = wait((new Client)->request($request, [ Client::OP_AUTO_ENCODING => false ])); @@ -128,7 +147,7 @@ class JSMin extends BaseMin { $errorRes = $this->closureCall($options); $errorJson = $errorRes->getBody(); $errorObj = Json::decode($errorJson) ?: (object)[]; - + // Show error if exists if ( ! empty($errorObj->errors) || ! empty($errorObj->serverErrors)) @@ -178,7 +197,7 @@ class JSMin extends BaseMin { //Add this page too, as well as the groups file $modified[] = filemtime(__FILE__); - $modified[] = filemtime($this->jsGroupsFile); + $modified[] = filemtime($this->configFile); rsort($modified); $lastModified = $modified[0]; @@ -227,14 +246,97 @@ class JSMin extends BaseMin { { $this->sendFinalOutput($js, 'application/javascript', $this->lastModified); } + + /** + * Get value of the if-modified-since header + * + * @return int - timestamp to compare for cache control + */ + protected function getIfModified() + { + return (array_key_exists('HTTP_IF_MODIFIED_SINCE', $_SERVER)) + ? strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) + : time(); + } + + /** + * Get value of etag to compare to hash of output + * + * @return string - the etag to compare + */ + protected function getIfNoneMatch() + { + return (array_key_exists('HTTP_IF_NONE_MATCH', $_SERVER)) + ? $_SERVER['HTTP_IF_NONE_MATCH'] + : ''; + } + + /** + * Determine whether or not to send debug version + * + * @return boolean + */ + protected function isNotDebug() + { + return ! $this->isDebugCall(); + } + + /** + * Determine whether or not to send debug version + * + * @return boolean + */ + protected function isDebugCall() + { + return array_key_exists('debug', $_GET); + } + + /** + * Send actual output to browser + * + * @param string $content - the body of the response + * @param string $mimeType - the content type + * @param int $lastModified - the last modified date + * @return void + */ + protected function sendFinalOutput($content, $mimeType, $lastModified) + { + //This GZIPs the CSS for transmission to the user + //making file size smaller and transfer rate quicker + ob_start("ob_gzhandler"); + + $expires = $lastModified + 691200; + $lastModifiedDate = gmdate('D, d M Y H:i:s', $lastModified); + $expiresDate = gmdate('D, d M Y H:i:s', $expires); + + header("Content-Type: {$mimeType}; charset=utf8"); + header("Cache-control: public, max-age=691200, must-revalidate"); + header("Last-Modified: {$lastModifiedDate} GMT"); + header("Expires: {$expiresDate} GMT"); + + echo $content; + + ob_end_flush(); + } + + /** + * Send a 304 Not Modified header + * + * @return void + */ + public static function send304() + { + header("status: 304 Not Modified", true, 304); + } } // -------------------------------------------------------------------------- // ! Start Minifying // -------------------------------------------------------------------------- -$config = require_once('../app/appConf/minify_config.php'); -$groups = require_once($config['js_groups_file']); +$configFile = realpath(__DIR__ . '/../app/appConf/minify_config.php'); +$config = require_once($configFile); +$groups = $config['groups']; $cacheDir = "{$config['js_root']}cache"; if ( ! is_dir($cacheDir)) @@ -249,11 +351,11 @@ if ( ! array_key_exists($_GET['g'], $groups)) try { - new JSMin($config, $groups); + new JSMin($config, $configFile); } catch (FileNotChangedException $e) { - BaseMin::send304(); + JSMin::send304(); } //end of js.php \ No newline at end of file diff --git a/public/min.php b/public/min.php deleted file mode 100644 index 200443ff..00000000 --- a/public/min.php +++ /dev/null @@ -1,121 +0,0 @@ - - * @copyright 2015 - 2017 Timothy J. Warren - * @license http://www.opensource.org/licenses/mit-license.html MIT License - * @version 4.0 - * @link https://github.com/timw4mail/HummingBirdAnimeClient - */ - - -namespace Aviat\EasyMin; - -//Creative rewriting of /g/groupname to ?g=groupname -$pi = $_SERVER['PATH_INFO']; -$pia = explode('/', $pi); - -$piaLen = count($pia); -$i = 1; - -while($i < $piaLen) -{ - $j = $i+1; - $j = (isset($pia[$j])) ? $j : $i; - - $_GET[$pia[$i]] = $pia[$j]; - - $i = $j + 1; -}; - -class FileNotChangedException extends \Exception {} -class BaseMin { - - /** - * Get value of the if-modified-since header - * - * @return int - timestamp to compare for cache control - */ - protected function getIfModified() - { - return (array_key_exists('HTTP_IF_MODIFIED_SINCE', $_SERVER)) - ? strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) - : time(); - } - - /** - * Get value of etag to compare to hash of output - * - * @return string - the etag to compare - */ - protected function getIfNoneMatch() - { - return (array_key_exists('HTTP_IF_NONE_MATCH', $_SERVER)) - ? $_SERVER['HTTP_IF_NONE_MATCH'] - : ''; - } - - /** - * Determine whether or not to send debug version - * - * @return boolean - */ - protected function isNotDebug() - { - return ! $this->isDebugCall(); - } - - /** - * Determine whether or not to send debug version - * - * @return boolean - */ - protected function isDebugCall() - { - return array_key_exists('debug', $_GET); - } - - /** - * Send actual output to browser - * - * @param string $content - the body of the response - * @param string $mimeType - the content type - * @param int $lastModified - the last modified date - * @return void - */ - protected function sendFinalOutput($content, $mimeType, $lastModified) - { - //This GZIPs the CSS for transmission to the user - //making file size smaller and transfer rate quicker - ob_start("ob_gzhandler"); - - $expires = $lastModified + 691200; - $lastModifiedDate = gmdate('D, d M Y H:i:s', $lastModified); - $expiresDate = gmdate('D, d M Y H:i:s', $expires); - - header("Content-Type: {$mimeType}; charset=utf8"); - header("Cache-control: public, max-age=691200, must-revalidate"); - header("Last-Modified: {$lastModifiedDate} GMT"); - header("Expires: {$expiresDate} GMT"); - - echo $content; - - ob_end_flush(); - } - - /** - * Send a 304 Not Modified header - * - * @return void - */ - public static function send304() - { - header("status: 304 Not Modified", true, 304); - } -} \ No newline at end of file diff --git a/public/package.json b/public/package.json index ed97ee5c..f642310a 100644 --- a/public/package.json +++ b/public/package.json @@ -1,14 +1,13 @@ { "scripts": { - "build": "postcss -u postcss-import --autoprefixer.browsers \"> 5%\" -u postcss-cssnext -o css/base.css css/base.myth.css", - "watch": "postcss -u postcss-import --autoprefixer.browsers \"> 5%\" -u postcss-cssnext -w -o css/base.css css/base.myth.css" + "build": "node ./css.js", + "watch": "watch 'npm run build' --filter=./cssfilter.js" }, "devDependencies": { - "autoprefixer": "^6.6.1", - "npm-run-all": "^4.0.0", + "cssnano": "^3.10.0", "postcss-cachify": "^1.3.1", - "postcss-cli": "^3.1", "postcss-cssnext": "^2.9.0", - "postcss-import": "^9.0.0" + "postcss-import": "^9.0.0", + "watch": "^1.0.2" } } diff --git a/public/yarn.lock b/public/yarn.lock index e417fcb3..73d9e289 100644 --- a/public/yarn.lock +++ b/public/yarn.lock @@ -2,16 +2,9 @@ # yarn lockfile v1 -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - -ajv@^4.9.1: - version "4.11.5" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.5.tgz#b6ee74657b993a01dce44b7944d56f485828d5bd" - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" +alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" ansi-regex@^2.0.0: version "2.1.1" @@ -25,95 +18,13 @@ any-promise@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-0.1.0.tgz#830b680aa7e56f33451d4b049f3bd8044498ee27" -any-promise@^1.0.0, any-promise@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - -anymatch@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.0.tgz#a3e52fa39168c825ff57b0248126ce5a8ff95507" - dependencies: - arrify "^1.0.0" - micromatch "^2.1.5" - -aproba@^1.0.3: - version "1.1.1" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab" - -are-we-there-yet@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3" - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.0 || ^1.1.13" - argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" dependencies: sprintf-js "~1.0.2" -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - dependencies: - arr-flatten "^1.0.1" - -arr-flatten@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b" - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - -arrify@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -autoprefixer@^6.0.2, autoprefixer@^6.6.1: +autoprefixer@^6.0.2, autoprefixer@^6.3.1: version "6.7.7" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" dependencies: @@ -124,14 +35,6 @@ autoprefixer@^6.0.2, autoprefixer@^6.6.1: postcss "^5.2.16" postcss-value-parser "^3.2.3" -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - -aws4@^1.2.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" - balanced-match@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.1.0.tgz#b504bd05869b39259dd0c5efc35d843176dccc4a" @@ -144,28 +47,6 @@ balanced-match@^0.4.1, balanced-match@^0.4.2: version "0.4.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" -bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - dependencies: - tweetnacl "^0.14.3" - -binary-extensions@^1.0.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - dependencies: - inherits "~2.0.0" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - brace-expansion@^1.0.0: version "1.1.6" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" @@ -173,34 +54,14 @@ brace-expansion@^1.0.0: balanced-match "^0.4.1" concat-map "0.0.1" -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -browserslist@^1.0.0, browserslist@^1.0.1, browserslist@^1.7.6: +browserslist@^1.0.0, browserslist@^1.0.1, browserslist@^1.5.2, browserslist@^1.7.6: version "1.7.7" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" dependencies: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" -buffer-shims@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - -caniuse-api@^1.5.3: +caniuse-api@^1.5.2, caniuse-api@^1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.3.tgz#5018e674b51c393e4d50614275dc017e27c4a2a2" dependencies: @@ -213,11 +74,7 @@ caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: version "1.0.30000649" resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000649.tgz#1ee1754a6df235450c8b7cd15e0ebf507221a86a" -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -227,50 +84,21 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chokidar@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2" +clap@^1.0.9: + version "1.1.3" + resolved "https://registry.yarnpkg.com/clap/-/clap-1.1.3.tgz#b3bd36e93dd4cbfb395a3c26896352445265c05b" dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - dependencies: - restore-cursor "^2.0.0" - -cli-spinners@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.0.0.tgz#ef987ed3d48391ac3dab9180b406a742180d6e6a" - -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" + chalk "^1.1.3" clone@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" +coa@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.1.tgz#7f959346cfc8719e3f7233cd6852854a7c67d8a3" + dependencies: + q "^1.1.2" color-convert@^0.5.3: version "0.5.3" @@ -307,11 +135,17 @@ color@^0.11.0, color@^0.11.3, color@^0.11.4: color-convert "^1.3.0" color-string "^0.3.0" -combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" +colormin@^1.0.5: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" dependencies: - delayed-stream "~1.0.0" + color "^0.11.0" + css-color-names "0.0.4" + has "^1.0.1" + +colors@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" concat-map@0.0.1: version "0.0.1" @@ -327,39 +161,6 @@ connect-cachify-static@^1.3.0: on-headers "^1.0.0" parseurl "~1" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - -core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.1.1.tgz#817f2c2039347a1e9bf7d090c0923e53f749ca82" - dependencies: - js-yaml "^3.4.3" - minimist "^1.2.0" - object-assign "^4.1.0" - os-homedir "^1.0.1" - parse-json "^2.2.0" - require-from-string "^1.1.0" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - css-color-function@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/css-color-function/-/css-color-function-1.3.0.tgz#72c767baf978f01b8a8a94f42f17ba5d22a776fc" @@ -369,13 +170,55 @@ css-color-function@^1.2.0: debug "~0.7.4" rgb "~0.1.0" -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - dependencies: - assert-plus "^1.0.0" +css-color-names@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" -debug@^2.1.2, debug@^2.2.0, debug@~2: +cssnano@^3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" + dependencies: + autoprefixer "^6.3.1" + decamelize "^1.1.2" + defined "^1.0.0" + has "^1.0.1" + object-assign "^4.0.1" + postcss "^5.0.14" + postcss-calc "^5.2.0" + postcss-colormin "^2.1.8" + postcss-convert-values "^2.3.4" + postcss-discard-comments "^2.0.4" + postcss-discard-duplicates "^2.0.1" + postcss-discard-empty "^2.0.1" + postcss-discard-overridden "^0.1.1" + postcss-discard-unused "^2.2.1" + postcss-filter-plugins "^2.0.0" + postcss-merge-idents "^2.1.5" + postcss-merge-longhand "^2.0.1" + postcss-merge-rules "^2.0.3" + postcss-minify-font-values "^1.0.2" + postcss-minify-gradients "^1.0.1" + postcss-minify-params "^1.0.4" + postcss-minify-selectors "^2.0.4" + postcss-normalize-charset "^1.1.0" + postcss-normalize-url "^3.0.7" + postcss-ordered-values "^2.1.0" + postcss-reduce-idents "^2.2.2" + postcss-reduce-initial "^1.0.0" + postcss-reduce-transforms "^1.0.3" + postcss-svgo "^2.1.1" + postcss-unique-selectors "^2.0.2" + postcss-value-parser "^3.2.3" + postcss-zindex "^2.0.1" + +csso@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" + dependencies: + clap "^1.0.9" + source-map "^0.5.3" + +debug@^2.1.2, debug@~2: version "2.6.3" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" dependencies: @@ -385,136 +228,31 @@ debug@~0.7.4: version "0.7.4" resolved "https://registry.yarnpkg.com/debug/-/debug-0.7.4.tgz#06e1ea8082c2cb14e39806e22e2f6f757f92af39" -decamelize@^1.1.1: +decamelize@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" -deep-extend@~0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" - -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" - -delayed-stream@~1.0.0: +defined@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - -dependency-graph@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.5.0.tgz#71edf7945dbba86c1b19ac982b6afb6476b56dd5" - -duplexer@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - dependencies: - jsbn "~0.1.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" electron-to-chromium@^1.2.7: version "1.3.2" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.2.tgz#b8ce5c93b308db0e92f6d0435c46ddec8f6363ab" -error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.4.3: - version "1.7.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.0" - is-callable "^1.1.3" - is-regex "^1.0.3" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - escape-string-regexp@^1.0.2: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -esprima@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" +esprima@^2.6.0: + version "2.7.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" -event-stream@~3.3.0: - version "3.3.4" - resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" +exec-sh@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.0.tgz#14f75de3f20d286ef933099b2ce50a90359cef10" dependencies: - duplexer "~0.1.1" - from "~0" - map-stream "~0.1.0" - pause-stream "0.0.11" - split "0.3" - stream-combiner "~0.0.4" - through "~2.3.1" - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - dependencies: - is-posix-bracket "^0.1.0" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - dependencies: - fill-range "^2.1.0" - -extend@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - dependencies: - is-extglob "^1.0.0" - -extsprintf@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" - -filename-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" - -fill-range@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^1.1.3" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" + merge "^1.1.3" find@~0: version "0.2.7" @@ -526,160 +264,10 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -for-in@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - dependencies: - for-in "^1.0.1" - -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -from@~0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" - -fs-extra@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - -fs-promise@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/fs-promise/-/fs-promise-2.0.2.tgz#cfea45c80f46480a3fd176213fa22abc8c159521" - dependencies: - any-promise "^1.3.0" - fs-extra "^2.0.0" - mz "^2.6.0" - thenify-all "^1.6.0" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - -fsevents@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.29" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2, function-bind@^1.1.0: +function-bind@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" -gauge@~2.7.1: - version "2.7.3" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.3.tgz#1c23855f962f17b3ad3d0dc7443f304542edfe09" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" - -get-stdin@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - -getpass@^0.1.1: - version "0.1.6" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" - dependencies: - assert-plus "^1.0.0" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - dependencies: - is-glob "^2.0.0" - -glob@^7.0.3, glob@^7.0.5: - version "7.1.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" @@ -690,260 +278,48 @@ has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - has@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" dependencies: function-bind "^1.0.2" -hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -hosted-git-info@^2.1.4: - version "2.4.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.4.1.tgz#4b0445e41c004a8bd1337773a4ff790ca40318c8" - -http-signature@~1.1.0: +html-comment-regex@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" indexes-of@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@^2.0.1, 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" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.0.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - -is-dotfile@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d" - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - dependencies: - number-is-nan "^1.0.0" - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - dependencies: - is-extglob "^1.0.0" - -is-number@^2.0.2, is-number@^2.1.0: +is-absolute-url@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + +is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + +is-svg@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" dependencies: - kind-of "^3.0.2" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - -is-regex@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - dependencies: - has "^1.0.1" - -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - -isarray@1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + html-comment-regex "^1.1.0" isnumeric@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/isnumeric/-/isnumeric-0.2.0.tgz#a2347ba360de19e33d0ffd590fddf7755cbf2e64" -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - dependencies: - isarray "1.0.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - -jodid25519@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967" - dependencies: - jsbn "~0.1.0" - js-base64@^2.1.9: version "2.1.9" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" -js-yaml@^3.4.3: - version "3.8.3" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.3.tgz#33a05ec481c850c8875929166fe1beb61c728766" +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 "^3.1.1" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -jsonfile@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - -jsprim@^1.2.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" - dependencies: - assert-plus "1.0.0" - extsprintf "1.0.2" - json-schema "0.2.3" - verror "1.3.6" - -kind-of@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" - dependencies: - is-buffer "^1.0.2" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - dependencies: - invert-kv "^1.0.0" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" + esprima "^2.6.0" lodash._reinterpolate@~3.0.0: version "3.0.0" @@ -970,64 +346,23 @@ lodash.uniq@^4.3.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" -lodash@^4.1.0, lodash@^4.17.4: +lodash@^4.17.4: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - dependencies: - chalk "^1.0.0" - -lru-cache@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" - dependencies: - pseudomap "^1.0.1" - yallist "^2.0.0" - -map-stream@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" +macaddress@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" math-expression-evaluator@^1.2.14: version "1.2.16" resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.16.tgz#b357fa1ca9faefb8e48d10c14ef2bcb2d9f0a7c9" -micromatch@^2.1.5: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" +merge@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" -mime-db@~1.27.0: - version "1.27.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" - -mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.15" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" - dependencies: - mime-db "~1.27.0" - -mimic-fn@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" - -minimatch@^3.0.0, minimatch@^3.0.2: +minimatch@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: @@ -1041,7 +376,7 @@ minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -"mkdirp@>=0.5 0", mkdirp@^0.5.1: +mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1051,227 +386,47 @@ ms@0.7.2: version "0.7.2" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" -mz@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/mz/-/mz-2.6.0.tgz#c8b8521d958df0a4f2768025db69c719ee4ef1ce" - dependencies: - any-promise "^1.0.0" - object-assign "^4.0.1" - thenify-all "^1.0.0" - -nan@^2.3.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.1.tgz#8c84f7b14c96b89f57fbc838012180ec8ca39a01" - -node-pre-gyp@^0.6.29: - version "0.6.34" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7" - dependencies: - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.0.2" - rc "^1.1.7" - request "^2.81.0" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2: - version "2.3.6" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - dependencies: - remove-trailing-separator "^1.0.1" - normalize-range@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" -npm-run-all@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.0.2.tgz#a84669348e6db6ccbe052200b4cdb6bfe034a4fe" +normalize-url@^1.4.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" dependencies: - chalk "^1.1.3" - cross-spawn "^5.0.1" - minimatch "^3.0.2" - ps-tree "^1.0.1" - read-pkg "^2.0.0" - shell-quote "^1.6.1" - string.prototype.padend "^3.0.0" - -npmlog@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.1" - set-blocking "~2.0.0" + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - -oauth-sign@~0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - on-headers@^1.0.0: 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.3: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - dependencies: - wrappy "1" - onecolor@~2.4.0: version "2.4.2" resolved "https://registry.yarnpkg.com/onecolor/-/onecolor-2.4.2.tgz#a53ec3ff171c3446016dd5210d1a1b544bf7d874" -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - dependencies: - mimic-fn "^1.0.0" - -ora@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ora/-/ora-1.2.0.tgz#32fb3183500efe83f5ea89101785f0ee6060fec9" - dependencies: - chalk "^1.1.1" - cli-cursor "^2.1.0" - cli-spinners "^1.0.0" - log-symbols "^1.0.2" - -os-homedir@^1.0.0, os-homedir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - -os-tmpdir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - -osenv@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - dependencies: - error-ex "^1.2.0" - parseurl@~1: version "1.3.1" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - dependencies: - pify "^2.0.0" - -pause-stream@0.0.11: - version "0.0.11" - resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" - dependencies: - through "~2.3" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - -pify@^2.0.0, pify@^2.3.0: +pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - pixrem@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/pixrem/-/pixrem-3.0.2.tgz#30d1bafb4c3bdce8e9bb4bd56a13985619320c34" @@ -1309,7 +464,7 @@ postcss-cachify@^1.3.1: debug "^2.1.2" postcss "^5.0.0" -postcss-calc@^5.0.0: +postcss-calc@^5.0.0, postcss-calc@^5.2.0: version "5.3.1" resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" dependencies: @@ -1317,23 +472,6 @@ postcss-calc@^5.0.0: postcss-message-helpers "^2.0.0" reduce-css-calc "^1.2.6" -postcss-cli@^3.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/postcss-cli/-/postcss-cli-3.1.1.tgz#cccc4f8db12ad7e3058bf87aade68eaef2b4b7f1" - dependencies: - chalk "^1.1.3" - chokidar "^1.6.1" - dependency-graph "^0.5.0" - fs-promise "^2.0.2" - get-stdin "^5.0.1" - globby "^6.1.0" - ora "^1.1.0" - postcss "^5.2.16" - postcss-load-config "^1.1.0" - postcss-reporter "^3.0.0" - read-cache "^1.0.0" - yargs "^7.0.2" - postcss-color-function@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/postcss-color-function/-/postcss-color-function-2.0.1.tgz#9ad226f550e8a7c7f8b8a77860545b6dd7f55241" @@ -1399,6 +537,21 @@ postcss-color-rgba-fallback@^2.0.0: postcss-value-parser "^3.0.2" rgb-hex "^1.0.0" +postcss-colormin@^2.1.8: + 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.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" + postcss-cssnext@^2.9.0: version "2.10.0" resolved "https://registry.yarnpkg.com/postcss-cssnext/-/postcss-cssnext-2.10.0.tgz#30e0dddcfb978eae2523a340aa2c8ba49c5d7103" @@ -1455,6 +608,44 @@ postcss-custom-selectors@^3.0.0: postcss "^5.0.0" postcss-selector-matches "^2.0.0" +postcss-discard-comments@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" + dependencies: + postcss "^5.0.14" + +postcss-discard-duplicates@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" + dependencies: + postcss "^5.0.4" + +postcss-discard-empty@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" + dependencies: + postcss "^5.0.14" + +postcss-discard-overridden@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" + dependencies: + postcss "^5.0.16" + +postcss-discard-unused@^2.2.1: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" + dependencies: + postcss "^5.0.14" + uniqs "^2.0.0" + +postcss-filter-plugins@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" + dependencies: + postcss "^5.0.4" + uniqid "^4.0.0" + postcss-font-family-system-ui@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/postcss-font-family-system-ui/-/postcss-font-family-system-ui-1.0.2.tgz#3e1a5e3fb7e31e5e9e71439ccb0e8014556927c7" @@ -1487,45 +678,101 @@ postcss-initial@^1.3.1: lodash.template "^4.2.4" postcss "^5.0.19" -postcss-load-config@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - postcss-load-options "^1.2.0" - postcss-load-plugins "^2.3.0" - -postcss-load-options@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - -postcss-load-plugins@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" - dependencies: - cosmiconfig "^2.1.1" - object-assign "^4.1.0" - postcss-media-minmax@^2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-2.1.2.tgz#444c5cf8926ab5e4fd8a2509e9297e751649cdf8" dependencies: postcss "^5.0.4" +postcss-merge-idents@^2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" + dependencies: + has "^1.0.1" + postcss "^5.0.10" + postcss-value-parser "^3.1.1" + +postcss-merge-longhand@^2.0.1: + 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" + +postcss-merge-rules@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" + dependencies: + browserslist "^1.5.2" + caniuse-api "^1.5.2" + postcss "^5.0.4" + postcss-selector-parser "^2.2.2" + vendors "^1.0.0" + postcss-message-helpers@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" +postcss-minify-font-values@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" + dependencies: + object-assign "^4.0.1" + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-minify-gradients@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" + dependencies: + postcss "^5.0.12" + postcss-value-parser "^3.3.0" + +postcss-minify-params@^1.0.4: + version "1.2.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.2" + postcss-value-parser "^3.0.2" + uniqs "^2.0.0" + +postcss-minify-selectors@^2.0.4: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" + dependencies: + alphanum-sort "^1.0.2" + has "^1.0.1" + postcss "^5.0.14" + postcss-selector-parser "^2.0.0" + postcss-nesting@^2.0.5: version "2.3.1" resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-2.3.1.tgz#94a6b6a4ef707fbec20a87fee5c957759b4e01cf" dependencies: postcss "^5.0.19" +postcss-normalize-charset@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" + dependencies: + postcss "^5.0.5" + +postcss-normalize-url@^3.0.7: + version "3.0.8" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^1.4.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + +postcss-ordered-values@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.1" + postcss-pseudo-class-any-link@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-1.0.0.tgz#903239196401d335fe73ac756186fa62e693af26" @@ -1539,21 +786,33 @@ postcss-pseudoelements@^3.0.0: dependencies: postcss "^5.0.4" +postcss-reduce-idents@^2.2.2: + version "2.4.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-reduce-initial@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" + dependencies: + postcss "^5.0.4" + +postcss-reduce-transforms@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" + dependencies: + has "^1.0.1" + postcss "^5.0.8" + postcss-value-parser "^3.0.1" + postcss-replace-overflow-wrap@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-1.0.0.tgz#f0a03b31eab9636a6936bfd210e2aef1b434a643" dependencies: postcss "^5.0.16" -postcss-reporter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-reporter/-/postcss-reporter-3.0.0.tgz#09ea0f37a444c5693878606e09b018ebeff7cf8f" - dependencies: - chalk "^1.0.0" - lodash "^4.1.0" - log-symbols "^1.0.2" - postcss "^5.0.0" - postcss-selector-matches@^2.0.0: version "2.0.5" resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-2.0.5.tgz#fa0f43be57b68e77aa4cd11807023492a131027f" @@ -1576,7 +835,7 @@ postcss-selector-parser@^1.1.4: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^2.2.0: +postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.0, postcss-selector-parser@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" dependencies: @@ -1584,11 +843,36 @@ postcss-selector-parser@^2.2.0: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-value-parser@^3.0.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: +postcss-svgo@^2.1.1: + version "2.1.6" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" + dependencies: + is-svg "^2.0.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + svgo "^0.7.0" + +postcss-unique-selectors@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" -postcss@^5.0.0, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.19, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.3, postcss@^5.0.4, postcss@^5.1.1, postcss@^5.2.0, postcss@^5.2.12, postcss@^5.2.16: +postcss-zindex@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" + dependencies: + has "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss@^5.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.19, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.3, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.8, postcss@^5.1.1, postcss@^5.2.0, postcss@^5.2.12, postcss@^5.2.16: version "5.2.16" resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.16.tgz#732b3100000f9ff8379a48a53839ed097376ad57" dependencies: @@ -1597,13 +881,9 @@ postcss@^5.0.0, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.19, postcss@^5.0. source-map "^0.5.6" supports-color "^3.2.3" -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" promise-each@^2.2.0: version "2.2.0" @@ -1611,39 +891,16 @@ promise-each@^2.2.0: dependencies: any-promise "^0.1.0" -ps-tree@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014" +q@^1.1.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" + +query-string@^4.1.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.2.tgz#ec0fd765f58a50031a3968c2431386f8947a5cdd" dependencies: - event-stream "~3.3.0" - -pseudomap@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - -randomatic@^1.1.3: - version "1.1.6" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb" - dependencies: - is-number "^2.0.2" - kind-of "^3.0.2" - -rc@^1.1.7: - version "1.2.1" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" read-cache@^1.0.0: version "1.0.0" @@ -1651,50 +908,6 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.2, readable-stream@^2.1.4: - version "2.2.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.6.tgz#8b43aed76e71483938d12a8d46c6cf1a00b1f816" - dependencies: - buffer-shims "^1.0.0" - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readdirp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" - dependencies: - graceful-fs "^4.1.2" - minimatch "^3.0.2" - readable-stream "^2.0.2" - set-immediate-shim "^1.0.1" - reduce-css-calc@^1.2.6, reduce-css-calc@^1.2.7: version "1.3.0" resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" @@ -1709,77 +922,12 @@ reduce-function-call@^1.0.1: dependencies: balanced-match "^0.4.2" -regex-cache@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" - dependencies: - is-equal-shallow "^0.1.3" - is-primitive "^2.0.0" - -remove-trailing-separator@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" - -repeat-element@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" - -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - -request@^2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - -require-from-string@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - resolve@^1.1.7: version "1.3.2" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235" dependencies: path-parse "^1.0.5" -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - rgb-hex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/rgb-hex/-/rgb-hex-1.0.0.tgz#bfaf8cd9cd9164b5a26d71eb4f15a0965324b3c1" @@ -1788,150 +936,34 @@ rgb@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/rgb/-/rgb-0.1.0.tgz#be27b291e8feffeac1bd99729721bfa40fc037b5" -rimraf@2, rimraf@^2.5.1, rimraf@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" +sax@~1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" dependencies: - glob "^7.0.5" + is-plain-obj "^1.0.0" -safe-buffer@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - -set-immediate-shim@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - -shell-quote@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -source-map@^0.5.6: +source-map@^0.5.3, source-map@^0.5.6: 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" - dependencies: - spdx-license-ids "^1.0.2" - -spdx-expression-parse@~1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" - -spdx-license-ids@^1.0.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" - -split@0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" - dependencies: - through "2" - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" -sshpk@^1.7.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.11.0.tgz#2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jodid25519 "^1.0.0" - jsbn "~0.1.0" - tweetnacl "~0.14.0" +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" -stream-combiner@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" - dependencies: - duplexer "~0.1.1" - -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string.prototype.padend@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.4.3" - function-bind "^1.0.2" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - -stringstream@~0.0.4: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: ansi-regex "^2.0.0" -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -1942,71 +974,36 @@ supports-color@^3.2.3: dependencies: has-flag "^1.0.0" -tar-pack@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" +svgo@^0.7.0: + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -thenify-all@^1.0.0, thenify-all@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" - dependencies: - thenify ">= 3.1.0 < 4" - -"thenify@>= 3.1.0 < 4": - version "3.2.1" - resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.2.1.tgz#251fd1c80aff6e5cf57cb179ab1fcb724269bd11" - dependencies: - any-promise "^1.0.0" - -through@2, through@~2.3, through@~2.3.1: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - -tough-cookie@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" - dependencies: - punycode "^1.4.1" + coa "~1.0.1" + colors "~1.1.2" + csso "~2.3.1" + js-yaml "~3.7.0" + mkdirp "~0.5.1" + sax "~1.2.1" + whet.extend "~0.9.9" traverse-chain@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/traverse-chain/-/traverse-chain-0.1.0.tgz#61dbc2d53b69ff6091a12a168fd7d433107e40f1" -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - uniq@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" +uniqid@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" + dependencies: + macaddress "^0.2.8" + +uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + units-css@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/units-css/-/units-css-0.4.0.tgz#d6228653a51983d7c16ff28f8b9dc3b1ffed3a07" @@ -2014,86 +1011,21 @@ units-css@^0.4.0: isnumeric "^0.2.0" viewport-dimensions "^0.2.0" -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - -uuid@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" - -validate-npm-package-license@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" - dependencies: - spdx-correct "~1.0.0" - spdx-expression-parse "~1.0.0" - -verror@1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" - dependencies: - extsprintf "1.0.2" +vendors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" viewport-dimensions@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/viewport-dimensions/-/viewport-dimensions-0.2.0.tgz#de740747db5387fd1725f5175e91bac76afdf36c" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - -which@^1.2.9: - version "1.2.14" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad" - dependencies: - string-width "^1.0.1" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: +watch@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - -yallist@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + resolved "https://registry.yarnpkg.com/watch/-/watch-1.0.2.tgz#340a717bde765726fa0aa07d721e0147a551df0c" dependencies: - camelcase "^3.0.0" + exec-sh "^0.2.0" + minimist "^1.2.0" -yargs@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.0.2.tgz#115b97df1321823e8b8648e8968c782521221f67" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" +whet.extend@~0.9.9: + version "0.9.9" + resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"