├── .gitignore ├── LICENSE ├── README.md ├── css └── bare.min.css ├── icons ├── chevron-down.svg ├── close.svg ├── done.svg └── hamburger.svg ├── less ├── _anchor-link.less ├── _blockquote.less ├── _button.less ├── _card.less ├── _code.less ├── _footer.less ├── _form.less ├── _grid.less ├── _input.less ├── _layout.less ├── _layouts.less ├── _list.less ├── _lists.less ├── _navigation.less ├── _reset.less ├── _table.less ├── _tag.less ├── _tooltip.less ├── _transition.less ├── _transitions.less ├── _typography.less ├── _utility-attributes.less ├── _utility-classes.less ├── _variables.less └── bare.less ├── package.json ├── template.html └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | *.log 2 | node_modules 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 longsien 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [BareCSS](http://barecss.com) 2 | A classless CSS framework 3 | 4 | Go to [barecss.com](http://barecss.com) for examples and documentation. 5 | 6 | ## Quick start 7 | 8 | BareCSS uses a simple two step process to get started: 9 | 10 | #### Easy mode: 11 | 12 | - [Download the latest release](https://github.com/longsien/BareCSS/releases/download/v1.1.0/BareCSS-v1.1.0.zip) 13 | - Link `bare.min.css` to your HTML file 14 | 15 | #### Custom mode: 16 | 17 | - [Download the latest release](https://github.com/longsien/BareCSS/releases/download/v1.1.0/BareCSS-v1.1.0.zip) 18 | - Edit the `bare.less` file to add/remove components. 19 | - Compile and link the resulting CSS in your HTML file 20 | 21 | ## What's included 22 | 23 | ``` 24 | BareCSS/ 25 | ├── template.html 26 | ├── css/ 27 | │ └── bare.min.css 28 | ├── icons/ 29 | │ ├── chevron-down.svg 30 | │ ├── close.svg 31 | │ ├── done.svg 32 | │ └── hamburger.svg 33 | └── less/ 34 | ├── _anchor-link.less 35 | ├── _blockquote.less 36 | ├── _button.less 37 | ├── _card.less 38 | ├── _code.less 39 | ├── _footer.less 40 | ├── _grid.less 41 | ├── _input.less 42 | ├── _layout.less 43 | ├── _list.less 44 | ├── _navigation.less 45 | ├── _reset.less 46 | ├── _table.less 47 | ├── _tooltip.less 48 | ├── _transition.less 49 | ├── _typography.less 50 | ├── _utility-attributes.less 51 | ├── _variables.less 52 | └── bare.less 53 | ``` 54 | 55 | ## Creator 56 | 57 | __Long Sien__ 58 | 59 | - [https://github.com/longsien](https://github.com/longsien) 60 | -------------------------------------------------------------------------------- /css/bare.min.css: -------------------------------------------------------------------------------- 1 | html{font-family:sans-serif;font-size:10px;box-sizing:border-box;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit;position:relative}:focus{outline:0}body{color:#2e3538;margin:0;font-size:1.4rem;line-height:1.8;font-weight:300}@media (max-width:50rem){body{overflow-x:hidden}}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}h1,h2,h3,h4,h5,h6{margin:0 0 2rem;font-weight:200}img{border:0}::-moz-selection{background-color:#679;color:#fff}::selection{background-color:#679;color:#fff}a:not([class]),a[xx]{color:inherit;text-decoration:none;display:inline-block;z-index:1}p a:not([class]):not([btn]):before,p a[xx]:not([btn]):before{content:"";display:inline-block;width:100%;height:100%;background:#fd0;position:absolute;opacity:.5;-webkit-transform:scale3d(1,.1,1);transform:scale3d(1,.1,1);-webkit-transform-origin:bottom;transform-origin:bottom;z-index:-1}p a:not([class]):not([btn]):hover:before,p a[xx]:not([btn]):hover:before{-webkit-transform:none;transform:none}blockquote:not([class]),blockquote[xx]{margin:2rem 0;padding:1rem 2rem;border-left:4px solid #679}[btn],button:not([class]),button[xx],input[type=submit]{cursor:pointer;color:#679;display:inline-block;padding:1.4rem 2rem;background:#fff;border:1px solid #679;border-radius:2px;box-shadow:0 0 0 transparent;text-transform:uppercase;text-decoration:none;text-align:center;font-size:1.2rem;font-weight:700;line-height:1rem;margin:0 1rem 1rem 0;-webkit-appearance:none}[btn]:before,button:not([class]):before,button[xx]:before,input[type=submit]:before{content:"";position:absolute;z-index:-1;opacity:0;width:100%;height:100%;left:0;top:0;-webkit-transform:scale3d(1.2,1.2,1.2);transform:scale3d(1.2,1.2,1.2);background:#679}[btn]:not(:disabled):hover,button:not([class]):not(:disabled):hover,button[xx]:not(:disabled):hover,input[type=submit]:not(:disabled):hover{box-shadow:2px 2px 4px rgba(0,0,0,.3);background:#f4f5f6}[btn]:not(:disabled):hover:active,button:not([class]):not(:disabled):hover:active,button[xx]:not(:disabled):hover:active,input[type=submit]:not(:disabled):hover:active{box-shadow:none;-webkit-transition:none;transition:none}[btn][primary],button:not([class])[primary],button[xx][primary],input[type=submit][primary]{border-color:#5a6987;background:#679;color:#fff;font-weight:700}[btn][primary]:not(:disabled):hover,button:not([class])[primary]:not(:disabled):hover,button[xx][primary]:not(:disabled):hover,input[type=submit][primary]:not(:disabled):hover{background:#5a6987}[btn][round],button:not([class])[round],button[xx][round],input[type=submit][round]{border-radius:4rem}@media (max-width:50rem){[btn][m-full],button:not([class])[m-full],button[xx][m-full],input[type=submit][m-full]{width:100%}}[btn].disabled,[btn]:disabled,button:not([class]).disabled,button:not([class]):disabled,button[xx].disabled,button[xx]:disabled,input[type=submit].disabled,input[type=submit]:disabled{border-color:#e3e6e8;background:#e3e6e8;color:#abb5ba;cursor:default}card{background:#fff;display:block;padding:2rem;box-shadow:0 1px 4px 0 rgba(0,0,0,.2);border-radius:2px;margin-bottom:2rem}card hr:not([class]),card hr[xx]{margin:1rem 0}card:last-child{margin-bottom:0}card>img:not([class]),card>img[xx]{width:calc(100% + 4rem);max-width:none;margin:0 0 2rem -2rem;display:block}card>img:not([class]):first-child,card>img[xx]:first-child{margin:-2rem 0 2rem -2rem;border-top-left-radius:2px;border-top-right-radius:2px}card>img:not([class]):last-child,card>img[xx]:last-child{margin:0 0 -2rem -2rem;border-bottom-left-radius:2px;border-bottom-right-radius:2px}code:not([class]),code[xx]{display:inline-block;background:#f4f5f6;border:1px solid #e3e6e8;padding:0 .5rem;color:#454f54;font-size:1.2rem;line-height:1.8;font-family:monospace;border-radius:2px;text-transform:none;font-weight:300}pre:not([class]) code,pre[xx] code{padding:2rem;border:none;border-left:4px solid #679;border-radius:0;width:100%;display:block}footer{color:#fff;width:100%;max-width:90rem;margin:auto;padding:2rem;overflow:visible}footer:before{content:"";background:#679;width:102vw;height:100%;position:absolute;left:50%;top:0;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}grid{display:block;font-size:0;width:auto;margin:-1rem}grid grid:not(:first-child){margin:1rem -1rem 0}[col="1/12"]{width:8.33333333%}[col="2/12"],[col="1/6"]{width:16.66666667%}[col="3/12"],[col="1/4"]{width:25%}[col="4/12"],[col="2/6"],[col="1/3"]{width:33.33333333%}[col="5/12"]{width:41.66666667%}[col="6/12"],[col="3/6"],[col="2/4"],[col="1/2"]{width:50%}[col="7/12"]{width:58.33333333%}[col="8/12"],[col="4/6"],[col="2/3"]{width:66.66666667%}[col="9/12"],[col="3/4"]{width:75%}[col="10/12"],[col="5/6"]{width:83.33333333%}[col="11/12"]{width:91.66666667%}[col="1/1"]{width:100%}[col]{display:inline-block;font-size:1.4rem;padding:1rem;vertical-align:top}@media (max-width:50rem){[col]:not([fx]){width:100%}}label:not([class]),label[xx]{display:inline-block;width:100%;text-transform:uppercase;font-size:1.2rem;font-weight:400;margin-top:1rem}label:not([class]):first-child,label[xx]:first-child{margin-top:0}input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit]):not([class]),input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit])[xx]{display:inline-block;background:0 0;width:100%;padding:.5rem 0 1rem;margin-bottom:2rem;border:none;border-bottom:1px solid #e3e6e8;font-size:1.4rem;font-weight:300;border-radius:0}input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit]):not([class]):focus,input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit]):not([class]):hover,input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit])[xx]:focus,input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit])[xx]:hover{color:#679;border-color:#679;outline:0}textarea:not([class]),textarea[xx]{display:inline-block;background:0 0;width:100%;padding:.5rem 0 1rem;margin-bottom:2rem;border:none;border-bottom:1px solid #e3e6e8;font-size:1.4rem;font-weight:300;border-radius:0;min-height:8rem;border-right:1px solid #e3e6e8;padding-right:2rem;border-bottom-right-radius:.5rem}textarea:not([class]):focus,textarea:not([class]):hover,textarea[xx]:focus,textarea[xx]:hover{color:#679;border-color:#679;outline:0}select:not([class]),select[xx]{padding:.5rem 3rem .5rem 1rem;display:block;width:100%;border:1px solid #e3e6e8;background:#fff url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M14.83%2016.42L24%2025.59l9.17-9.17L36%2019.25l-12%2012-12-12z%22%2F%3E%3C%2Fsvg%3E) no-repeat right 1rem center;background-size:2rem;border-radius:2px;height:4rem;font-size:1.4rem;font-weight:300;text-indent:.5rem;margin:.5rem 0 2rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}select:not([class]):focus,select:not([class]):hover,select[xx]:focus,select[xx]:hover{border-color:#679;outline:0}input[type=checkbox]:not([class]),input[type=checkbox][xx],input[type=radio]:not([class]),input[type=radio][xx]{z-index:2;opacity:0;margin-right:-2rem;width:2rem;height:2rem;vertical-align:middle;cursor:pointer}input[type=checkbox]:not([class])+label,input[type=checkbox][xx]+label,input[type=radio]:not([class])+label,input[type=radio][xx]+label{width:auto;text-transform:none}input[type=checkbox]:not([class])+label:before,input[type=checkbox][xx]+label:before,input[type=radio]:not([class])+label:before,input[type=radio][xx]+label:before{content:"";display:inline-block;width:2rem;height:2rem;border:1px solid #abb5ba;background:#fff;vertical-align:middle;margin-right:1rem}input[type=checkbox]:not([class])+label:after,input[type=checkbox][xx]+label:after,input[type=radio]:not([class])+label:after,input[type=radio][xx]+label:after{content:"";position:absolute;opacity:0;visibility:hidden;pointer-events:none;width:1.6rem;height:1.6rem;left:2px;top:4px;-webkit-transform:scale(0);transform:scale(0)}input[type=radio]:not([class])+label,input[type=radio][xx]+label{font-size:1.4rem;font-weight:200}input[type=radio]:not([class])+label:before,input[type=radio][xx]+label:before{border-radius:100%}input[type=radio]:not([class]):checked+label:before,input[type=radio][xx]:checked+label:before{background:#679;border-color:#679}input[type=radio]:not([class]):checked+label:after,input[type=radio][xx]:checked+label:after{opacity:1;visibility:visible;background:#679;border:1px solid #fff;border-radius:100%;-webkit-transform:scale(1);transform:scale(1);top:.5rem}input[type=checkbox]:not([class])+label,input[type=checkbox][xx]+label{font-size:1.4rem;font-weight:200}input[type=checkbox]:not([class])+label:before,input[type=checkbox][xx]+label:before{border-radius:2px}input[type=checkbox]:not([class])+label:after,input[type=checkbox][xx]+label:after{background:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M9%2016.2L4.8%2012l-1.4%201.4L9%2019%2021%207l-1.4-1.4L9%2016.2z%22%2F%3E%3C%2Fsvg%3E) no-repeat center center;border-radius:100%;background-size:100%}input[type=checkbox]:not([class]):checked+label:before,input[type=checkbox][xx]:checked+label:before{background:#679;border-color:#679}input[type=checkbox]:not([class]):checked+label:after,input[type=checkbox][xx]:checked+label:after{opacity:1;visibility:visible;left:2px;top:.5rem;-webkit-transform:scale(1);transform:scale(1)}img:not([class]),img[xx]{height:auto;max-width:100%}section:not([class]),section[xx]{margin:auto;padding:4rem 2rem;width:100%;max-width:90rem}p:not([class]),p[xx]{margin:0 0 2rem}p:not([class]):last-child,p[xx]:last-child{margin:0}hr:not([class]),hr[xx]{background:#e3e6e8;border:none;width:100%;height:1px;margin:4rem 0}ol:not([class]),ol[xx],ul:not([class]),ul[xx]{padding-left:2rem;margin:0 0 2rem}ol:not([class]) ol,ol:not([class]) ul,ol[xx] ol,ol[xx] ul,ul:not([class]) ol,ul:not([class]) ul,ul[xx] ol,ul[xx] ul{margin-bottom:0}ul:not([class]),ul[xx]{list-style:disc}ul:not([class]) ul,ul[xx] ul{list-style:circle}ol:not([class]),ol[xx]{list-style:decimal}ol:not([class]) ol,ol[xx] ol{list-style:lower-alpha}nav:not([class]),nav[xx]{background:#fff;color:#2e3538;padding:0 2rem;border-bottom:1px solid #679;z-index:10;min-height:4.4rem}nav:not([class])[fx],nav[xx][fx]{background:rgba(255,255,255,.95);position:fixed;top:0;left:0;right:0;z-index:11}nav:not([class]) label,nav[xx] label{max-width:90rem;margin:auto;display:block}nav:not([class]) label>input,nav[xx] label>input{display:none}nav:not([class]) ul,nav[xx] ul{padding:0 2rem;margin:0;font-size:0;text-align:right}nav:not([class]) ul li,nav[xx] ul li{display:inline-block;font-size:1.6rem}@media (min-width:50.1rem){nav:not([class]) ul li:hover menu,nav:not([class]) ul menu:hover,nav[xx] ul li:hover menu,nav[xx] ul menu:hover{visibility:visible;opacity:1;-webkit-transform:translate3d(0,-1rem,0);transform:translate3d(0,-1rem,0);pointer-events:auto}}nav:not([class]) ul a,nav[xx] ul a{text-decoration:none;text-transform:none;padding:.8rem 2rem .4rem;border-bottom:4px solid transparent;display:block;cursor:pointer;font-weight:300}@media (min-width:50.1rem){nav:not([class]) ul a:not(:only-child),nav[xx] ul a:not(:only-child){background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M14.83%2016.42L24%2025.59l9.17-9.17L36%2019.25l-12%2012-12-12z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 1.5rem;background-size:2rem;padding-right:3rem}}nav:not([class]) ul a:hover,nav[xx] ul a:hover{color:#679;border-color:#679}nav:not([class]) menu,nav[xx] menu{padding:0;margin:0;background:#fff;z-index:2;text-align:left;white-space:nowrap;min-width:100%}@media (min-width:50.1rem){nav:not([class]) menu,nav[xx] menu{visibility:hidden;opacity:0;position:absolute;top:100%;left:0;box-shadow:0 1px 4px 0 rgba(0,0,0,.2);-webkit-transform:translate3d(0,-2rem,0);transform:translate3d(0,-2rem,0);pointer-events:none}}nav:not([class]) menu menuitem,nav[xx] menu menuitem{display:block;border-left:4px solid transparent}nav:not([class]) menu menuitem:hover,nav[xx] menu menuitem:hover{border-color:#679;background-color:#f4f5f6}nav:not([class]) menu menuitem:hover a,nav[xx] menu menuitem:hover a{-webkit-transform:translate3d(.5rem,0,0);transform:translate3d(.5rem,0,0)}nav:not([class]) menu menuitem a,nav[xx] menu menuitem a{text-transform:none;padding:.5rem 2rem .5rem 1.6rem;border:none;font-size:1.2rem}nav:not([class]) header:after,nav:not([class]) header:before,nav[xx] header:after,nav[xx] header:before{content:"";position:absolute;top:0;right:1rem;width:4.4rem;height:4.4rem;display:none;background-size:3rem;background-position:center center;background-repeat:no-repeat}nav:not([class]) header:before,nav[xx] header:before{background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20fill%3D%22%232e3538%22%20d%3D%22M6%2036h36v-4H6v4zm0-10h36v-4H6v4zm0-14v4h36v-4H6z%22%2F%3E%3C%2Fsvg%3E)}nav:not([class]) header:after,nav[xx] header:after{background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M38%2012.83L35.17%2010%2024%2021.17%2012.83%2010%2010%2012.83%2021.17%2024%2010%2035.17%2012.83%2038%2024%2026.83%2035.17%2038%2038%2035.17%2026.83%2024z%22%2F%3E%3C%2Fsvg%3E);opacity:0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}nav:not([class]) header a,nav[xx] header a{position:absolute;left:2rem;top:1rem;bottom:1rem;cursor:pointer;z-index:2;font-size:1.6rem;text-decoration:none}nav:not([class]) header a img,nav[xx] header a img{height:2rem;vertical-align:middle;top:-1px;margin-right:1rem}@media (max-width:50rem){body{padding-top:4.4rem}nav:not([class]),nav[xx]{position:fixed;padding:0;top:0;left:0;right:0}nav:not([class]) header,nav[xx] header{position:absolute;top:0;left:0;right:0;bottom:0}nav:not([class]) header:after,nav:not([class]) header:before,nav[xx] header:after,nav[xx] header:before{display:block}nav:not([class]) label,nav[xx] label{height:4.4rem}nav:not([class]) label>ul,nav[xx] label>ul{position:fixed;top:4.4rem;right:0;bottom:0;padding:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);border-top:1px solid #679;text-align:left;background:#fff;box-shadow:0 1px 4px 0 rgba(0,0,0,.2);overflow-x:visible;overflow-y:auto}nav:not([class]) label>ul li,nav[xx] label>ul li{display:block;border-top:1px solid #e3e6e8}nav:not([class]) label>ul a,nav[xx] label>ul a{padding:1rem 6rem 1rem 2rem;border:none}nav:not([class]) label input:checked~ul,nav[xx] label input:checked~ul{-webkit-transform:none;transform:none}nav:not([class]) label input:checked~header:before,nav[xx] label input:checked~header:before{-webkit-transform:rotate(-180deg);transform:rotate(-180deg);opacity:0}nav:not([class]) label input:checked~header:after,nav[xx] label input:checked~header:after{-webkit-transform:none;transform:none;opacity:1}nav:not([class]) label menu menuitem,nav[xx] label menu menuitem{border-color:#e3e6e8}nav:not([class]) label menu a,nav[xx] label menu a{padding-left:4rem}}table:not([class]),table[xx]{width:100%;border-collapse:collapse;border-spacing:0;margin-bottom:2rem;text-align:left;overflow:hidden}table:not([class]) td,table:not([class]) th,table[xx] td,table[xx] th{border-bottom:2px solid #e3e6e8;padding:1rem}table:not([class]) th,table[xx] th{font-weight:700;color:#454f54}table:not([class]) th:before,table[xx] th:before{content:"";width:100%;height:10000%;position:absolute;display:block;top:0;left:0;background:#f4f5f6;z-index:-1;opacity:0;visibility:hidden}table:not([class]) th:hover:before,table[xx] th:hover:before{opacity:1;visibility:visible}table:not([class]) td,table[xx] td{border-bottom-width:1px}table:not([class]) tbody tr:hover,table[xx] tbody tr:hover{background:#f4f5f6}tag{display:inline-block;font-size:1.1rem;border-bottom:1px solid #e3e6e8;border-radius:1.5rem;background:#f4f5f6;color:#679;padding:.2rem 1.2rem;margin:0 .5rem .5rem 0}[att],[dtt]:disabled,[tt]{overflow:visible}[att]:after,[dtt]:disabled:after,[tt]:after{position:absolute;left:50%;top:0;opacity:0;visibility:hidden;pointer-events:none;z-index:2;background:#454f54;border-radius:3px;color:#fff;font-family:sans-serif;font-size:1.2rem;line-height:2.5;font-weight:300;letter-spacing:0;white-space:nowrap;padding:0 1rem;-webkit-transform:translate(-50%,-95%);transform:translate(-50%,-95%);text-transform:none}[att]:hover:after,[dtt]:disabled:hover:after,[tt]:hover:after{opacity:.9;visibility:visible;-webkit-transform:translate(-50%,calc(-100% - 5px));transform:translate(-50%,calc(-100% - 5px))}[tt]:after{content:attr(tt)}[dtt]:disabled:after{content:attr(dtt)}[att]:after{content:attr(href)}:after,:before,a,button,input,menu,menuitem,select,textarea,tr,ul{-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}h1:not([class]),h1[xx]{font-size:4rem;line-height:1.1;letter-spacing:-1px}h2:not([class]),h2[xx]{font-size:3rem;line-height:1.1;letter-spacing:-.05rem}h3:not([class]),h3[xx]{font-size:2.5rem;line-height:1.3;letter-spacing:-.05rem}h4:not([class]),h4[xx]{font-size:2rem;line-height:1.3;letter-spacing:-.05rem}h5:not([class]),h5[xx]{font-size:1.4rem;line-height:1.5;letter-spacing:0;text-transform:uppercase;font-weight:700}h6:not([class]),h6[xx]{font-size:1.4rem;line-height:1.5;letter-spacing:0;text-transform:uppercase;font-weight:400}[full]{width:100%}[hidden]{display:none}[serif]{font-family:serif}[sans]{font-family:sans-serif}[mono]{font-family:monospace}[fs=xs]{font-size:1.1rem}[fs=s]{font-size:1.2rem}[fs=m]{font-size:1.4rem}[fs=l]{font-size:1.6rem}[fs=xl]{font-size:2.4rem}[mt=0]{margin-top:0}[mt=2]{margin-top:2rem}[mt=4]{margin-top:4rem}[mt=8]{margin-top:8rem}[mb=0]{margin-bottom:0}[mb=2]{margin-bottom:2rem}[mb=4]{margin-bottom:4rem}[mb=8]{margin-bottom:8rem}[pt=0]{padding-top:0}[pt=2]{padding-top:2rem}[pt=4]{padding-top:4rem}[pt=8]{padding-top:8rem}[pb=0]{padding-bottom:0}[pb=2]{padding-bottom:2rem}[pb=4]{padding-bottom:4rem}[pb=8]{padding-bottom:8rem}[pa=0]{padding:0}[pa=2]{padding:2}[txt=l]{text-align:left}[txt=r]{text-align:right}[txt=c]{text-align:center}[txt=j]{text-align:justify} 2 | /*# sourceMappingURL=bare.min.css.map */ -------------------------------------------------------------------------------- /icons/chevron-down.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/done.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/hamburger.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /less/_anchor-link.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* anchor link 4 | ----------------------------------------------------------------------*/ 5 | 6 | a@{n}, a@{x} { 7 | color: inherit; 8 | text-decoration: none; 9 | display: inline-block; 10 | z-index: 1; 11 | 12 | p &:not([btn]) { 13 | &:before { 14 | content: ""; 15 | display: inline-block; 16 | width: 100%; 17 | height: 100%; 18 | background: @secondary; 19 | position: absolute; 20 | opacity: 0.5; 21 | transform: scale3d(1,0.1,1); 22 | transform-origin: bottom; 23 | z-index: -1; 24 | } 25 | 26 | &:hover:before { transform: none } 27 | } 28 | } -------------------------------------------------------------------------------- /less/_blockquote.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* blockquote 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | blockquote@{n}, blockquote@{x} { 8 | margin: 2rem 0; 9 | padding: 1rem 2rem; 10 | border-left: 4px solid @primary; 11 | } -------------------------------------------------------------------------------- /less/_button.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* buttons 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | button@{n}, button@{x}, input[type=submit], [btn] { 8 | 9 | // normal button styling 10 | 11 | cursor: pointer; 12 | color: @primary; 13 | display: inline-block; 14 | padding: 1.4rem 2rem; 15 | background: #fff; 16 | border: 1px solid @primary; 17 | border-radius: 2px; 18 | box-shadow: 0 0 0 rgba(0,0,0,0); 19 | text-transform: uppercase; 20 | text-decoration: none; 21 | text-align: center; 22 | font-size: @fs-s; 23 | font-weight: 700; 24 | line-height: 1rem; 25 | margin: 0 1rem 1rem 0; 26 | -webkit-appearance: none; 27 | 28 | &:before { 29 | content: ""; 30 | position: absolute; 31 | z-index: -1; 32 | opacity: 0; 33 | width: 100%; 34 | height: 100%; 35 | left: 0; 36 | top: 0; 37 | transform: scale3d(1.2,1.2,1.2); 38 | background: @primary; 39 | } 40 | 41 | &:not(:disabled):hover { 42 | box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); 43 | background: @grey-ultralight; 44 | 45 | &:active { 46 | box-shadow: none; 47 | transition: none; 48 | } 49 | } 50 | 51 | // primary button styling 52 | 53 | &[primary] { 54 | border-color: darken(@primary, 6%); 55 | background: @primary; 56 | color: @primary--; 57 | font-weight: 700; 58 | 59 | &:not(:disabled):hover { background: darken(@primary, 6%) } 60 | } 61 | 62 | &[round] { 63 | border-radius: 4rem; 64 | } 65 | 66 | &[m-full] { 67 | @media (max-width: @mobile) { width: 100% } 68 | } 69 | 70 | // disabled button styling 71 | 72 | &:disabled, 73 | &.disabled { 74 | border-color: @grey-light; 75 | background: @grey-light; 76 | color: @grey-mid; 77 | cursor: default; 78 | } 79 | } -------------------------------------------------------------------------------- /less/_card.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* card 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // eg:
8 | 9 | card { 10 | background: #fff; 11 | display: block; 12 | padding: 2rem; 13 | box-shadow: @box-shadow; 14 | border-radius: 2px; 15 | margin-bottom: 2rem; 16 | 17 | hr@{n}, hr@{x} { 18 | margin: 1rem 0; 19 | } 20 | 21 | &:last-child { margin-bottom: 0 } 22 | 23 | // sets the image to full width 24 | > img@{n}, > img@{x} { 25 | width: ~"calc(100% + 4rem)"; 26 | max-width: none; 27 | margin: 0 0 2rem -2rem; 28 | display: block; 29 | 30 | // applies if image is first item in card 31 | &:first-child { 32 | margin: -2rem 0 2rem -2rem; 33 | border-top-left-radius: 2px; 34 | border-top-right-radius: 2px; 35 | } 36 | 37 | // applies if image is last item in card 38 | &:last-child { 39 | margin: 0 0 -2rem -2rem; 40 | border-bottom-left-radius: 2px; 41 | border-bottom-right-radius: 2px; 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /less/_code.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* code 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | code@{n}, code@{x} { 8 | display: inline-block; 9 | background: @grey-ultralight; 10 | border: 1px solid @grey-light; 11 | padding: 0 0.5rem; 12 | color: @grey-ultradark; 13 | font-size: @fs-s; 14 | line-height: 1.8; 15 | font-family: @monospace; 16 | border-radius: 2px; 17 | text-transform: none; 18 | font-weight: 300; 19 | } 20 | 21 | pre@{n}, pre@{x} { 22 | code { 23 | padding: 2rem; 24 | border: none; 25 | border-left: 4px solid @primary; 26 | border-radius: 0; 27 | width: 100%; 28 | display: block; 29 | } 30 | } -------------------------------------------------------------------------------- /less/_footer.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* footer 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | footer { 8 | color: @primary--; 9 | width: 100%; 10 | max-width: @width; 11 | margin: auto; 12 | padding: 2rem; 13 | overflow: visible; 14 | 15 | &:before { 16 | content: ""; 17 | background: @primary; 18 | width: 102vw; 19 | height: 100%; 20 | position: absolute; 21 | left: 50%; 22 | top: 0; 23 | transform: translate(-50%,0); 24 | } 25 | } -------------------------------------------------------------------------------- /less/_form.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* inputs 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // buttons 8 | 9 | button { 10 | 11 | // normal button styling 12 | 13 | &@{n}, &@{x} { 14 | cursor: pointer; 15 | color: @primary; 16 | display: inline-block; 17 | padding: 1.4rem 2rem; 18 | background: #fff; 19 | border: 1px solid @primary; 20 | border-radius: 2px; 21 | box-shadow: 0 0 0 rgba(0,0,0,0); 22 | text-transform: uppercase; 23 | text-decoration: none; 24 | text-align: center; 25 | font-size: @fs-s; 26 | font-weight: 700; 27 | line-height: 1rem; 28 | margin: 0 1rem 1rem 0; 29 | -webkit-appearance: none; 30 | 31 | &:not(:disabled):hover, &:not(:disabled):focus { 32 | box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); 33 | background: @grey-ultralight; 34 | } 35 | } 36 | 37 | // primary button styling 38 | 39 | &.primary { 40 | border-color: darken(@primary, 6%); 41 | background: @primary; 42 | color: @primary--; 43 | font-weight: 700; 44 | 45 | &:not(:disabled):hover, &:not(:disabled):focus { background: darken(@primary, 6%) } 46 | } 47 | 48 | &.m-full { 49 | @media (max-width: @mobile) { width: 100% } 50 | } 51 | 52 | // disabled button styling 53 | 54 | &:disabled, 55 | &.disabled { 56 | border-color: @grey-light; 57 | background: @grey-light; 58 | color: @grey-mid; 59 | cursor: default; 60 | } 61 | } 62 | 63 | // labels 64 | 65 | label@{n}, label@{x} { 66 | display: inline-block; 67 | width: 100%; 68 | text-transform: uppercase; 69 | font-size: @fs-s; 70 | font-weight: 400; 71 | margin-top: 1rem; 72 | 73 | &:first-child { margin-top: 0 } 74 | } 75 | 76 | .mx-input() { 77 | display: inline-block; 78 | background: transparent; 79 | width: 100%; 80 | padding: 0.5rem 0 1rem; 81 | margin-bottom: 2rem; 82 | border: none; 83 | border-bottom: 1px solid @grey-light; 84 | font-size: @fs-m; 85 | font-weight: 300; 86 | border-radius: 0; 87 | 88 | &:focus, 89 | &:hover { 90 | color: @primary; 91 | border-color: @primary; 92 | outline: 0; 93 | } 94 | } 95 | 96 | // text fields 97 | 98 | input:not([type=radio]):not([type=checkbox]):not([type=button]) { 99 | &@{n}, &@{x} { .mx-input } 100 | } 101 | 102 | textarea@{n}, textarea@{x} { 103 | .mx-input; 104 | 105 | min-height: 8rem; 106 | border-right: 1px solid @grey-light; 107 | padding-right: 2rem; 108 | border-bottom-right-radius: 0.5rem; 109 | } 110 | 111 | 112 | // select 113 | 114 | select@{n}, select@{x} { 115 | padding: 0.5rem 3rem 0.5rem 1rem; 116 | display: block; 117 | width: 100%; 118 | border: 1px solid @grey-light; 119 | background: #fff data-uri('../icons/chevron-down.svg') no-repeat right 1rem center; 120 | background-size: 2rem; 121 | border-radius: 2px; 122 | height: 4rem; 123 | font-size: @fs-m; 124 | font-weight: 300; 125 | text-indent: 0.5rem; 126 | margin: 0.5rem 0 2rem; 127 | appearance: none; 128 | cursor: pointer; 129 | 130 | &:focus, 131 | &:hover { 132 | border-color: @primary; 133 | outline: 0; 134 | } 135 | } 136 | 137 | 138 | // radio and checkboxes 139 | 140 | input { 141 | &[type=radio], 142 | &[type=checkbox] { 143 | &@{n}, &@{x} { 144 | z-index: 2; 145 | opacity: 0; 146 | margin-right: -2rem; 147 | width: 2rem; 148 | height: 2rem; 149 | vertical-align: middle; 150 | cursor: pointer; 151 | 152 | // note that the label must be placed after the radio or checkbox tag 153 | 154 | + label { 155 | width: auto; 156 | text-transform: none; 157 | 158 | &:before { 159 | content: ""; 160 | display: inline-block; 161 | width: 2rem; 162 | height: 2rem; 163 | border: 1px solid @grey-mid; 164 | background: #fff; 165 | vertical-align: middle; 166 | margin-right: 1rem; 167 | } 168 | 169 | &:after { 170 | content: ""; 171 | position: absolute; 172 | opacity: 0; 173 | visibility: hidden; 174 | pointer-events: none; 175 | width: 1.6rem; 176 | height: 1.6rem; 177 | left: 2px; 178 | top: 4px; 179 | transform: scale(0); 180 | } 181 | } 182 | } 183 | } 184 | 185 | 186 | // radio 187 | // eg: 188 | 189 | &[type=radio]@{n}, &[type=radio]@{x} { 190 | + label { 191 | font-size: @fs-m; 192 | font-weight: 200; 193 | 194 | &:before { border-radius: 100% } 195 | } 196 | 197 | &:checked + label { 198 | &:before { 199 | background: @primary; 200 | border-color: @primary; 201 | } 202 | 203 | &:after { 204 | opacity: 1; 205 | visibility: visible; 206 | background: @primary; 207 | border: 1px solid @primary--; 208 | border-radius: 100%; 209 | transform: scale(1); 210 | top: 0.5rem; 211 | } 212 | } 213 | } 214 | 215 | 216 | // checkbox 217 | // eg: 218 | 219 | &[type=checkbox]@{n}, &[type=checkbox]@{x} { 220 | + label { 221 | font-size: @fs-m; 222 | font-weight: 200; 223 | 224 | &:before { border-radius: 2px } 225 | 226 | &:after { 227 | background: data-uri('../icons/done.svg') no-repeat center center; 228 | border-radius: 100%; 229 | background-size: 100%; 230 | } 231 | } 232 | 233 | &:checked { 234 | + label { 235 | &:before { 236 | background: @primary; 237 | border-color: @primary; 238 | } 239 | 240 | &:after { 241 | opacity: 1; 242 | visibility: visible; 243 | left: 2px; 244 | top: 0.5rem; 245 | transform: scale(1); 246 | } 247 | } 248 | } 249 | } 250 | } -------------------------------------------------------------------------------- /less/_grid.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* grid 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // .grid acts as a container for .col 8 | // eg:
9 | 10 | grid { 11 | display: block; 12 | font-size: 0; 13 | width: auto; 14 | margin: -1rem; 15 | 16 | grid:not(:first-child) { margin: 1rem -1rem 0 } 17 | } 18 | 19 | // columns 20 | 21 | @columns: 12; 22 | 23 | .width(@x) { 24 | width: 100% / @columns * @x; 25 | } 26 | 27 | // eg:
28 | 29 | [col="1/12"] { .width(1) } 30 | 31 | [col="2/12"], 32 | [col="1/6"] { .width(2) } 33 | 34 | [col="3/12"], 35 | [col="1/4"] { .width(3) } 36 | 37 | [col="4/12"], 38 | [col="2/6"], 39 | [col="1/3"] { .width(4) } 40 | 41 | [col="5/12"] { .width(5) } 42 | 43 | [col="6/12"], 44 | [col="3/6"], 45 | [col="2/4"], 46 | [col="1/2"] { .width(6) } 47 | 48 | [col="7/12"] { .width(7) } 49 | 50 | [col="8/12"], 51 | [col="4/6"], 52 | [col="2/3"] { .width(8) } 53 | 54 | [col="9/12"], 55 | [col="3/4"] { .width(9) } 56 | 57 | [col="10/12"], 58 | [col="5/6"] { .width(10) } 59 | 60 | [col="11/12"] { .width(11) } 61 | 62 | [col="1/1"] { .width(12) } 63 | 64 | [col] { 65 | display: inline-block; 66 | font-size: @fs-m; 67 | padding: 1rem; 68 | vertical-align: top; 69 | 70 | // columns go to 100% on @mobile width unless it has the .fx class 71 | // eg:
72 | 73 | @media (max-width: @mobile) { 74 | &:not([fx]) { width: 100% } 75 | } 76 | } -------------------------------------------------------------------------------- /less/_input.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* inputs 4 | ----------------------------------------------------------------------*/ 5 | 6 | // labels 7 | 8 | label@{n}, label@{x} { 9 | display: inline-block; 10 | width: 100%; 11 | text-transform: uppercase; 12 | font-size: @fs-s; 13 | font-weight: 400; 14 | margin-top: 1rem; 15 | 16 | &:first-child { margin-top: 0 } 17 | } 18 | 19 | .mx-input() { 20 | display: inline-block; 21 | background: transparent; 22 | width: 100%; 23 | padding: 0.5rem 0 1rem; 24 | margin-bottom: 2rem; 25 | border: none; 26 | border-bottom: 1px solid @grey-light; 27 | font-size: @fs-m; 28 | font-weight: 300; 29 | border-radius: 0; 30 | 31 | &:focus, 32 | &:hover { 33 | color: @primary; 34 | border-color: @primary; 35 | outline: 0; 36 | } 37 | } 38 | 39 | // text fields 40 | 41 | input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit]) { 42 | &@{n}, &@{x} { .mx-input } 43 | } 44 | 45 | textarea@{n}, textarea@{x} { 46 | .mx-input; 47 | 48 | min-height: 8rem; 49 | border-right: 1px solid @grey-light; 50 | padding-right: 2rem; 51 | border-bottom-right-radius: 0.5rem; 52 | } 53 | 54 | 55 | // select 56 | 57 | select@{n}, select@{x} { 58 | padding: 0.5rem 3rem 0.5rem 1rem; 59 | display: block; 60 | width: 100%; 61 | border: 1px solid @grey-light; 62 | background: #fff data-uri('../icons/chevron-down.svg') no-repeat right 1rem center; 63 | background-size: 2rem; 64 | border-radius: 2px; 65 | height: 4rem; 66 | font-size: @fs-m; 67 | font-weight: 300; 68 | text-indent: 0.5rem; 69 | margin: 0.5rem 0 2rem; 70 | appearance: none; 71 | cursor: pointer; 72 | 73 | &:focus, 74 | &:hover { 75 | border-color: @primary; 76 | outline: 0; 77 | } 78 | } 79 | 80 | 81 | // radio and checkboxes 82 | 83 | input { 84 | &[type=radio], 85 | &[type=checkbox] { 86 | &@{n}, &@{x} { 87 | z-index: 2; 88 | opacity: 0; 89 | margin-right: -2rem; 90 | width: 2rem; 91 | height: 2rem; 92 | vertical-align: middle; 93 | cursor: pointer; 94 | 95 | // note that the label must be placed after the radio or checkbox tag 96 | 97 | + label { 98 | width: auto; 99 | text-transform: none; 100 | 101 | &:before { 102 | content: ""; 103 | display: inline-block; 104 | width: 2rem; 105 | height: 2rem; 106 | border: 1px solid @grey-mid; 107 | background: #fff; 108 | vertical-align: middle; 109 | margin-right: 1rem; 110 | } 111 | 112 | &:after { 113 | content: ""; 114 | position: absolute; 115 | opacity: 0; 116 | visibility: hidden; 117 | pointer-events: none; 118 | width: 1.6rem; 119 | height: 1.6rem; 120 | left: 2px; 121 | top: 4px; 122 | transform: scale(0); 123 | } 124 | } 125 | } 126 | } 127 | 128 | 129 | // radio 130 | // eg: 131 | 132 | &[type=radio]@{n}, &[type=radio]@{x} { 133 | + label { 134 | font-size: @fs-m; 135 | font-weight: 200; 136 | 137 | &:before { border-radius: 100% } 138 | } 139 | 140 | &:checked + label { 141 | &:before { 142 | background: @primary; 143 | border-color: @primary; 144 | } 145 | 146 | &:after { 147 | opacity: 1; 148 | visibility: visible; 149 | background: @primary; 150 | border: 1px solid @primary--; 151 | border-radius: 100%; 152 | transform: scale(1); 153 | top: 0.5rem; 154 | } 155 | } 156 | } 157 | 158 | 159 | // checkbox 160 | // eg: 161 | 162 | &[type=checkbox]@{n}, &[type=checkbox]@{x} { 163 | + label { 164 | font-size: @fs-m; 165 | font-weight: 200; 166 | 167 | &:before { border-radius: 2px } 168 | 169 | &:after { 170 | background: data-uri('../icons/done.svg') no-repeat center center; 171 | border-radius: 100%; 172 | background-size: 100%; 173 | } 174 | } 175 | 176 | &:checked { 177 | + label { 178 | &:before { 179 | background: @primary; 180 | border-color: @primary; 181 | } 182 | 183 | &:after { 184 | opacity: 1; 185 | visibility: visible; 186 | left: 2px; 187 | top: 0.5rem; 188 | transform: scale(1); 189 | } 190 | } 191 | } 192 | } 193 | } -------------------------------------------------------------------------------- /less/_layout.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* layouts 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | img@{n}, img@{x} { 8 | height: auto; 9 | max-width: 100%; 10 | } 11 | 12 | section@{n}, section@{x} { 13 | margin: auto; 14 | padding: 4rem 2rem; 15 | width: 100%; 16 | max-width: @width; 17 | } 18 | 19 | p@{n}, p@{x} { 20 | margin: 0 0 2rem; 21 | 22 | &:last-child { margin: 0 } 23 | } 24 | 25 | hr@{n}, hr@{x} { 26 | background: @grey-light; 27 | border: none; 28 | width: 100%; 29 | height: 1px; 30 | margin: 4rem 0; 31 | } -------------------------------------------------------------------------------- /less/_layouts.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* layouts 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | section@{n}, section@{x} { 8 | margin: auto; 9 | padding: 4rem 2rem; 10 | width: 100%; 11 | max-width: @width; 12 | } 13 | 14 | p@{n}, p@{x} { 15 | margin: 0 0 2rem; 16 | 17 | &:last-child { margin: 0 } 18 | } 19 | 20 | hr@{n}, hr@{x} { 21 | background: @grey-light; 22 | border: none; 23 | width: 100%; 24 | height: 1px; 25 | margin: 4rem 0; 26 | } -------------------------------------------------------------------------------- /less/_list.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* lists 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | ul, ol { 8 | &@{n}, &@{x} { 9 | padding-left: 2rem; 10 | margin: 0 0 2rem; 11 | 12 | ul, ol { margin-bottom: 0 } 13 | } 14 | } 15 | 16 | ul@{n}, ul@{x} { 17 | list-style: disc; 18 | 19 | ul { list-style: circle } 20 | } 21 | 22 | ol@{n}, ol@{x} { 23 | list-style: decimal; 24 | 25 | ol { list-style: lower-alpha } 26 | } -------------------------------------------------------------------------------- /less/_lists.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* lists 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | ul, ol { 8 | &@{n}, &@{x} { 9 | padding-left: 2rem; 10 | margin: 0 0 2rem; 11 | 12 | ul, ol { margin-bottom: 0 } 13 | } 14 | } 15 | 16 | ul@{n}, ul@{x} { 17 | list-style: disc; 18 | 19 | ul { list-style: circle } 20 | } 21 | 22 | ol@{n}, ol@{x} { 23 | list-style: decimal; 24 | 25 | ol { list-style: lower-alpha } 26 | } -------------------------------------------------------------------------------- /less/_navigation.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* navigation 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | nav@{n}, nav@{x} { 8 | background: #fff; 9 | color: @black; 10 | padding: 0 2rem; 11 | border-bottom: 1px solid @primary; 12 | z-index: 10; 13 | min-height: 4.4rem; 14 | 15 | // class to fix the nav bar to the top of the viewport 16 | // eg: 17 | 18 | &[fx] { 19 | background: rgba(255,255,255,0.95); 20 | position: fixed; 21 | top: 0; 22 | left: 0; 23 | right: 0; 24 | z-index: 11; 25 | } 26 | 27 | // contains everything in the nav 28 | 29 | label { 30 | max-width: @width; 31 | margin: auto; 32 | display: block; 33 | 34 | > input { display: none } 35 | } 36 | 37 | // where the main navigation items live 38 | 39 | ul { 40 | padding: 0 2rem; 41 | margin: 0; 42 | font-size: 0; 43 | text-align: right; 44 | 45 | li { 46 | display: inline-block; 47 | font-size: @fs-l; 48 | } 49 | 50 | @media (min-width: (@mobile + .1)) { 51 | li:hover menu, 52 | menu:hover { 53 | visibility: visible; 54 | opacity: 1; 55 | transform: translate3d(0,-1rem,0); 56 | pointer-events: auto; 57 | } 58 | } 59 | 60 | a { 61 | text-decoration: none; 62 | text-transform: none; 63 | padding: 0.8rem 2rem 0.4rem; 64 | border-bottom: 4px solid transparent; 65 | display: block; 66 | cursor: pointer; 67 | font-weight: 300; 68 | 69 | // sets drop down menu styling 70 | 71 | @media (min-width: (@mobile + .1)) { 72 | &:not(:only-child) { 73 | background-image: data-uri('../icons/chevron-down.svg'); 74 | background-repeat: no-repeat; 75 | background-position: right 1.5rem; 76 | background-size: 2rem; 77 | padding-right: 3rem; 78 | } 79 | } 80 | 81 | &:hover { 82 | color: @primary; 83 | border-color: @primary; 84 | } 85 | } 86 | } 87 | 88 | // drop down menu 89 | 90 | menu { 91 | padding: 0; 92 | margin: 0; 93 | background: #fff; 94 | z-index: 2; 95 | text-align: left; 96 | white-space: nowrap; 97 | min-width: 100%; 98 | 99 | @media (min-width: (@mobile + .1)) { 100 | visibility: hidden; 101 | opacity: 0; 102 | position: absolute; 103 | top: 100%; 104 | left: 0; 105 | box-shadow: @box-shadow; 106 | transform: translate3d(0,-2rem,0); 107 | pointer-events: none; 108 | } 109 | 110 | menuitem { 111 | display: block; 112 | border-left: 4px solid transparent; 113 | 114 | &:hover { 115 | border-color: @primary; 116 | background-color: @grey-ultralight; 117 | 118 | a { transform: translate3d(0.5rem,0,0) } 119 | } 120 | 121 | a { 122 | text-transform: none; 123 | padding: 0.5rem 2rem 0.5rem 1.6rem; 124 | border: none; 125 | font-size: @fs-s; 126 | } 127 | } 128 | } 129 | 130 | // where the title/logo lives in the nav bar 131 | // contains the hamburger menu in mobile view 132 | 133 | header { 134 | &:before, 135 | &:after { 136 | content: ""; 137 | position: absolute; 138 | top: 0; 139 | right: 1rem; 140 | width: 4.4rem; 141 | height: 4.4rem; 142 | display: none; 143 | background-size: 3rem; 144 | background-position: center center; 145 | background-repeat: no-repeat; 146 | } 147 | 148 | &:before { 149 | background-image: data-uri('../icons/hamburger.svg'); 150 | } 151 | 152 | &:after { 153 | background-image: data-uri('../icons/close.svg'); 154 | opacity: 0; 155 | transform: rotate(180deg); 156 | } 157 | 158 | a { 159 | position: absolute; 160 | left: 2rem; 161 | top: 1rem; 162 | bottom: 1rem; 163 | cursor: pointer; 164 | z-index: 2; 165 | font-size: @fs-l; 166 | text-decoration: none; 167 | 168 | img { 169 | height: 2rem; 170 | vertical-align: middle; 171 | top: -1px; 172 | margin-right: 1rem; 173 | } 174 | } 175 | } 176 | } 177 | 178 | // mobile view 179 | 180 | @media (max-width: @mobile) { 181 | 182 | // clears the top of the page for the fixed nav 183 | 184 | body { 185 | padding-top: 4.4rem; 186 | } 187 | 188 | // keeps the nav fixed 189 | 190 | nav@{n}, nav@{x} { 191 | position: fixed; 192 | padding: 0; 193 | top: 0; 194 | left: 0; 195 | right: 0; 196 | 197 | header { 198 | position: absolute; 199 | top: 0; 200 | left: 0; 201 | right: 0; 202 | bottom: 0; 203 | 204 | &:before, &:after { display: block } 205 | } 206 | 207 | label { 208 | height: 4.4rem; 209 | 210 | // hides the nav off screen 211 | 212 | > ul { 213 | position: fixed; 214 | top: 4.4rem; 215 | right: 0; 216 | bottom: 0; 217 | padding: 0; 218 | transform: translate3d(100%,0,0); 219 | border-top: 1px solid @primary; 220 | text-align: left; 221 | background: #fff; 222 | box-shadow: @box-shadow; 223 | overflow-x: visible; 224 | overflow-y: auto; 225 | 226 | li { 227 | display: block; 228 | border-top: 1px solid @grey-light; 229 | } 230 | 231 | a { 232 | padding: 1rem 6rem 1rem 2rem; 233 | border: none; 234 | } 235 | } 236 | 237 | input { 238 | &:checked { 239 | 240 | // shows the nav when input is checked 241 | 242 | ~ ul { 243 | transform: none; 244 | } 245 | 246 | // hides the hamburger and shows the cross when the input is checked 247 | 248 | ~ header { 249 | &:before { 250 | transform: rotate(-180deg); 251 | opacity: 0; 252 | } 253 | 254 | &:after { 255 | transform: none; 256 | opacity: 1; 257 | } 258 | } 259 | } 260 | } 261 | 262 | menu { 263 | menuitem { 264 | border-color: @grey-light; 265 | } 266 | 267 | a { 268 | padding-left: 4rem; 269 | } 270 | } 271 | } 272 | } 273 | } -------------------------------------------------------------------------------- /less/_reset.less: -------------------------------------------------------------------------------- 1 | /* mini browser reset 2 | ----------------------------------------------------------------------*/ 3 | 4 | 5 | html { 6 | font-family: @sans-serif; 7 | font-size: 10px; 8 | box-sizing: border-box; 9 | -webkit-text-size-adjust: 100%; 10 | } 11 | 12 | *, *:before, *:after { 13 | box-sizing: inherit; 14 | position: relative; 15 | } 16 | 17 | :focus { outline: 0 } 18 | 19 | body { 20 | color: @black; 21 | margin: 0; 22 | font-size: @fs-m; 23 | line-height: 1.8; 24 | font-weight: 300; 25 | 26 | @media (max-width: @mobile) { 27 | overflow-x: hidden; 28 | } 29 | } 30 | 31 | a { 32 | background-color: transparent; 33 | 34 | &:active, 35 | &:hover { outline: 0 } 36 | } 37 | 38 | b, strong { font-weight: 700 } 39 | 40 | h1, h2, h3, h4, h5, h6 { 41 | margin: 0 0 2rem; 42 | font-weight: 200; 43 | } 44 | 45 | img { border: 0 } 46 | 47 | ::selection { 48 | background-color: @primary; 49 | color: @primary--; 50 | } -------------------------------------------------------------------------------- /less/_table.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* table 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | table@{n}, table@{x} { 8 | width: 100%; 9 | border-collapse: collapse; 10 | border-spacing: 0; 11 | margin-bottom: 2rem; 12 | text-align: left; 13 | overflow: hidden; 14 | 15 | th, td { 16 | border-bottom: 2px solid @grey-light; 17 | padding: 1rem; 18 | } 19 | 20 | th { 21 | font-weight: 700; 22 | color: @grey-ultradark; 23 | 24 | &:before { 25 | content: ""; 26 | width: 100%; 27 | height: 10000%; 28 | position: absolute; 29 | display: block; 30 | top: 0; 31 | left: 0; 32 | background: @grey-ultralight; 33 | z-index: -1; 34 | opacity: 0; 35 | visibility: hidden; 36 | } 37 | 38 | &:hover:before { 39 | opacity: 1; 40 | visibility: visible; 41 | } 42 | } 43 | 44 | td { border-bottom-width: 1px } 45 | 46 | tbody tr:hover { background: @grey-ultralight } 47 | } -------------------------------------------------------------------------------- /less/_tag.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* tag 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | tag { 8 | display: inline-block; 9 | font-size: @fs-xs; 10 | border-bottom: 1px solid @grey-light; 11 | border-radius: 1.5rem; 12 | background: @grey-ultralight; 13 | color: @primary; 14 | padding: 0.2rem 1.2rem; 15 | margin: 0 0.5rem 0.5rem 0; 16 | } -------------------------------------------------------------------------------- /less/_tooltip.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* tooltip 4 | ----------------------------------------------------------------------*/ 5 | 6 | // sets the styling for tooltips 7 | 8 | [tt], [dtt]:disabled, [att] { 9 | overflow: visible; 10 | 11 | &:after { 12 | position: absolute; 13 | left: 50%; 14 | top: 0; 15 | opacity: 0; 16 | visibility: hidden; 17 | pointer-events: none; 18 | z-index: 2; 19 | background: @grey-ultradark; 20 | border-radius: 3px; 21 | color: #fff; 22 | font-family: @sans-serif; 23 | font-size: @fs-s; 24 | line-height: 2.5; 25 | font-weight: 300; 26 | letter-spacing: 0; 27 | white-space: nowrap; 28 | padding: 0 1rem; 29 | transform: translate(-50%,-95%); 30 | text-transform: none; 31 | } 32 | 33 | &:hover:after { 34 | opacity: 0.9; 35 | visibility: visible; 36 | transform: translate(-50%,~"calc(-100% - 5px)"); 37 | } 38 | } 39 | 40 | // sets the content for tooltip 41 | // eg: 42 | 43 | [tt]:after { content: attr(tt) } 44 | 45 | // sets the content for disabled tooltips 46 | // can be used in conjunction with data-tt 47 | // eg: 48 | 49 | [dtt]:disabled:after { content: attr(dtt) } 50 | 51 | // sets the contents for an anchor link tooltip 52 | // will set the content to the href 53 | // eg: BareCSS at GitHub 54 | 55 | [att]:after { content: attr(href) } -------------------------------------------------------------------------------- /less/_transition.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* transitions 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | a, 8 | button, 9 | input, 10 | menu, 11 | menuitem, 12 | textarea, 13 | select, 14 | tr, 15 | ul, 16 | :before, 17 | :after { transition: all 0.3s ease-in-out } -------------------------------------------------------------------------------- /less/_transitions.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* transitions 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | a, 8 | button, 9 | input, 10 | menu, 11 | textarea, 12 | select, 13 | tr, 14 | ul, 15 | :before, 16 | :after { transition: all 0.3s ease-in-out } -------------------------------------------------------------------------------- /less/_typography.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* typography 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // note: set font family in _variables.less 8 | 9 | // headings 10 | 11 | .hx(@fs, @lh, @ls) { font-size: @fs; line-height: @lh; letter-spacing: @ls } 12 | 13 | h1@{n}, h1@{x} { .hx(4rem, 1.1, -1px) } 14 | h2@{n}, h2@{x} { .hx(3rem, 1.1, -0.05rem) } 15 | h3@{n}, h3@{x} { .hx(2.5rem, 1.3, -0.05rem) } 16 | h4@{n}, h4@{x} { .hx(2rem, 1.3, -0.05rem) } 17 | h5@{n}, h5@{x} { .hx(@fs-m, 1.5, 0rem); text-transform: uppercase; font-weight: 700 } 18 | h6@{n}, h6@{x} { .hx(@fs-m, 1.5, 0rem); text-transform: uppercase; font-weight: 400 } -------------------------------------------------------------------------------- /less/_utility-attributes.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* utility classes (use with xx) 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // display 8 | 9 | [full] { width: 100% } 10 | 11 | [hidden] { display: none } 12 | 13 | // fonts 14 | 15 | [serif] { font-family: @serif } 16 | [sans] { font-family: @sans-serif } 17 | [mono] { font-family: @monospace } 18 | 19 | .fs(@x) { font-size: @x } 20 | 21 | [fs=xs] { .fs(@fs-xs) } 22 | [fs=s] { .fs(@fs-s) } 23 | [fs=m] { .fs(@fs-m) } 24 | [fs=l] { .fs(@fs-l) } 25 | [fs=xl] { .fs(@fs-xl) } 26 | 27 | // margin top 28 | // eg:
29 | 30 | .mt(@x) { margin-top: @x } 31 | 32 | [mt=0] { .mt(0) } 33 | [mt=2] { .mt(2rem) } 34 | [mt=4] { .mt(4rem) } 35 | [mt=8] { .mt(8rem) } 36 | 37 | // margin bottom 38 | // eg:
49 | 50 | .pt(@x) { padding-top: @x } 51 | 52 | [pt=0] { .pt(0) } 53 | [pt=2] { .pt(2rem) } 54 | [pt=4] { .pt(4rem) } 55 | [pt=8] { .pt(8rem) } 56 | 57 | // padding bottom 58 | // eg:
59 | 60 | .pb(@x) { padding-bottom: @x } 61 | 62 | [pb=0] { .pb(0) } 63 | [pb=2] { .pb(2rem) } 64 | [pb=4] { .pb(4rem) } 65 | [pb=8] { .pb(8rem) } 66 | 67 | // padding all sides 68 | // eg:
69 | 70 | .pa(@x) { padding: @x } 71 | 72 | [pa=0] { .pa(0) } 73 | [pa=2] { .pa(2) } 74 | 75 | // text alignment 76 | // eg:
77 | 78 | [txt=l] { text-align: left } 79 | [txt=r] { text-align: right } 80 | [txt=c] { text-align: center } 81 | [txt=j] { text-align: justify } -------------------------------------------------------------------------------- /less/_utility-classes.less: -------------------------------------------------------------------------------- 1 | @import (reference) "_variables"; 2 | 3 | /* utility classes (use with xx) 4 | ----------------------------------------------------------------------*/ 5 | 6 | 7 | // display 8 | 9 | .full { width: 100% } 10 | 11 | [hidden], .hide { display: none } 12 | 13 | // fonts 14 | 15 | .serif { font-family: @serif } 16 | .sans { font-family: @sans-serif } 17 | .mono { font-family: @monospace } 18 | 19 | .fs(@x) { font-size: @x } 20 | 21 | .fs- { 22 | &s { .fs(@fs-s) } 23 | &m { .fs(@fs-m) } 24 | &l { .fs(@fs-l) } 25 | &xl { .fs(@fs-xl) } 26 | } 27 | 28 | // margins 29 | // eg:
30 | 31 | .mt(@x) { margin-top: @x } 32 | 33 | .mt- { 34 | &0 { .mt(0) } 35 | &2 { .mt(2rem) } 36 | &4 { .mt(4rem) } 37 | &8 { .mt(8rem) } 38 | } 39 | 40 | .mb(@x) { margin-bottom: @x } 41 | 42 | .mb- { 43 | &0 { .mb(0) } 44 | &2 { .mb(2rem) } 45 | &4 { .mb(4rem) } 46 | &8 { .mb(8rem) } 47 | } 48 | 49 | // paddings 50 | // eg:
51 | 52 | .pt(@x) { padding-top: @x } 53 | 54 | .pt- { 55 | &0 { .pt(0) } 56 | &2 { .pt(2rem) } 57 | &4 { .pt(4rem) } 58 | &8 { .pt(8rem) } 59 | } 60 | 61 | .pb(@x) { padding-bottom: @x } 62 | 63 | .pb- { 64 | &0 { .pb(0) } 65 | &2 { .pb(2rem) } 66 | &4 { .pb(4rem) } 67 | &8 { .pb(8rem) } 68 | } 69 | 70 | .pa(@x) { padding: @x } 71 | 72 | .pa- { 73 | &0 { .pa(0) } 74 | &2 { .pa(2rem) } 75 | } 76 | 77 | // text alignment 78 | // eg:
79 | 80 | .txt- { 81 | &l { text-align: left } 82 | &r { text-align: right } 83 | &c { text-align: center } 84 | &j { text-align: justify } 85 | } -------------------------------------------------------------------------------- /less/_variables.less: -------------------------------------------------------------------------------- 1 | /* variables 2 | ----------------------------------------------------------------------*/ 3 | 4 | 5 | // bare class (default is no class and 'xx') 6 | // Why xx? It's short and easy to search. 7 | 8 | @n: ~":not([class])"; 9 | @x: ~"[xx]"; 10 | 11 | 12 | // font families 13 | // currently uses browser defaults 14 | 15 | @serif: serif; 16 | @sans-serif: sans-serif; 17 | @monospace: monospace; 18 | 19 | 20 | // font sizes 21 | 22 | @fs-xs: 1.1rem; 23 | @fs-s: 1.2rem; 24 | @fs-m: 1.4rem; 25 | @fs-l: 1.6rem; 26 | @fs-xl: 2.4rem; 27 | 28 | 29 | // set your brand colour 30 | 31 | @primary: #679; 32 | @primary--: #fff; // contrasting colour to the primary colour 33 | 34 | @secondary: #fd0; 35 | 36 | // set overall temperature with hue and intensity with saturation 37 | 38 | @hue: 200; 39 | @sat: 10%; 40 | 41 | 42 | // blacks and greys inherit colour temperature of hue and saturation 43 | 44 | @black: hsl(@hue,@sat,20%); 45 | 46 | @grey-ultralight: hsl(@hue,@sat,96%); 47 | @grey-light: hsl(@hue,@sat,90%); 48 | @grey-mid: hsl(@hue,@sat,70%); 49 | @grey-dark: hsl(@hue,@sat,50%); 50 | @grey-ultradark: hsl(@hue,@sat,30%); 51 | 52 | 53 | // transparent overlays to darken or lighten background colour 54 | 55 | @dark: rgba(0,0,0,0.5); 56 | @darken: rgba(0,0,0,0.1); 57 | @light: rgba(255,255,255,0.5); 58 | @lighten: rgba(255,255,255,0.1); 59 | 60 | 61 | // shadows 62 | 63 | @box-shadow: 0 1px 4px 0 rgba(0,0,0,0.2); 64 | 65 | 66 | // widths 67 | 68 | @width: 90rem; 69 | @mobile: 50rem; -------------------------------------------------------------------------------- /less/bare.less: -------------------------------------------------------------------------------- 1 | // BareCSS (.Y.) v1.0.0 | MIT License | barecss.com 2 | 3 | // All BareCSS component names start with an underscore. Comment out any components you don't need. // 4 | 5 | // required components 6 | 7 | // variables !! required [ colours, shadows, fonts, breakpoints ] 8 | @import "_variables"; 9 | 10 | // reset !! required 11 | @import "_reset"; 12 | 13 | // optional components 14 | 15 | // anchor link 16 | @import "_anchor-link"; 17 | 18 | // blockquote 19 | @import "_blockquote"; 20 | 21 | // buttons 22 | @import "_button"; 23 | 24 | // card 25 | @import "_card"; 26 | 27 | // code [ code, pre ] 28 | @import "_code"; 29 | 30 | // footer 31 | @import "_footer"; 32 | 33 | // grid 34 | @import "_grid"; 35 | 36 | // input [ input, textarea, checkbox, radio, select ] 37 | @import "_input"; 38 | 39 | // layouts [ img, section, p, hr ] 40 | @import "_layout"; 41 | 42 | // lists [ ul, ol ] 43 | @import "_list"; 44 | 45 | // navigation 46 | @import "_navigation"; 47 | 48 | // table [ table, tr, th, td ] 49 | @import "_table"; 50 | 51 | // tag 52 | @import "_tag"; 53 | 54 | // tooltip 55 | @import "_tooltip"; 56 | 57 | // transitions 58 | @import "_transition"; 59 | 60 | // typography [ h1, h2, h3, h4, h5, h6 ] 61 | @import "_typography"; 62 | 63 | // utility classes 64 | @import "_utility-attributes"; -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bare-css", 3 | "version": "2.0.3", 4 | "description": "A classless CSS framework", 5 | "license": "MIT", 6 | "main": "css/bare.min.css", 7 | "author": "Eric Clemmons ", 8 | "contributors": [ 9 | "Long Sien (https://github.com/longsien)" 10 | ], 11 | "devDependencies": { 12 | "np": "^2.16.0", 13 | "prettier": "^1.5.3" 14 | }, 15 | "files": [ 16 | "css" 17 | ], 18 | "repository": "git@github.com:ericclemmons/bare-css.git" 19 | } 20 | -------------------------------------------------------------------------------- /template.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Template | BareCSS 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 46 | 47 | 48 | 49 |
50 |

Standard content

51 | 52 |

Paragraph one lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.

53 | 54 |

Paragraph two exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint.

55 |
56 | 57 | 58 | 59 |
60 |

Section with grid

61 | 62 | 63 |
64 |

1/3 grid

65 | 66 |

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

67 |
68 | 69 |
70 |

1/3 grid

71 | 72 |

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

73 |
74 | 75 |
76 |

1/3 grid

77 | 78 |

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

79 |
80 |
81 |
82 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | ansi-align@^2.0.0: 6 | version "2.0.0" 7 | resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" 8 | dependencies: 9 | string-width "^2.0.0" 10 | 11 | ansi-escapes@^1.0.0: 12 | version "1.4.0" 13 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" 14 | 15 | ansi-escapes@^2.0.0: 16 | version "2.0.0" 17 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b" 18 | 19 | ansi-regex@^2.0.0: 20 | version "2.1.1" 21 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 22 | 23 | ansi-regex@^3.0.0: 24 | version "3.0.0" 25 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 26 | 27 | ansi-styles@^2.2.1: 28 | version "2.2.1" 29 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 30 | 31 | ansi-styles@^3.1.0: 32 | version "3.2.0" 33 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" 34 | dependencies: 35 | color-convert "^1.9.0" 36 | 37 | any-observable@^0.2.0: 38 | version "0.2.0" 39 | resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.2.0.tgz#c67870058003579009083f54ac0abafb5c33d242" 40 | 41 | array-find-index@^1.0.1: 42 | version "1.0.2" 43 | resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" 44 | 45 | array-union@^1.0.1: 46 | version "1.0.2" 47 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" 48 | dependencies: 49 | array-uniq "^1.0.1" 50 | 51 | array-uniq@^1.0.1: 52 | version "1.0.3" 53 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" 54 | 55 | arrify@^1.0.0: 56 | version "1.0.1" 57 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 58 | 59 | balanced-match@^1.0.0: 60 | version "1.0.0" 61 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 62 | 63 | boxen@^1.0.0: 64 | version "1.2.1" 65 | resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.2.1.tgz#0f11e7fe344edb9397977fc13ede7f64d956481d" 66 | dependencies: 67 | ansi-align "^2.0.0" 68 | camelcase "^4.0.0" 69 | chalk "^2.0.1" 70 | cli-boxes "^1.0.0" 71 | string-width "^2.0.0" 72 | term-size "^1.2.0" 73 | widest-line "^1.0.0" 74 | 75 | brace-expansion@^1.1.7: 76 | version "1.1.8" 77 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" 78 | dependencies: 79 | balanced-match "^1.0.0" 80 | concat-map "0.0.1" 81 | 82 | builtin-modules@^1.0.0: 83 | version "1.1.1" 84 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 85 | 86 | camelcase-keys@^2.0.0: 87 | version "2.1.0" 88 | resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" 89 | dependencies: 90 | camelcase "^2.0.0" 91 | map-obj "^1.0.0" 92 | 93 | camelcase@^2.0.0: 94 | version "2.1.1" 95 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" 96 | 97 | camelcase@^4.0.0: 98 | version "4.1.0" 99 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" 100 | 101 | capture-stack-trace@^1.0.0: 102 | version "1.0.0" 103 | resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" 104 | 105 | chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: 106 | version "1.1.3" 107 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 108 | dependencies: 109 | ansi-styles "^2.2.1" 110 | escape-string-regexp "^1.0.2" 111 | has-ansi "^2.0.0" 112 | strip-ansi "^3.0.0" 113 | supports-color "^2.0.0" 114 | 115 | chalk@^2.0.0, chalk@^2.0.1: 116 | version "2.1.0" 117 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" 118 | dependencies: 119 | ansi-styles "^3.1.0" 120 | escape-string-regexp "^1.0.5" 121 | supports-color "^4.0.0" 122 | 123 | cli-boxes@^1.0.0: 124 | version "1.0.0" 125 | resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" 126 | 127 | cli-cursor@^1.0.2: 128 | version "1.0.2" 129 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" 130 | dependencies: 131 | restore-cursor "^1.0.1" 132 | 133 | cli-cursor@^2.1.0: 134 | version "2.1.0" 135 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 136 | dependencies: 137 | restore-cursor "^2.0.0" 138 | 139 | cli-spinners@^0.1.2: 140 | version "0.1.2" 141 | resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" 142 | 143 | cli-truncate@^0.2.1: 144 | version "0.2.1" 145 | resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" 146 | dependencies: 147 | slice-ansi "0.0.4" 148 | string-width "^1.0.1" 149 | 150 | cli-width@^2.0.0: 151 | version "2.1.0" 152 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" 153 | 154 | code-point-at@^1.0.0: 155 | version "1.1.0" 156 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 157 | 158 | color-convert@^1.9.0: 159 | version "1.9.0" 160 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" 161 | dependencies: 162 | color-name "^1.1.1" 163 | 164 | color-name@^1.1.1: 165 | version "1.1.3" 166 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 167 | 168 | concat-map@0.0.1: 169 | version "0.0.1" 170 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 171 | 172 | configstore@^3.0.0: 173 | version "3.1.1" 174 | resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" 175 | dependencies: 176 | dot-prop "^4.1.0" 177 | graceful-fs "^4.1.2" 178 | make-dir "^1.0.0" 179 | unique-string "^1.0.0" 180 | write-file-atomic "^2.0.0" 181 | xdg-basedir "^3.0.0" 182 | 183 | create-error-class@^3.0.0: 184 | version "3.0.2" 185 | resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" 186 | dependencies: 187 | capture-stack-trace "^1.0.0" 188 | 189 | cross-spawn@^5.0.1: 190 | version "5.1.0" 191 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" 192 | dependencies: 193 | lru-cache "^4.0.1" 194 | shebang-command "^1.2.0" 195 | which "^1.2.9" 196 | 197 | crypto-random-string@^1.0.0: 198 | version "1.0.0" 199 | resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" 200 | 201 | currently-unhandled@^0.4.1: 202 | version "0.4.1" 203 | resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" 204 | dependencies: 205 | array-find-index "^1.0.1" 206 | 207 | date-fns@^1.27.2: 208 | version "1.28.5" 209 | resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.28.5.tgz#257cfc45d322df45ef5658665967ee841cd73faf" 210 | 211 | decamelize@^1.1.2: 212 | version "1.2.0" 213 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 214 | 215 | deep-extend@~0.4.0: 216 | version "0.4.2" 217 | resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" 218 | 219 | del@^2.2.0: 220 | version "2.2.2" 221 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" 222 | dependencies: 223 | globby "^5.0.0" 224 | is-path-cwd "^1.0.0" 225 | is-path-in-cwd "^1.0.0" 226 | object-assign "^4.0.1" 227 | pify "^2.0.0" 228 | pinkie-promise "^2.0.0" 229 | rimraf "^2.2.8" 230 | 231 | dot-prop@^4.1.0: 232 | version "4.2.0" 233 | resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" 234 | dependencies: 235 | is-obj "^1.0.0" 236 | 237 | duplexer3@^0.1.4: 238 | version "0.1.4" 239 | resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" 240 | 241 | elegant-spinner@^1.0.1: 242 | version "1.0.1" 243 | resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" 244 | 245 | error-ex@^1.2.0: 246 | version "1.3.1" 247 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" 248 | dependencies: 249 | is-arrayish "^0.2.1" 250 | 251 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 252 | version "1.0.5" 253 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 254 | 255 | execa@^0.6.3: 256 | version "0.6.3" 257 | resolved "https://registry.yarnpkg.com/execa/-/execa-0.6.3.tgz#57b69a594f081759c69e5370f0d17b9cb11658fe" 258 | dependencies: 259 | cross-spawn "^5.0.1" 260 | get-stream "^3.0.0" 261 | is-stream "^1.1.0" 262 | npm-run-path "^2.0.0" 263 | p-finally "^1.0.0" 264 | signal-exit "^3.0.0" 265 | strip-eof "^1.0.0" 266 | 267 | execa@^0.7.0: 268 | version "0.7.0" 269 | resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" 270 | dependencies: 271 | cross-spawn "^5.0.1" 272 | get-stream "^3.0.0" 273 | is-stream "^1.1.0" 274 | npm-run-path "^2.0.0" 275 | p-finally "^1.0.0" 276 | signal-exit "^3.0.0" 277 | strip-eof "^1.0.0" 278 | 279 | exit-hook@^1.0.0: 280 | version "1.1.1" 281 | resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" 282 | 283 | external-editor@^2.0.4: 284 | version "2.0.4" 285 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.4.tgz#1ed9199da9cbfe2ef2f7a31b2fde8b0d12368972" 286 | dependencies: 287 | iconv-lite "^0.4.17" 288 | jschardet "^1.4.2" 289 | tmp "^0.0.31" 290 | 291 | figures@^1.7.0: 292 | version "1.7.0" 293 | resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" 294 | dependencies: 295 | escape-string-regexp "^1.0.5" 296 | object-assign "^4.1.0" 297 | 298 | figures@^2.0.0: 299 | version "2.0.0" 300 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 301 | dependencies: 302 | escape-string-regexp "^1.0.5" 303 | 304 | find-up@^1.0.0: 305 | version "1.1.2" 306 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 307 | dependencies: 308 | path-exists "^2.0.0" 309 | pinkie-promise "^2.0.0" 310 | 311 | find-up@^2.0.0: 312 | version "2.1.0" 313 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 314 | dependencies: 315 | locate-path "^2.0.0" 316 | 317 | fs.realpath@^1.0.0: 318 | version "1.0.0" 319 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 320 | 321 | get-stdin@^4.0.1: 322 | version "4.0.1" 323 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" 324 | 325 | get-stream@^3.0.0: 326 | version "3.0.0" 327 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" 328 | 329 | glob@^7.0.3, glob@^7.0.5: 330 | version "7.1.2" 331 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" 332 | dependencies: 333 | fs.realpath "^1.0.0" 334 | inflight "^1.0.4" 335 | inherits "2" 336 | minimatch "^3.0.4" 337 | once "^1.3.0" 338 | path-is-absolute "^1.0.0" 339 | 340 | globby@^5.0.0: 341 | version "5.0.0" 342 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" 343 | dependencies: 344 | array-union "^1.0.1" 345 | arrify "^1.0.0" 346 | glob "^7.0.3" 347 | object-assign "^4.0.1" 348 | pify "^2.0.0" 349 | pinkie-promise "^2.0.0" 350 | 351 | got@^6.7.1: 352 | version "6.7.1" 353 | resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" 354 | dependencies: 355 | create-error-class "^3.0.0" 356 | duplexer3 "^0.1.4" 357 | get-stream "^3.0.0" 358 | is-redirect "^1.0.0" 359 | is-retry-allowed "^1.0.0" 360 | is-stream "^1.0.0" 361 | lowercase-keys "^1.0.0" 362 | safe-buffer "^5.0.1" 363 | timed-out "^4.0.0" 364 | unzip-response "^2.0.1" 365 | url-parse-lax "^1.0.0" 366 | 367 | graceful-fs@^4.1.11, graceful-fs@^4.1.2: 368 | version "4.1.11" 369 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 370 | 371 | has-ansi@^2.0.0: 372 | version "2.0.0" 373 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 374 | dependencies: 375 | ansi-regex "^2.0.0" 376 | 377 | has-flag@^2.0.0: 378 | version "2.0.0" 379 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" 380 | 381 | has-yarn@^1.0.0: 382 | version "1.0.0" 383 | resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-1.0.0.tgz#89e25db604b725c8f5976fff0addc921b828a5a7" 384 | 385 | hosted-git-info@^2.1.4: 386 | version "2.5.0" 387 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" 388 | 389 | iconv-lite@^0.4.17: 390 | version "0.4.18" 391 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" 392 | 393 | import-lazy@^2.1.0: 394 | version "2.1.0" 395 | resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" 396 | 397 | imurmurhash@^0.1.4: 398 | version "0.1.4" 399 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 400 | 401 | indent-string@^2.1.0: 402 | version "2.1.0" 403 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" 404 | dependencies: 405 | repeating "^2.0.0" 406 | 407 | indent-string@^3.0.0: 408 | version "3.2.0" 409 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" 410 | 411 | inflight@^1.0.4: 412 | version "1.0.6" 413 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 414 | dependencies: 415 | once "^1.3.0" 416 | wrappy "1" 417 | 418 | inherits@2: 419 | version "2.0.3" 420 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 421 | 422 | ini@~1.3.0: 423 | version "1.3.4" 424 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" 425 | 426 | inquirer@^3.0.6: 427 | version "3.2.1" 428 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.1.tgz#06ceb0f540f45ca548c17d6840959878265fa175" 429 | dependencies: 430 | ansi-escapes "^2.0.0" 431 | chalk "^2.0.0" 432 | cli-cursor "^2.1.0" 433 | cli-width "^2.0.0" 434 | external-editor "^2.0.4" 435 | figures "^2.0.0" 436 | lodash "^4.3.0" 437 | mute-stream "0.0.7" 438 | run-async "^2.2.0" 439 | rx-lite "^4.0.8" 440 | rx-lite-aggregates "^4.0.8" 441 | string-width "^2.1.0" 442 | strip-ansi "^4.0.0" 443 | through "^2.3.6" 444 | 445 | is-arrayish@^0.2.1: 446 | version "0.2.1" 447 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 448 | 449 | is-builtin-module@^1.0.0: 450 | version "1.0.0" 451 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 452 | dependencies: 453 | builtin-modules "^1.0.0" 454 | 455 | is-finite@^1.0.0: 456 | version "1.0.2" 457 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" 458 | dependencies: 459 | number-is-nan "^1.0.0" 460 | 461 | is-fullwidth-code-point@^1.0.0: 462 | version "1.0.0" 463 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 464 | dependencies: 465 | number-is-nan "^1.0.0" 466 | 467 | is-fullwidth-code-point@^2.0.0: 468 | version "2.0.0" 469 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 470 | 471 | is-npm@^1.0.0: 472 | version "1.0.0" 473 | resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" 474 | 475 | is-obj@^1.0.0: 476 | version "1.0.1" 477 | resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" 478 | 479 | is-path-cwd@^1.0.0: 480 | version "1.0.0" 481 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" 482 | 483 | is-path-in-cwd@^1.0.0: 484 | version "1.0.0" 485 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" 486 | dependencies: 487 | is-path-inside "^1.0.0" 488 | 489 | is-path-inside@^1.0.0: 490 | version "1.0.0" 491 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" 492 | dependencies: 493 | path-is-inside "^1.0.1" 494 | 495 | is-promise@^2.1.0: 496 | version "2.1.0" 497 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 498 | 499 | is-redirect@^1.0.0: 500 | version "1.0.0" 501 | resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" 502 | 503 | is-retry-allowed@^1.0.0: 504 | version "1.1.0" 505 | resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" 506 | 507 | is-stream@^1.0.0, is-stream@^1.1.0: 508 | version "1.1.0" 509 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 510 | 511 | is-utf8@^0.2.0: 512 | version "0.2.1" 513 | resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" 514 | 515 | isexe@^2.0.0: 516 | version "2.0.0" 517 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 518 | 519 | jschardet@^1.4.2: 520 | version "1.5.1" 521 | resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.1.tgz#c519f629f86b3a5bedba58a88d311309eec097f9" 522 | 523 | latest-version@^3.0.0: 524 | version "3.1.0" 525 | resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" 526 | dependencies: 527 | package-json "^4.0.0" 528 | 529 | listr-silent-renderer@^1.1.1: 530 | version "1.1.1" 531 | resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" 532 | 533 | listr-update-renderer@^0.2.0: 534 | version "0.2.0" 535 | resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz#ca80e1779b4e70266807e8eed1ad6abe398550f9" 536 | dependencies: 537 | chalk "^1.1.3" 538 | cli-truncate "^0.2.1" 539 | elegant-spinner "^1.0.1" 540 | figures "^1.7.0" 541 | indent-string "^3.0.0" 542 | log-symbols "^1.0.2" 543 | log-update "^1.0.2" 544 | strip-ansi "^3.0.1" 545 | 546 | listr-verbose-renderer@^0.4.0: 547 | version "0.4.0" 548 | resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.0.tgz#44dc01bb0c34a03c572154d4d08cde9b1dc5620f" 549 | dependencies: 550 | chalk "^1.1.3" 551 | cli-cursor "^1.0.2" 552 | date-fns "^1.27.2" 553 | figures "^1.7.0" 554 | 555 | listr@^0.11.0: 556 | version "0.11.0" 557 | resolved "https://registry.yarnpkg.com/listr/-/listr-0.11.0.tgz#5e778bc23806ac3ab984ed75564458151f39b03e" 558 | dependencies: 559 | chalk "^1.1.3" 560 | cli-truncate "^0.2.1" 561 | figures "^1.7.0" 562 | indent-string "^2.1.0" 563 | is-promise "^2.1.0" 564 | is-stream "^1.1.0" 565 | listr-silent-renderer "^1.1.1" 566 | listr-update-renderer "^0.2.0" 567 | listr-verbose-renderer "^0.4.0" 568 | log-symbols "^1.0.2" 569 | log-update "^1.0.2" 570 | ora "^0.2.3" 571 | rxjs "^5.0.0-beta.11" 572 | stream-to-observable "^0.1.0" 573 | strip-ansi "^3.0.1" 574 | 575 | load-json-file@^1.0.0: 576 | version "1.1.0" 577 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" 578 | dependencies: 579 | graceful-fs "^4.1.2" 580 | parse-json "^2.2.0" 581 | pify "^2.0.0" 582 | pinkie-promise "^2.0.0" 583 | strip-bom "^2.0.0" 584 | 585 | load-json-file@^2.0.0: 586 | version "2.0.0" 587 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 588 | dependencies: 589 | graceful-fs "^4.1.2" 590 | parse-json "^2.2.0" 591 | pify "^2.0.0" 592 | strip-bom "^3.0.0" 593 | 594 | locate-path@^2.0.0: 595 | version "2.0.0" 596 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 597 | dependencies: 598 | p-locate "^2.0.0" 599 | path-exists "^3.0.0" 600 | 601 | lodash@^4.3.0: 602 | version "4.17.4" 603 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" 604 | 605 | log-symbols@^1.0.2: 606 | version "1.0.2" 607 | resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" 608 | dependencies: 609 | chalk "^1.0.0" 610 | 611 | log-update@^1.0.2: 612 | version "1.0.2" 613 | resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" 614 | dependencies: 615 | ansi-escapes "^1.0.0" 616 | cli-cursor "^1.0.2" 617 | 618 | loud-rejection@^1.0.0: 619 | version "1.6.0" 620 | resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" 621 | dependencies: 622 | currently-unhandled "^0.4.1" 623 | signal-exit "^3.0.0" 624 | 625 | lowercase-keys@^1.0.0: 626 | version "1.0.0" 627 | resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" 628 | 629 | lru-cache@^4.0.1: 630 | version "4.1.1" 631 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" 632 | dependencies: 633 | pseudomap "^1.0.2" 634 | yallist "^2.1.2" 635 | 636 | make-dir@^1.0.0: 637 | version "1.0.0" 638 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" 639 | dependencies: 640 | pify "^2.3.0" 641 | 642 | map-obj@^1.0.0, map-obj@^1.0.1: 643 | version "1.0.1" 644 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" 645 | 646 | meow@^3.7.0: 647 | version "3.7.0" 648 | resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" 649 | dependencies: 650 | camelcase-keys "^2.0.0" 651 | decamelize "^1.1.2" 652 | loud-rejection "^1.0.0" 653 | map-obj "^1.0.1" 654 | minimist "^1.1.3" 655 | normalize-package-data "^2.3.4" 656 | object-assign "^4.0.1" 657 | read-pkg-up "^1.0.1" 658 | redent "^1.0.0" 659 | trim-newlines "^1.0.0" 660 | 661 | mimic-fn@^1.0.0: 662 | version "1.1.0" 663 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" 664 | 665 | minimatch@^3.0.4: 666 | version "3.0.4" 667 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 668 | dependencies: 669 | brace-expansion "^1.1.7" 670 | 671 | minimist@^1.1.3, minimist@^1.2.0: 672 | version "1.2.0" 673 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 674 | 675 | mute-stream@0.0.7: 676 | version "0.0.7" 677 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 678 | 679 | normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: 680 | version "2.4.0" 681 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" 682 | dependencies: 683 | hosted-git-info "^2.1.4" 684 | is-builtin-module "^1.0.0" 685 | semver "2 || 3 || 4 || 5" 686 | validate-npm-package-license "^3.0.1" 687 | 688 | np@^2.16.0: 689 | version "2.16.0" 690 | resolved "https://registry.yarnpkg.com/np/-/np-2.16.0.tgz#0cb8d0b98beb998b7ba8e8ce3ad12b07a46aee3c" 691 | dependencies: 692 | any-observable "^0.2.0" 693 | chalk "^1.1.3" 694 | del "^2.2.0" 695 | execa "^0.6.3" 696 | has-yarn "^1.0.0" 697 | inquirer "^3.0.6" 698 | listr "^0.11.0" 699 | log-symbols "^1.0.2" 700 | meow "^3.7.0" 701 | read-pkg-up "^2.0.0" 702 | rxjs "^5.0.0-beta.9" 703 | semver "^5.2.0" 704 | split "^1.0.0" 705 | stream-to-observable "^0.2.0" 706 | update-notifier "^2.1.0" 707 | 708 | npm-run-path@^2.0.0: 709 | version "2.0.2" 710 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 711 | dependencies: 712 | path-key "^2.0.0" 713 | 714 | number-is-nan@^1.0.0: 715 | version "1.0.1" 716 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 717 | 718 | object-assign@^4.0.1, object-assign@^4.1.0: 719 | version "4.1.1" 720 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 721 | 722 | once@^1.3.0: 723 | version "1.4.0" 724 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 725 | dependencies: 726 | wrappy "1" 727 | 728 | onetime@^1.0.0: 729 | version "1.1.0" 730 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" 731 | 732 | onetime@^2.0.0: 733 | version "2.0.1" 734 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 735 | dependencies: 736 | mimic-fn "^1.0.0" 737 | 738 | ora@^0.2.3: 739 | version "0.2.3" 740 | resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" 741 | dependencies: 742 | chalk "^1.1.1" 743 | cli-cursor "^1.0.2" 744 | cli-spinners "^0.1.2" 745 | object-assign "^4.0.1" 746 | 747 | os-tmpdir@~1.0.1: 748 | version "1.0.2" 749 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 750 | 751 | p-finally@^1.0.0: 752 | version "1.0.0" 753 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 754 | 755 | p-limit@^1.1.0: 756 | version "1.1.0" 757 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" 758 | 759 | p-locate@^2.0.0: 760 | version "2.0.0" 761 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 762 | dependencies: 763 | p-limit "^1.1.0" 764 | 765 | package-json@^4.0.0: 766 | version "4.0.1" 767 | resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" 768 | dependencies: 769 | got "^6.7.1" 770 | registry-auth-token "^3.0.1" 771 | registry-url "^3.0.3" 772 | semver "^5.1.0" 773 | 774 | parse-json@^2.2.0: 775 | version "2.2.0" 776 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 777 | dependencies: 778 | error-ex "^1.2.0" 779 | 780 | path-exists@^2.0.0: 781 | version "2.1.0" 782 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 783 | dependencies: 784 | pinkie-promise "^2.0.0" 785 | 786 | path-exists@^3.0.0: 787 | version "3.0.0" 788 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 789 | 790 | path-is-absolute@^1.0.0: 791 | version "1.0.1" 792 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 793 | 794 | path-is-inside@^1.0.1: 795 | version "1.0.2" 796 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 797 | 798 | path-key@^2.0.0: 799 | version "2.0.1" 800 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 801 | 802 | path-type@^1.0.0: 803 | version "1.1.0" 804 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" 805 | dependencies: 806 | graceful-fs "^4.1.2" 807 | pify "^2.0.0" 808 | pinkie-promise "^2.0.0" 809 | 810 | path-type@^2.0.0: 811 | version "2.0.0" 812 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 813 | dependencies: 814 | pify "^2.0.0" 815 | 816 | pify@^2.0.0, pify@^2.3.0: 817 | version "2.3.0" 818 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 819 | 820 | pinkie-promise@^2.0.0: 821 | version "2.0.1" 822 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 823 | dependencies: 824 | pinkie "^2.0.0" 825 | 826 | pinkie@^2.0.0: 827 | version "2.0.4" 828 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 829 | 830 | prepend-http@^1.0.1: 831 | version "1.0.4" 832 | resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" 833 | 834 | prettier@^1.5.3: 835 | version "1.5.3" 836 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.5.3.tgz#59dadc683345ec6b88f88b94ed4ae7e1da394bfe" 837 | 838 | pseudomap@^1.0.2: 839 | version "1.0.2" 840 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 841 | 842 | rc@^1.0.1, rc@^1.1.6: 843 | version "1.2.1" 844 | resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" 845 | dependencies: 846 | deep-extend "~0.4.0" 847 | ini "~1.3.0" 848 | minimist "^1.2.0" 849 | strip-json-comments "~2.0.1" 850 | 851 | read-pkg-up@^1.0.1: 852 | version "1.0.1" 853 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" 854 | dependencies: 855 | find-up "^1.0.0" 856 | read-pkg "^1.0.0" 857 | 858 | read-pkg-up@^2.0.0: 859 | version "2.0.0" 860 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 861 | dependencies: 862 | find-up "^2.0.0" 863 | read-pkg "^2.0.0" 864 | 865 | read-pkg@^1.0.0: 866 | version "1.1.0" 867 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" 868 | dependencies: 869 | load-json-file "^1.0.0" 870 | normalize-package-data "^2.3.2" 871 | path-type "^1.0.0" 872 | 873 | read-pkg@^2.0.0: 874 | version "2.0.0" 875 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 876 | dependencies: 877 | load-json-file "^2.0.0" 878 | normalize-package-data "^2.3.2" 879 | path-type "^2.0.0" 880 | 881 | redent@^1.0.0: 882 | version "1.0.0" 883 | resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" 884 | dependencies: 885 | indent-string "^2.1.0" 886 | strip-indent "^1.0.1" 887 | 888 | registry-auth-token@^3.0.1: 889 | version "3.3.1" 890 | resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.1.tgz#fb0d3289ee0d9ada2cbb52af5dfe66cb070d3006" 891 | dependencies: 892 | rc "^1.1.6" 893 | safe-buffer "^5.0.1" 894 | 895 | registry-url@^3.0.3: 896 | version "3.1.0" 897 | resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" 898 | dependencies: 899 | rc "^1.0.1" 900 | 901 | repeating@^2.0.0: 902 | version "2.0.1" 903 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" 904 | dependencies: 905 | is-finite "^1.0.0" 906 | 907 | restore-cursor@^1.0.1: 908 | version "1.0.1" 909 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" 910 | dependencies: 911 | exit-hook "^1.0.0" 912 | onetime "^1.0.0" 913 | 914 | restore-cursor@^2.0.0: 915 | version "2.0.0" 916 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 917 | dependencies: 918 | onetime "^2.0.0" 919 | signal-exit "^3.0.2" 920 | 921 | rimraf@^2.2.8: 922 | version "2.6.1" 923 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" 924 | dependencies: 925 | glob "^7.0.5" 926 | 927 | run-async@^2.2.0: 928 | version "2.3.0" 929 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 930 | dependencies: 931 | is-promise "^2.1.0" 932 | 933 | rx-lite-aggregates@^4.0.8: 934 | version "4.0.8" 935 | resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" 936 | dependencies: 937 | rx-lite "*" 938 | 939 | rx-lite@*, rx-lite@^4.0.8: 940 | version "4.0.8" 941 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" 942 | 943 | rxjs@^5.0.0-beta.11, rxjs@^5.0.0-beta.9: 944 | version "5.4.3" 945 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.4.3.tgz#0758cddee6033d68e0fd53676f0f3596ce3d483f" 946 | dependencies: 947 | symbol-observable "^1.0.1" 948 | 949 | safe-buffer@^5.0.1: 950 | version "5.1.1" 951 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" 952 | 953 | semver-diff@^2.0.0: 954 | version "2.1.0" 955 | resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" 956 | dependencies: 957 | semver "^5.0.3" 958 | 959 | "semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.2.0: 960 | version "5.4.1" 961 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" 962 | 963 | shebang-command@^1.2.0: 964 | version "1.2.0" 965 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 966 | dependencies: 967 | shebang-regex "^1.0.0" 968 | 969 | shebang-regex@^1.0.0: 970 | version "1.0.0" 971 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 972 | 973 | signal-exit@^3.0.0, signal-exit@^3.0.2: 974 | version "3.0.2" 975 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 976 | 977 | slice-ansi@0.0.4: 978 | version "0.0.4" 979 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" 980 | 981 | slide@^1.1.5: 982 | version "1.1.6" 983 | resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" 984 | 985 | spdx-correct@~1.0.0: 986 | version "1.0.2" 987 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" 988 | dependencies: 989 | spdx-license-ids "^1.0.2" 990 | 991 | spdx-expression-parse@~1.0.0: 992 | version "1.0.4" 993 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" 994 | 995 | spdx-license-ids@^1.0.2: 996 | version "1.2.2" 997 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" 998 | 999 | split@^1.0.0: 1000 | version "1.0.1" 1001 | resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" 1002 | dependencies: 1003 | through "2" 1004 | 1005 | stream-to-observable@^0.1.0: 1006 | version "0.1.0" 1007 | resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe" 1008 | 1009 | stream-to-observable@^0.2.0: 1010 | version "0.2.0" 1011 | resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.2.0.tgz#59d6ea393d87c2c0ddac10aa0d561bc6ba6f0e10" 1012 | dependencies: 1013 | any-observable "^0.2.0" 1014 | 1015 | string-width@^1.0.1: 1016 | version "1.0.2" 1017 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 1018 | dependencies: 1019 | code-point-at "^1.0.0" 1020 | is-fullwidth-code-point "^1.0.0" 1021 | strip-ansi "^3.0.0" 1022 | 1023 | string-width@^2.0.0, string-width@^2.1.0: 1024 | version "2.1.1" 1025 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 1026 | dependencies: 1027 | is-fullwidth-code-point "^2.0.0" 1028 | strip-ansi "^4.0.0" 1029 | 1030 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 1031 | version "3.0.1" 1032 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 1033 | dependencies: 1034 | ansi-regex "^2.0.0" 1035 | 1036 | strip-ansi@^4.0.0: 1037 | version "4.0.0" 1038 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 1039 | dependencies: 1040 | ansi-regex "^3.0.0" 1041 | 1042 | strip-bom@^2.0.0: 1043 | version "2.0.0" 1044 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" 1045 | dependencies: 1046 | is-utf8 "^0.2.0" 1047 | 1048 | strip-bom@^3.0.0: 1049 | version "3.0.0" 1050 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1051 | 1052 | strip-eof@^1.0.0: 1053 | version "1.0.0" 1054 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 1055 | 1056 | strip-indent@^1.0.1: 1057 | version "1.0.1" 1058 | resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" 1059 | dependencies: 1060 | get-stdin "^4.0.1" 1061 | 1062 | strip-json-comments@~2.0.1: 1063 | version "2.0.1" 1064 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 1065 | 1066 | supports-color@^2.0.0: 1067 | version "2.0.0" 1068 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 1069 | 1070 | supports-color@^4.0.0: 1071 | version "4.2.1" 1072 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" 1073 | dependencies: 1074 | has-flag "^2.0.0" 1075 | 1076 | symbol-observable@^1.0.1: 1077 | version "1.0.4" 1078 | resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d" 1079 | 1080 | term-size@^1.2.0: 1081 | version "1.2.0" 1082 | resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" 1083 | dependencies: 1084 | execa "^0.7.0" 1085 | 1086 | through@2, through@^2.3.6: 1087 | version "2.3.8" 1088 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 1089 | 1090 | timed-out@^4.0.0: 1091 | version "4.0.1" 1092 | resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" 1093 | 1094 | tmp@^0.0.31: 1095 | version "0.0.31" 1096 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" 1097 | dependencies: 1098 | os-tmpdir "~1.0.1" 1099 | 1100 | trim-newlines@^1.0.0: 1101 | version "1.0.0" 1102 | resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" 1103 | 1104 | unique-string@^1.0.0: 1105 | version "1.0.0" 1106 | resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" 1107 | dependencies: 1108 | crypto-random-string "^1.0.0" 1109 | 1110 | unzip-response@^2.0.1: 1111 | version "2.0.1" 1112 | resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" 1113 | 1114 | update-notifier@^2.1.0: 1115 | version "2.2.0" 1116 | resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.2.0.tgz#1b5837cf90c0736d88627732b661c138f86de72f" 1117 | dependencies: 1118 | boxen "^1.0.0" 1119 | chalk "^1.0.0" 1120 | configstore "^3.0.0" 1121 | import-lazy "^2.1.0" 1122 | is-npm "^1.0.0" 1123 | latest-version "^3.0.0" 1124 | semver-diff "^2.0.0" 1125 | xdg-basedir "^3.0.0" 1126 | 1127 | url-parse-lax@^1.0.0: 1128 | version "1.0.0" 1129 | resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" 1130 | dependencies: 1131 | prepend-http "^1.0.1" 1132 | 1133 | validate-npm-package-license@^3.0.1: 1134 | version "3.0.1" 1135 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" 1136 | dependencies: 1137 | spdx-correct "~1.0.0" 1138 | spdx-expression-parse "~1.0.0" 1139 | 1140 | which@^1.2.9: 1141 | version "1.3.0" 1142 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" 1143 | dependencies: 1144 | isexe "^2.0.0" 1145 | 1146 | widest-line@^1.0.0: 1147 | version "1.0.0" 1148 | resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" 1149 | dependencies: 1150 | string-width "^1.0.1" 1151 | 1152 | wrappy@1: 1153 | version "1.0.2" 1154 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1155 | 1156 | write-file-atomic@^2.0.0: 1157 | version "2.1.0" 1158 | resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.1.0.tgz#1769f4b551eedce419f0505deae2e26763542d37" 1159 | dependencies: 1160 | graceful-fs "^4.1.11" 1161 | imurmurhash "^0.1.4" 1162 | slide "^1.1.5" 1163 | 1164 | xdg-basedir@^3.0.0: 1165 | version "3.0.0" 1166 | resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" 1167 | 1168 | yallist@^2.1.2: 1169 | version "2.1.2" 1170 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" 1171 | --------------------------------------------------------------------------------