diff --git a/frontend/src/components/article/index.js b/frontend/src/components/article/index.js index 123833b2..77e57f8a 100644 --- a/frontend/src/components/article/index.js +++ b/frontend/src/components/article/index.js @@ -6,4 +6,5 @@ const { // Main Contonent Wrapper Styles module.exports = styled.article` + background-color: #fafafa; `; diff --git a/frontend/src/components/header/index.js b/frontend/src/components/header/index.js index e34123b3..110c7683 100644 --- a/frontend/src/components/header/index.js +++ b/frontend/src/components/header/index.js @@ -6,7 +6,7 @@ const Column = require('@ui/components/column'); const Container = require('@ui/components/container'); const Avatar = require('@ui/components/avatar'); const fns = require('@ui/shared/functions'); -const logo = require('@resources/logo.png'); +const logo = require('@resources/logo.svg'); const PropTypes = require('@root/prop-types'); const Row = require('@ui/components/row'); const Tooltip = require('@ui/components/tooltip'); diff --git a/frontend/src/components/navigation/index.js b/frontend/src/components/navigation/index.js new file mode 100644 index 00000000..6fd1406b --- /dev/null +++ b/frontend/src/components/navigation/index.js @@ -0,0 +1,8 @@ +const Styled = require('styled-components'); + +const { + default: styled +} = Styled; + +module.exports = styled.nav` +`; diff --git a/frontend/src/components/navigation/org.js b/frontend/src/components/navigation/org.js new file mode 100644 index 00000000..e8f493c5 --- /dev/null +++ b/frontend/src/components/navigation/org.js @@ -0,0 +1,139 @@ +const React = require('react'); +const ReactRouter = require('react-router'); +const ReactRedux = require('react-redux'); +const Styled = require('styled-components'); + +const Avatar = require('@ui/components/avatar'); +const Container = require('@ui/components/container'); +const PropTypes = require('@root/prop-types'); +const selectors = require('@state/selectors'); +const Ul = require('@ui/components/horizontal-list/ul'); +const fns = require('@ui/shared/functions'); + +const { + connect +} = ReactRedux; + +const { + Link, +} = ReactRouter; + +const { + default: styled +} = Styled; + +const { + orgsSelector +} = selectors; + +const { + remcalc +} = fns; + +const StyledNav = styled.div` + background-color: #f2f2f2; + border-bottom: ${remcalc(1)} solid #d8d8d8; + + & ul { + height: ${remcalc(60)}; + margin: 0px 0px 0px 0px !important; + } +`; + +// TODO: refactor colours into constants in UI +const NavigationLinkContainer = styled.div` + padding: ${remcalc(11)} ${remcalc(12)} ${remcalc(12)}; + color: #646464; + border: solid ${remcalc(1)} #d8d8d8; + height: ${remcalc(24)}; + background-color: #f2f2f2; + + &.active { + background-color: #fafafa; + border-bottom: solid ${remcalc(1)} #fafafa; + } +`; + +const OrgImage = styled.div` + float: left; +`; + +const OrgAvatar = styled(Avatar)` + display: block !important; +`; + +const OrgName = styled.span` + margin-left: ${remcalc(12)}; + margin-top: ${remcalc(3)}; +`; + +const NavLi = styled.li` + display: inline-block; + padding-top: ${remcalc(12)}; + padding-left: ${remcalc(3)}; + + & a { + text-decoration: none !important; + } +`; + +const OrgNavigation = ({ + orgs = [] +}) => { + const navLinks = orgs.map(({ + id, + name, + image, + }) => { + const to = `/${id}`; + + return ( + + + { + ({ + isActive, + href, + onClick, + }) => + + + + + + + {name} + + + + } + + + ); + }); + + return ( + + + + + + ); +}; + +OrgNavigation.propTypes = { + orgs: React.PropTypes.arrayOf(PropTypes.org) +}; + +const mapStateToProps = (state) => ({ + orgs: orgsSelector(state) +}); + +module.exports = connect(mapStateToProps)(OrgNavigation); diff --git a/frontend/src/containers/app.js b/frontend/src/containers/app.js index f26290cc..87ccdbc0 100644 --- a/frontend/src/containers/app.js +++ b/frontend/src/containers/app.js @@ -10,6 +10,8 @@ const Footer = require('@components/footer'); const Header = require('@containers/header'); const Home = require('@containers/home'); const NotFound = require('@containers/not-found'); +const Nav = require('@components/navigation'); +const OrgNavigation = require('@components/navigation/org'); const { updateRouter @@ -71,6 +73,10 @@ module.exports = (props) => { return (
+ +
diff --git a/frontend/src/containers/home/index.js b/frontend/src/containers/home/index.js index 8c759608..2e2e8ca7 100644 --- a/frontend/src/containers/home/index.js +++ b/frontend/src/containers/home/index.js @@ -1,57 +1,30 @@ const React = require('react'); const ReactRedux = require('react-redux'); const ReactRouter = require('react-router'); -const Styled = require('styled-components'); const Container = require('@ui/components/container'); -const Li = require('@ui/components/horizontal-list/li'); const Org = require('@containers/org'); const PropTypes = require('@root/prop-types'); const Redirect = require('@components/redirect'); const selectors = require('@state/selectors'); -const Ul = require('@ui/components/horizontal-list/ul'); const NotFound = require('@containers/not-found'); - const { connect } = ReactRedux; const { - Link, Match, Miss } = ReactRouter; -const { - default: styled -} = Styled; - const { orgsSelector } = selectors; -const StyledNav = styled.div` - background-color: #f2f2f2; -`; - const Home = ({ orgs = [] }) => { - const navLinks = orgs.map(({ - id, - name - }) => { - const to = `/${id}`; - - return ( -
  • - - {name} - -
  • - ); - }); const notFound = !orgs.length ? @@ -59,13 +32,6 @@ const Home = ({ return (
    - - -
      - {navLinks} -
    -
    -
    diff --git a/frontend/src/mock-state.json b/frontend/src/mock-state.json index 937c0396..bb1cec86 100644 --- a/frontend/src/mock-state.json +++ b/frontend/src/mock-state.json @@ -210,7 +210,8 @@ ], "owner": "b94033c1-3665-4c36-afab-d9c3d0b51c01", "id": "nicola", - "name": "Your dashboard" + "name": "Your dashboard", + "image": "https://pbs.twimg.com/profile_images/641289584580493312/VBfsPlff_400x400.jpg" }, { "owner": "b94033c1-3665-4c36-afab-d9c3d0b51c01", "uuid": "e12ad7db-91b2-4154-83dd-40dcfc700dcc", @@ -220,7 +221,8 @@ "owner": "b94033c1-3665-4c36-afab-d9c3d0b51c01", "uuid": "551f316d-e414-480f-9787-b4c408db3edd", "id": "make-us-proud", - "name": "Make Us Proud" + "name": "Make Us Proud", + "image": "/static/images/make-us-proud.svg" }] }, "projects": { diff --git a/frontend/src/resources/logo.png b/frontend/src/resources/logo.png deleted file mode 100644 index b3367991..00000000 Binary files a/frontend/src/resources/logo.png and /dev/null differ diff --git a/frontend/src/resources/logo.svg b/frontend/src/resources/logo.svg new file mode 100644 index 00000000..a9da7b24 --- /dev/null +++ b/frontend/src/resources/logo.svg @@ -0,0 +1,2 @@ + +logo diff --git a/ui/src/components/avatar/index.js b/ui/src/components/avatar/index.js index dc5b24c2..b43210a3 100644 --- a/ui/src/components/avatar/index.js +++ b/ui/src/components/avatar/index.js @@ -23,37 +23,41 @@ const Picture = styled.img` `; const Letter = styled.p` - font-size: 2rem; - margin-top: 0; - margin-bottom: 1em; - line-height: 1.5; + ${verticallyAlignCenter} + max-width: 100%; + margin: 0 0 0 0 !important; + color: #FFFFFF; + font-size: ${remcalc(13)}; + font-weight: 600; `; const Avatar = styled.div` border-radius: 100%; - height: ${remcalc(42)}; display: inline-block; overflow: hidden; position: relative; text-align: center; - width: ${remcalc(42)}; `; module.exports = ({ alt, className, - color, + color = '#ACC014', crossorigin, + height = remcalc(42), longdesc, name = '', sizes, src, srcset, - style + style, + width = remcalc(42), }) => { const _style = { ...style, - background: color + background: color, + width, + height, }; const letter = name[0]; @@ -84,10 +88,12 @@ module.exports.propTypes = { className: React.PropTypes.string, color: React.PropTypes.string, crossorigin: React.PropTypes.string, + height: React.PropTypes.string, longdesc: React.PropTypes.string, name: React.PropTypes.string, sizes: React.PropTypes.string, src: React.PropTypes.string, srcset: React.PropTypes.string, - style: React.PropTypes.object + style: React.PropTypes.object, + width: React.PropTypes.string, }; diff --git a/ui/src/components/horizontal-list/li.js b/ui/src/components/horizontal-list/li.js index 7b7e1661..70ab8303 100644 --- a/ui/src/components/horizontal-list/li.js +++ b/ui/src/components/horizontal-list/li.js @@ -16,7 +16,7 @@ const { module.exports = styled.li` display: inline-block; - margin-right: ${remcalc(64)}; + margin-right: ${remcalc(24)}; padding-top: ${remcalc(10)}; padding-bottom: ${remcalc(10)}; diff --git a/yarn.lock b/yarn.lock index 7e101b1e..deabafd5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,27 +1,95 @@ # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 + + +abbrev@1: + version "1.0.9" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" + +ansi-regex@^0.2.0, ansi-regex@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9" + +ansi-styles@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" + argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" dependencies: sprintf-js "~1.0.2" +asap@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" + +balanced-match@^0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" + +brace-expansion@^1.0.0: + version "1.1.6" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" + dependencies: + balanced-match "^0.4.1" + concat-map "0.0.1" + buffer-shims@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" +builtin-modules@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +chalk@~0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.5.1.tgz#663b3a648b68b55d04690d49167aa837858f2174" + dependencies: + ansi-styles "^1.1.0" + escape-string-regexp "^1.0.0" + has-ansi "^0.1.0" + strip-ansi "^0.3.0" + supports-color "^0.2.0" + ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" +debug@^2.2.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" + dependencies: + ms "0.7.2" + +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + +dezalgo@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + dependencies: + asap "^2.0.0" + wrappy "1" + duplexer@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" +escape-string-regexp@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" @@ -30,6 +98,30 @@ events-to-array@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/events-to-array/-/events-to-array-1.0.2.tgz#b3484465534fe4ff66fbdd1a83b777713ba404aa" +glob@^6.0.0: + 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" + +graceful-fs@^4.1.2: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +has-ansi@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e" + dependencies: + ansi-regex "^0.2.0" + +hosted-git-info@^2.1.4: + version "2.1.5" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" + husky@^0.11.9: version "0.11.9" resolved "https://registry.yarnpkg.com/husky/-/husky-0.11.9.tgz#28cd1dc16bffdca1d4d93592814e5f3c327b38ee" @@ -37,10 +129,23 @@ husky@^0.11.9: is-ci "^1.0.9" normalize-path "^1.0.0" -inherits@~2.0.1: +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" +is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + is-ci@^1.0.9: version "1.0.10" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" @@ -51,6 +156,10 @@ isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" +jju@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jju/-/jju-1.3.0.tgz#dadd9ef01924bc728b03f2f7979bdbd62f7a2aaa" + js-yaml@^3.2.7: version "3.7.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" @@ -58,22 +167,107 @@ js-yaml@^3.2.7: argparse "^1.0.7" esprima "^2.6.0" +json-parse-helpfulerror@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz#13f14ce02eed4e981297b64eb9e3b932e2dd13dc" + dependencies: + jju "^1.1.0" + +license-checker@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/license-checker/-/license-checker-7.1.1.tgz#b0a3ec47f2469fe3a639e52a1151cd26fc2c2905" + dependencies: + chalk "~0.5.1" + debug "^2.2.0" + mkdirp "^0.3.5" + nopt "^2.2.0" + read-installed "~4.0.3" + treeify "^1.0.1" + +license-to-fail@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/license-to-fail/-/license-to-fail-2.2.0.tgz#6d5929f3b1edfb0866e05eb22919a5e1de32ff37" + dependencies: + license-checker "^7.1.0" + lodash@^3.5.0: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" +"minimatch@2 || 3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" + dependencies: + brace-expansion "^1.0.0" + minimist@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +mkdirp@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" + +ms@0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" + +nopt@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-2.2.1.tgz#2aa09b7d1768487b3b89a9c5aa52335bff0baea7" + dependencies: + abbrev "1" + +normalize-package-data@^2.0.0: + version "2.3.5" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.5.tgz#8d924f142960e1777e7ffe170543631cc7cb02df" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + normalize-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-1.0.0.tgz#32d0e472f91ff345701c15a8311018d3b0a90379" +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" +read-installed@~4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/read-installed/-/read-installed-4.0.3.tgz#ff9b8b67f187d1e4c29b9feb31f6b223acd19067" + dependencies: + debuglog "^1.0.1" + read-package-json "^2.0.0" + readdir-scoped-modules "^1.0.0" + semver "2 || 3 || 4 || 5" + slide "~1.1.3" + util-extend "^1.0.1" + optionalDependencies: + graceful-fs "^4.1.2" + +read-package-json@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.0.4.tgz#61ed1b2256ea438d8008895090be84b8e799c853" + dependencies: + glob "^6.0.0" + json-parse-helpfulerror "^1.0.2" + normalize-package-data "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.2" + readable-stream@^2, readable-stream@^2.1.5: version "2.2.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" @@ -86,6 +280,37 @@ readable-stream@^2, readable-stream@^2.1.5: string_decoder "~0.10.x" util-deprecate "~1.0.1" +readdir-scoped-modules@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.0.2.tgz#9fafa37d286be5d92cbaebdee030dc9b5f406747" + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + +"semver@2 || 3 || 4 || 5": + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + +slide@~1.1.3: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + +spdx-correct@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" + dependencies: + spdx-license-ids "^1.0.2" + +spdx-expression-parse@~1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + +spdx-license-ids@^1.0.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -94,6 +319,16 @@ string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" +strip-ansi@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.3.0.tgz#25f48ea22ca79187f3174a4db8759347bb126220" + dependencies: + ansi-regex "^0.2.1" + +supports-color@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a" + tap-parser@~1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/tap-parser/-/tap-parser-1.2.2.tgz#5e2f6970611f079c7cf857de1dc7aa1b480de7a5" @@ -122,10 +357,29 @@ through2@~2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" +treeify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.0.1.tgz#69b3cd022022a168424e7cfa1ced44c939d3eb2f" + util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" +util-extend@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" + +validate-npm-package-license@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + dependencies: + spdx-correct "~1.0.0" + spdx-expression-parse "~1.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + xmlbuilder@~4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-4.1.0.tgz#687e84d9c4145af8db438d8bec88805df66249f4" @@ -135,4 +389,3 @@ xmlbuilder@~4.1.0: xtend@~4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" -