diff --git a/.gitignore b/.gitignore index 1824b93953fc..02d672165e85 100644 --- a/.gitignore +++ b/.gitignore @@ -8,5 +8,5 @@ yarn-error.log .vscode/ manifest.yml .imdone/ - +website/site/data/contributors.yml /coverage/ diff --git a/website/config/variables.js b/website/config/variables.js index 96fec7100214..ac0bece29910 100644 --- a/website/config/variables.js +++ b/website/config/variables.js @@ -6,12 +6,16 @@ module.exports = { lightestGrey: '#E6E6E6', lighterGrey: '#F7F8F8', lightGrey: '#F6F6F6', + lightishGrey: '#51555D', grey: '#313D3E', darkGrey: '#2F3132', darkerGrey: '#1C1E1E', + blueGrey: '#9AA1AE', lightGreen: '#97bf2f', green: '#C9FA4B', darkGreen: '#7CA511', + shadeBlue: '#EFF0F4', + blue: '#3A69C7', // typography thin: 100, @@ -35,7 +39,7 @@ module.exports = { // border radius borderRadius: '4px', - largeBorderRadius: '10px', + largeBorderRadius: '8px', // responsive breakpoints mobile: '480px', diff --git a/website/gulpfile.babel.js b/website/gulpfile.babel.js index ee52417e3f0f..ab8b757cba21 100755 --- a/website/gulpfile.babel.js +++ b/website/gulpfile.babel.js @@ -1,8 +1,11 @@ import gulp from "gulp"; import cp from "child_process"; -import hugoBin from "hugo-bin" +import hugoBin from "hugo-bin"; import gutil from "gulp-util"; import postcss from "gulp-postcss"; +import transform from "gulp-transform"; +import yaml from "yamljs"; +import rename from "gulp-rename"; import cssImport from "postcss-import"; import neatgrid from "postcss-neat"; import nestedcss from "postcss-nested"; @@ -18,53 +21,94 @@ import webpackConfig from "./webpack.conf"; const browserSync = BrowserSync.create(); const defaultArgs = ["-d", "../dist", "-s", "site", "-v"]; -gulp.task("hugo", (cb) => buildSite(cb)); -gulp.task("hugo-preview", (cb) => buildSite(cb, ["--buildDrafts", "--buildFuture"])); +function buildSite(cb, options) { + const args = options ? defaultArgs.concat(options) : defaultArgs; + return cp.spawn(hugoBin, args, { stdio: "inherit" }).on("close", code => { + if (code === 0) { + browserSync.reload(); + cb(); + } else { + browserSync.notify("Hugo build failed :("); + cb("Hugo build failed"); + } + }); +} + +gulp.task("hugo", ["copy"], cb => buildSite(cb)); +gulp.task("hugo-preview", ["copy"], cb => + buildSite(cb, ["--buildDrafts", "--buildFuture"]) +); gulp.task("build", ["css", "js", "fonts", "images", "hugo"]); gulp.task("build-preview", ["css", "js", "fonts", "images", "hugo-preview"]); -gulp.task("css", () => ( - gulp.src("./src/css/**/*.css") - .pipe(postcss([ - cssImport({from: "./src/css/main.css"}), - neatgrid(), - nestedcss(), - colorfunctions(), - hdBackgrounds(), - cssextend(), - cssvars({variables: styleVariables})])) +gulp.task("css", () => + gulp + .src("./src/css/**/*.css") + .pipe( + postcss([ + cssImport({ from: "./src/css/main.css" }), + neatgrid(), + nestedcss(), + colorfunctions(), + hdBackgrounds(), + cssextend(), + cssvars({ variables: styleVariables }) + ]) + ) .pipe(gulp.dest("./dist/css")) .pipe(browserSync.stream()) -)); +); -gulp.task("js", (cb) => { +gulp.task("js", cb => { const myConfig = Object.assign({}, webpackConfig); webpack(myConfig, (err, stats) => { if (err) throw new gutil.PluginError("webpack", err); - gutil.log("[webpack]", stats.toString({ - colors: true, - progress: true - })); + gutil.log( + "[webpack]", + stats.toString({ + colors: true, + progress: true + }) + ); browserSync.reload(); cb(); }); }); -gulp.task("fonts", () => ( - gulp.src("./src/fonts/**/*") +gulp.task("fonts", () => + gulp + .src("./src/fonts/**/*") .pipe(gulp.dest("./dist/fonts")) .pipe(browserSync.stream()) -)); +); -gulp.task("images", () => ( - gulp.src("./src/img/**/*") +gulp.task("images", () => + gulp + .src("./src/img/**/*") .pipe(gulp.dest("./dist/img")) .pipe(browserSync.stream()) -)); +); + +gulp.task("copy", () => + gulp + .src("../.all-contributorsrc") + .pipe( + transform( + "utf8", + content => + new Promise((resolve, reject) => { + const contributors = JSON.parse(content); + resolve(yaml.dump({ contributors: contributors.contributors })); + }) + ) + ) + .pipe(rename("contributors.yml")) + .pipe(gulp.dest("./site/data")) +); -gulp.task("server", ["hugo", "css", "js", "fonts", "images"], () => { +gulp.task("server", ["css", "js", "fonts", "images", "hugo"], () => { browserSync.init({ server: { baseDir: "./dist" @@ -77,18 +121,3 @@ gulp.task("server", ["hugo", "css", "js", "fonts", "images"], () => { gulp.watch("./src/fonts/**/*", ["fonts"]); gulp.watch("./site/**/*", ["hugo"]); }); - -function buildSite(cb, options) { - const args = options ? defaultArgs.concat(options) : defaultArgs; - - return cp.spawn(hugoBin, args, {stdio: "inherit"}).on("close", (code) => { - if (code === 0) { - browserSync.reload(); - cb(); - } else { - browserSync.notify("Hugo build failed :("); - cb("Hugo build failed"); - } - }); -} - diff --git a/website/package.json b/website/package.json index 94f0cf82c56d..83a9ca39b246 100755 --- a/website/package.json +++ b/website/package.json @@ -32,6 +32,8 @@ "gulp": "^3.9.1", "gulp-babel": "^6.1.2", "gulp-postcss": "^6.1.1", + "gulp-rename": "^1.2.2", + "gulp-transform": "^3.0.5", "gulp-util": "^3.0.7", "hugo-bin": "^0.18.0", "imports-loader": "^0.6.5", diff --git a/website/site/data/landing.yaml b/website/site/data/landing.yaml index 28dc6e363ff4..00309950de5d 100644 --- a/website/site/data/landing.yaml +++ b/website/site/data/landing.yaml @@ -1,50 +1,41 @@ --- hero: - headline: An open-source CMS for your Git workflow - subhead: | - - Content management in a single-page app - - Built in React.js with extensible components - - Integrate with any build tool - - Plug in to any static site generator - ctas: | - - [Take it for a test drive →](/docs/test-drive) -productvideo: - thumbnail: "/img/hero-graphic.jpg" - mp4: "/img/demo.mp4" - ogg: "/img/demo.ogg" - webm: "/img/demo.webm" + headline: "Open source content management for your Git workflow" + subhead: "Use Netlify CMS with any static site generator for a faster and more flexible web project" + devfeatures: + - feature: "Static + content management = ♥" + description: "Get the speed, security, and scalability of a static site, while still providing a convenient editing interface for content." + - feature: "An integrated part of your Git workflow" + description: "Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git." + - feature: "An extensible CMS built on React" + description: "Netlify CMS is built as a single-page React app. Create custom-styled previews, UI widgets, and editor plugins or add backends to support different Git platform APIs." + +cta: + primaryhook: "Getting started is simple and free." + primary: "Choose a template that’s pre-configured with a static site generator and deploys to a global CDN in one click." + button: "[Get started](/docs/start-with-a-template/)" + +editors: + hook: "A CMS that developers and content editors can agree on" + intro: "You get to implement modern front end tools to deliver a faster, safer, and more scalable site. Editors get a friendly UI and intuitive workflow that meets their content management requirements." + features: + - feature: "Editor-friendly user interface" + description: "The web-based app includes rich-text editing, real-time preview, and drag-and-drop media uploads." + imgpath: "/img/screenshot-editor.png" + - feature: "Intuitive workflow for content teams" + description: "Writers and editors can easily manage content from draft to review to publish across any number of custom content types." + imgpath: "/img/screenshot-editorial.png" + - feature: "Instant access, without a GitHub account" + description: "With [Git Gateway](/docs/authentication-backends/#git-gateway-with-netlify-identity), you can add CMS access for any team member — even if they don’t have a GitHub account. " + imgpath: "/img/screenshot-identity.png" + +community: + hook: "Supported by a growing community" + features: + - feature: "Support when you need it" + description: "Get up and running with comprehensive [documentation](/docs) and templates or work through difficult problems with help from the community on [Gitter](https://gitter.im/netlify/NetlifyCMS)." + - feature: "A community-driven project you can help evolve" + description: "Netlify CMS is built by a community of 60+ contributors — and you can help. Join our [bi-weekly planning sessions](/community) or read the [contributing guide](/docs/contributor-guide) to join in." + contributors: "Made possible by awesome contributors" -thanksdevs: "**Thanks to all our contributors.**Keep shooting for the stars with Netlify CMS." - -collab: - hook: "Integrate the roles of developers, writers, and editors." - body: "Writers can focus on writing. Editors can approve content and publish with ease. Developers can use their favorite tools and libraries. **Netlify CMS keeps all of their contributions together, in Git.**" - graphicpath: "/img/collab.svg" - -featureshook: "Designed with developers in mind - it’s in our DNA." - -features: - - feature: "Fast, web-based UI" - description: "Built with React, featuring rich-text editing, real-time preview, and drag-and-drop media uploads." - - feature: "Platform agnostic" - description: "Works with most static site generators for sites stored in GitHub." - - feature: "Easy installation" - description: "Add two files to your site, include or link to the JS, and add your custom configuration." - - feature: "Modern authentication" - description: "Connect with Netflify's authentication service or roll your own, using GitHub and JSON web tokens." - - feature: "Flexible content types" - description: "Specify an unlimited number of content types with custom fields." - - feature: "Fully extensible" - description: "Create custom-styled previews, UI widgets, and editor plugins." - -featuresgraphic: "/img/helix.svg" - -inspiration: | - Netlify CMS is part of a long evolution in content management for the web. Even in the budding realm of the [JAMstack](https://www.jamstack.org) and [static site generators](https://www.staticgen.com), developers have a variety [“headless” CMS](http://www.headlesscms.org) options to choose from. - - Proprietary services like Contentful and DatoCMS provide the ease and polish of a concierge provider, while simple open source projects like Prose and Google Drive CMS provide targeted functionality for limited use cases. We love that these other projects help advance the modern web, and we believe there will always be a place for them in the JAMstack ecosystem. - - With Netlify CMS, we hope to carve a different niche. We aim to do for the JAMstack what WordPress did for dynamic sites back in the day. In other words, we want to build a CMS that is open-source but fully-featured and production-ready, that’s as easy to customize as it is to use, and that developers and content editors can build a community around. - - [Help us make it happen!](/docs/contributor-guide) --- diff --git a/website/site/data/notifications.yml b/website/site/data/notifications.yml index ec99f1b71976..c684e498e877 100644 --- a/website/site/data/notifications.yml +++ b/website/site/data/notifications.yml @@ -11,6 +11,6 @@ notifications: message: >- We have a community on Gitter - join now to ask questions and discuss the project with other devs! - published: true + published: false title: Gitter shoutout url: 'https://gitter.im/netlify/netlifycms' diff --git a/website/site/layouts/index.html b/website/site/layouts/index.html index e1b78da8f12c..59bba34c3507 100755 --- a/website/site/layouts/index.html +++ b/website/site/layouts/index.html @@ -1,69 +1,72 @@ {{ partial "header" . }}
-
+

{{ .Site.Data.landing.hero.headline | markdownify }}

-

{{ .Site.Data.landing.hero.subhead | markdownify }}

-

{{ .Site.Data.landing.hero.ctas | markdownify }}

-

- As seen on... - -

+ {{ .Site.Data.landing.hero.subhead | markdownify }} +
+
+ {{ range $index, $id := .Site.Data.landing.hero.devfeatures }} +
+

{{ .feature | markdownify }}

+

{{ .description | markdownify }}

+
+ {{ end }}
-
- - +
-
-
-

{{ .Site.Data.landing.collab.hook | markdownify }}

-
-
- -
-
-

{{ .Site.Data.landing.collab.body | markdownify }}

-
-
+
+
+

{{ .Site.Data.landing.cta.primaryhook | markdownify }} {{ .Site.Data.landing.cta.primary | markdownify }}

{{ .Site.Data.landing.cta.button | markdownify }}
-
-
-

{{ .Site.Data.landing.featureshook | markdownify }}

- {{ $featuresgraphic := .Site.Data.landing.featuresgraphic }} -
- {{ range $index, $id := .Site.Data.landing.features }} -
-

{{ .feature | markdownify }}

-

{{ .description | markdownify }}

-
- {{ if eq $index 2 }} -
-
- -
-
- {{ end }} +
+
+

{{ .Site.Data.landing.editors.hook | markdownify }}

+

{{ .Site.Data.landing.editors.intro | markdownify }}

+
+ {{ range $index, $id := .Site.Data.landing.editors.features }} +
+ +

{{ .feature | markdownify }}

+

{{ .description | markdownify }}

+
{{ end }}
-
-
-

Our Inspiration

-

{{ .Site.Data.landing.inspiration | markdownify }}

+
+
+

{{ .Site.Data.landing.community.hook | markdownify }}

+
+ {{ range $index, $id := .Site.Data.landing.community.features }} +
+

{{ .feature | markdownify }}

+

{{ .description | markdownify }}

+
+ {{ end }} +
+
+

{{ .Site.Data.landing.community.contributors | markdownify }}

+ {{ range .Site.Data.contributors }} +
+ {{ range . }} + {{.login}} + {{ end }} +
+ {{ end }} +
-
{{ partial "footer" . }} diff --git a/website/site/layouts/pages/community.html b/website/site/layouts/pages/community.html index 2e0cc6934aad..6dbd50152d19 100644 --- a/website/site/layouts/pages/community.html +++ b/website/site/layouts/pages/community.html @@ -1,7 +1,7 @@ {{ partial "header" . }}
-
+
diff --git a/website/site/layouts/partials/header.html b/website/site/layouts/partials/header.html index 7965a0ddbe69..0327620f307b 100755 --- a/website/site/layouts/partials/header.html +++ b/website/site/layouts/partials/header.html @@ -35,6 +35,6 @@ - Fork me on GitHub + {{ .Site.Data.landing.cta.button | markdownify }}
diff --git a/website/src/css/imports/base.css b/website/src/css/imports/base.css index a8d6f3ba0267..91c977708fc4 100755 --- a/website/src/css/imports/base.css +++ b/website/src/css/imports/base.css @@ -1,10 +1,10 @@ @import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,700,900|Roboto+Mono:400,700); body { + background-color: $shadeBlue; color: $grey; font-family: $roboto; margin: 0; - text-align: center; -webkit-font-smoothing: antialiased; display: flex; flex-direction: column; @@ -20,22 +20,23 @@ body { } h1 { - font-weight: $light; - font-size: $small; - line-height: $medium; - margin: 0 0 -10px 0; + font-weight: $bold; + font-size: 36px; + line-height: 48px; + margin: 0 0 $small 0; @media screen and (min-width: $tablet) { - font-size: 36px; - line-height: 48px; + font-size: 42px; + line-height: 60px; } } h2 { font-family: $roboto; - font-size: 18px; + font-size: 32px; font-weight: $bold; - margin: 0; + color: $darkGrey; + margin: 0 auto $tiny auto; &.subhead { font-weight: $regular; @@ -44,24 +45,24 @@ h2 { h3 { font-family: $roboto; - font-size: $small; - font-weight: $regular; - line-height: 32px; + font-size: 18px; + font-weight: $semibold; + line-height: 30px; + padding-bottom: $micro; margin: 0; } -p, ul { - font-size: 14px; - line-height: $small; +h3 > p { +} - @media screen and (min-width: $tablet) { - font-size: 18px; - line-height: 32px; - } +p, ul { + font-size: $tiny; + line-height: 26px; + margin: 0; } a { - color: $grey; + color: $darkGreen; text-decoration: none; font-weight: $bold; } diff --git a/website/src/css/imports/community.css b/website/src/css/imports/community.css new file mode 100644 index 000000000000..1fbe80850644 --- /dev/null +++ b/website/src/css/imports/community.css @@ -0,0 +1,51 @@ +.communitysupport { + @neat-row; + background-color: white; + padding: $xl 0 $large 0; + + @media screen and (min-width: $desktop) { + h2 { + text-align: center; + margin-bottom: $medium; + } + } + + .community-features { + @neat-span-columns 12; + + @media screen and (min-width: $tablet) { + @neat-span-columns 8; + } + @media screen and (min-width: $desktop) { + @neat-span-columns 6; + } + + .feature { + margin-top: $small; + + } + } + + .contributors { + @neat-span-columns 12; + margin-top: $small; + + @media screen and (min-width: $tablet) { + @neat-span-columns 10; + } + @media screen and (min-width: $desktop) { + @neat-span-columns 5; + float: right; + } + + .contributor-list { + margin-top: 4px; + img { + width: 32px; + margin: 0 $micro $micro 0; + border-radius: 16px; + } + } + + } +} diff --git a/website/src/css/imports/cta.css b/website/src/css/imports/cta.css new file mode 100644 index 000000000000..fdeafc586ae6 --- /dev/null +++ b/website/src/css/imports/cta.css @@ -0,0 +1,70 @@ +.cta { + + @media screen and (min-width: $desktop) { + position: relative; + top: -50px; + width: 880px; + margin: auto; + } + + .cta-primary { + background-color: white; + padding: $medium $small $medium $small; + + @media screen and (min-width: $tablet) { + padding: $medium; + } + + @media screen and (min-width: $desktop) { + padding: $small $medium $small $medium; + display: flex; + align-items: center; + justify-content: space-between; + box-shadow: 0 10px 30px 0 rgba(28,30,30,0.10), 0 3px 9px 0 rgba(28,30,30,0.15); + border-radius: $largeBorderRadius; + } + + p { + font-size: 18px; + line-height: 25px; + color: $lightishGrey; + + .hook { + font-weight: $bold; + color: $darkGrey; + } + } + + a { + color: white; + text-transform: uppercase; + font-size: $tiny; + letter-spacing: 0.5px; + background-color: $blue; + background-image: linear-gradient(-180deg, #4A7FDD 0%, #3A69C7 100%); + box-shadow: 0 4px 12px 0 rgba(68,74,87,0.10), 0 1px 3px 0 rgba(68,74,87,0.20); + border-radius: $borderRadius; + padding: 12px 18px 12px 18px; + transition: .2s; + display: inline-block; + margin-top: $tiny; + + + @media screen and (min-width: $desktop) { + flex-shrink: 0; + margin: 0 0 0 $small; + } + + &:hover { + transform: scale(1.05); + box-shadow: 0 4px 12px 0 rgba(68,74,87,0.20), 0 1px 3px 0 rgba(68,74,87,0.40); + } + &:active { + transform: scale(0.95); + box-shadow: none; + } + } + + } + +} diff --git a/website/src/css/imports/docs.css b/website/src/css/imports/docs.css index 9c8ffe4da766..4d3e7791d47d 100644 --- a/website/src/css/imports/docs.css +++ b/website/src/css/imports/docs.css @@ -99,7 +99,6 @@ .docs-content { font-size: 18px; line-height: 28px; - font-weight: $light; .edit-this-page { float: right; @@ -120,7 +119,7 @@ h2:not(:first-child) { - margin-top: 86px; + margin-top: $large; } a { @@ -147,8 +146,8 @@ border-radius: 2px; padding: 2px 6px; white-space: nowrap; - } - + } + pre > code { background: initial; padding: initial; @@ -178,6 +177,7 @@ text-transform: uppercase; letter-spacing: 1.5px; margin-top: $medium; + margin-bottom: $small; &:after { diff --git a/website/src/css/imports/editors.css b/website/src/css/imports/editors.css new file mode 100644 index 000000000000..82610f2ab9e2 --- /dev/null +++ b/website/src/css/imports/editors.css @@ -0,0 +1,51 @@ +.editors { + @neat-row; + margin-top: calc($large * 1.5); + margin-bottom: $xxl; + + @media screen and (min-width: $desktop) { + text-align: center; + } + + h2, p { + max-width: $desktop; + + @media screen and (min-width: $desktop) { + margin-left: auto; + margin-right: auto; + } + } + + p#editor-intro { + max-width: 710px; + } + + .editors-features { + display: flex; + justify-content: space-evenly; + margin-top: $large; + + @media screen and (max-width: $desktop) { + justify-content: flex-start; + flex-wrap: wrap; + margin-top: $small; + } + + .feature { + max-width: 340px; + + img { + max-width: 280px; + margin-bottom: $tiny; + border-radius: $borderRadius; + box-shadow: 0 4px 12px 0 rgba(68,74,87,0.10), 0 1px 3px 0 rgba(68,74,87,0.20); + } + + @media screen and (max-width: $desktop) { + margin-top: $large; + margin-right: $medium; + } + + } + } +} diff --git a/website/src/css/imports/features.css b/website/src/css/imports/features.css deleted file mode 100644 index dd6f3009dad8..000000000000 --- a/website/src/css/imports/features.css +++ /dev/null @@ -1,81 +0,0 @@ -.features { - @neat-row; - overflow: hidden; - padding-top: $large; - position: relative; - margin: 0 auto $medium auto; - - @media screen and (min-width: $mobile) { - margin: 0 auto $large auto; - padding-top: calc($xl * 1.2); - } - - @media screen and (min-width: $tablet) { - margin-bottom: $medium; - } - - &:before { - background: url('/img/wavy-divider.svg') no-repeat top center; - background-size: contain; - top: 0; - content: ''; - height: $xl; - left: -$xl; - position: absolute; - right: -$xl; - width: calc(100% + ($xl * 2)); - } - - h1 { - text-align: center; - margin-bottom: calc($large * .9); - padding: 0 $small; - - @media screen and (min-width: $tablet) { - padding: 0; - } - - + .features-column .feature { - @media screen and (min-width: $desktop) { - text-align: right; - } - } - } - - .features-column { - @media screen and (min-width: $mobile) { - @neat-span-columns 6; - } - - @media screen and (min-width: $desktop) { - @neat-span-columns 4; - } - } - - .feature { - margin-bottom: $small; - padding: 0 $small; - text-align: left; - - @media screen and (min-width: $desktop) { - margin-bottom: calc($large * 1.37); - padding: 0; - } - - p { - font-size: 14px; - line-height: 26px; - } - } - - .features-graphic { - display: none; - padding-top: $tiny; - - - @media screen and (min-width: $desktop) { - display: inline-block; - @neat-span-columns 4; - } - } -} \ No newline at end of file diff --git a/website/src/css/imports/footer.css b/website/src/css/imports/footer.css index e7176d147244..3680e3354b6c 100644 --- a/website/src/css/imports/footer.css +++ b/website/src/css/imports/footer.css @@ -1,12 +1,14 @@ footer { - background: $lighterGrey; - padding: $small 0; + background: white; + padding: $medium 0; p { color: $grey; font-family: $roboto; font-size: 12px; opacity: .5; - text-align: center; } -} \ No newline at end of file + a { + color: $grey; + } +} diff --git a/website/src/css/imports/header.css b/website/src/css/imports/header.css index 3a9024de73aa..dad47be3bad5 100644 --- a/website/src/css/imports/header.css +++ b/website/src/css/imports/header.css @@ -1,5 +1,5 @@ .notification { - background: #414344; + background-color: $darkerGrey; box-sizing: border-box; color: white; display: block; @@ -75,39 +75,34 @@ header { width: 100%; z-index: 100; - @media screen and (min-width: $mobile) { + @media screen and (min-width: $tablet) { text-align: right; position: fixed; } &.scrolled { - @media screen and (min-width: $mobile) { - background: $darkGrey; + @media screen and (min-width: $tablet) { + background: $darkerGrey; padding: $small 0; } } &.docs { - background: $darkGrey; + background: $darkerGrey; padding: $small 0; - @media screen and (max-width: $mobile) { + @media screen and (max-width: $tablet) { position: static; } - .nav-link { + /*.nav-link { @media screen and (min-width: 487px) and (max-width: 767px) { margin-top: $micro; } - } + }*/ - .github-btn { - @media screen and (max-width: 767px) { - display: none; - } - } - .utility-input { + /*.utility-input { @media screen and (max-width: 767px) { display: block; height: $small; @@ -117,7 +112,7 @@ header { @media screen and (min-width: 487px) and (max-width: 767px) { margin-top: 32px; } - } + }*/ } a { @@ -125,42 +120,12 @@ header { display: inline-block; vertical-align: middle; -webkit-vertical-align: middle !important; - margin-left: $micro; - - @media screen and (min-width: $mobile) { - margin-left: 4px; - } - - @media screen and (min-width: $tablet) { - margin-left: $micro; - } - - &.nav-link:not(:nth-child(2)):before { - content: '•'; - padding-right: $tiny; - color: $green; - - @media screen and (min-width: $mobile) { - padding-right: $micro; - } - - @media screen and (min-width: $tablet) { - padding-right: $tiny; - } - } + margin-left: $tiny; &:hover { color: $green; } - &.github-btn { - margin-top: $tiny; - margin-left: $micro; - - @media screen and (min-width: 688px) { - margin-top: 0; - } - } } img { @@ -215,11 +180,10 @@ header { display: none; padding: $micro; width: auto; - border: 1px solid white; border-radius: 4px; - background: none; + background-color: rgba(255,255,255,0.1); color: white; - margin: 0 $micro 0 10px; + margin: 0 $micro 0 $tiny; padding-bottom: 9px; text-align: left; text-decoration: none; @@ -253,10 +217,36 @@ header { margin: 0 auto $tiny auto; width: 100%; - @media screen and (min-width: $mobile) { + @media screen and (min-width: $tablet) { float: left; - margin: -$micro 0 -6px 0; + margin: -4px 0 -6px 0; width: initial; } } + .cta-header a { + /*display: none;*/ + color: white; + text-transform: uppercase; + font-size: $tiny; + letter-spacing: 0.5px; + background-color: $blue; + background-image: linear-gradient(-180deg, #4A7FDD 0%, #3A69C7 100%); + box-shadow: 0 4px 12px 0 rgba(0,0,0,0.3), 0 1px 3px 0 rgba(0,0,0,0.6); + border-radius: $borderRadius; + padding: 10px 14px 8px 14px; + transition: .2s; + + @media screen and (max-width: $mobile) { + margin-top: $tiny; + } + + &:hover { + transform: scale(1.05); + box-shadow: 0 4px 12px 0 rgba(0,0,0,0.5), 0 1px 3px 0 rgba(0,0,0,1); + } + &:active { + transform: scale(0.95); + box-shadow: none; + } + } } diff --git a/website/src/css/imports/hero.css b/website/src/css/imports/hero.css index fdcaa28090a2..bcad349aa049 100644 --- a/website/src/css/imports/hero.css +++ b/website/src/css/imports/hero.css @@ -1,10 +1,10 @@ .hero { @neat-row; background: $darkerGrey; - background-image: linear-gradient(-17deg, $darkerGrey 17%, $darkGrey 94%); - color: white; + background-image: linear-gradient(-180deg, #323B3B 0%, $darkerGrey 20%); + color: $blueGrey; overflow: hidden; - padding: calc($xl * 2.25) 0 $large 0; + padding: calc($xl * 2.25) 0 0 0; position: relative; @media screen and (min-width: $mobile) { @@ -12,220 +12,179 @@ } @media screen and (min-width: $tablet) { - padding-top: calc($large * 1.5); - } - - &:before { - background: url('/img/bow.svg') no-repeat bottom center; - background-size: contain; - bottom: -1px; - content: ''; - height: $xl; - left: -$xl; - position: absolute; - right: -$xl; - width: calc(100% + ($xl * 2)); - } - - @media screen and (min-width: $tablet) { - background-position: center; - padding: calc($xl * 1.5) 0 $xl 0; + padding-top: calc($xl * 1.5); } - .hero-copy { + &.landing { @media screen and (min-width: $tablet) { - @neat-span-columns 6; + padding-bottom: $xxl; } } - .headline { - margin-top: -12px; - max-width: 400px; - - @media screen and (min-width: $mobile) { - text-align: left; - } - - span { - display: none; + .hero-copy { + margin: $medium auto $xl auto; - @media screen and (min-width: $tablet) { - display: initial; - } + @media screen and (min-width: $desktop) { + text-align: center; } } .subhead { display: inline-block; margin: $micro auto; - text-align: left; + font-size: 18px; + line-height: 26px; - @media screen and (min-width: $mobile) { - display: block; - margin: $medium 0 $small 0; + @media screen and (min-width: $desktop) { + font-size: 20px; } } - .ctas { - margin-bottom: $small; - - @media screen and (min-width: $mobile) { - text-align: left; - } - - ul { - list-style-type: none; - margin: 0; - padding: 0; - } - - a { - color: $green; - font-weight: $semibold; - } + strong { + display: block; } - .btn-secondary { - display: none; - padding-top: 14px; - max-height: 53px; - margin: 0 0 0 calc($micro / 2); + h1 { + color: white; + margin-bottom: 0; + } - @media screen and (min-width: $tablet) { - display: inline-block; - } + h2 { + color: white; } - strong { - display: block; + h3 { + color: $green; + font-size: 20px; } - .mooseheads { - margin: $micro 0 0 0; + .hero-features { - @media screen and (min-width: $mobile) { - text-align: left; + @media screen and (min-width: $tablet) { + @neat-span-columns 5; } - strong { - font-size: 12px; - opacity: .5; + .feature { + margin-top: $medium; } + } .hero-graphic { - @neat-span-columns 6; - display: none; + margin: $large auto $large auto; @media screen and (min-width: $tablet) { - display: initial; - } - - &:before { - border: 1px solid white; - border-bottom: none; - border-radius: $largeBorderRadius $largeBorderRadius 0 0; - box-sizing: border-box; - content: '•••'; - display: block; - font-size: $small; - height: $small; - line-height: 22px; - padding-left: 6px; - text-align: left; - width: 100%; + @neat-span-columns 6; + float: right; + margin-bottom: 0; } img { - border: 1px solid white; - border-radius: 0 0 $largeBorderRadius $largeBorderRadius; - box-sizing: border-box; - overflow: hidden; - width: 100%; - height: auto; + border-radius: $largeBorderRadius; + box-shadow: 0 10px 30px 0 rgba(0,0,0,0.15), 0 3px 9px 0 rgba(0,0,0,0.30); } } - .calendar-cta { - text-align: center; - background: $darkerGrey; - background-image: linear-gradient(-17deg, $darkerGrey 17%, $darkGrey 94%); - border-radius: $largeBorderRadius; - box-shadow: 0 $micro $small rgba(0,0,0,0.1); - padding: $medium; - box-sizing: border-box; + /*COMMUNITY PAGE*/ - @media screen and (min-width: $tablet) { - max-width: 446px; - } + &.community { + .hero-copy { + text-align: left; + @media screen and (min-width: $tablet) { + @neat-span-columns 5; + } + } + } - @media screen and (min-width: $tablet) { - @neat-span-columns 5; - @neat-shift 1; - display: inline-block; - position: fixed; - right: $medium; - } + .ctas { + margin-bottom: $small; - @media screen and (min-width: 1280px) { - right: initial; - left: calc(50% - $large); - } + @media screen and (min-width: $mobile) { + text-align: left; + } - .calendar { - border-radius: $largeBorderRadius; - overflow: hidden; - box-shadow: 0 $micro $small rgba(0,0,0,0.5); - margin: $small auto; - max-width: 250px; - - .month { - background: $green; - color: $grey; - font-weight: $black; - text-transform: uppercase; - letter-spacing: 4px; - font-size: $tiny; - padding: $tiny; - } - - .day { - font-size: $xl; - font-weight: $black; - color: white; - border: 1px solid $grey; - border-top: none; - border-bottom-left-radius: $largeBorderRadius; - border-bottom-right-radius: $largeBorderRadius; - } - } + ul { + list-style-type: none; + margin: 0; + padding: 0; + } - strong { - display: inline-block; + a { + color: $green; + font-weight: $semibold; + } +} + +.calendar-cta { + text-align: center; + background: $darkerGrey; + background-image: linear-gradient(-17deg, $darkerGrey 17%, $darkGrey 94%); + border-radius: $largeBorderRadius; + box-shadow: 0 $micro $small rgba(0,0,0,0.1); + padding: $medium; + box-sizing: border-box; + + @media screen and (min-width: $tablet) { + max-width: 446px; + } + + @media screen and (min-width: $tablet) { + @neat-span-columns 5; + @neat-shift 1; + display: inline-block; + position: fixed; + right: $medium; + } + + @media screen and (min-width: 1280px) { + right: initial; + left: calc(50% - $large); + } + + .calendar { + border-radius: $largeBorderRadius; + overflow: hidden; + box-shadow: 0 $micro $small rgba(0,0,0,0.5); + margin: $small auto; + max-width: 250px; + + .month { + background: $green; + color: $grey; + font-weight: $black; + text-transform: uppercase; + letter-spacing: 4px; + font-size: $tiny; + padding: $tiny; } - h2:not(:first-child) { - font-weight: $light; + .day { + font-size: $xl; + font-weight: $black; + color: white; + border: 1px solid $grey; + border-top: none; + border-bottom-left-radius: $largeBorderRadius; + border-bottom-right-radius: $largeBorderRadius; } + } - .cal-cta { - margin-top: $micro; + strong { + display: inline-block; + } - a { - color: $green; - } - } + h2:not(:first-child) { + font-weight: $light; } - .thanks-devs { - line-height: 18px; - margin: $micro 0 0 0; - opacity: 0.5; - text-align: center; + .cal-cta { + margin-top: $micro; - @media screen and (min-width: $tablet) { - font-size: $tiny; - line-height: 21px; + a { + color: $green; } } } + + +} diff --git a/website/src/css/imports/inspiration.css b/website/src/css/imports/inspiration.css deleted file mode 100644 index 596eb504972c..000000000000 --- a/website/src/css/imports/inspiration.css +++ /dev/null @@ -1,41 +0,0 @@ -.inspiration { - margin: $small $small $large $small; - text-align: center; - - @media screen and (min-width: $tablet) { - margin: $xl $small; - } - - h1 { - margin-bottom: $small; - - @media screen and (min-width: $tablet) { - margin-bottom: 44px; - } - } - - p { - box-sizing: border-box; - display: inline-block; - padding: 0; - margin: 0 auto $small auto; - max-width: 700px; - text-align: left; - width: 100%; - - &:nth-child(2) { - font-size: $tiny; - line-height: $small; - font-weight: $bold; - - @media screen and (min-width: $tablet) { - font-size: $small; - line-height: $medium; - } - } - } - - a { - color: $darkGreen; - } -} \ No newline at end of file diff --git a/website/src/css/main.css b/website/src/css/main.css index fb7e4bd2050b..a3d7d2db9287 100755 --- a/website/src/css/main.css +++ b/website/src/css/main.css @@ -2,9 +2,9 @@ @import "imports/utilities.css"; @import "imports/header.css"; @import "imports/hero.css"; +@import "imports/cta.css"; +@import "imports/editors.css"; +@import "imports/community.css"; @import "imports/collab.css"; -@import "imports/features.css"; -@import "imports/inspiration.css"; @import "imports/docs.css"; @import "imports/footer.css"; - diff --git a/website/src/img/hero-graphic.jpg b/website/src/img/hero-graphic.jpg deleted file mode 100644 index 6e2ffa242137..000000000000 Binary files a/website/src/img/hero-graphic.jpg and /dev/null differ diff --git a/website/src/img/netlify-cms-logo.svg b/website/src/img/netlify-cms-logo.svg index ec989652e774..c2c9be577295 100644 --- a/website/src/img/netlify-cms-logo.svg +++ b/website/src/img/netlify-cms-logo.svg @@ -1,18 +1,16 @@ - - + + netlify-cms-logo Created with Sketch. - - - - + + \ No newline at end of file diff --git a/website/src/img/screenshot-content.png b/website/src/img/screenshot-content.png new file mode 100644 index 000000000000..1bca538d888f Binary files /dev/null and b/website/src/img/screenshot-content.png differ diff --git a/website/src/img/screenshot-editor.png b/website/src/img/screenshot-editor.png new file mode 100644 index 000000000000..0c96f9cb6454 Binary files /dev/null and b/website/src/img/screenshot-editor.png differ diff --git a/website/src/img/screenshot-editorial.png b/website/src/img/screenshot-editorial.png new file mode 100644 index 000000000000..ed2368f32b5b Binary files /dev/null and b/website/src/img/screenshot-editorial.png differ diff --git a/website/src/img/screenshot-identity.png b/website/src/img/screenshot-identity.png new file mode 100644 index 000000000000..af90b48255b8 Binary files /dev/null and b/website/src/img/screenshot-identity.png differ diff --git a/website/yarn.lock b/website/yarn.lock index e2efecd5f92c..1883188314a1 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -2,6 +2,31 @@ # yarn lockfile v1 +"@types/gulp-util@*": + version "3.0.34" + resolved "https://registry.yarnpkg.com/@types/gulp-util/-/gulp-util-3.0.34.tgz#d1291ebf706d93f46eb8df11344bbfd96247697e" + dependencies: + "@types/node" "*" + "@types/through2" "*" + "@types/vinyl" "*" + chalk "^2.2.0" + +"@types/node@*": + version "8.0.56" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.56.tgz#c4652f88d7a677e26ccc16c1485c282ce28f1ce9" + +"@types/through2@*": + version "2.0.33" + resolved "https://registry.yarnpkg.com/@types/through2/-/through2-2.0.33.tgz#1ff2e88a100dfb5b140e7bb98791f1194400d131" + dependencies: + "@types/node" "*" + +"@types/vinyl@*": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.1.tgz#6b414dfdcd4a785e8e76e87565ed29e79490d9b7" + dependencies: + "@types/node" "*" + abbrev@1: version "1.1.0" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" @@ -74,12 +99,6 @@ ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" -ansi-red@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ansi-red/-/ansi-red-0.1.1.tgz#8c638f9d1080800a353c9c28c8a81ca4705d946c" - dependencies: - ansi-wrap "0.1.0" - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -98,10 +117,6 @@ ansi-styles@^3.1.0: dependencies: color-convert "^1.9.0" -ansi-wrap@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" - any-promise@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-0.1.0.tgz#830b680aa7e56f33451d4b049f3bd8044498ee27" @@ -140,13 +155,6 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -argparse@~0.1.15: - version "0.1.16" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-0.1.16.tgz#cfd01e0fbba3d6caed049fbd758d40f65196f57c" - dependencies: - underscore "~1.7.0" - underscore.string "~2.4.0" - arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" @@ -187,10 +195,6 @@ arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" -asap@~2.0.3: - version "2.0.5" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" - asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" @@ -233,10 +237,6 @@ asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" -autolinker@~0.15.0: - version "0.15.3" - resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-0.15.3.tgz#342417d8f2f3461b14cf09088d5edf8791dc9832" - autoprefixer@^6.0.2, autoprefixer@^6.3.1, autoprefixer@^6.3.7: version "6.7.6" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.6.tgz#00f05656c7ef73de9d2fd9b4668f6ef6905a855a" @@ -1096,7 +1096,7 @@ chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.1: +chalk@^2.0.1, chalk@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" dependencies: @@ -1193,10 +1193,6 @@ code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" -coffee-script@^1.12.4: - version "1.12.4" - resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.4.tgz#fe1bced97fe1fb3927b998f2b45616e0658be1ff" - color-convert@^0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" @@ -1286,7 +1282,7 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.4.6, concat-stream@^1.4.7, concat-stream@^1.5.2: +concat-stream@^1.4.6, concat-stream@^1.4.7: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: @@ -1634,10 +1630,6 @@ deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" -deepmerge@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-1.3.2.tgz#1663691629d4dbfe364fa12a2a4f0aa86aa3a050" - defaults@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" @@ -1715,10 +1707,6 @@ dev-ip@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" -diacritics-map@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/diacritics-map/-/diacritics-map-0.1.0.tgz#6dfc0ff9d01000a2edf2865371cac316e94977af" - doctrine@1.3.x, doctrine@^1.2.2: version "1.3.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.3.0.tgz#13e75682b55518424276f7c173783456ef913d26" @@ -2297,12 +2285,6 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - dependencies: - locate-path "^2.0.0" - find-versions@^1.0.0: version "1.2.1" resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-1.2.1.tgz#cbde9f12e38575a0af1be1b9a2c5d5fd8f186b62" @@ -2354,7 +2336,7 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -for-in@^1.0.1, for-in@^1.0.2: +for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -2388,7 +2370,7 @@ fs-exists-sync@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" -fs-extra@1.0.0, fs-extra@^1.0.0: +fs-extra@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950" dependencies: @@ -2700,16 +2682,6 @@ graceful-fs@~1.2.0: version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" -gray-matter@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-2.1.1.tgz#3042d9adec2a1ded6a7707a9ed2380f8a17a430e" - dependencies: - ansi-red "^0.1.1" - coffee-script "^1.12.4" - extend-shallow "^2.0.1" - js-yaml "^3.8.1" - toml "^2.3.2" - gulp-babel@^6.1.2: version "6.1.2" resolved "https://registry.yarnpkg.com/gulp-babel/-/gulp-babel-6.1.2.tgz#7c0176e4ba3f244c60588a0c4b320a45d1adefce" @@ -2739,7 +2711,7 @@ gulp-postcss@^6.1.1: postcss-load-config "^1.1.0" vinyl-sourcemaps-apply "^0.2.1" -gulp-rename@^1.2.0: +gulp-rename@^1.2.0, gulp-rename@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" @@ -2753,6 +2725,15 @@ gulp-sourcemaps@1.6.0: through2 "^2.0.0" vinyl "^1.0.0" +gulp-transform@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/gulp-transform/-/gulp-transform-3.0.5.tgz#6972674a77dc30672d6b7746a173ef0506fe37b2" + dependencies: + "@types/gulp-util" "*" + "@types/node" "*" + gulp-util "^3.0.8" + tslib "^1.7.1" + gulp-util@^3.0.0, gulp-util@^3.0.1, gulp-util@^3.0.7, gulp-util@^3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" @@ -2900,14 +2881,6 @@ html-comment-regex@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" -http-basic@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/http-basic/-/http-basic-2.5.1.tgz#8ce447bdb5b6c577f8a63e3fa78056ec4bb4dbfb" - dependencies: - caseless "~0.11.0" - concat-stream "^1.4.6" - http-response-object "^1.0.0" - http-errors@~1.5.0: version "1.5.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750" @@ -2923,10 +2896,6 @@ http-proxy@1.15.2: eventemitter3 "1.x.x" requires-port "1.x.x" -http-response-object@^1.0.0, http-response-object@^1.0.1, http-response-object@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/http-response-object/-/http-response-object-1.1.0.tgz#a7c4e75aae82f3bb4904e4f43f615673b4d518c3" - http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" @@ -3153,10 +3122,6 @@ is-installed-globally@^0.1.0: global-dirs "^0.1.0" is-path-inside "^1.0.0" -is-local-path@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-local-path/-/is-local-path-0.1.6.tgz#815d144b14d569cecbead4d5693097f00a9bf6c5" - is-my-json-valid@^2.10.0, is-my-json-valid@^2.12.4: version "2.16.0" resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693" @@ -3307,7 +3272,7 @@ isnumeric@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/isnumeric/-/isnumeric-0.2.0.tgz#a2347ba360de19e33d0ffd590fddf7755cbf2e64" -isobject@^2.0.0, isobject@^2.1.0: +isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" dependencies: @@ -3331,7 +3296,7 @@ js-tokens@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" -js-yaml@^3.4.3, js-yaml@^3.5.1, js-yaml@^3.8.1: +js-yaml@^3.4.3, js-yaml@^3.5.1: version "3.8.2" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.2.tgz#02d3e2c0f6beab20248d412c352203827d786721" dependencies: @@ -3488,12 +3453,6 @@ lazy-cache@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" -lazy-cache@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" - dependencies: - set-getter "^0.1.0" - lazy-req@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-1.1.0.tgz#bdaebead30f8d824039ce0ce149d4daa07ba1fac" @@ -3535,15 +3494,6 @@ limiter@^1.0.5: version "1.1.0" resolved "https://registry.yarnpkg.com/limiter/-/limiter-1.1.0.tgz#6e2bd12ca3fcdaa11f224e2e53c896df3f08d913" -list-item@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/list-item/-/list-item-1.1.1.tgz#0c65d00e287cb663ccb3cb3849a77e89ec268a56" - dependencies: - expand-range "^1.8.1" - extend-shallow "^2.0.1" - is-number "^2.1.0" - repeat-string "^1.5.2" - load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -3580,13 +3530,6 @@ localtunnel@1.8.2: request "2.78.0" yargs "3.29.0" -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" @@ -3862,40 +3805,6 @@ 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" -markdown-link@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/markdown-link/-/markdown-link-0.1.1.tgz#32c5c65199a6457316322d1e4229d13407c8c7cf" - -markdown-magic@^0.1.13: - version "0.1.13" - resolved "https://registry.yarnpkg.com/markdown-magic/-/markdown-magic-0.1.13.tgz#67ae03032f80cf59f773b01d3e5a330f2459ab94" - dependencies: - commander "^2.9.0" - deepmerge "^1.3.0" - find-up "^2.1.0" - fs-extra "^1.0.0" - globby "^6.1.0" - is-local-path "^0.1.6" - markdown-toc "^1.0.2" - sync-request "^3.0.1" - -markdown-toc@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/markdown-toc/-/markdown-toc-1.1.0.tgz#18e47237d89549e9447121e69e2ca853ca2d752a" - dependencies: - concat-stream "^1.5.2" - diacritics-map "^0.1.0" - gray-matter "^2.1.0" - lazy-cache "^2.0.2" - list-item "^1.1.1" - markdown-link "^0.1.1" - minimist "^1.2.0" - mixin-deep "^1.1.3" - object.pick "^1.2.0" - remarkable "^1.7.1" - repeat-string "^1.6.1" - strip-color "^0.1.0" - math-expression-evaluator@^1.2.14: version "1.2.16" resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.16.tgz#b357fa1ca9faefb8e48d10c14ef2bcb2d9f0a7c9" @@ -3999,13 +3908,6 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mixin-deep@^1.1.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.2.0.tgz#d02b8c6f8b6d4b8f5982d3fd009c4919851c3fe2" - dependencies: - for-in "^1.0.2" - is-extendable "^0.1.1" - mkdirp@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" @@ -4202,12 +4104,6 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -object.pick@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.2.0.tgz#b5392bee9782da6d9fb7d6afaf539779f1234c2b" - dependencies: - isobject "^2.1.0" - on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -4312,16 +4208,6 @@ p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" -p-limit@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - dependencies: - p-limit "^1.1.0" - p-map@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" @@ -4402,10 +4288,6 @@ path-exists@^2.0.0: dependencies: pinkie-promise "^2.0.0" -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - 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" @@ -5072,12 +4954,6 @@ promise-each@^2.2.0: dependencies: any-promise "^0.1.0" -promise@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.1.1.tgz#489654c692616b8aa55b0724fa809bb7db49c5bf" - dependencies: - asap "~2.0.3" - proper-lockfile@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-1.2.0.tgz#ceff5dd89d3e5f10fb75e1e8e76bc75801a59c34" @@ -5122,7 +4998,7 @@ qs@6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.1.tgz#ce03c5ff0935bc1d9d69a9f14cbd18e568d67625" -"qs@>= 0.4.0", qs@^6.1.0, qs@~6.3.0: +"qs@>= 0.4.0", qs@~6.3.0: version "6.3.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" @@ -5341,18 +5217,11 @@ regjsparser@^0.1.4: dependencies: jsesc "~0.5.0" -remarkable@^1.7.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/remarkable/-/remarkable-1.7.1.tgz#aaca4972100b66a642a63a1021ca4bac1be3bff6" - dependencies: - argparse "~0.1.15" - autolinker "~0.15.0" - repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" -repeat-string@^1.5.2, repeat-string@^1.6.1: +repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -5631,12 +5500,6 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" -set-getter@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" - dependencies: - to-object-path "^0.3.0" - set-immediate-shim@^1.0.0, set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" @@ -5947,10 +5810,6 @@ strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" -strip-color@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/strip-color/-/strip-color-0.1.0.tgz#106f65d3d3e6a2d9401cac0eb0ce8b8a702b4f7b" - strip-dirs@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/strip-dirs/-/strip-dirs-1.1.1.tgz#960bbd1287844f3975a4558aa103a8255e2456a0" @@ -6016,14 +5875,6 @@ svgo@^0.7.0: sax "~1.2.1" whet.extend "~0.9.9" -sync-request@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/sync-request/-/sync-request-3.0.1.tgz#caa1235aaf889ba501076a1834c436830a82fb73" - dependencies: - concat-stream "^1.4.7" - http-response-object "^1.0.1" - then-request "^2.0.1" - systemjs-builder@0.16.3: version "0.16.3" resolved "https://registry.yarnpkg.com/systemjs-builder/-/systemjs-builder-0.16.3.tgz#7dc830f816cf2a86d03019d057ca1bd096659c18" @@ -6126,17 +5977,6 @@ tfunk@^3.0.1: chalk "^1.1.1" object-path "^0.9.0" -then-request@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/then-request/-/then-request-2.2.0.tgz#6678b32fa0ca218fe569981bbd8871b594060d81" - dependencies: - caseless "~0.11.0" - concat-stream "^1.4.7" - http-basic "^2.5.1" - http-response-object "^1.1.0" - promise "^7.1.1" - qs "^6.1.0" - through2-filter@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" @@ -6208,16 +6048,6 @@ to-fast-properties@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - dependencies: - kind-of "^3.0.2" - -toml@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/toml/-/toml-2.3.2.tgz#5eded5ca42887924949fd06eb0e955656001e834" - tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" @@ -6252,6 +6082,10 @@ tryit@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" +tslib@^1.7.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.1.tgz#6946af2d1d651a7b1863b531d6e5afa41aa44eac" + tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" @@ -6309,11 +6143,7 @@ unc-path-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" -underscore.string@~2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.4.0.tgz#8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b" - -underscore@1.7.x, underscore@~1.7.0: +underscore@1.7.x: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209"