Chain: {chainName}.
Block: {height}.
My Account: {defaultAccount}.
My Balance: {balance}.
);
}
diff --git a/src/Tokens/Balance/TxProgress/TxProgress.js b/src/Tokens/Balance/TxProgress/TxProgress.js
deleted file mode 100644
index 76e951642c342fc75e9715c3cd38383e6fb70ea2..0000000000000000000000000000000000000000
--- a/src/Tokens/Balance/TxProgress/TxProgress.js
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2015-2018 Parity Technologies (UK) Ltd.
-// This file is part of Parity.
-
-// SPDX-License-Identifier: MIT
-
-import React, { Component } from 'react';
-
-import light from '../../../hoc';
-import { post$ } from '../../../lib'; // from '@parity/light'
-
-@light({
- txProgress: ownProps => post$(ownProps.tx)
-})
-class TxProgress extends Component {
- render() {
- const { txProgress } = this.props;
- return
;
- }
-}
-
-export default TxProgress;
diff --git a/src/Tokens/Balance/TxProgress/index.js b/src/Tokens/Balance/TxProgress/index.js
deleted file mode 100644
index 3d88851be25cb4b2f8347d6ac844ad553e122346..0000000000000000000000000000000000000000
--- a/src/Tokens/Balance/TxProgress/index.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2015-2018 Parity Technologies (UK) Ltd.
-// This file is part of Parity.
-
-// SPDX-License-Identifier: MIT
-
-import TxProgress from './TxProgress';
-
-export default TxProgress;
diff --git a/src/Tokens/Tokens.js b/src/Tokens/Tokens.js
index ff82491ffe404c0a310f93934b641879e154b7ea..40b7f53b23da7400e08905d65b723e7a42e9d00a 100644
--- a/src/Tokens/Tokens.js
+++ b/src/Tokens/Tokens.js
@@ -10,8 +10,30 @@ import Balance from './Balance';
class Accounts extends Component {
render () {
return (
-
- This is the tokens page.
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
);
}
diff --git a/src/assets/img/icons/gear.svg b/src/assets/img/icons/gear.svg
new file mode 100644
index 0000000000000000000000000000000000000000..38aa98b57533220a5a69ff1bf6edc3e643ed302f
--- /dev/null
+++ b/src/assets/img/icons/gear.svg
@@ -0,0 +1,4 @@
+
+
diff --git a/src/assets/img/icons/receive.svg b/src/assets/img/icons/receive.svg
new file mode 100644
index 0000000000000000000000000000000000000000..923f1c85d36848ced59534773d4fe507af147233
--- /dev/null
+++ b/src/assets/img/icons/receive.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/src/assets/img/tokens/ethereum.png b/src/assets/img/tokens/ethereum.png
new file mode 100644
index 0000000000000000000000000000000000000000..983e592da9e78740e04e9639ae0e6cb0a8d8ab91
Binary files /dev/null and b/src/assets/img/tokens/ethereum.png differ
diff --git a/src/assets/sass/components/_address.scss b/src/assets/sass/components/_address.scss
new file mode 100644
index 0000000000000000000000000000000000000000..22d06c90ff2b7c794d0ad884ef233536a36f1a75
--- /dev/null
+++ b/src/assets/sass/components/_address.scss
@@ -0,0 +1,10 @@
+.address {
+ font-size: ms(-1);
+ line-height: ms(0) * 1.3;
+ border-width: 1px 0;
+ border-style: solid;
+ border-color: $faint;
+ background: rgba($faint,0.25);
+ word-wrap: break-word;
+ padding: 0.5rem;
+}
diff --git a/src/assets/sass/components/_debug-nav.scss b/src/assets/sass/components/_debug-nav.scss
new file mode 100644
index 0000000000000000000000000000000000000000..1eb987d4a6f39bdca08987c077f793a5105c34f4
--- /dev/null
+++ b/src/assets/sass/components/_debug-nav.scss
@@ -0,0 +1,16 @@
+.debug-nav {
+ background-color: rgba($black,0.125);
+ position: fixed;
+ right: 1rem;
+ bottom: 1rem;
+
+ a, a:link, a:visited {
+ color: $white;
+ display: block;
+ padding: 0.5rem 1rem;
+ &:hover {
+ cursor: pointer;
+ background-color: rgba($black,0.125);
+ }
+ }
+}
diff --git a/src/assets/sass/components/_logo.scss b/src/assets/sass/components/_logo.scss
new file mode 100644
index 0000000000000000000000000000000000000000..69c7b821d06ecd5e44561ec2d233f84b4438a4db
--- /dev/null
+++ b/src/assets/sass/components/_logo.scss
@@ -0,0 +1,20 @@
+.logo {
+ padding: 1.5rem 0;
+
+ figure {
+ display: block;
+ margin: 0 auto;
+ background-color: $black;
+ background-image: url('https://www.parity.io/i/logo-small.png');
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: 3rem auto;
+ border-radius: 100%;
+ width: 6rem;
+ height: 6rem;
+ display: flex;
+ flex-direction: column;
+ text-indent: -9999px;
+ overflow: hidden;
+ }
+}
diff --git a/src/assets/sass/components/_primary-nav.scss b/src/assets/sass/components/_primary-nav.scss
new file mode 100644
index 0000000000000000000000000000000000000000..f9263260623b37838bab4bcdc29ebc9fc5490432
--- /dev/null
+++ b/src/assets/sass/components/_primary-nav.scss
@@ -0,0 +1,43 @@
+.primary-nav {
+ display: flex;
+ justify-content: flex-end;
+ padding-top: 0.25rem;
+
+ a,
+ a:link,
+ a:visited {
+ text-transform: uppercase;
+ font-size: ms(-2);
+ color: rgba($white, 0.675);
+ font-weight: 500;
+ padding: 0 0.5rem;
+ display: block;
+ &:hover {
+ color: $white;
+ border-radius: 0.25rem;
+ }
+
+ &.icon {
+ padding: 0;
+ width: ms(0) * 1.3;
+ height: ms(0) * 1.3;
+ text-indent: -9999rem;
+ background-size: ms(0) auto;
+ background-position: center center;
+ background-repeat: no-repeat;
+ opacity: 0.675;
+ margin-left: 0.25rem;
+ &:hover {
+ opacity: 1;
+ }
+
+ &.-receive {
+ background-image: url('../assets/img/icons/receive.svg');
+ }
+
+ &.-settings {
+ background-image: url('../assets/img/icons/gear.svg');
+ }
+ }
+ }
+}
diff --git a/src/assets/sass/components/_send-form.scss b/src/assets/sass/components/_send-form.scss
new file mode 100644
index 0000000000000000000000000000000000000000..397c361be9360041191a2196176d402d4781e846
--- /dev/null
+++ b/src/assets/sass/components/_send-form.scss
@@ -0,0 +1,33 @@
+.send-form {
+ padding: 1rem;
+}
+
+.send-form_fields {
+ label {
+ display: block;
+ font-size: ms(-1);
+ }
+
+ input[type="tel"] {
+ -webkit-appearance: none;
+ display: block;
+ width: 100%;
+ border-radius: 3px;
+ border: 1px solid $grey;
+ font-family: $mono;
+ font-size: ms(0);
+ line-height: 1.3;
+ padding: 0.25rem 0.25rem 0.325rem;
+ &:focus {
+ border-color: $blue;
+ }
+ }
+}
+
+.send-form_action {
+ padding-top: 1rem;
+ button {
+ margin: 0 auto;
+ display: block;
+ }
+}
diff --git a/src/assets/sass/components/_token-header.scss b/src/assets/sass/components/_token-header.scss
new file mode 100644
index 0000000000000000000000000000000000000000..492ab009df3f180603ba2f49e1d23c43f5b0affb
--- /dev/null
+++ b/src/assets/sass/components/_token-header.scss
@@ -0,0 +1,34 @@
+.token-header {
+ text-align: center;
+ padding: 1rem 0;
+ border-bottom: 1px solid $faint
+}
+
+.token-header_icon {
+ margin: 0 auto;
+ border-radius: ((ms(2) * 1.3) + 2rem) * 0.5;
+ width: (ms(2) * 1.3) + 2rem;
+ height: (ms(2) * 1.3) + 2rem;
+ background-color: $faint;
+ display: flex;
+ flex-direction: column;
+ flex-wrap: nowrap;
+ justify-content: center;
+ align-items: center;
+ align-content: center;
+ img {
+ height: (ms(2) * 1.3);
+ width: auto;
+ }
+}
+
+.token-header_name {
+ color: $black;
+ font-weight: 500;
+}
+
+.token-header_balance {
+ font-family: $mono;
+ color: $grey;
+ font-size: ms(-1);
+}
\ No newline at end of file
diff --git a/src/assets/sass/components/_token.scss b/src/assets/sass/components/_token.scss
new file mode 100644
index 0000000000000000000000000000000000000000..eec854698043b956009ac216db8a1d19f92fbe68
--- /dev/null
+++ b/src/assets/sass/components/_token.scss
@@ -0,0 +1,39 @@
+.token {
+ display: flex;
+ padding: 1rem;
+ user-select: none;
+
+ &:hover {
+ cursor: default;
+ }
+
+ .token_icon {
+ margin: -0.5rem 0 -0.5rem -0.425rem;
+ border-radius: ((ms(0) * 1.3) + 1rem) * 0.5;
+ width: (ms(0) * 1.3) + 1rem;
+ height: (ms(0) * 1.3) + 1rem;
+ background-color: $faint;
+ display: flex;
+ flex-direction: column;
+ flex-wrap: nowrap;
+ justify-content: center;
+ align-items: center;
+ align-content: center;
+ img {
+ height: (ms(0) * 1.3);
+ width: auto;
+ }
+ }
+
+ .token_name {
+ padding-left: 0.5rem;
+ flex-grow: 1;
+ color: $black;
+ font-weight: 500;
+ }
+
+ .token_balance {
+ font-family: $mono;
+ color: $grey;
+ }
+}
diff --git a/src/assets/sass/layouts/_wrapper.scss b/src/assets/sass/layouts/_wrapper.scss
new file mode 100644
index 0000000000000000000000000000000000000000..75f1d41b3a5b69c9885a202f98c81d73b774340a
--- /dev/null
+++ b/src/assets/sass/layouts/_wrapper.scss
@@ -0,0 +1,35 @@
+.wrapper {
+ position: fixed;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ overflow: hidden;
+
+ .content { // TODO: abstract this out
+ overflow: visible;
+ max-width: 22rem;
+ margin: 0 auto;
+
+ .connector {
+ height: 0.5rem;
+ display: flex;
+ justify-content: center;
+ margin-bottom: -1px;
+ svg {
+ height: 0.5rem;
+ width: auto;
+ polygon {
+ fill: $purple;
+ }
+ }
+ }
+
+ .window {
+ background: $purple;
+ padding: 0.25rem;
+ border-radius: 0.25rem;
+ box-shadow: 0 0.125rem 0.75rem rgba($black,0.325), 0 0.125rem 0.125rem rgba($black,0.175);
+ }
+ }
+}
diff --git a/src/assets/sass/modules/_grid.scss b/src/assets/sass/modules/_grid.scss
new file mode 100644
index 0000000000000000000000000000000000000000..678f2821cd90d278f94068ab4b8d60745afc25c1
--- /dev/null
+++ b/src/assets/sass/modules/_grid.scss
@@ -0,0 +1,967 @@
+$gutter: 38px;
+
+$small: 768px;
+$medium: 960px;
+$large: 1280px;
+$giant: 1440px;
+
+.container-fluid,
+.container {
+ margin-right: auto;
+ margin-left: auto;
+}
+
+.container-fluid {
+ padding-right: 2rem;
+ padding-left: 2rem;
+}
+
+.row {
+ box-sizing: border-box;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 1 auto;
+ flex: 0 1 auto;
+ -webkit-box-orient: horizontal;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: row;
+ flex-direction: row;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap;
+ margin-right: -$gutter/2;
+ margin-left: -$gutter/2;
+}
+
+.row.reverse {
+ -webkit-box-orient: horizontal;
+ -webkit-box-direction: reverse;
+ -ms-flex-direction: row-reverse;
+ flex-direction: row-reverse;
+}
+
+.col.reverse {
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: reverse;
+ -ms-flex-direction: column-reverse;
+ flex-direction: column-reverse;
+}
+
+.col-xs,
+.col-xs-1,
+.col-xs-2,
+.col-xs-3,
+.col-xs-4,
+.col-xs-5,
+.col-xs-6,
+.col-xs-7,
+.col-xs-8,
+.col-xs-9,
+.col-xs-10,
+.col-xs-11,
+.col-xs-12,
+.col-xs-offset-0,
+.col-xs-offset-1,
+.col-xs-offset-2,
+.col-xs-offset-3,
+.col-xs-offset-4,
+.col-xs-offset-5,
+.col-xs-offset-6,
+.col-xs-offset-7,
+.col-xs-offset-8,
+.col-xs-offset-9,
+.col-xs-offset-10,
+.col-xs-offset-11,
+.col-xs-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: $gutter/2;
+ padding-left: $gutter/2;
+}
+
+.col-xs {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+}
+
+.col-xs-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+}
+
+.col-xs-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+}
+
+.col-xs-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+}
+
+.col-xs-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+}
+
+.col-xs-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+}
+
+.col-xs-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+}
+
+.col-xs-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+}
+
+.col-xs-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+}
+
+.col-xs-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+}
+
+.col-xs-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+}
+
+.col-xs-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+}
+
+.col-xs-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+}
+
+.col-xs-offset-0 {
+ margin-left: 0;
+}
+
+.col-xs-offset-1 {
+ margin-left: 8.33333333%;
+}
+
+.col-xs-offset-2 {
+ margin-left: 16.66666667%;
+}
+
+.col-xs-offset-3 {
+ margin-left: 25%;
+}
+
+.col-xs-offset-4 {
+ margin-left: 33.33333333%;
+}
+
+.col-xs-offset-5 {
+ margin-left: 41.66666667%;
+}
+
+.col-xs-offset-6 {
+ margin-left: 50%;
+}
+
+.col-xs-offset-7 {
+ margin-left: 58.33333333%;
+}
+
+.col-xs-offset-8 {
+ margin-left: 66.66666667%;
+}
+
+.col-xs-offset-9 {
+ margin-left: 75%;
+}
+
+.col-xs-offset-10 {
+ margin-left: 83.33333333%;
+}
+
+.col-xs-offset-11 {
+ margin-left: 91.66666667%;
+}
+
+.start-xs {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+}
+
+.center-xs {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+}
+
+.end-xs {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+}
+
+.top-xs {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+}
+
+.middle-xs {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.bottom-xs {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+}
+
+.around-xs {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+}
+
+.between-xs {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+}
+
+.first-xs {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+}
+
+.last-xs {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+}
+
+@media only screen and (min-width: $small) {
+ .container {
+ width: ($small + $gutter);
+ }
+
+ .col-sm,
+ .col-sm-1,
+ .col-sm-2,
+ .col-sm-3,
+ .col-sm-4,
+ .col-sm-5,
+ .col-sm-6,
+ .col-sm-7,
+ .col-sm-8,
+ .col-sm-9,
+ .col-sm-10,
+ .col-sm-11,
+ .col-sm-12,
+ .col-sm-offset-0,
+ .col-sm-offset-1,
+ .col-sm-offset-2,
+ .col-sm-offset-3,
+ .col-sm-offset-4,
+ .col-sm-offset-5,
+ .col-sm-offset-6,
+ .col-sm-offset-7,
+ .col-sm-offset-8,
+ .col-sm-offset-9,
+ .col-sm-offset-10,
+ .col-sm-offset-11,
+ .col-sm-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: $gutter/2;
+ padding-left: $gutter/2;
+ }
+
+ .col-sm {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-sm-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-sm-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-sm-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-sm-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-sm-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-sm-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-sm-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-sm-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-sm-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-sm-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-sm-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-sm-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-sm-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-sm-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-sm-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-sm-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-sm-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-sm-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-sm-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-sm-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-sm-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-sm-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-sm-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-sm-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-sm {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-sm {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-sm {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-sm {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-sm {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-sm {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-sm {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-sm {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-sm {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-sm {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+}
+
+@media only screen and (min-width: $medium) {
+ .container {
+ width: ($medium + $gutter);
+ }
+
+ .col-md,
+ .col-md-1,
+ .col-md-2,
+ .col-md-3,
+ .col-md-4,
+ .col-md-5,
+ .col-md-6,
+ .col-md-7,
+ .col-md-8,
+ .col-md-9,
+ .col-md-10,
+ .col-md-11,
+ .col-md-12,
+ .col-md-offset-0,
+ .col-md-offset-1,
+ .col-md-offset-2,
+ .col-md-offset-3,
+ .col-md-offset-4,
+ .col-md-offset-5,
+ .col-md-offset-6,
+ .col-md-offset-7,
+ .col-md-offset-8,
+ .col-md-offset-9,
+ .col-md-offset-10,
+ .col-md-offset-11,
+ .col-md-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: $gutter/2;
+ padding-left: $gutter/2;
+ }
+
+ .col-md {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-md-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-md-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-md-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-md-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-md-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-md-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-md-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-md-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-md-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-md-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-md-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-md-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-md-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-md-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-md-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-md-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-md-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-md-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-md-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-md-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-md-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-md-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-md-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-md-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-md {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-md {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-md {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-md {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-md {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-md {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-md {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-md {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-md {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-md {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+}
+
+@media only screen and (min-width: $large) {
+ .container {
+ width: ($large + $gutter);
+ }
+
+ .col-lg,
+ .col-lg-1,
+ .col-lg-2,
+ .col-lg-3,
+ .col-lg-4,
+ .col-lg-5,
+ .col-lg-6,
+ .col-lg-7,
+ .col-lg-8,
+ .col-lg-9,
+ .col-lg-10,
+ .col-lg-11,
+ .col-lg-12,
+ .col-lg-offset-0,
+ .col-lg-offset-1,
+ .col-lg-offset-2,
+ .col-lg-offset-3,
+ .col-lg-offset-4,
+ .col-lg-offset-5,
+ .col-lg-offset-6,
+ .col-lg-offset-7,
+ .col-lg-offset-8,
+ .col-lg-offset-9,
+ .col-lg-offset-10,
+ .col-lg-offset-11,
+ .col-lg-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: $gutter/2;
+ padding-left: $gutter/2;
+ }
+
+ .col-lg {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-lg-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-lg-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-lg-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-lg-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-lg-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-lg-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-lg-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-lg-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-lg-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-lg-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-lg-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-lg-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-lg-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-lg-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-lg-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-lg-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-lg-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-lg-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-lg-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-lg-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-lg-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-lg-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-lg-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-lg-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-lg {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-lg {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-lg {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-lg {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-lg {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-lg {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-lg {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-lg {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-lg {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-lg {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+}
diff --git a/src/assets/sass/modules/_modular-scale.scss b/src/assets/sass/modules/_modular-scale.scss
new file mode 100644
index 0000000000000000000000000000000000000000..c7d40f64976ba604f6e90640c2f67c8b7b190a7b
--- /dev/null
+++ b/src/assets/sass/modules/_modular-scale.scss
@@ -0,0 +1,17 @@
+@import "modular-scale/ratios";
+
+$ms-base: 1em !default;
+$ms-ratio: $golden !default;
+$ms-range: null !default;
+
+@import "modular-scale/tests";
+
+@import "modular-scale/pow";
+@import "modular-scale/calc";
+@import "modular-scale/generate-list";
+@import "modular-scale/sort-list";
+@import "modular-scale/round-px";
+@import "modular-scale/function";
+@import "modular-scale/function-list";
+
+@import "modular-scale/respond";
\ No newline at end of file
diff --git a/src/assets/sass/modules/_reset.scss b/src/assets/sass/modules/_reset.scss
new file mode 100644
index 0000000000000000000000000000000000000000..a690078a49d4823893c2dcfd3acfd91ddc62da2e
--- /dev/null
+++ b/src/assets/sass/modules/_reset.scss
@@ -0,0 +1,51 @@
+@mixin reset {
+ @viewport {
+ zoom: 1.0;
+ width: extend-to-zoom;
+ }
+
+ @-ms-viewport {
+ width: extend-to-zoom;
+ zoom: 1.0;
+ }
+
+ html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, font, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
+ margin: 0;
+ padding: 0;
+ font-size: 100%;
+ vertical-align: baseline;
+ border: 0;
+ outline: 0;
+ background: transparent;
+ font-feature-settings: "kern", "liga", "pnum";
+ -webkit-font-smoothing: antialiased;
+ text-rendering: optimizeLegibility;
+ webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+ text-size-adjust: 100%;
+ }
+
+ blockquote, q {
+ quotes: none;
+ }
+
+ input:focus, select:focus, button:focus {
+ outline: 0;
+ }
+
+ table {
+ border-collapse: collapse;
+ border-spacing: 0;
+ }
+
+ ul, ol {
+ list-style: none;
+ }
+
+ * {
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+ box-sizing: border-box;
+ }
+}
diff --git a/src/assets/sass/modules/_variables.scss b/src/assets/sass/modules/_variables.scss
new file mode 100644
index 0000000000000000000000000000000000000000..0bb56ca51671b03fe8caa67b3e37b26c2050110c
--- /dev/null
+++ b/src/assets/sass/modules/_variables.scss
@@ -0,0 +1,18 @@
+$mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
+$sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
+
+// Site colours
+
+$white: #f9f9f9;
+$faint: #ddd;
+$black: #222;
+$grey: #888;
+
+$purple: #330044;
+$blue: #3ec28f;
+$green: #3ec28f;
+
+// Modular Scale
+
+$ms-base: 1rem;
+$ms-ratio: $minor-third;
diff --git a/src/assets/sass/modules/modular-scale/_calc.scss b/src/assets/sass/modules/modular-scale/_calc.scss
new file mode 100644
index 0000000000000000000000000000000000000000..60620ee091071f5fcaf9a4b7724c92fd8850ec8c
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_calc.scss
@@ -0,0 +1,17 @@
+@function ms-calc($Value, $Base: $ms-base, $Ratio: $ms-ratio) {
+
+ // If pow exists use it.
+ // It supports non-interger values!
+ @if $MS-pow-exists {
+
+ // The formula for figuring out modular scales is:
+ // (r^v)*b
+ @return pow($Ratio, $Value) * $Base;
+ }
+
+ // If not, use ms-pow().
+ // Not as fast or capable of non-integer exponents.
+ @else {
+ @return ms-pow($Ratio, $Value) * $Base;
+ }
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_function-list.scss b/src/assets/sass/modules/modular-scale/_function-list.scss
new file mode 100644
index 0000000000000000000000000000000000000000..7aa1ba7f58c97d1b2e3726de4c87818ef98a3310
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_function-list.scss
@@ -0,0 +1,68 @@
+// Outputs a list of values instead of a single value
+@function ms-list($Start: 0, $End: 0, $Bases: $ms-base, $Ratios: $ms-ratio) {
+
+ // Seed results
+ $Positive-return: ();
+ $Negitive-return: ();
+ $Return: ();
+
+ @if $End >= 0 {
+ // Generate a list of all possible values
+ $Positive-return: ms-generate-list($End, $Bases, $Ratios);
+
+ // Sort the generated lists
+ $Positive-return: ms-sort-list($Positive-return);
+
+ // Trim list
+ $Trim-list: ();
+ // If the starting value is a positive number
+ // trim the positive return from that
+ @if $Start >= 0 {
+ @for $i from ($Start + 1) through $End + 1 {
+ $Trim-list: join($Trim-list, nth($Positive-return, $i));
+ }
+ }
+ // If not, then include everything up to the end.
+ @else {
+ @for $i from 1 through $End + 1 {
+ $Trim-list: join($Trim-list, nth($Positive-return, $i));
+ }
+ }
+ $Positive-return: $Trim-list;
+ }
+
+ // Generate a negitive list
+ @if $Start < 0 {
+ // Generate a list of all possible values
+ $Negitive-return: ms-generate-list($Start, $Bases, $Ratios);
+
+ // Sort the generated lists
+ $Negitive-return: ms-sort-list($Negitive-return);
+
+ // Reverse negitive list results.
+ $MS-new-return: ();
+ @each $i in $Negitive-return {
+ $MS-new-return: join($i, $MS-new-return);
+ }
+ $Negitive-return: $MS-new-return;
+
+ // Trim list
+ $Trim-list: ();
+ @if $End < 0 {
+ @for $i from abs($End) through (abs($Start) + 2) {
+ $Trim-list: join(nth($Negitive-return, $i), $Trim-list);
+ }
+ }
+ @else {
+ @for $i from 2 through (abs($Start) + 1) {
+ $Trim-list: join(nth($Negitive-return, $i), $Trim-list);
+ }
+ }
+ $Negitive-return: $Trim-list;
+ }
+
+ // Join both positive and negitive possibilities.
+ $Return: join($Negitive-return, $Positive-return);
+
+ @return $Return;
+}
diff --git a/src/assets/sass/modules/modular-scale/_function.scss b/src/assets/sass/modules/modular-scale/_function.scss
new file mode 100644
index 0000000000000000000000000000000000000000..ac00423d2c8282c60eb8042225b2d351bb24d80f
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_function.scss
@@ -0,0 +1,55 @@
+// The main function that brings it all together
+@function ms($Value: 0, $Bases: $ms-base, $Ratios: $ms-ratio) {
+
+ // If no multi-base or multi-ratio stuff is going on
+ // then just retrn the basic calculaiton
+ @if length($Bases) == 1 and length($Ratios) == 1 {
+ @return ms-round-px(ms-calc($Value, $Bases, $Ratios));
+ }
+
+ // Do calculations directly in Ruby when avalible
+ @if $MS-gem-exists {
+
+ // Remove units from bases
+ $Unit: nth($Bases, 1) * 0 + 1; // Extracts the unit from the base
+ $Unitless-Bases: ();
+ @each $Base in $Bases {
+ $Base: $Base/$Unit;
+ $Unitless-Bases: join($Unitless-Bases, $Base);
+ }
+
+ // Calculate natively in Ruby
+ @return ms-round-px(ms-gem-func($Value, $Unitless-Bases, $Ratios) * $Unit);
+ }
+
+ // Generate a list of all possible values
+ $Return: ms-generate-list($Value, $Bases, $Ratios);
+
+ // Sort the generated lists
+ $Return: ms-sort-list($Return);
+
+ // Reverse list if its negitive.
+ @if $Value < 0 {
+ $MS-new-return: ();
+ @each $i in $Return {
+ $MS-new-return: join($i, $MS-new-return);
+ }
+ $Return: $MS-new-return;
+ }
+
+ // Normalize value for counting from 1
+ // Because CSS counts things from 1
+ // So Sass does as well
+ // So I get to write fun stuff like this
+ $Value: abs($Value) + 1;
+
+ // Find the correct value in the list
+ $Return: nth($Return, $Value);
+
+ @return ms-round-px($Return);
+}
+
+// Same function, different name, for good measure.
+@function modular-scale($Value: 0, $Bases: $ms-base, $Ratios: $ms-ratio) {
+ @return ms($Value, $Bases, $Ratios);
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_generate-list.scss b/src/assets/sass/modules/modular-scale/_generate-list.scss
new file mode 100644
index 0000000000000000000000000000000000000000..a46d210ecf598983fde7d98bbf1e1d026c97e866
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_generate-list.scss
@@ -0,0 +1,103 @@
+@function ms-reverse-list($list) {
+ @if length($list) > 1 {
+ @if nth($list, 1) > nth($list, length($list)) {
+ $MS-reversed-list: ();
+ @each $Value in $list {
+ $MS-reversed-list: join($Value, $MS-reversed-list);
+ }
+ @return $MS-reversed-list;
+ }
+ }
+ @return $list;
+}
+
+
+@function ms-generate-list($Value: 0, $Bases: $ms-base, $Ratios: $ms-ratio) {
+
+ // Create blank lists
+ $MS-list: ();
+ $MS-base-list: ();
+
+ // Loop through each ratio AND each base
+ // to generate all possibilities.
+ @each $Ratio in $Ratios {
+ @each $Base in $Bases {
+
+ // Set base variables
+ $MS-base-list: ();
+ $Base-counter: 0;
+
+ // Seed list with an initial value
+ $MS-base-list: $Base;
+
+ // Find values on a positive scale
+ @if $Value >= 0 {
+
+ // Find lower values on the scale
+ $Base-counter: -1;
+ @while ms-calc($Base-counter, $Base, $Ratio) >= nth($Bases, 1) {
+ $MS-base-list: join($MS-base-list, ms-calc($Base-counter, $Base, $Ratio));
+ $Base-counter: $Base-counter - 1;
+ }
+
+ // Ensure the list is smallest to largest
+ $MS-base-list: ms-reverse-list($MS-base-list);
+
+ // Find higher possible values on the scale
+ $Base-counter: 1;
+ @while ms-calc($Base-counter, $Base, $Ratio) <= ms-calc($Value, nth($Bases, 1), $Ratio) {
+ $MS-base-list: join($MS-base-list, ms-calc($Base-counter, $Base, $Ratio));
+ $Base-counter: $Base-counter + 1;
+ }
+ }
+
+ // Find values on a negitive scale
+ @else {
+
+ // Find lower values on the scale
+ $Base-counter: 1;
+ @while ms-calc($Base-counter, $Base, $Ratio) <= nth($Bases, 1) {
+ $MS-base-list: join($MS-base-list, ms-calc($Base-counter, $Base, $Ratio));
+ $Base-counter: $Base-counter + 1;
+ }
+
+ // Ensure the list is smallest to largest
+ $MS-base-list: ms-reverse-list($MS-base-list);
+
+ // Find higher possible values on the scale
+ $Base-counter: -1;
+ @while ms-calc($Base-counter, $Base, $Ratio) >= ms-calc($Value, nth($Bases, 1), $Ratio) {
+ $MS-calc: ms-calc($Base-counter, $Base, $Ratio);
+ // detect if the value excedes the main base value
+ @if $MS-calc < nth($Bases, 1) {
+ $MS-base-list: join($MS-base-list, $MS-calc);
+ }
+ $Base-counter: $Base-counter - 1;
+ }
+
+ // Trim outlier base.
+ @if length($Bases) > 1 {
+ @for $i from 2 through length($Bases) {
+ @if nth($MS-base-list, 1) > nth($Bases, 1) {
+ $MS-new-list: ();
+ @for $i from 2 through length($MS-base-list) {
+ $MS-new-list: join($MS-new-list, nth($MS-base-list, $i));
+ }
+ $MS-base-list: $MS-new-list;
+ }
+ }
+ }
+ }
+
+ // reverse list if its largest to smallest
+ $MS-base-list: ms-reverse-list($MS-base-list);
+
+ // Add new possibilities to the master list
+ $MS-list: append($MS-list, $MS-base-list, comma);
+
+ }
+ }
+
+ // After all the possibilities are found, output a master list
+ @return $MS-list;
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_pow.scss b/src/assets/sass/modules/modular-scale/_pow.scss
new file mode 100644
index 0000000000000000000000000000000000000000..3c503ab79705f9f417d247b94576adf2598a6118
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_pow.scss
@@ -0,0 +1,40 @@
+// If a native exponent function doesnt exist
+// this one is needed.
+@function ms-pow($Base, $Exponent) {
+
+ // Find and remove unit.
+ // Avoids messyness with unit calculations
+ $Unit: $Base * 0 + 1;
+ $Base: $Base/$Unit;
+
+ // This function doesnt support non-interger exponents.
+ // Warn the user about why this is breaking.
+ @if round($Exponent) != $Exponent {
+ @warn "Unfortunately, you need Compass to use non-integer exponents";
+ }
+
+ // Set up the loop, priming the return with the base.
+ $Return: $Base;
+
+ // If the number is positive, multiply it.
+ @if $Exponent > 0 {
+ // Basic feedback loop as exponents
+ // are recursivley multiplied numbers.
+ @for $i from 1 to $Exponent {
+ $Return: $Return * $Base;
+ }
+ }
+
+ // If the number is 0 or negitive
+ // divide instead of multiply.
+ @else {
+ // Libsass doesnt allow negitive values in loops
+ @for $i from (-1 + 1) to (abs($Exponent) + 1) {
+ $Return: $Return / $Base;
+ }
+ }
+
+ // Return is now compounded redy to be returned.
+ // Add the unit back onto the number.
+ @return $Return * $Unit;
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_ratios.scss b/src/assets/sass/modules/modular-scale/_ratios.scss
new file mode 100644
index 0000000000000000000000000000000000000000..8b80828a1f5eed5df6797bc99733e899e8316631
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_ratios.scss
@@ -0,0 +1,20 @@
+// Golden ratio
+$phi : 1.618034 ;
+$golden : $phi ;
+
+$double-octave : 4 ;
+$major-twelfth : 3 ;
+$major-eleventh : 2.666666667 ;
+$major-tenth : 2.5 ;
+$octave : 2 ;
+$major-seventh : 1.875 ;
+$minor-seventh : 1.777777778 ;
+$major-sixth : 1.666666667 ;
+$minor-sixth : 1.6 ;
+$fifth : 1.5 ;
+$augmented-fourth : 1.41421 ;
+$fourth : 1.333333333 ;
+$major-third : 1.25 ;
+$minor-third : 1.2 ;
+$major-second : 1.125 ;
+$minor-second : 1.066666667 ;
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_respond.scss b/src/assets/sass/modules/modular-scale/_respond.scss
new file mode 100644
index 0000000000000000000000000000000000000000..41c8dcfbf0cddeb06fe59be499d82457e6d9572a
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_respond.scss
@@ -0,0 +1,16 @@
+@mixin ms-respond($property, $value, $range: $ms-range, $base: $ms-base) {
+ @if $ms-range == null {
+ #{$property}: ms($value,$base,$ms-ratio);
+ } @else {
+ @for $i from 1 through length($range) {
+ @debug nth($range,$i);
+ @if $i == 1 {
+ #{$property}: ms($value,$base,nth(nth($range,$i),1));
+ } @else {
+ @media (min-width: nth(nth($range,$i),2)) {
+ #{$property}: ms($value,$base,nth(nth($range,$i),1));
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_round-px.scss b/src/assets/sass/modules/modular-scale/_round-px.scss
new file mode 100644
index 0000000000000000000000000000000000000000..10d51d9103ba2063b29ecf9a54001c93f60d62ca
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_round-px.scss
@@ -0,0 +1,6 @@
+@function ms-round-px($Result) {
+ @if unit($Result) == 'px' {
+ @return round($Result);
+ }
+ @return $Result;
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_sort-list.scss b/src/assets/sass/modules/modular-scale/_sort-list.scss
new file mode 100644
index 0000000000000000000000000000000000000000..80d4d53c8011910bd1670adf7a866c780142731f
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_sort-list.scss
@@ -0,0 +1,93 @@
+// List sorting via a modified merge-sort algorythmn
+// http://en.wikipedia.org/wiki/Merge_sort
+
+@function ms-merge($A, $B) {
+
+ $Return: ();
+
+ // Some empty lists get passed through
+ // so just pass the other list throguh
+ @if length($A) == 0 {
+ @return $B;
+ }
+
+ // If lists fit next to each other, just merge them
+ // This helps performance skipping the need to check each value
+ @if nth($A, length($A)) < nth($B, 1) {
+ @return join($A, $B);
+ }
+ @if nth($B, length($B)) < nth($A, 1) {
+ @return join($B, $A);
+ }
+
+ // Counters start at 1
+ $A-counter: 1;
+ $B-counter: 1;
+
+ // Start looping through all numbers in array
+ @while $A-counter <= length($A) and $B-counter <= length($B) {
+
+ // Check if the A value is smaller
+ // Uses or equal to avoid duplicate numbers
+ @if nth($A, $A-counter) <= nth($B, $B-counter) {
+ $Return: join($Return, nth($A, $A-counter));
+ $A-counter: $A-counter + 1;
+ }
+
+ // Check if the B value is smaller
+ @elseif nth($A, $A-counter) > nth($B, $B-counter) {
+ $Return: join($Return, nth($B, $B-counter));
+ $B-counter: $B-counter + 1;
+ }
+ }
+
+ // Run through remainder values in the list
+ @while $A-counter <= length($A) {
+ $Current: nth($A, $A-counter);
+ @if $Current != nth($Return, length($Return)) {
+ $Return: join($Return, $Current);
+ }
+ $A-counter: $A-counter + 1;
+ }
+ @while $B-counter <= length($B) {
+ $Current: nth($B, $B-counter);
+ @if $Current != nth($Return, length($Return)) {
+ $Return: join($Return, $Current);
+ }
+ $B-counter: $B-counter + 1;
+ }
+
+ // Done! return is now sorted and complete
+ @return $Return;
+}
+
+
+
+// Pull it all together
+@function ms-sort-list($Lists) {
+
+ $Return: ();
+
+ @each $List in $Lists {
+ @if $Return == () {
+ $Return: $List;
+ }
+ @else {
+ $Return: ms-merge($List, $Return);
+ }
+ }
+
+ // final cleanup of repeated items
+ $Last: null;
+ $New-list: ();
+ @each $Item in $Return {
+ @if $Item != $Last {
+ $New-list: join($New-list, $Item);
+ }
+ $Last: $Item;
+ }
+ $Return: $New-list;
+
+
+ @return $Return;
+}
\ No newline at end of file
diff --git a/src/assets/sass/modules/modular-scale/_tests.scss b/src/assets/sass/modules/modular-scale/_tests.scss
new file mode 100644
index 0000000000000000000000000000000000000000..d64a99d670c0eae720147abf8f5a667b8cafa7cb
--- /dev/null
+++ b/src/assets/sass/modules/modular-scale/_tests.scss
@@ -0,0 +1,22 @@
+// Feature testing
+
+
+// Test if the pow() function exists
+@function ms-pow-exists() {
+ @if pow(4, 2) == 16 {
+ @return true;
+ }
+ @return false;
+}
+
+$MS-pow-exists: ms-pow-exists();
+
+// Test if MS was installed via the gem
+@function ms-gem-exists() {
+ @if ms-gem-installed() == true {
+ @return true;
+ }
+ @return false;
+}
+
+$MS-gem-exists: ms-gem-exists();
\ No newline at end of file
diff --git a/src/assets/sass/shared/_basics.scss b/src/assets/sass/shared/_basics.scss
new file mode 100644
index 0000000000000000000000000000000000000000..d28a6b8f1cf80c0c769b2c4d09f9fe5bb0568942
--- /dev/null
+++ b/src/assets/sass/shared/_basics.scss
@@ -0,0 +1,32 @@
+html {
+ font-size: 17px;
+ height: 100%;
+ @media screen and (min-width: $large) {
+ font-size: 1.4vw;
+ }
+}
+
+body {
+ background-color: #A5BFDA;
+ background-image: linear-gradient(#A5BFDA, #BFCDDC);
+ background-repeat: no-repeat;
+ background-size: cover;
+ color: $white;
+ font-family: $sans;
+ font-weight: 400;
+ font-size: ms(0);
+ line-height: ms(0) * 1.3;
+ min-height: 100%;
+}
+
+.hidden {
+ display: none;
+}
+
+a, a:link, a:visited {
+ color: $black;
+ text-decoration: none;
+ &:hover {
+ cursor: default;
+ }
+}
diff --git a/src/assets/sass/shared/_box.scss b/src/assets/sass/shared/_box.scss
new file mode 100644
index 0000000000000000000000000000000000000000..085774c9682ca9354190af94b6d52ceab916627b
--- /dev/null
+++ b/src/assets/sass/shared/_box.scss
@@ -0,0 +1,31 @@
+.box {
+ display: block;
+
+ &.-card {
+ background: $white;
+ color: $grey;
+ box-shadow: 0 0.125rem 0.125rem rgba($black,0.5);
+ border-radius: 2px;
+
+ strong {
+ color: $black;
+ }
+ }
+
+ &.-scroller {
+ max-height: 22rem;
+ overflow-x: hidden;
+ overflow-y: auto;
+ }
+
+ &.-padded {
+ padding: 1rem;
+ }
+
+ &.-stacked {
+ margin-bottom: 0.5rem;
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+}
diff --git a/src/assets/sass/shared/_button.scss b/src/assets/sass/shared/_button.scss
new file mode 100644
index 0000000000000000000000000000000000000000..77489e037b267f24050e60b6c1f57b1b8b9ae7c9
--- /dev/null
+++ b/src/assets/sass/shared/_button.scss
@@ -0,0 +1,23 @@
+button {
+ color: $white;
+ background-color: $green;
+ border-radius: 3px;
+ border: none;
+ font-size: ms(0);
+ line-height: 1.3;
+ padding: 0.25rem 0.675rem 0.325rem;
+ &:active {
+ background-color: darken($green,2.5%)
+ }
+
+ &.-small {
+ font-weight: 500;
+ font-size: ms(-2);
+ padding: 0.125rem 0.25rem 0.175rem;
+ background-color: $faint;
+ color: rgba($black,0.75);
+ &:active {
+ background-color: darken($faint,2.5%)
+ }
+ }
+}
diff --git a/src/assets/sass/shared/_form.scss b/src/assets/sass/shared/_form.scss
new file mode 100644
index 0000000000000000000000000000000000000000..8b137891791fe96927ad78e64b0aad7bded08bdc
--- /dev/null
+++ b/src/assets/sass/shared/_form.scss
@@ -0,0 +1 @@
+
diff --git a/src/assets/sass/shared/_list.scss b/src/assets/sass/shared/_list.scss
new file mode 100644
index 0000000000000000000000000000000000000000..5ced253ec5f21190f0ea59648ec488163f11a691
--- /dev/null
+++ b/src/assets/sass/shared/_list.scss
@@ -0,0 +1,10 @@
+.list {
+ &.-tokens {
+ & > li {
+ margin-bottom: 0.25rem;
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+ }
+}
diff --git a/src/assets/sass/shared/_text.scss b/src/assets/sass/shared/_text.scss
new file mode 100644
index 0000000000000000000000000000000000000000..158001095ffcce392f38539ae6d856a8539e4a54
--- /dev/null
+++ b/src/assets/sass/shared/_text.scss
@@ -0,0 +1,29 @@
+.text {
+ p, ul, ol, blockquote {
+ margin: 1rem 0;
+ &:first-child {
+ margin-top: 0;
+ }
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+
+ &.-centered {
+ text-align: center;
+ }
+
+ &.-right {
+ text-align: right;
+ }
+
+ &.-fixed {
+ font-family: $mono;
+ font-size: ms(-1);
+ }
+
+ strong {
+ font-weight: 500;
+ }
+}
+
diff --git a/src/lib/overview/index.js b/src/lib/overview/index.js
index 3d0ca439ad67a373024f225b0cee6feef5f09e52..abfcdae1fbcbf44018fe29467729856857f0fcb2 100644
--- a/src/lib/overview/index.js
+++ b/src/lib/overview/index.js
@@ -22,7 +22,7 @@ export const addSubscribedRpc = rpc => {
*/
if (typeof window !== 'undefined') {
window.parity = {
- rpcOverview() {
+ rpcOverview () {
return subscribed;
}
};
diff --git a/yarn.lock b/yarn.lock
index 5e5702b26b0d60e2f03d3a453ef821f1efc9905d..b6dcfc6717cc4a384a96abe3e0a7186130ad1786 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -670,7 +670,7 @@ ansi-styles@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-ansi-styles@^3.0.0, ansi-styles@^3.2.1:
+ansi-styles@^3.0.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
dependencies:
@@ -857,6 +857,10 @@ async-each@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
+async-foreach@^0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542"
+
async@^1.4.0, async@^1.5.0, async@^1.5.2:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
@@ -2112,6 +2116,10 @@ case-sensitive-paths-webpack-plugin@2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.1.tgz#3d29ced8c1f124bf6f53846fb3f5894731fdc909"
+caseless@~0.11.0:
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
+
caseless@~0.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
@@ -2153,7 +2161,7 @@ chardet@^0.4.0:
version "0.4.2"
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
-chokidar@^1.6.0:
+chokidar@^1.6.0, chokidar@^1.6.1:
version "1.7.0"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
dependencies:
@@ -2396,7 +2404,7 @@ combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5:
dependencies:
delayed-stream "~1.0.0"
-commander@2.15.x, commander@^2.11.0, commander@~2.15.0:
+commander@2.15.x, commander@^2.11.0, commander@^2.9.0, commander@~2.15.0:
version "2.15.1"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f"
@@ -2584,6 +2592,13 @@ cross-spawn@5.1.0, cross-spawn@^5.0.1, cross-spawn@^5.1.0:
shebang-command "^1.2.0"
which "^1.2.9"
+cross-spawn@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
+ dependencies:
+ lru-cache "^4.0.1"
+ which "^1.2.9"
+
cross-spawn@^6.0.5:
version "6.0.5"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
@@ -3044,7 +3059,7 @@ duplexer3@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
-duplexer@^0.1.1:
+duplexer@^0.1.1, duplexer@~0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1"
@@ -3163,7 +3178,7 @@ error@^7.0.2:
string-template "~0.2.1"
xtend "~4.0.0"
-es-abstract@^1.7.0:
+es-abstract@^1.4.3, es-abstract@^1.7.0:
version "1.11.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.11.0.tgz#cce87d518f0496893b1a30cd8461835535480681"
dependencies:
@@ -3523,6 +3538,18 @@ event-emitter@~0.3.5:
d "1"
es5-ext "~0.10.14"
+event-stream@~3.3.0:
+ version "3.3.4"
+ resolved "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571"
+ dependencies:
+ duplexer "~0.1.1"
+ from "~0"
+ map-stream "~0.1.0"
+ pause-stream "0.0.11"
+ split "0.3"
+ stream-combiner "~0.0.4"
+ through "~2.3.1"
+
eventemitter3@1.x.x:
version "1.2.0"
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508"
@@ -3939,6 +3966,10 @@ from2@^2.1.0, from2@^2.1.1:
inherits "^2.0.1"
readable-stream "^2.0.0"
+from@~0:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
+
fs-extra@3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.1.tgz#3794f378c58b342ea7dbbb23095109c4b3b62291"
@@ -4015,6 +4046,22 @@ gauge@~2.7.3:
strip-ansi "^3.0.1"
wide-align "^1.1.0"
+gaze@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105"
+ dependencies:
+ globule "^1.0.0"
+
+generate-function@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
+
+generate-object-property@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0"
+ dependencies:
+ is-property "^1.0.0"
+
get-caller-file@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5"
@@ -4081,7 +4128,17 @@ glob-parent@^3.1.0:
is-glob "^3.1.0"
path-dirname "^1.0.0"
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2:
+glob@^6.0.4:
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22"
+ dependencies:
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "2 || 3"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1:
version "7.1.2"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
dependencies:
@@ -4145,6 +4202,14 @@ globby@^6.1.0:
pify "^2.0.0"
pinkie-promise "^2.0.0"
+globule@^1.0.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09"
+ dependencies:
+ glob "~7.1.1"
+ lodash "~4.17.4"
+ minimatch "~3.0.2"
+
got@^6.7.1:
version "6.7.1"
resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0"
@@ -4244,6 +4309,15 @@ har-schema@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
+har-validator@~2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d"
+ dependencies:
+ chalk "^1.1.1"
+ commander "^2.9.0"
+ is-my-json-valid "^2.12.4"
+ pinkie-promise "^2.0.0"
+
har-validator@~4.2.1:
version "4.2.1"
resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
@@ -4578,6 +4652,10 @@ imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+in-publish@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
+
indent-string@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
@@ -4838,6 +4916,20 @@ is-installed-globally@^0.1.0:
global-dirs "^0.1.0"
is-path-inside "^1.0.0"
+is-my-ip-valid@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824"
+
+is-my-json-valid@^2.12.4:
+ version "2.17.2"
+ resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c"
+ dependencies:
+ generate-function "^2.0.0"
+ generate-object-property "^1.1.0"
+ is-my-ip-valid "^1.0.0"
+ jsonpointer "^4.0.0"
+ xtend "^4.0.0"
+
is-npm@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4"
@@ -4916,6 +5008,10 @@ is-promise@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
+is-property@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
+
is-redirect@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24"
@@ -5307,7 +5403,7 @@ jest@20.0.4:
dependencies:
jest-cli "^20.0.4"
-js-base64@^2.1.9:
+js-base64@^2.1.8, js-base64@^2.1.9:
version "2.4.3"
resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.3.tgz#2e545ec2b0f2957f41356510205214e98fad6582"
@@ -5471,6 +5567,10 @@ jsonify@~0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
+jsonpointer@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
+
jsprim@^1.2.2:
version "1.4.1"
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
@@ -5668,10 +5768,18 @@ lodash._reinterpolate@~3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
+lodash.assign@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
+
lodash.camelcase@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
+lodash.clonedeep@^4.3.2:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
+
lodash.cond@^4.3.0:
version "4.5.2"
resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
@@ -5684,6 +5792,10 @@ lodash.memoize@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
+lodash.mergewith@^4.6.0:
+ version "4.6.1"
+ resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927"
+
lodash.template@^4.4.0:
version "4.4.0"
resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0"
@@ -5701,7 +5813,7 @@ lodash.uniq@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
-"lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0:
+"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0, lodash@~4.17.4:
version "4.17.5"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
@@ -5788,6 +5900,10 @@ map-obj@^1.0.0, map-obj@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
+map-stream@~0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
+
map-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
@@ -5845,6 +5961,10 @@ memory-fs@^0.4.0, memory-fs@~0.4.1:
errno "^0.1.3"
readable-stream "^2.0.1"
+memorystream@^0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"
+
meow@^3.3.0, meow@^3.7.0:
version "3.7.0"
resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
@@ -5949,18 +6069,18 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
+"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+ dependencies:
+ brace-expansion "^1.1.7"
+
minimatch@3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774"
dependencies:
brace-expansion "^1.0.0"
-minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- dependencies:
- brace-expansion "^1.1.7"
-
minimist@0.0.8:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
@@ -6044,7 +6164,7 @@ mute-stream@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
-nan@^2.3.0, nan@^2.3.3:
+nan@^2.10.0, nan@^2.3.0, nan@^2.3.3:
version "2.10.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f"
@@ -6106,6 +6226,24 @@ node-forge@0.7.1:
version "0.7.1"
resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.1.tgz#9da611ea08982f4b94206b3beb4cc9665f20c300"
+node-gyp@^3.3.1:
+ version "3.6.2"
+ resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60"
+ dependencies:
+ fstream "^1.0.0"
+ glob "^7.0.3"
+ graceful-fs "^4.1.2"
+ minimatch "^3.0.2"
+ mkdirp "^0.5.0"
+ nopt "2 || 3"
+ npmlog "0 || 1 || 2 || 3 || 4"
+ osenv "0"
+ request "2"
+ rimraf "2"
+ semver "~5.3.0"
+ tar "^2.0.0"
+ which "1"
+
node-int64@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
@@ -6163,6 +6301,43 @@ node-pre-gyp@^0.6.39:
tar "^2.2.1"
tar-pack "^3.4.0"
+node-sass-chokidar@^1.2.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/node-sass-chokidar/-/node-sass-chokidar-1.2.2.tgz#ea1c13634c74f9cb411eb7a8a7906ded95cb28fe"
+ dependencies:
+ async-foreach "^0.1.3"
+ chokidar "^1.6.1"
+ get-stdin "^4.0.1"
+ glob "^7.0.3"
+ meow "^3.7.0"
+ node-sass "^4.7.2"
+ sass-graph "^2.1.1"
+ stdout-stream "^1.4.0"
+
+node-sass@^4.7.2, node-sass@^4.8.3:
+ version "4.8.3"
+ resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.8.3.tgz#d077cc20a08ac06f661ca44fb6f19cd2ed41debb"
+ dependencies:
+ async-foreach "^0.1.3"
+ chalk "^1.1.1"
+ cross-spawn "^3.0.0"
+ gaze "^1.0.0"
+ get-stdin "^4.0.1"
+ glob "^7.0.3"
+ in-publish "^2.0.0"
+ lodash.assign "^4.2.0"
+ lodash.clonedeep "^4.3.2"
+ lodash.mergewith "^4.6.0"
+ meow "^3.7.0"
+ mkdirp "^0.5.1"
+ nan "^2.10.0"
+ node-gyp "^3.3.1"
+ npmlog "^4.0.0"
+ request "~2.79.0"
+ sass-graph "^2.2.4"
+ stdout-stream "^1.4.0"
+ "true-case-path" "^1.0.2"
+
nomnom@^1.8.1:
version "1.8.1"
resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7"
@@ -6170,6 +6345,12 @@ nomnom@^1.8.1:
chalk "~0.4.0"
underscore "~1.6.0"
+"nopt@2 || 3":
+ version "3.0.6"
+ resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
+ dependencies:
+ abbrev "1"
+
nopt@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
@@ -6213,13 +6394,27 @@ normalize-url@^1.4.0:
query-string "^4.1.0"
sort-keys "^1.0.0"
+npm-run-all@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.2.tgz#90d62d078792d20669139e718621186656cea056"
+ dependencies:
+ ansi-styles "^3.2.0"
+ chalk "^2.1.0"
+ cross-spawn "^5.1.0"
+ memorystream "^0.3.1"
+ minimatch "^3.0.4"
+ ps-tree "^1.1.0"
+ read-pkg "^3.0.0"
+ shell-quote "^1.6.1"
+ string.prototype.padend "^3.0.0"
+
npm-run-path@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
dependencies:
path-key "^2.0.0"
-npmlog@^4.0.2:
+"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
dependencies:
@@ -6390,7 +6585,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
-osenv@^0.1.4:
+osenv@0, osenv@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
dependencies:
@@ -6598,6 +6793,12 @@ path-type@^3.0.0:
dependencies:
pify "^3.0.0"
+pause-stream@0.0.11:
+ version "0.0.11"
+ resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
+ dependencies:
+ through "~2.3"
+
pbkdf2@^3.0.3:
version "3.0.14"
resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade"
@@ -7050,6 +7251,12 @@ prr@~1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
+ps-tree@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014"
+ dependencies:
+ event-stream "~3.3.0"
+
pseudomap@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
@@ -7099,6 +7306,10 @@ qs@6.5.1, qs@~6.5.1:
version "6.5.1"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"
+qs@~6.3.0:
+ version "6.3.2"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c"
+
qs@~6.4.0:
version "6.4.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
@@ -7595,6 +7806,33 @@ replace-ext@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb"
+request@2, request@^2.79.0:
+ version "2.85.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa"
+ dependencies:
+ aws-sign2 "~0.7.0"
+ aws4 "^1.6.0"
+ caseless "~0.12.0"
+ combined-stream "~1.0.5"
+ extend "~3.0.1"
+ forever-agent "~0.6.1"
+ form-data "~2.3.1"
+ har-validator "~5.0.3"
+ hawk "~6.0.2"
+ http-signature "~1.2.0"
+ is-typedarray "~1.0.0"
+ isstream "~0.1.2"
+ json-stringify-safe "~5.0.1"
+ mime-types "~2.1.17"
+ oauth-sign "~0.8.2"
+ performance-now "^2.1.0"
+ qs "~6.5.1"
+ safe-buffer "^5.1.1"
+ stringstream "~0.0.5"
+ tough-cookie "~2.3.3"
+ tunnel-agent "^0.6.0"
+ uuid "^3.1.0"
+
request@2.81.0:
version "2.81.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
@@ -7622,32 +7860,30 @@ request@2.81.0:
tunnel-agent "^0.6.0"
uuid "^3.0.0"
-request@^2.79.0:
- version "2.85.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa"
+request@~2.79.0:
+ version "2.79.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.6.0"
- caseless "~0.12.0"
+ aws-sign2 "~0.6.0"
+ aws4 "^1.2.1"
+ caseless "~0.11.0"
combined-stream "~1.0.5"
- extend "~3.0.1"
+ extend "~3.0.0"
forever-agent "~0.6.1"
- form-data "~2.3.1"
- har-validator "~5.0.3"
- hawk "~6.0.2"
- http-signature "~1.2.0"
+ form-data "~2.1.1"
+ har-validator "~2.0.6"
+ hawk "~3.1.3"
+ http-signature "~1.1.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
json-stringify-safe "~5.0.1"
- mime-types "~2.1.17"
- oauth-sign "~0.8.2"
- performance-now "^2.1.0"
- qs "~6.5.1"
- safe-buffer "^5.1.1"
- stringstream "~0.0.5"
- tough-cookie "~2.3.3"
- tunnel-agent "^0.6.0"
- uuid "^3.1.0"
+ mime-types "~2.1.7"
+ oauth-sign "~0.8.1"
+ qs "~6.3.0"
+ stringstream "~0.0.4"
+ tough-cookie "~2.3.0"
+ tunnel-agent "~0.4.1"
+ uuid "^3.0.0"
require-directory@^2.1.1:
version "2.1.1"
@@ -7830,6 +8066,15 @@ sane@~1.6.0:
walker "~1.0.5"
watch "~0.10.0"
+sass-graph@^2.1.1, sass-graph@^2.2.4:
+ version "2.2.4"
+ resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49"
+ dependencies:
+ glob "^7.0.0"
+ lodash "^4.0.0"
+ scss-tokenizer "^0.2.3"
+ yargs "^7.0.0"
+
sax@^1.2.1, sax@~1.2.1:
version "1.2.4"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
@@ -7851,6 +8096,13 @@ scoped-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8"
+scss-tokenizer@^0.2.3:
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1"
+ dependencies:
+ js-base64 "^2.1.8"
+ source-map "^0.4.2"
+
select-hose@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
@@ -7886,6 +8138,10 @@ semver-diff@^2.0.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
+semver@~5.3.0:
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
+
send@0.16.2:
version "0.16.2"
resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1"
@@ -7988,7 +8244,7 @@ shebang-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
-shell-quote@1.6.1:
+shell-quote@1.6.1, shell-quote@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767"
dependencies:
@@ -8128,7 +8384,7 @@ source-map@0.5.x, source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, sourc
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-source-map@^0.4.4:
+source-map@^0.4.2, source-map@^0.4.4:
version "0.4.4"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
dependencies:
@@ -8189,6 +8445,12 @@ split-string@^3.0.1, split-string@^3.0.2:
dependencies:
extend-shallow "^3.0.0"
+split@0.3:
+ version "0.3.3"
+ resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f"
+ dependencies:
+ through "2"
+
sprintf-js@~1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
@@ -8237,6 +8499,12 @@ statuses@~1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087"
+stdout-stream@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b"
+ dependencies:
+ readable-stream "^2.0.1"
+
store@^2.0.12:
version "2.0.12"
resolved "https://registry.yarnpkg.com/store/-/store-2.0.12.tgz#8c534e2a0b831f72b75fc5f1119857c44ef5d593"
@@ -8248,6 +8516,12 @@ stream-browserify@^2.0.1:
inherits "~2.0.1"
readable-stream "^2.0.2"
+stream-combiner@~0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14"
+ dependencies:
+ duplexer "~0.1.1"
+
stream-each@^1.1.0:
version "1.2.2"
resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd"
@@ -8304,6 +8578,14 @@ string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
is-fullwidth-code-point "^2.0.0"
strip-ansi "^4.0.0"
+string.prototype.padend@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.4.3"
+ function-bind "^1.0.2"
+
string_decoder@^1.0.0, string_decoder@~1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -8497,7 +8779,7 @@ tar-pack@^3.4.0:
tar "^2.2.1"
uid-number "^0.0.6"
-tar@^2.2.1:
+tar@^2.0.0, tar@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
dependencies:
@@ -8547,7 +8829,7 @@ through2@^2.0.0:
readable-stream "^2.1.5"
xtend "~4.0.1"
-through@^2.3.6:
+through@2, through@^2.3.6, through@~2.3, through@~2.3.1:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
@@ -8635,6 +8917,12 @@ trim-right@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
+"true-case-path@^1.0.2":
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62"
+ dependencies:
+ glob "^6.0.4"
+
tty-browserify@0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
@@ -8645,6 +8933,10 @@ tunnel-agent@^0.6.0:
dependencies:
safe-buffer "^5.0.1"
+tunnel-agent@~0.4.1:
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
+
tweetnacl@^0.14.3, tweetnacl@~0.14.0:
version "0.14.5"
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
@@ -9238,7 +9530,7 @@ which-module@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
-which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0:
+which@1, which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
dependencies:
@@ -9398,7 +9690,7 @@ yargs@^6.6.0:
y18n "^3.2.1"
yargs-parser "^4.2.0"
-yargs@^7.0.2:
+yargs@^7.0.0, yargs@^7.0.2:
version "7.1.0"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"
dependencies: