From 234152f181359190ceb831ade3fcb497a8c379e1 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Thu, 30 May 2019 22:13:57 +0200 Subject: [PATCH 001/131] feat: add new installation guide, move to docs/ --- README.md | 2 +- .../icons}/android-chrome-192x192.png | Bin .../icons}/android-chrome-512x512.png | Bin {icons => docs/icons}/apple-touch-icon.png | Bin docs/icons/browserconfig.xml | 12 + {icons => docs/icons}/favicon-16x16.png | Bin {icons => docs/icons}/favicon-32x32.png | Bin {icons => docs/icons}/favicon.ico | Bin {icons => docs/icons}/light-favicon-16x16.png | Bin {icons => docs/icons}/light-favicon-32x32.png | Bin {icons => docs/icons}/light-favicon.ico | Bin {icons => docs/icons}/mstile-150x150.png | Bin {icons => docs/icons}/mstile-310x150.png | Bin {icons => docs/icons}/mstile-310x310.png | Bin {icons => docs/icons}/mstile-70x70.png | Bin {icons => docs/icons}/safari-pinned-tab.svg | 0 {icons => docs/icons}/site.webmanifest | 4 +- docs/index.html | 318 ++++++++++++++++++ logo.png => docs/logo.png | Bin logo.svg => docs/logo.svg | 0 screenshot.jpg => docs/screenshot.jpg | Bin docs/script.js | 138 ++++++++ docs/style.css | 63 ++++ gulpfile.js | 8 +- icons/browserconfig.xml | 12 - index.html | 216 ------------ script.js | 114 ------- 27 files changed, 537 insertions(+), 350 deletions(-) rename {icons => docs/icons}/android-chrome-192x192.png (100%) rename {icons => docs/icons}/android-chrome-512x512.png (100%) rename {icons => docs/icons}/apple-touch-icon.png (100%) create mode 100755 docs/icons/browserconfig.xml rename {icons => docs/icons}/favicon-16x16.png (100%) rename {icons => docs/icons}/favicon-32x32.png (100%) rename {icons => docs/icons}/favicon.ico (100%) rename {icons => docs/icons}/light-favicon-16x16.png (100%) rename {icons => docs/icons}/light-favicon-32x32.png (100%) rename {icons => docs/icons}/light-favicon.ico (100%) rename {icons => docs/icons}/mstile-150x150.png (100%) rename {icons => docs/icons}/mstile-310x150.png (100%) rename {icons => docs/icons}/mstile-310x310.png (100%) rename {icons => docs/icons}/mstile-70x70.png (100%) rename {icons => docs/icons}/safari-pinned-tab.svg (100%) rename {icons => docs/icons}/site.webmanifest (74%) create mode 100644 docs/index.html rename logo.png => docs/logo.png (100%) rename logo.svg => docs/logo.svg (100%) rename screenshot.jpg => docs/screenshot.jpg (100%) create mode 100644 docs/script.js create mode 100755 docs/style.css delete mode 100755 icons/browserconfig.xml delete mode 100644 index.html delete mode 100644 script.js diff --git a/README.md b/README.md index f0b6e38..cbbc0b6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Water.css -[![Water.css](logo.svg)](https://watercss.netlify.com/) +[![Water.css](docs/logo.svg)](https://watercss.netlify.com/) _A just-add-css collection of styles to make simple websites just a little nicer_ diff --git a/icons/android-chrome-192x192.png b/docs/icons/android-chrome-192x192.png similarity index 100% rename from icons/android-chrome-192x192.png rename to docs/icons/android-chrome-192x192.png diff --git a/icons/android-chrome-512x512.png b/docs/icons/android-chrome-512x512.png similarity index 100% rename from icons/android-chrome-512x512.png rename to docs/icons/android-chrome-512x512.png diff --git a/icons/apple-touch-icon.png b/docs/icons/apple-touch-icon.png similarity index 100% rename from icons/apple-touch-icon.png rename to docs/icons/apple-touch-icon.png diff --git a/docs/icons/browserconfig.xml b/docs/icons/browserconfig.xml new file mode 100755 index 0000000..d649dd8 --- /dev/null +++ b/docs/icons/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + #00aba9 + + + diff --git a/icons/favicon-16x16.png b/docs/icons/favicon-16x16.png similarity index 100% rename from icons/favicon-16x16.png rename to docs/icons/favicon-16x16.png diff --git a/icons/favicon-32x32.png b/docs/icons/favicon-32x32.png similarity index 100% rename from icons/favicon-32x32.png rename to docs/icons/favicon-32x32.png diff --git a/icons/favicon.ico b/docs/icons/favicon.ico similarity index 100% rename from icons/favicon.ico rename to docs/icons/favicon.ico diff --git a/icons/light-favicon-16x16.png b/docs/icons/light-favicon-16x16.png similarity index 100% rename from icons/light-favicon-16x16.png rename to docs/icons/light-favicon-16x16.png diff --git a/icons/light-favicon-32x32.png b/docs/icons/light-favicon-32x32.png similarity index 100% rename from icons/light-favicon-32x32.png rename to docs/icons/light-favicon-32x32.png diff --git a/icons/light-favicon.ico b/docs/icons/light-favicon.ico similarity index 100% rename from icons/light-favicon.ico rename to docs/icons/light-favicon.ico diff --git a/icons/mstile-150x150.png b/docs/icons/mstile-150x150.png similarity index 100% rename from icons/mstile-150x150.png rename to docs/icons/mstile-150x150.png diff --git a/icons/mstile-310x150.png b/docs/icons/mstile-310x150.png similarity index 100% rename from icons/mstile-310x150.png rename to docs/icons/mstile-310x150.png diff --git a/icons/mstile-310x310.png b/docs/icons/mstile-310x310.png similarity index 100% rename from icons/mstile-310x310.png rename to docs/icons/mstile-310x310.png diff --git a/icons/mstile-70x70.png b/docs/icons/mstile-70x70.png similarity index 100% rename from icons/mstile-70x70.png rename to docs/icons/mstile-70x70.png diff --git a/icons/safari-pinned-tab.svg b/docs/icons/safari-pinned-tab.svg similarity index 100% rename from icons/safari-pinned-tab.svg rename to docs/icons/safari-pinned-tab.svg diff --git a/icons/site.webmanifest b/docs/icons/site.webmanifest similarity index 74% rename from icons/site.webmanifest rename to docs/icons/site.webmanifest index a57bfca..9cad822 100755 --- a/icons/site.webmanifest +++ b/docs/icons/site.webmanifest @@ -3,12 +3,12 @@ "short_name": "Water.css", "icons": [ { - "src": "/icons/android-chrome-192x192.png", + "src": "./android-chrome-192x192.png", "sizes": "192x192", "type": "image/png" }, { - "src": "/icons/android-chrome-512x512.png", + "src": "./android-chrome-512x512.png", "sizes": "512x512", "type": "image/png" } diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..3c5d83a --- /dev/null +++ b/docs/index.html @@ -0,0 +1,318 @@ + + + + Water.css + + + + + + + + + + + + + + + + + + + + + + + + + +

Water.css

+ +

+ Water.css is a just-add-css collection of styles to make simple websites like this just a + little bit nicer. +
+ Now you can write your simple static site with nice semantic html, and Water.css will manage + the styling for you. +

+
+
+ Get it already! +
+ GitHub +
+ + Water.css - Make your tiny website just a little nicer | Product Hunt Embed + +
+ +
+

Installation

+ +
+
+

Paste this into the <head> of your HTML:

+ +
+ + +
{{selectedVersion.fileSnippet}}
+
+ +

Version options:

+
+ + +

+ +

+ +
+ +

Version info:

+ + + + + + + + + + + + + + + + + + + +
File{{ selectedVersion.fileName }}
Size (min+gzip){{ selectedVersion.fileSize }}KB
Theme + + + +
Browser support + + +
+
+
+ +

Goals

+ + +

Is it responsive?

+

+ Heck yeah! It doesn't include any fancy styles so it's easily mobile + responsive. Just add the famous + responsive viewport tag and + you'll be good to go! +

+

In fact, try resizing this page. Everything flows super nicely as you'll see.

+ +

Element demos

+

This is supposed to be a demo page so we need more elements!

+ +

Form elements

+
+ + + + + + + + + + + + + +
+ + +
+
+ + +
+
+ + +
+ +
+ + + + + +
+ +

Code

+

+ Below is some code, you can copy it with Ctrl-C. Did you know, + alert(1) can show an alert in JavaScript! +

+
// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')
+ +

Other

+

Here's a horizontal rule and image because I don't know where else to put them.

+ Example kitten +
+ +

And here's a nicely marked up table!

+ + + + + + + + + + + + + + + + + + + + + + + + + +
NameQuantityPrice
Godzilla2$299.99
Mozilla10$100,000.00
Quesadilla1$2.22
+ +

Typography

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis + ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis + ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius + natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu + felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui + aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora + torquent per conubia nostra, per inceptos himenaeos. + This is strong, this is normal, this is just bold, + and this is emphasized! And heck, here's a link. +

+ +
+ "The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed + text is an extended quotation. Usually, this is rendered visually by indentation (see + Notes + for how to change it). A URL for the source of the quotation may be given using the + cite attribute, while a text representation of the source can be given using the + <cite> cite element." + + +
+ + +
    +
  1. Ordered list item 1
  2. +
  3. Ordered list item 2
  4. +
  5. Ordered list item 3
  6. +
+ +

Addresses are also styled to be awesome!

+
+ john.doe@example.com
+ 778-330-2389
+ 666-666-6666
+
+ +
+ +

Heading 1

+

Heading 2

+

Heading 3

+

Heading 4

+
Heading 5
+
Heading 6
+ + + + + + + diff --git a/logo.png b/docs/logo.png similarity index 100% rename from logo.png rename to docs/logo.png diff --git a/logo.svg b/docs/logo.svg similarity index 100% rename from logo.svg rename to docs/logo.svg diff --git a/screenshot.jpg b/docs/screenshot.jpg similarity index 100% rename from screenshot.jpg rename to docs/screenshot.jpg diff --git a/docs/script.js b/docs/script.js new file mode 100644 index 0000000..3587697 --- /dev/null +++ b/docs/script.js @@ -0,0 +1,138 @@ +/** + * Type definition for the version object used throughout the code + * @typedef {Object} VersionOptions + * @prop {'dark' | 'light'} theme + * @prop {boolean} isLegacy + * @prop {boolean} isStandalone + */ + +/** The base URI from where to load the CSS files. */ +const CDN_BASE = 'https://cdn.jsdelivr.net/gh/kognise/water.css/dist/' + +/** An object mapping the (minified + gzipped) fileSize in KB to a fileName. */ +const FILE_SIZES = { + 'dark.min.css': 1.4, + 'dark.standalone.min.css': 1.31, + 'dark-legacy.min.css': 0.177 + 1.16 + 1.15, + 'dark-legacy.standalone.min.css': 1.16, + 'light.min.css': 1.4, + 'light.standalone.min.css': 1.3, + 'light-legacy.min.css': 0.178 + 1.16 + 1.15, + 'light-legacy.standalone.min.css': 1.15, +} + +/** @param {VersionOptions} options */ +const getFileName = ({ theme, isLegacy, isStandalone }) => { + return `${theme}${isLegacy ? '-legacy' : ''}${isStandalone ? '.standalone' : ''}.min.css` +} + +/** @param {VersionOptions} options */ +const getFileSize = options => { + return FILE_SIZES[getFileName(options)] || '...' +} + +const getFilePreloadSnippet = (mainFileName, altFileName, altTheme) => { + return ` + + +` +} + +/** @param {VersionOptions} options */ +const getFileSnippet = ({ theme, isLegacy, isStandalone }) => { + const fileName = getFileName({ theme, isLegacy, isStandalone }) + const stylesheetSnippet = `` + + if (!isLegacy || isStandalone) return stylesheetSnippet + + const altTheme = theme === 'dark' ? 'dark' : 'light' + const mainStandaloneFile = getFileName({ theme, isLegacy: true, isStandalone: true }) + const altStandaloneFile = getFileName({ theme: altTheme, isLegacy: true, isStandalone: true }) + const preloadSnippet = getFilePreloadSnippet(mainStandaloneFile, altStandaloneFile, altTheme) + + return (preloadSnippet + '\n\n' + stylesheetSnippet).trim() +} + +const externalElements = { + _phImage: document.querySelector('#js-producthunt'), + _stylesheet: document.querySelector('#js-stylesheet'), + + /** @param {VersionOptions} options @param {'dark' | 'light'} [preferedColorScheme] */ + update(options, preferedColorScheme) { + const { theme, isStandalone } = options + const href = '../dist/' + getFileName(options) + const visibleTheme = isStandalone ? theme : preferedColorScheme || theme + + this._stylesheet.href = href + this._phImage.src = this._phImage.src.replace(/dark|light/, visibleTheme) + }, +} + +const createColorSchemeListener = (theme, queryHandler) => { + const mediaQuery = matchMedia(`(prefers-color-scheme: ${theme})`) + mediaQuery.addListener(query => queryHandler(query.matches)) + queryHandler(mediaQuery.matches) +} + +new Vue({ + el: '#installation', + filters: { capitalize: str => str.charAt(0).toUpperCase() + str.slice(1) }, + data: { + versionOptions: { theme: 'dark', isStandalone: true, isLegacy: false }, + preferedColorScheme: null, + copyStatus: null, + }, + computed: { + selectedVersion() { + return { + fileName: getFileName(this.versionOptions), + fileSize: getFileSize(this.versionOptions), + fileSnippet: getFileSnippet(this.versionOptions), + } + }, + }, + created() { + externalElements.update(this.versionOptions, this.preferedColorScheme) + + createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark')) + createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light')) + }, + methods: { + async copyToClipboard() { + try { + await clipboard.writeText(this.selectedVersion.fileSnippet) + this.copyStatus = 'success' + } catch (error) { + this.copyStatus = 'failed' + } + setTimeout(() => (this.copyStatus = undefined), 1000) + }, + }, + watch: { + preferedColorScheme(nextScheme) { + externalElements.update(this.versionOptions, nextScheme) + }, + versionOptions: { + deep: true, + handler(nextOptions) { + externalElements.update(nextOptions, this.preferedColorScheme) + }, + }, + }, +}) + +const iconModeSwitcher = faviconModeSwitcher.default +iconModeSwitcher([ + { + element: 'link[rel="shortcut icon"]', + href: { dark: '/icons/light-favicon.ico' }, + }, + { + element: 'link[rel="icon"][sizes="16x16"]', + href: { dark: '/icons/light-favicon-16x16.png' }, + }, + { + element: 'link[rel="icon"][sizes="32x32"]', + href: { dark: '/icons/light-favicon-32x32.png' }, + }, +]) diff --git a/docs/style.css b/docs/style.css new file mode 100755 index 0000000..a1b914e --- /dev/null +++ b/docs/style.css @@ -0,0 +1,63 @@ +html { + scroll-behavior: smooth; +} + +#js-producthunt { + margin-top: 1rem; +} + +#installation header > h3 { + margin: 1rem 2.5rem 1rem 0; +} +/* Make the ✔ / ❌ Emoji appear next to the button */ +#installation header button { + position: relative; + margin-left: auto; + overflow: visible; +} +#installation header button span { + position: absolute; + left: -2rem; + display: inline-block; + transform: scale(1.3); +} +/* Fixed layout so columns don't jump when content changes */ +#installation table { + table-layout: fixed; +} +#installation table th { + border: none; + vertical-align: top; + width: 35%; +} + +/* Used for (Links / ProductHunt) and (Installation / Copy-Button) rows */ +.row { + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; +} + +/* Use proper Emoji instead of plain Unicode chars */ +.emoji { + font-family: 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', system-ui, -apple-system, + BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, + Helvetica Neue, sans-serif; +} + +/* For the bounce transitions of code snippet and copy success Emoji */ +.v-enter, +.v-leave-to { + transform: scale(0); +} +.v-enter-active, +.v-leave-active { + transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275); +} +[v-cloak] > * { + display: none; +} +[v-cloak]::before { + content: 'Version picker is loading...'; +} diff --git a/gulpfile.js b/gulpfile.js index 62fb394..c31e8c4 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -19,7 +19,7 @@ const postcssColorModFunction = require('postcss-color-mod-function').bind(null, const paths = { srcDir: 'src/*', - docsDir: '*', + docsDir: 'docs/*', styles: { src: 'src/builds/*.css', dest: 'dist' }, } @@ -114,10 +114,8 @@ function watch() { style() browserSync.init({ - server: { - baseDir: './', - }, - startPath: 'index.html', + server: { baseDir: './' }, + startPath: 'docs/index.html', }) gulp.watch(paths.srcDir, style) diff --git a/icons/browserconfig.xml b/icons/browserconfig.xml deleted file mode 100755 index 3903cb6..0000000 --- a/icons/browserconfig.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - #00aba9 - - - diff --git a/index.html b/index.html deleted file mode 100644 index 2dbedc4..0000000 --- a/index.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - Water.css - - - - - - - - - - - - - - - - - - - - -

Water.css

-

- Water.css is a just-add-css collection of styles to make simple websites like this just a - little bit nicer. - Get it already! -

-

- Now you can write your simple static site with nice semantic html, and Water.css will manage - the styling for you. -

- Water.css - Make your tiny website just a little nicer | Product Hunt Embed - -

Goals

- - -

Is it responsive?

-

- Heck yeah! It doesn't include any fancy styles so it's easily mobile - responsive. - Just add the famous responsive - viewport tag and you'll be good to go! -

-

- In fact, try resizing this page. Everything flows super nicely as you'll see. -

- - -

Element demos

-

- This is supposed to be a demo page so we need more elements! -

- -

Form elements

-
- - - - - - - - - - - - - -
- - -
-
- - -
-
- - -
- -
- - - - - -
- -

Code

-

- Below is some code, with a variable, you can copy it with Ctrl-C. - Did you know, alert(1) can show an alert in JavaScript! -

- var myNumber = 0; -
// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')
- -

Here are some more keyboard buttons

-

Press Ctrl + Shift + Print Screen to take a selected area screenshot on Linux.

-

Other

-

Here's a horizontal rule and image because I don't know where else to put them.

- Example kitten -
- -

And here's a nicely marked up table!

- - - - - - - - - - - - - - - - - - - - - - - - - -
NameQuantityPrice
Godzilla2$299.99
Mozilla10$100,000.00
Quesadilla1$2.22
- -

Typography

-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis - ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis - ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius - natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu - felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui - aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora - torquent per conubia nostra, per inceptos himenaeos. - This is strong, this is normal, this is just bold, and this is - emphasized! And heck, here's a link. -

- -
- "The HTML blockquote Element (or HTML Block Quotation Element) indicates - that the enclosed text is an extended quotation. Usually, this is - rendered visually by indentation (see - Notes - for how to change it). A URL for the source of the quotation may be given using the - cite attribute, while a text representation of the source - can be given using the <cite> cite element." - - -
- - Quotes (<q>) share the same style as blockquotes. - -

Use <mark> to highlight the important stuff.

- - -
    -
  1. Ordered list item 1
  2. -
  3. Ordered list item 2
  4. -
  5. Ordered list item 3
  6. -
- -

- Addresses are also styled to be awesome! -

-
- john.doe@example.com
- 778-330-2389
- 666-666-6666
-
- -

Heading 1

-

Heading 2

-

Heading 3

-

Heading 4

-
Heading 5
-
Heading 6
- - - - - - diff --git a/script.js b/script.js deleted file mode 100644 index 8282fb8..0000000 --- a/script.js +++ /dev/null @@ -1,114 +0,0 @@ -!(function() { - const iconModeSwitcher = window.faviconModeSwitcher && faviconModeSwitcher.default - if (!iconModeSwitcher) return - iconModeSwitcher([ - { - element: 'link[rel="shortcut icon"]', - href: { dark: '/icons/light-favicon.ico' } - }, - { - element: 'link[rel="icon"][sizes="16x16"]', - href: { dark: '/icons/light-favicon-16x16.png' } - }, - { - element: 'link[rel="icon"][sizes="32x32"]', - href: { dark: '/icons/light-favicon-32x32.png' } - } - ]) -})() -;(function (ThemeSwitcher) { - const themeSwitcher = new ThemeSwitcher('stylesheet'); - const themeSwitchBtn = document.getElementById('switch'); - const themes = { - dark: 'dark', - darkStandalone: 'dark.standalone', - light: 'light', - lightStandalone: 'light.standalone' - }; - const getSwitchThemeName = function () { - // Case: switch to "light.standalone.css" - if ( - (themeSwitcher.current === themes.dark) && themeSwitcher.isDark || - (themeSwitcher.current === themes.light) && themeSwitcher.isDark || - themeSwitcher.current === themes.darkStandalone - ) { - return themes.lightStandalone - - // Case: switch to "dark.standalone.css" - } else if ( - (themeSwitcher.current === themes.dark) && themeSwitcher.isLight || - (themeSwitcher.current === themes.light) && themeSwitcher.isLight || - themeSwitcher.current === themes.lightStandalone - ) { - return themes.darkStandalone; - - // Case: switch to "light.css" - } else if (themeSwitcher.current === themes.dark) { - return themes.light; - - // Case: switch to "dark.css" - } else if (themeSwitcher.current === themes.light) { - return themes.dark; - - // Case: switch destination is unknown - } else { - return themeSwitcher.current; - } - }; - const getGeneralThemeName = function () { - return themeSwitcher.current.replace(/\.standalone/g, ''); - }; - - themeSwitchBtn.addEventListener('click', function() { - themeSwitcher.switch(getSwitchThemeName()); - }); - - themeSwitcher.onChangeDark = function () { - themeSwitcher.switch(getGeneralThemeName()); - }; - - themeSwitcher.onChangeLight = function () { - themeSwitcher.switch(getGeneralThemeName()); - }; -})( - (function () { - const ThemeSwitcher = function(stylesheet) { - const darkSchemeMql = matchMedia('(prefers-color-scheme: dark)'); - const lightSchemeMql = matchMedia('(prefers-color-scheme: light)'); - const that = this; - - this.themeDir = '../dist/'; - this.stylesheet = document.getElementById(stylesheet); - this.current = this.getThemeName(this.stylesheet.href); - this.isDark = darkSchemeMql.matches; - this.isLight = lightSchemeMql.matches; - - darkSchemeMql.addListener(function (mql) { - if (mql.matches && typeof that.onChangeDark === 'function') { - that.onChangeDark() - } - }); - - lightSchemeMql.addListener(function (mql) { - if (mql.matches && typeof that.onChangeLight === 'function') { - that.onChangeLight() - } - }); - }; - - ThemeSwitcher.prototype = { - switch: function (themeName) { - this.stylesheet.href = this.themeDir + themeName + '.css'; - this.current = themeName; - }, - getThemeName: function () { - const reg = new RegExp(this.themeDir + '(|.+?).css'); - return stylesheet.getAttribute('href').replace(reg, '$1'); - }, - onChangeDark: null, - onChangeLight: null - }; - - return ThemeSwitcher; - })() -); From 033390881e1f86a5e4451373ab3569163c91e184 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Fri, 31 May 2019 00:15:50 +0200 Subject: [PATCH 002/131] feat: add build step for docs, minor improvements --- dist/docs/index.html | 329 +++++++++++++++ dist/docs/logo.png | Bin 0 -> 52957 bytes dist/docs/logo.svg | 1 + dist/docs/screenshot.jpg | Bin 0 -> 110460 bytes dist/docs/script.js | 1 + dist/docs/style.css | 1 + docs/index.html | 50 ++- docs/script.js | 34 +- docs/style.css | 3 + gulpfile.js | 39 +- package.json | 8 +- yarn.lock | 890 ++++++++++++++++++++++++++++++++++++++- 12 files changed, 1307 insertions(+), 49 deletions(-) create mode 100644 dist/docs/index.html create mode 100644 dist/docs/logo.png create mode 100644 dist/docs/logo.svg create mode 100644 dist/docs/screenshot.jpg create mode 100644 dist/docs/script.js create mode 100755 dist/docs/style.css diff --git a/dist/docs/index.html b/dist/docs/index.html new file mode 100644 index 0000000..903d5f4 --- /dev/null +++ b/dist/docs/index.html @@ -0,0 +1,329 @@ + + + + Water.css + + + + + + + + + + + + + + + + + + + +

Water.css

+ +

+ Water.css is a just-add-css collection of styles to make simple websites like this just a + little bit nicer. +
+ Now you can write your simple static site with nice semantic html, and Water.css will manage + the styling for you. +

+
+
+ Get it already! +
+ GitHub +
+ + Water.css - Make your tiny website just a little nicer | Product Hunt Embed + +
+ + +
+

Installation

+ +
+
+

Paste this into the <head> of your HTML:

+ +
+ + +
{{selectedVersion.fileSnippet}}
+
+ +

Version options:

+
+ + +

+ +

+ +
+ +

Version info:

+ + + + + + + + + + + + + + + + + + + +
File{{ selectedVersion.fileName }}
Size (min+gzip){{ selectedVersion.fileSize }}KB
Theme + + + +
Browser support + + +
+
+
+ + +

Goals

+ + +

Is it responsive?

+

+ Heck yeah! It doesn't include any fancy styles so it's easily mobile + responsive. Just add the famous + responsive viewport tag and + you'll be good to go! +

+

In fact, try resizing this page. Everything flows super nicely as you'll see.

+ +

Element demos

+

This is supposed to be a demo page so we need more elements!

+ +

Form elements

+
+ + + + + + + + + + + + + +
+ + +
+
+ + +
+
+ + +
+ +
+ + + + + +
+ +

Code

+

+ Below is some code, you can copy it with Ctrl-C. Did you know, + alert(1) can show an alert in JavaScript! +

+
// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')
+ +

Other

+

Here's a horizontal rule and image because I don't know where else to put them.

+ Example kitten +
+ +

And here's a nicely marked up table!

+ + + + + + + + + + + + + + + + + + + + + + + + + +
NameQuantityPrice
Godzilla2$299.99
Mozilla10$100,000.00
Quesadilla1$2.22
+ +

Typography

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis + ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis + ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius + natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu + felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui + aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora + torquent per conubia nostra, per inceptos himenaeos. + This is strong, this is normal, this is just bold, + and this is emphasized! And heck, here's a link. +

+ +
+ "The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed + text is an extended quotation. Usually, this is rendered visually by indentation (see + Notes + for how to change it). A URL for the source of the quotation may be given using the + cite attribute, while a text representation of the source can be given using the + <cite> cite element." + + +
+ + +
    +
  1. Ordered list item 1
  2. +
  3. Ordered list item 2
  4. +
  5. Ordered list item 3
  6. +
+ +

Addresses are also styled to be awesome!

+
+ john.doe@example.com
+ 778-330-2389
+ 666-666-6666
+
+ +
+ +

Heading 1

+

Heading 2

+

Heading 3

+

Heading 4

+
Heading 5
+
Heading 6
+ + + + + + diff --git a/dist/docs/logo.png b/dist/docs/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..37b80ced09a6ad8e10e4d41e613d60bda3f67539 GIT binary patch literal 52957 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

!&u7_JRX4gac6AEE?>mv+IKo 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 literal 0 HcmV?d00001 diff --git a/dist/docs/logo.svg b/dist/docs/logo.svg new file mode 100644 index 0000000..67c43f4 --- /dev/null +++ b/dist/docs/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dist/docs/screenshot.jpg b/dist/docs/screenshot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4d7610cc62856eaaf5442ff876a0673cdffb23c6 GIT binary patch literal 110460 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

4MHM1`U8g4%4bdJ43r8vOg7iD<_)N_#uPR5 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

fk`%f3{3;YG6jLEr2P-w=YIr4gLveJ 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');if(!s||i)return c;var o="dark"===r?"dark":"light";return(function(t,n,r){return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}(n({theme:r,isLegacy:!0,isStandalone:!0}),n({theme:o,isLegacy:!0,isStandalone:!0}),o)+"\n\n"+c).trim()},s={_phImage:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),updateStylesheet:function(e){this._stylesheet.href=e},updateProductHunt:function(e){this._phImage.src=this._phImage.src.replace(/dark|light/,e)},update:function(e,t){var r=e.theme,s=e.isStandalone,i="../"+n(e),a=s?r:t||r;this.updateStylesheet(i),this.updateProductHunt(a)}},i=function(e,t){var n=matchMedia("(prefers-color-scheme: ".concat(e,")"));n.addListener(function(e){return t(e.matches)}),t(n.matches)};new Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:{theme:"dark",isStandalone:!1,isLegacy:!1},preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:n(this.versionOptions),fileSize:(e=this.versionOptions,t[n(e)]||"..."),fileSnippet:r(this.versionOptions)};var e}},created:function(){var e=this;i("dark",function(t){return t&&(e.preferedColorScheme="dark")}),i("light",function(t){return t&&(e.preferedColorScheme="light")}),this.preferedColorScheme&&s.updateProductHunt(this.preferedColorScheme)},methods:{copyToClipboard:function(){var e=this;Promise.resolve().then(function(){return clipboard.writeText(e.selectedVersion.fileSnippet)}).then(function(){return e.copyStatus="success"}).catch(function(){return e.copyStatus="failed"}),setTimeout(function(){return e.copyStatus=void 0},1e3)}},watch:{preferedColorScheme:function(e){s.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){s.update(e,this.preferedColorScheme)}}}}); \ No newline at end of file diff --git a/dist/docs/style.css b/dist/docs/style.css new file mode 100755 index 0000000..1ca4067 --- /dev/null +++ b/dist/docs/style.css @@ -0,0 +1 @@ +html{scroll-behavior:smooth}#js-producthunt{margin-top:1rem}#installation header>h3{margin:1rem 2.5rem 1rem 0}#installation header button{position:relative;margin-left:auto;overflow:visible}#installation header button span{position:absolute;left:-2rem;display:inline-block;transform:scale(1.3)}#installation table{table-layout:fixed}#installation table th{border:none;vertical-align:top;width:35%}.row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.emoji{font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.translucent{opacity:.5}.v-enter,.v-leave-to{transform:scale(0)}.v-enter-active,.v-leave-active{transition:transform .22s cubic-bezier(.175,.885,.32,1.275)}[v-cloak]>*{display:none}[v-cloak]:before{content:"Version picker is loading..."} \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 3c5d83a..80f4d91 100644 --- a/docs/index.html +++ b/docs/index.html @@ -16,8 +16,26 @@ - - + + + + + + + + @@ -64,10 +82,11 @@ +

Installation

-
+

Paste this into the <head> of your HTML:

- + \ No newline at end of file From 76a4ccbc7c72f4745c01b93e19820dcd4991bb68 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Fri, 7 Jun 2019 15:27:55 +0200 Subject: [PATCH 017/131] fix: add margin between theme selection buttons --- docs/style.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/style.css b/docs/style.css index 27c70ee..ed3f0ed 100755 --- a/docs/style.css +++ b/docs/style.css @@ -26,12 +26,12 @@ html { transform: scale(1.3); } -.version-select__options { - margin-right: 1rem; -} .version-select__options > label { white-space: pre; } +.version-select__options > label:first-child { + margin-right: 1rem; +} .version-select__options__additional > * { margin-top: 1rem; display: inline-block; From 2bd0bdd22e4e7f6ef92635e6682b0a782e8c0192 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Fri, 7 Jun 2019 21:21:59 +0200 Subject: [PATCH 018/131] feat: remove fallback once dynamic copy is loaded + legacy option defaults to true when opened in legacy browsers --- docs/index.html | 7 +++---- docs/script.js | 14 ++++++++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/docs/index.html b/docs/index.html index e0db78f..c1ce0d5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -15,7 +15,7 @@ - + - - - + + diff --git a/docs/script.js b/docs/script.js index 043f073..11887df 100644 --- a/docs/script.js +++ b/docs/script.js @@ -14,6 +14,7 @@ /** Reference to global window, but with properties for loaded libraries. */ const w = /** @type {Window & Libraries} */ (window) const queryParams = new URLSearchParams(w.location.search) +const supportsCssVars = typeof CSS !== 'undefined' && CSS.supports('color', 'var(--clr)') /** The base URI from where the docs page loads the CSS files. */ const DEV_BASE = '../' @@ -70,6 +71,10 @@ const getFileSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStand const externalElements = { _productHunt: /** @type {HTMLImageElement} */ (document.querySelector('#js-producthunt')), _stylesheet: /** @type {HTMLLinkElement} */ (document.querySelector('#js-stylesheet')), + _removeStartupStylesheet() { + const startupStylesheet = document.head.querySelector('#js-startup-stylesheet') + if (startupStylesheet) document.head.removeChild(startupStylesheet) + }, _updateProductHunt(/** @type {Theme} */ theme) { this._productHunt.src = this._productHunt.src.replace(/dark|light/, theme) }, @@ -77,6 +82,11 @@ const externalElements = { this._stylesheet.href = DEV_BASE + fileName }, + /** Sets up listener to remove startup version of water.css when right one loads, then updates */ + init(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) { + this._stylesheet.addEventListener('load', this._removeStartupStylesheet) + this.update(options, preferedTheme) + }, /** Takes current version + the user's prefered scheme and updates all external elements. */ update(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) { const displayedTheme = options.isStandalone ? options.theme : preferedTheme || options.theme @@ -100,7 +110,7 @@ const createColorSchemeListener = (scheme, queryHandler) => { const themeFromParams = queryParams.get('theme') const initialVersionOptions = { theme: /** @type {Theme} */ (/dark|light/.test(themeFromParams) ? themeFromParams : 'dark'), - isLegacy: queryParams.has('legacy'), + isLegacy: queryParams.has('legacy') || !supportsCssVars, isStandalone: queryParams.has('standalone'), } @@ -129,7 +139,7 @@ new w.Vue({ createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark')) createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light')) - externalElements.update(this.versionOptions, this.preferedColorScheme) + externalElements.init(this.versionOptions, this.preferedColorScheme) }, methods: { copyToClipboard() { From 8e465363f1081927195b548defc355de02f3715b Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Fri, 7 Jun 2019 21:22:24 +0200 Subject: [PATCH 019/131] chore: compile new build --- dist/docs/index.html | 2 +- dist/docs/script.js | 2 +- dist/docs/script.js.map | 2 +- dist/docs/style.css | 2 +- dist/docs/style.css.map | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/docs/index.html b/dist/docs/index.html index 379ab12..3218a07 100644 --- a/dist/docs/index.html +++ b/dist/docs/index.html @@ -1,2 +1,2 @@ -Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Version options:





Version info:

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index c9cbf15..59021b9 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",s={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},a=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},i=function(e){var t=e.theme,s=e.isLegacy,i=e.isStandalone,r=a({theme:t,isLegacy:s,isStandalone:i}),c='');return!s||i?c:(function(e){var t=e.theme,s=e.isLegacy,i=e.isStandalone,r="dark"===t?"light":"dark",c=a({theme:r,isLegacy:s,isStandalone:i});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:s,isStandalone:!0})+"\n\n"+c).trim()},r={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(a(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},o=t.get("theme"),l={theme:/dark|light/.test(o)?o:"dark",isLegacy:t.has("legacy"),isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:l,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:a(this.versionOptions),fileSize:(e=this.versionOptions,s[a(e)]||0).toFixed(2),fileSnippet:i(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),r.update(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){r.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){r.update(e,this.preferedColorScheme)}}}}); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},a=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},i=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,i=a({theme:t,isLegacy:n,isStandalone:r}),o='');return!n||r?o:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,i="dark"===t?"light":"dark",o=a({theme:i,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(a(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),d={theme:/dark|light/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:d,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:a(this.versionOptions),fileSize:(e=this.versionOptions,r[a(e)]||0).toFixed(2),fileSnippet:i(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index 074cc33..e501a07 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_updateProductHunt","this","src","replace","_updateStylesheet","href","update","options","preferedTheme","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/** @typedef {{ Vue: typeof import('vue').default, clipboard: Clipboard }} Libraries */\n/** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */\n\n/** @typedef {Object} VueData State used by the version picker\n * @prop {VersionOptions} versionOptions\n * @prop {?CopyStatus} copyStatus\n * @prop {?Theme} preferedColorScheme\n */\n\n/** Reference to global window, but with properties for loaded libraries. */\nconst w = /** @type {Window & Libraries} */ (window)\nconst queryParams = new URLSearchParams(w.location.search)\n\n/** The base URI from where the docs page loads the CSS files. */\nconst DEV_BASE = '../'\n/** The base URI from where instructions show to load the CSS files. */\nconst CDN_BASE = 'https://cdn.jsdelivr.net/gh/kognise/water.css/dist/'\n\n/** An object mapping the (minified + gzipped) fileSize in KB to a fileName. */\nconst FILE_SIZES = {\n 'dark.min.css': 1.4,\n 'dark.standalone.min.css': 1.31,\n 'dark-legacy.min.css': 0.177 + 1.16 + 1.15,\n 'dark-legacy.standalone.min.css': 1.16,\n 'light.min.css': 1.4,\n 'light.standalone.min.css': 1.3,\n 'light-legacy.min.css': 0.178 + 1.16 + 1.15,\n 'light-legacy.standalone.min.css': 1.15,\n}\n\n/** Takes in version options and returns the respective CSS file name. */\nconst getFileName = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const legacySuffix = isLegacy ? '-legacy' : ''\n const standaloneExt = isStandalone ? '.standalone' : ''\n return /** @type {FileName} */ (`${theme}${legacySuffix}${standaloneExt}.min.css`)\n}\n\n/** Takes in version options and returns the corresponding file size in KB. */\nconst getFileSize = (/** @type {VersionOptions} */ options) => FILE_SIZES[getFileName(options)] || 0\n\n/** Takes in version options and returns an HTML snippet that preloads the main stylesheet and\n * conditionally preloads the alternative stylesheet (if the alternative theme is active). */\nconst getFilePreloadSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const alternativeTheme = theme === 'dark' ? 'light' : 'dark'\n const alternativeFile = getFileName({ theme: alternativeTheme, isLegacy, isStandalone })\n\n return `\n\n\n`\n}\n\n/** Takes in version options and returns the code snippet instructing users how to load the file. */\nconst getFileSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const fileName = getFileName({ theme, isLegacy, isStandalone })\n const stylesheetSnippet = ``\n\n if (!isLegacy || isStandalone) return stylesheetSnippet\n\n const preloadSnippet = getFilePreloadSnippet({ theme, isLegacy, isStandalone: true })\n return (preloadSnippet + '\\n\\n' + stylesheetSnippet).trim()\n}\n\n/** Handles elements external to the version picker that still need to be kept\n * up to date with the current version, e.g. switching images from dark to light. */\nconst externalElements = {\n _productHunt: /** @type {HTMLImageElement} */ (document.querySelector('#js-producthunt')),\n _stylesheet: /** @type {HTMLLinkElement} */ (document.querySelector('#js-stylesheet')),\n _updateProductHunt(/** @type {Theme} */ theme) {\n this._productHunt.src = this._productHunt.src.replace(/dark|light/, theme)\n },\n _updateStylesheet(/** @type {FileName} */ fileName) {\n this._stylesheet.href = DEV_BASE + fileName\n },\n\n /** Takes current version + the user's prefered scheme and updates all external elements. */\n update(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) {\n const displayedTheme = options.isStandalone ? options.theme : preferedTheme || options.theme\n\n this._updateStylesheet(getFileName(options))\n this._updateProductHunt(displayedTheme)\n },\n}\n\n/**\n * Sets up a media query for the given color scheme and runs the callback on change.\n * @param {Theme} scheme\n * @param {(matches: boolean) => any} queryHandler\n */\nconst createColorSchemeListener = (scheme, queryHandler) => {\n const mediaQuery = w.matchMedia(`(prefers-color-scheme: ${scheme})`)\n mediaQuery.addListener(query => queryHandler(query.matches))\n queryHandler(mediaQuery.matches)\n}\n\nconst themeFromParams = queryParams.get('theme')\nconst initialVersionOptions = {\n theme: /** @type {Theme} */ (/dark|light/.test(themeFromParams) ? themeFromParams : 'dark'),\n isLegacy: queryParams.has('legacy'),\n isStandalone: queryParams.has('standalone'),\n}\n\nnew w.Vue({\n el: '#installation',\n filters: {\n capitalize: (/** @type {string} */ str) => str.charAt(0).toUpperCase() + str.slice(1),\n },\n /** @type {VueData} */\n data: {\n versionOptions: initialVersionOptions,\n preferedColorScheme: null,\n copyStatus: null,\n },\n computed: {\n /** @returns {{ fileName: string, fileSize: string, fileSnippet: string }} */\n selectedVersion() {\n return {\n fileName: getFileName(this.versionOptions),\n fileSize: getFileSize(this.versionOptions).toFixed(2),\n fileSnippet: getFileSnippet(this.versionOptions),\n }\n },\n },\n created() {\n createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark'))\n createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light'))\n\n externalElements.update(this.versionOptions, this.preferedColorScheme)\n },\n methods: {\n copyToClipboard() {\n Promise.resolve()\n .then(() => w.clipboard.writeText(this.selectedVersion.fileSnippet))\n .then(() => (this.copyStatus = 'success'))\n .catch(() => (this.copyStatus = 'failed'))\n setTimeout(() => (this.copyStatus = null), 1000)\n },\n },\n watch: {\n preferedColorScheme(/** @type {Theme} */ nextScheme) {\n externalElements.update(this.versionOptions, nextScheme)\n },\n versionOptions: {\n deep: true,\n handler(/** @type {VersionOptions} */ nextOptions) {\n externalElements.update(nextOptions, this.preferedColorScheme)\n },\n },\n },\n})\n"]} \ No newline at end of file +{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/** @typedef {{ Vue: typeof import('vue').default, clipboard: Clipboard }} Libraries */\n/** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */\n\n/** @typedef {Object} VueData State used by the version picker\n * @prop {VersionOptions} versionOptions\n * @prop {?CopyStatus} copyStatus\n * @prop {?Theme} preferedColorScheme\n */\n\n/** Reference to global window, but with properties for loaded libraries. */\nconst w = /** @type {Window & Libraries} */ (window)\nconst queryParams = new URLSearchParams(w.location.search)\nconst supportsCssVars = typeof CSS !== 'undefined' && CSS.supports('color', 'var(--clr)')\n\n/** The base URI from where the docs page loads the CSS files. */\nconst DEV_BASE = '../'\n/** The base URI from where instructions show to load the CSS files. */\nconst CDN_BASE = 'https://cdn.jsdelivr.net/gh/kognise/water.css/dist/'\n\n/** An object mapping the (minified + gzipped) fileSize in KB to a fileName. */\nconst FILE_SIZES = {\n 'dark.min.css': 1.4,\n 'dark.standalone.min.css': 1.31,\n 'dark-legacy.min.css': 0.177 + 1.16 + 1.15,\n 'dark-legacy.standalone.min.css': 1.16,\n 'light.min.css': 1.4,\n 'light.standalone.min.css': 1.3,\n 'light-legacy.min.css': 0.178 + 1.16 + 1.15,\n 'light-legacy.standalone.min.css': 1.15,\n}\n\n/** Takes in version options and returns the respective CSS file name. */\nconst getFileName = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const legacySuffix = isLegacy ? '-legacy' : ''\n const standaloneExt = isStandalone ? '.standalone' : ''\n return /** @type {FileName} */ (`${theme}${legacySuffix}${standaloneExt}.min.css`)\n}\n\n/** Takes in version options and returns the corresponding file size in KB. */\nconst getFileSize = (/** @type {VersionOptions} */ options) => FILE_SIZES[getFileName(options)] || 0\n\n/** Takes in version options and returns an HTML snippet that preloads the main stylesheet and\n * conditionally preloads the alternative stylesheet (if the alternative theme is active). */\nconst getFilePreloadSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const alternativeTheme = theme === 'dark' ? 'light' : 'dark'\n const alternativeFile = getFileName({ theme: alternativeTheme, isLegacy, isStandalone })\n\n return `\n\n\n`\n}\n\n/** Takes in version options and returns the code snippet instructing users how to load the file. */\nconst getFileSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const fileName = getFileName({ theme, isLegacy, isStandalone })\n const stylesheetSnippet = ``\n\n if (!isLegacy || isStandalone) return stylesheetSnippet\n\n const preloadSnippet = getFilePreloadSnippet({ theme, isLegacy, isStandalone: true })\n return (preloadSnippet + '\\n\\n' + stylesheetSnippet).trim()\n}\n\n/** Handles elements external to the version picker that still need to be kept\n * up to date with the current version, e.g. switching images from dark to light. */\nconst externalElements = {\n _productHunt: /** @type {HTMLImageElement} */ (document.querySelector('#js-producthunt')),\n _stylesheet: /** @type {HTMLLinkElement} */ (document.querySelector('#js-stylesheet')),\n _removeStartupStylesheet() {\n const startupStylesheet = document.head.querySelector('#js-startup-stylesheet')\n if (startupStylesheet) document.head.removeChild(startupStylesheet)\n },\n _updateProductHunt(/** @type {Theme} */ theme) {\n this._productHunt.src = this._productHunt.src.replace(/dark|light/, theme)\n },\n _updateStylesheet(/** @type {FileName} */ fileName) {\n this._stylesheet.href = DEV_BASE + fileName\n },\n\n /** Sets up listener to remove startup version of water.css when right one loads, then updates */\n init(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) {\n this._stylesheet.addEventListener('load', this._removeStartupStylesheet)\n this.update(options, preferedTheme)\n },\n /** Takes current version + the user's prefered scheme and updates all external elements. */\n update(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) {\n const displayedTheme = options.isStandalone ? options.theme : preferedTheme || options.theme\n\n this._updateStylesheet(getFileName(options))\n this._updateProductHunt(displayedTheme)\n },\n}\n\n/**\n * Sets up a media query for the given color scheme and runs the callback on change.\n * @param {Theme} scheme\n * @param {(matches: boolean) => any} queryHandler\n */\nconst createColorSchemeListener = (scheme, queryHandler) => {\n const mediaQuery = w.matchMedia(`(prefers-color-scheme: ${scheme})`)\n mediaQuery.addListener(query => queryHandler(query.matches))\n queryHandler(mediaQuery.matches)\n}\n\nconst themeFromParams = queryParams.get('theme')\nconst initialVersionOptions = {\n theme: /** @type {Theme} */ (/dark|light/.test(themeFromParams) ? themeFromParams : 'dark'),\n isLegacy: queryParams.has('legacy') || !supportsCssVars,\n isStandalone: queryParams.has('standalone'),\n}\n\nnew w.Vue({\n el: '#installation',\n filters: {\n capitalize: (/** @type {string} */ str) => str.charAt(0).toUpperCase() + str.slice(1),\n },\n /** @type {VueData} */\n data: {\n versionOptions: initialVersionOptions,\n preferedColorScheme: null,\n copyStatus: null,\n },\n computed: {\n /** @returns {{ fileName: string, fileSize: string, fileSnippet: string }} */\n selectedVersion() {\n return {\n fileName: getFileName(this.versionOptions),\n fileSize: getFileSize(this.versionOptions).toFixed(2),\n fileSnippet: getFileSnippet(this.versionOptions),\n }\n },\n },\n created() {\n createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark'))\n createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light'))\n\n externalElements.init(this.versionOptions, this.preferedColorScheme)\n },\n methods: {\n copyToClipboard() {\n Promise.resolve()\n .then(() => w.clipboard.writeText(this.selectedVersion.fileSnippet))\n .then(() => (this.copyStatus = 'success'))\n .catch(() => (this.copyStatus = 'failed'))\n setTimeout(() => (this.copyStatus = null), 1000)\n },\n },\n watch: {\n preferedColorScheme(/** @type {Theme} */ nextScheme) {\n externalElements.update(this.versionOptions, nextScheme)\n },\n versionOptions: {\n deep: true,\n handler(/** @type {VersionOptions} */ nextOptions) {\n externalElements.update(nextOptions, this.preferedColorScheme)\n },\n },\n },\n})\n"]} \ No newline at end of file diff --git a/dist/docs/style.css b/dist/docs/style.css index 1ffb6f2..da1ea20 100755 --- a/dist/docs/style.css +++ b/dist/docs/style.css @@ -1,2 +1,2 @@ -html{scroll-behavior:smooth}#js-producthunt{margin-top:1rem}#installation{overflow:hidden}#installation header>h3{margin:1rem 2.5rem 1rem 0}#installation header button{position:relative;margin-left:auto;overflow:visible}#installation header button span{position:absolute;left:-2rem;display:inline-block;transform:scale(1.3)}#installation table{table-layout:fixed}#installation table th{border:none;vertical-align:top;width:35%}body>footer{padding-top:2rem;display:flex;justify-content:flex-end;align-items:flex-end}.row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.emoji{font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.translucent{opacity:.4}.v-enter,.v-leave-to{transform:scale(0)!important}.v-enter-active,.v-leave-active{transition:transform .22s cubic-bezier(.175,.885,.32,1.275)}[v-cloak]>*{display:none}[v-cloak]:after{content:"Version picker is loading..."} +html{scroll-behavior:smooth}#js-producthunt{margin-top:1rem}.version-select{overflow:hidden}.version-select__snippet h3{margin:1rem 2.5rem 1rem 0}.version-select__snippet__btn{position:relative;margin:0 2px 0 auto;overflow:visible}.version-select__snippet__btn span{position:absolute;left:-2rem;display:inline-block;transform:scale(1.3)}.version-select__options>label{white-space:pre}.version-select__options>label:first-child{margin-right:1rem}.version-select__options__additional>*{margin-top:1rem;display:inline-block}.version-select__options__additional summary{display:block;cursor:pointer;font-weight:600}.version-select__options__additional summary:focus{outline:none}.version-select__options__additional summary:focus span{text-decoration:underline}.version-select__info{table-layout:fixed}.version-select__info caption{text-align:left}.version-select__info th{border:none;vertical-align:top;width:35%}body>footer{padding-top:2rem;display:flex;justify-content:flex-end;align-items:flex-end}.row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.emoji{font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.translucent{opacity:.4}.tooltip{position:relative;cursor:help}.tooltip:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;border-width:0 0 1.5px;border-style:dotted}.v-enter,.v-leave-to{transform:scale(0)!important}.v-enter-active,.v-leave-active{transition:transform .22s cubic-bezier(.175,.885,.32,1.275)}[v-cloak]>*{display:none}[v-cloak]:after{content:"Version picker is loading..."} /*# sourceMappingURL=style.css.map */ diff --git a/dist/docs/style.css.map b/dist/docs/style.css.map index bd4b3c5..8f186ce 100644 --- a/dist/docs/style.css.map +++ b/dist/docs/style.css.map @@ -1 +1 @@ -{"version":3,"sources":["style.css"],"names":[],"mappings":"AAAA,KACE,sBACF,CAEA,gBACE,eACF,CAEA,cACE,eACF,CACA,wBACE,yBACF,CAEA,4BACE,iBAAkB,CAClB,gBAAiB,CACjB,gBACF,CACA,iCACE,iBAAkB,CAClB,UAAW,CACX,oBAAqB,CACrB,oBACF,CAEA,oBACE,kBACF,CACA,uBACE,WAAY,CACZ,kBAAmB,CACnB,SACF,CAEA,YACE,gBAAiB,CACjB,YAAa,CACb,wBAAyB,CACzB,oBACF,CAGA,KACE,YAAa,CACb,cAAe,CACf,kBAAmB,CACnB,6BACF,CAGA,OACE,+LAGF,CACA,aACE,UACF,CAGA,qBAEE,4BACF,CACA,gCAEE,2DACF,CACA,YACE,YACF,CACA,gBACE,sCACF","file":"style.css","sourcesContent":["html {\n scroll-behavior: smooth;\n}\n\n#js-producthunt {\n margin-top: 1rem;\n}\n\n#installation {\n overflow: hidden;\n}\n#installation header > h3 {\n margin: 1rem 2.5rem 1rem 0;\n}\n/* Make the ✔ / ❌ Emoji appear next to the button */\n#installation header button {\n position: relative;\n margin-left: auto;\n overflow: visible;\n}\n#installation header button span {\n position: absolute;\n left: -2rem;\n display: inline-block;\n transform: scale(1.3);\n}\n/* Fixed layout so columns don't jump when content changes */\n#installation table {\n table-layout: fixed;\n}\n#installation table th {\n border: none;\n vertical-align: top;\n width: 35%;\n}\n\nbody > footer {\n padding-top: 2rem;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n}\n\n/* Used for (Links / ProductHunt) and (Installation / Copy-Button) rows */\n.row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n}\n\n/* Use proper Emoji instead of plain Unicode chars */\n.emoji {\n font-family: 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', system-ui, -apple-system,\n BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans,\n Helvetica Neue, sans-serif;\n}\n.translucent {\n opacity: 0.4;\n}\n\n/* For the bounce transitions of code snippet and copy success Emoji */\n.v-enter,\n.v-leave-to {\n transform: scale(0) !important;\n}\n.v-enter-active,\n.v-leave-active {\n transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275);\n}\n[v-cloak] > * {\n display: none;\n}\n[v-cloak]::after {\n content: 'Version picker is loading...';\n}\n"]} \ No newline at end of file +{"version":3,"sources":["style.css"],"names":[],"mappings":"AAAA,KACE,sBACF,CAEA,gBACE,eACF,CAEA,gBACE,eACF,CAEA,4BACE,yBACF,CAEA,8BACE,iBAAkB,CAClB,mBAAoB,CACpB,gBACF,CACA,mCACE,iBAAkB,CAClB,UAAW,CACX,oBAAqB,CACrB,oBACF,CAEA,+BACE,eACF,CACA,2CACE,iBACF,CACA,uCACE,eAAgB,CAChB,oBACF,CACA,6CACE,aAAc,CACd,cAAe,CACf,eACF,CACA,mDACE,YACF,CACA,wDACE,yBACF,CAGA,sBACE,kBACF,CACA,8BACE,eACF,CACA,yBACE,WAAY,CACZ,kBAAmB,CACnB,SACF,CAEA,YACE,gBAAiB,CACjB,YAAa,CACb,wBAAyB,CACzB,oBACF,CAGA,KACE,YAAa,CACb,cAAe,CACf,kBAAmB,CACnB,6BACF,CAGA,OACE,+LAGF,CACA,aACE,UACF,CACA,SACE,iBAAkB,CAClB,WACF,CACA,eACE,UAAW,CACX,iBAAkB,CAClB,MAAO,CACP,WAAY,CACZ,UAAW,CACX,sBAAuB,CACvB,mBACF,CAGA,qBAEE,4BACF,CACA,gCAEE,2DACF,CACA,YACE,YACF,CACA,gBACE,sCACF","file":"style.css","sourcesContent":["html {\n scroll-behavior: smooth;\n}\n\n#js-producthunt {\n margin-top: 1rem;\n}\n\n.version-select {\n overflow: hidden;\n}\n\n.version-select__snippet h3 {\n margin: 1rem 2.5rem 1rem 0;\n}\n/* Make the ✔ / ❌ Emoji appear next to the button */\n.version-select__snippet__btn {\n position: relative;\n margin: 0 2px 0 auto;\n overflow: visible;\n}\n.version-select__snippet__btn span {\n position: absolute;\n left: -2rem;\n display: inline-block;\n transform: scale(1.3);\n}\n\n.version-select__options > label {\n white-space: pre;\n}\n.version-select__options > label:first-child {\n margin-right: 1rem;\n}\n.version-select__options__additional > * {\n margin-top: 1rem;\n display: inline-block;\n}\n.version-select__options__additional summary {\n display: block;\n cursor: pointer;\n font-weight: 600;\n}\n.version-select__options__additional summary:focus {\n outline: none;\n}\n.version-select__options__additional summary:focus span {\n text-decoration: underline;\n}\n\n/* Fixed layout so columns don't jump when content changes */\n.version-select__info {\n table-layout: fixed;\n}\n.version-select__info caption {\n text-align: left;\n}\n.version-select__info th {\n border: none;\n vertical-align: top;\n width: 35%;\n}\n\nbody > footer {\n padding-top: 2rem;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n}\n\n/* Used for (Links / ProductHunt) and (Installation / Copy-Button) rows */\n.row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n}\n\n/* Use proper Emoji instead of plain Unicode chars */\n.emoji {\n font-family: 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', system-ui, -apple-system,\n BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans,\n Helvetica Neue, sans-serif;\n}\n.translucent {\n opacity: 0.4;\n}\n.tooltip {\n position: relative;\n cursor: help;\n}\n.tooltip::after {\n content: '';\n position: absolute;\n left: 0;\n bottom: -4px;\n width: 100%;\n border-width: 0 0 1.5px;\n border-style: dotted;\n}\n\n/* For the bounce transitions of code snippet and copy success Emoji */\n.v-enter,\n.v-leave-to {\n transform: scale(0) !important;\n}\n.v-enter-active,\n.v-leave-active {\n transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275);\n}\n[v-cloak] > * {\n display: none;\n}\n[v-cloak]::after {\n content: 'Version picker is loading...';\n}\n"]} \ No newline at end of file From 758cd368418086ce070adc78ffebf8a2bf4e1d48 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 8 Jun 2019 21:31:00 +0200 Subject: [PATCH 020/131] feat: update so branch base matches current master --- README.md | 2 +- icon-dark.svg => assets/icon-dark.svg | 0 icon-light.svg => assets/icon-light.svg | 0 {docs => assets}/logo.png | Bin {docs => assets}/logo.svg | 0 {docs => assets}/screenshot.jpg | Bin docs/index.html | 4 +++- docs/script.js | 12 +++++++++--- gulpfile.js | 2 +- package.json | 1 + yarn.lock | 5 +++++ 11 files changed, 20 insertions(+), 6 deletions(-) rename icon-dark.svg => assets/icon-dark.svg (100%) rename icon-light.svg => assets/icon-light.svg (100%) rename {docs => assets}/logo.png (100%) rename {docs => assets}/logo.svg (100%) rename {docs => assets}/screenshot.jpg (100%) diff --git a/README.md b/README.md index cbbc0b6..3a0fa46 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Water.css -[![Water.css](docs/logo.svg)](https://watercss.netlify.com/) +[![Water.css](assets/logo.svg)](https://watercss.netlify.com/) _A just-add-css collection of styles to make simple websites just a little nicer_ diff --git a/icon-dark.svg b/assets/icon-dark.svg similarity index 100% rename from icon-dark.svg rename to assets/icon-dark.svg diff --git a/icon-light.svg b/assets/icon-light.svg similarity index 100% rename from icon-light.svg rename to assets/icon-light.svg diff --git a/docs/logo.png b/assets/logo.png similarity index 100% rename from docs/logo.png rename to assets/logo.png diff --git a/docs/logo.svg b/assets/logo.svg similarity index 100% rename from docs/logo.svg rename to assets/logo.svg diff --git a/docs/screenshot.jpg b/assets/screenshot.jpg similarity index 100% rename from docs/screenshot.jpg rename to assets/screenshot.jpg diff --git a/docs/index.html b/docs/index.html index c1ce0d5..a92a221 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,6 +3,7 @@ Water.css + @@ -15,6 +16,7 @@ + - + diff --git a/docs/script.js b/docs/script.js index 11887df..49262fe 100644 --- a/docs/script.js +++ b/docs/script.js @@ -2,10 +2,16 @@ /** @typedef {'dark' | 'light'} Theme */ /** @typedef {keyof typeof FILE_SIZES} FileName */ /** @typedef {'success' | 'failed'} CopyStatus */ -/** @typedef {{ Vue: typeof import('vue').default, clipboard: Clipboard }} Libraries */ /** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */ +/** + * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
-

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file +Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index 59021b9..26d4528 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},a=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},i=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,i=a({theme:t,isLegacy:n,isStandalone:r}),o='');return!n||r?o:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,i="dark"===t?"light":"dark",o=a({theme:i,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(a(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),d={theme:/dark|light/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:d,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:a(this.versionOptions),fileSize:(e=this.versionOptions,r[a(e)]||0).toFixed(2),fileSnippet:i(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",s={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},r=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},a=function(e){var t=e.theme,n=e.isLegacy,s=e.isStandalone,a=r({theme:t,isLegacy:n,isStandalone:s}),o='');return!n||s?o:(function(e){var t=e.theme,n=e.isLegacy,s=e.isStandalone,a="dark"===t?"light":"dark",o=r({theme:a,isLegacy:n,isStandalone:s});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(r(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:/dark|light/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:r(this.versionOptions),fileSize:(e=this.versionOptions,s[r(e)]||0).toFixed(2),fileSnippet:a(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"/icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"/icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"/icons/light-favicon-32x32.png"}}]); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index e501a07..2eb7c5f 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/** @typedef {{ Vue: typeof import('vue').default, clipboard: Clipboard }} Libraries */\n/** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */\n\n/** @typedef {Object} VueData State used by the version picker\n * @prop {VersionOptions} versionOptions\n * @prop {?CopyStatus} copyStatus\n * @prop {?Theme} preferedColorScheme\n */\n\n/** Reference to global window, but with properties for loaded libraries. */\nconst w = /** @type {Window & Libraries} */ (window)\nconst queryParams = new URLSearchParams(w.location.search)\nconst supportsCssVars = typeof CSS !== 'undefined' && CSS.supports('color', 'var(--clr)')\n\n/** The base URI from where the docs page loads the CSS files. */\nconst DEV_BASE = '../'\n/** The base URI from where instructions show to load the CSS files. */\nconst CDN_BASE = 'https://cdn.jsdelivr.net/gh/kognise/water.css/dist/'\n\n/** An object mapping the (minified + gzipped) fileSize in KB to a fileName. */\nconst FILE_SIZES = {\n 'dark.min.css': 1.4,\n 'dark.standalone.min.css': 1.31,\n 'dark-legacy.min.css': 0.177 + 1.16 + 1.15,\n 'dark-legacy.standalone.min.css': 1.16,\n 'light.min.css': 1.4,\n 'light.standalone.min.css': 1.3,\n 'light-legacy.min.css': 0.178 + 1.16 + 1.15,\n 'light-legacy.standalone.min.css': 1.15,\n}\n\n/** Takes in version options and returns the respective CSS file name. */\nconst getFileName = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const legacySuffix = isLegacy ? '-legacy' : ''\n const standaloneExt = isStandalone ? '.standalone' : ''\n return /** @type {FileName} */ (`${theme}${legacySuffix}${standaloneExt}.min.css`)\n}\n\n/** Takes in version options and returns the corresponding file size in KB. */\nconst getFileSize = (/** @type {VersionOptions} */ options) => FILE_SIZES[getFileName(options)] || 0\n\n/** Takes in version options and returns an HTML snippet that preloads the main stylesheet and\n * conditionally preloads the alternative stylesheet (if the alternative theme is active). */\nconst getFilePreloadSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const alternativeTheme = theme === 'dark' ? 'light' : 'dark'\n const alternativeFile = getFileName({ theme: alternativeTheme, isLegacy, isStandalone })\n\n return `\n\n\n`\n}\n\n/** Takes in version options and returns the code snippet instructing users how to load the file. */\nconst getFileSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStandalone }) => {\n const fileName = getFileName({ theme, isLegacy, isStandalone })\n const stylesheetSnippet = ``\n\n if (!isLegacy || isStandalone) return stylesheetSnippet\n\n const preloadSnippet = getFilePreloadSnippet({ theme, isLegacy, isStandalone: true })\n return (preloadSnippet + '\\n\\n' + stylesheetSnippet).trim()\n}\n\n/** Handles elements external to the version picker that still need to be kept\n * up to date with the current version, e.g. switching images from dark to light. */\nconst externalElements = {\n _productHunt: /** @type {HTMLImageElement} */ (document.querySelector('#js-producthunt')),\n _stylesheet: /** @type {HTMLLinkElement} */ (document.querySelector('#js-stylesheet')),\n _removeStartupStylesheet() {\n const startupStylesheet = document.head.querySelector('#js-startup-stylesheet')\n if (startupStylesheet) document.head.removeChild(startupStylesheet)\n },\n _updateProductHunt(/** @type {Theme} */ theme) {\n this._productHunt.src = this._productHunt.src.replace(/dark|light/, theme)\n },\n _updateStylesheet(/** @type {FileName} */ fileName) {\n this._stylesheet.href = DEV_BASE + fileName\n },\n\n /** Sets up listener to remove startup version of water.css when right one loads, then updates */\n init(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) {\n this._stylesheet.addEventListener('load', this._removeStartupStylesheet)\n this.update(options, preferedTheme)\n },\n /** Takes current version + the user's prefered scheme and updates all external elements. */\n update(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) {\n const displayedTheme = options.isStandalone ? options.theme : preferedTheme || options.theme\n\n this._updateStylesheet(getFileName(options))\n this._updateProductHunt(displayedTheme)\n },\n}\n\n/**\n * Sets up a media query for the given color scheme and runs the callback on change.\n * @param {Theme} scheme\n * @param {(matches: boolean) => any} queryHandler\n */\nconst createColorSchemeListener = (scheme, queryHandler) => {\n const mediaQuery = w.matchMedia(`(prefers-color-scheme: ${scheme})`)\n mediaQuery.addListener(query => queryHandler(query.matches))\n queryHandler(mediaQuery.matches)\n}\n\nconst themeFromParams = queryParams.get('theme')\nconst initialVersionOptions = {\n theme: /** @type {Theme} */ (/dark|light/.test(themeFromParams) ? themeFromParams : 'dark'),\n isLegacy: queryParams.has('legacy') || !supportsCssVars,\n isStandalone: queryParams.has('standalone'),\n}\n\nnew w.Vue({\n el: '#installation',\n filters: {\n capitalize: (/** @type {string} */ str) => str.charAt(0).toUpperCase() + str.slice(1),\n },\n /** @type {VueData} */\n data: {\n versionOptions: initialVersionOptions,\n preferedColorScheme: null,\n copyStatus: null,\n },\n computed: {\n /** @returns {{ fileName: string, fileSize: string, fileSnippet: string }} */\n selectedVersion() {\n return {\n fileName: getFileName(this.versionOptions),\n fileSize: getFileSize(this.versionOptions).toFixed(2),\n fileSnippet: getFileSnippet(this.versionOptions),\n }\n },\n },\n created() {\n createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark'))\n createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light'))\n\n externalElements.init(this.versionOptions, this.preferedColorScheme)\n },\n methods: {\n copyToClipboard() {\n Promise.resolve()\n .then(() => w.clipboard.writeText(this.selectedVersion.fileSnippet))\n .then(() => (this.copyStatus = 'success'))\n .catch(() => (this.copyStatus = 'failed'))\n setTimeout(() => (this.copyStatus = null), 1000)\n },\n },\n watch: {\n preferedColorScheme(/** @type {Theme} */ nextScheme) {\n externalElements.update(this.versionOptions, nextScheme)\n },\n versionOptions: {\n deep: true,\n handler(/** @type {VersionOptions} */ nextOptions) {\n externalElements.update(nextOptions, this.preferedColorScheme)\n },\n },\n },\n})\n"]} \ No newline at end of file +{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions","iconModeSwitcher","faviconModeSwitcher","element","dark"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index fac04c6..4fd7ccb 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",s={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},r=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},a=function(e){var t=e.theme,n=e.isLegacy,s=e.isStandalone,a=r({theme:t,isLegacy:n,isStandalone:s}),o='');return!n||s?o:(function(e){var t=e.theme,n=e.isLegacy,s=e.isStandalone,a="dark"===t?"light":"dark",o=r({theme:a,isLegacy:n,isStandalone:s});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(r(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:/^(dark|light)$/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:r(this.versionOptions),fileSize:(e=this.versionOptions,s[r(e)]||0).toFixed(2),fileSnippet:a(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",i={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},r=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},a=function(e){var t=e.theme,n=e.isLegacy,i=e.isStandalone,a=r({theme:t,isLegacy:n,isStandalone:i}),o='');return!n||i?o:(function(e){var t=e.theme,n=e.isLegacy,i=e.isStandalone,a="dark"===t?"light":"dark",o=r({theme:a,isLegacy:n,isStandalone:i});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=o;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(r(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:/^(dark|light)$/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:r(this.versionOptions),fileSize:(e=this.versionOptions,i[r(e)]||0).toFixed(2),fileSnippet:a(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index b29435d..009ab53 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions","iconModeSwitcher","faviconModeSwitcher","element","dark"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/** @typedef {{ theme: Theme, isLegacy: boolean, isStandalone: boolean }} VersionOptions */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index 4fd7ccb..8831bf4 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",i={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},r=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},a=function(e){var t=e.theme,n=e.isLegacy,i=e.isStandalone,a=r({theme:t,isLegacy:n,isStandalone:i}),o='');return!n||i?o:(function(e){var t=e.theme,n=e.isLegacy,i=e.isStandalone,a="dark"===t?"light":"dark",o=r({theme:a,isLegacy:n,isStandalone:i});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+o).trim()},o={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=o;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(r(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:/^(dark|light)$/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{selectedVersion:function(){return{fileName:r(this.versionOptions),fileSize:(e=this.versionOptions,i[r(e)]||0).toFixed(2),fileSnippet:a(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),o.init(this.versionOptions,this.preferedColorScheme)},methods:{copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){o.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){o.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},s=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=s({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=s({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(s(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:/^(dark|light)$/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:s(this.versionOptions),fileSize:(e=this.versionOptions,r[s(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index 009ab53..bd7b8af 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","that","removeEventListener","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions","iconModeSwitcher","faviconModeSwitcher","element","dark"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/**\n * @typedef {Object} VersionOptions Configurable options for water.css versions\n * @prop {Theme} theme\n * @prop {boolean} isLegacy\n * @prop {boolean} isStandalone\n */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index 8831bf4..b8568aa 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},s=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=s({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=s({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(s(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:/^(dark|light)$/.test(l)?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:s(this.versionOptions),fileSize:(e=this.versionOptions,r[s(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},s=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=s({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=s({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(s(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:s(this.versionOptions),fileSize:(e=this.versionOptions,r[s(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index bd7b8af..a78fe30 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","that","removeEventListener","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","test","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","isOverwritten","_this$versionOptions","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","getTooltipMessage","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions","iconModeSwitcher","faviconModeSwitcher","element","dark"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/**\n * @typedef {Object} VersionOptions Configurable options for water.css versions\n * @prop {Theme} theme\n * @prop {boolean} isLegacy\n * @prop {boolean} isStandalone\n */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
-

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file +Water.css

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index b8568aa..7451f76 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),i="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},s=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",i=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(i,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=s({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=s({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(s(e)),this._updateProductHunt(n)}},c=function(t,n){var i=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));i.addListener(function(e){return n(e.matches)}),n(i.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:s(this.versionOptions),fileSize:(e=this.versionOptions,r[s(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}),(0,e.faviconModeSwitcher.default)([{element:'link[rel="shortcut icon"]',href:{dark:"./icons/light-favicon.ico"}},{element:'link[rel="icon"][sizes="16x16"]',href:{dark:"./icons/light-favicon-16x16.png"}},{element:'link[rel="icon"][sizes="32x32"]',href:{dark:"./icons/light-favicon-32x32.png"}}]); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},i=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=i({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=i({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(i(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:i(this.versionOptions),fileSize:(e=this.versionOptions,r[i(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index a78fe30..fb0ccb4 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","that","removeEventListener","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","isOverwritten","_this$versionOptions","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","getTooltipMessage","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions","iconModeSwitcher","faviconModeSwitcher","element","dark"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/**\n * @typedef {Object} VersionOptions Configurable options for water.css versions\n * @prop {Theme} theme\n * @prop {boolean} isLegacy\n * @prop {boolean} isStandalone\n */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through ` @@ -240,7 +249,6 @@ > - diff --git a/docs/script.js b/docs/script.js index a9ca9ac..17b21c5 100644 --- a/docs/script.js +++ b/docs/script.js @@ -186,20 +186,3 @@ new w.Vue({ }, }, }) - -const iconModeSwitcher = w.faviconModeSwitcher.default -/* Use bright favicons when the browser is in dark mode. */ -iconModeSwitcher([ - { - element: 'link[rel="shortcut icon"]', - href: { dark: './icons/light-favicon.ico' }, - }, - { - element: 'link[rel="icon"][sizes="16x16"]', - href: { dark: './icons/light-favicon-16x16.png' }, - }, - { - element: 'link[rel="icon"][sizes="32x32"]', - href: { dark: './icons/light-favicon-32x32.png' }, - }, -]) From 72385eb66897091b9ae7327c26b7df351f9d08b0 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sun, 9 Jun 2019 15:30:02 +0200 Subject: [PATCH 030/131] fix: locate webmanifest in root so start_url works --- dist/docs/index.html | 2 +- {docs/icons => dist/docs}/site.webmanifest | 4 ++-- docs/index.html | 2 +- docs/site.webmanifest | 20 ++++++++++++++++++++ 4 files changed, 24 insertions(+), 4 deletions(-) rename {docs/icons => dist/docs}/site.webmanifest (75%) create mode 100755 docs/site.webmanifest diff --git a/dist/docs/index.html b/dist/docs/index.html index fdb98fb..f1d6a53 100644 --- a/dist/docs/index.html +++ b/dist/docs/index.html @@ -1,4 +1,4 @@ -Water.css - + - + diff --git a/docs/script.js b/docs/script.js index 17b21c5..3ce192e 100644 --- a/docs/script.js +++ b/docs/script.js @@ -27,7 +27,7 @@ const queryParams = new URLSearchParams(w.location.search) const supportsCssVars = typeof CSS !== 'undefined' && CSS.supports('color', 'var(--clr)') /** The base URI from where the docs page loads the CSS files. */ -const DEV_BASE = '../' +const DEV_BASE = './water.css/' /** The base URI from where instructions show to load the CSS files. */ const CDN_BASE = 'https://cdn.jsdelivr.net/gh/kognise/water.css/dist/' diff --git a/gulpfile.js b/gulpfile.js index ff7b749..386a414 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -112,6 +112,9 @@ function style() { .pipe(sourcemaps.write('.')) // Write the minified files .pipe(gulp.dest(paths.styles.dest)) + // Output files to docs directory so documentation site can use them + .pipe(gulp.dest(paths.docs.dest + '/water.css')) + // Final size report including gzipped sizes .pipe(sizereport({ gzip: true, total: false, title: 'SIZE REPORT' })) // Stream any changes to browserSync .pipe(browserSync.stream()) From 876ce1993cac2f83ac9bb472c12a1678fb8c51ce Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sun, 9 Jun 2019 16:17:44 +0200 Subject: [PATCH 032/131] chore: compile new version --- dist/docs/index.html | 2 +- dist/docs/script.js | 2 +- dist/docs/script.js.map | 2 +- dist/docs/water.css/dark-legacy.min.css | 2 ++ dist/docs/water.css/dark-legacy.min.css.map | 1 + dist/docs/water.css/dark-legacy.standalone.min.css | 2 ++ dist/docs/water.css/dark-legacy.standalone.min.css.map | 1 + dist/docs/water.css/dark.min.css | 2 ++ dist/docs/water.css/dark.min.css.map | 1 + dist/docs/water.css/dark.standalone.min.css | 2 ++ dist/docs/water.css/dark.standalone.min.css.map | 1 + dist/docs/water.css/light-legacy.min.css | 2 ++ dist/docs/water.css/light-legacy.min.css.map | 1 + dist/docs/water.css/light-legacy.standalone.min.css | 2 ++ dist/docs/water.css/light-legacy.standalone.min.css.map | 1 + dist/docs/water.css/light.min.css | 2 ++ dist/docs/water.css/light.min.css.map | 1 + dist/docs/water.css/light.standalone.min.css | 2 ++ dist/docs/water.css/light.standalone.min.css.map | 1 + 19 files changed, 27 insertions(+), 3 deletions(-) create mode 100755 dist/docs/water.css/dark-legacy.min.css create mode 100644 dist/docs/water.css/dark-legacy.min.css.map create mode 100755 dist/docs/water.css/dark-legacy.standalone.min.css create mode 100644 dist/docs/water.css/dark-legacy.standalone.min.css.map create mode 100644 dist/docs/water.css/dark.min.css create mode 100644 dist/docs/water.css/dark.min.css.map create mode 100755 dist/docs/water.css/dark.standalone.min.css create mode 100644 dist/docs/water.css/dark.standalone.min.css.map create mode 100755 dist/docs/water.css/light-legacy.min.css create mode 100644 dist/docs/water.css/light-legacy.min.css.map create mode 100755 dist/docs/water.css/light-legacy.standalone.min.css create mode 100644 dist/docs/water.css/light-legacy.standalone.min.css.map create mode 100644 dist/docs/water.css/light.min.css create mode 100644 dist/docs/water.css/light.min.css.map create mode 100755 dist/docs/water.css/light.standalone.min.css create mode 100644 dist/docs/water.css/light.standalone.min.css.map diff --git a/dist/docs/index.html b/dist/docs/index.html index f1d6a53..d7b1bc8 100644 --- a/dist/docs/index.html +++ b/dist/docs/index.html @@ -5,5 +5,5 @@ { element: '#icon-16', href: { dark: './icons/light-favicon-16x16.png' } }, { element: '#icon-32', href: { dark: './icons/light-favicon-32x32.png' } }, ]) -

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
+

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/script.js b/dist/docs/script.js index 7451f76..d759829 100644 --- a/dist/docs/script.js +++ b/dist/docs/script.js @@ -1,2 +1,2 @@ -"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},i=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=i({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=i({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="../"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(i(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:i(this.versionOptions),fileSize:(e=this.versionOptions,r[i(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}); +"use strict";var e=window,t=new URLSearchParams(e.location.search),n="undefined"!=typeof CSS&&CSS.supports("color","var(--clr)"),s="https://cdn.jsdelivr.net/gh/kognise/water.css/dist/",r={"dark.min.css":1.4,"dark.standalone.min.css":1.31,"dark-legacy.min.css":2.487,"dark-legacy.standalone.min.css":1.16,"light.min.css":1.4,"light.standalone.min.css":1.3,"light-legacy.min.css":.178+1.16+1.15,"light-legacy.standalone.min.css":1.15},i=function(e){var t=e.theme,n=e.isLegacy?"-legacy":"",s=e.isStandalone?".standalone":"";return"".concat(t).concat(n).concat(s,".min.css")},o=function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o=i({theme:t,isLegacy:n,isStandalone:r}),a='');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=i({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="./water.css/"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(i(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:i(this.versionOptions),fileSize:(e=this.versionOptions,r[i(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}); //# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map index fb0ccb4..16d0e7c 100644 --- a/dist/docs/script.js.map +++ b/dist/docs/script.js.map @@ -1 +1 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","that","removeEventListener","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","isOverwritten","_this$versionOptions","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","getTooltipMessage","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/**\n * @typedef {Object} VersionOptions Configurable options for water.css versions\n * @prop {Theme} theme\n * @prop {boolean} isLegacy\n * @prop {boolean} isStandalone\n */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through `

Water.css

Water.css is a drop-in collection of CSS styles to make simple websites like this just a little bit nicer.
Now you can write your simple static site with nice semantic html, and Water.css will manage the styling for you.

Installation

Paste this into the <head> of your HTML:

{{selectedVersion.fileSnippet}}

Options

Additional options

Version info

File {{ selectedVersion.fileName }}
Size (min+gzip) {{ selectedVersion.fileSize }}KB
Theme
Browser support
-

Goals

  • Responsive
  • Good code quality
  • Good browser support
  • Small size (< 2kb)
  • Beautiful
  • No classes

Is it responsive?

Heck yeah! It doesn't include any fancy styles so it's easily mobile responsive. Just add the famous responsive viewport tag and you'll be good to go!

In fact, try resizing this page. Everything flows super nicely as you'll see.

Element demos

This is supposed to be a demo page so we need more elements!

Form elements


Code

Below is some code, you can copy it with Ctrl-C. Did you know, alert(1) can show an alert in JavaScript!

// This logs a message to the console and check out the scrollbar.
console.log('Hello, world!')

Other

Here's a horizontal rule and image because I don't know where else to put them.

Example kitten

And here's a nicely marked up table!

Name Quantity Price
Godzilla 2 $299.99
Mozilla 10 $100,000.00
Quesadilla 1 $2.22

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis ullamcorper sem congue ac. Quisque id magna rhoncus, sodales massa vel, vestibulum elit. Duis ornare accumsan egestas. Proin maximus lacus interdum leo molestie convallis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut iaculis risus eu felis feugiat, eu mollis neque elementum. Donec interdum, nisl id dignissim iaculis, felis dui aliquet dui, non fermentum velit lectus ac quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. This is strong, this is normal, this is just bold, and this is emphasized! And heck, here's a link.

"The HTML blockquote Element (or HTML Block Quotation Element) indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation (see Notes for how to change it). A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> cite element."
MDN, "The Block Quotation element"
  • Unordered list item 1
  • Unordered list item 2
  • Unordered list item 3
  1. Ordered list item 1
  2. Ordered list item 2
  3. Ordered list item 3

Addresses are also styled to be awesome!

john.doe@example.com
778-330-2389
666-666-6666

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6
\ No newline at end of file diff --git a/dist/docs/logo.png b/dist/docs/logo.png deleted file mode 100644 index 37b80ced09a6ad8e10e4d41e613d60bda3f67539..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52957 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

!&u7_JRX4gac6AEE?>mv+IKo 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 diff --git a/dist/docs/logo.svg b/dist/docs/logo.svg deleted file mode 100644 index 67c43f4..0000000 --- a/dist/docs/logo.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/dist/docs/screenshot.jpg b/dist/docs/screenshot.jpg deleted file mode 100644 index 4d7610cc62856eaaf5442ff876a0673cdffb23c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110460 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

4MHM1`U8g4%4bdJ43r8vOg7iD<_)N_#uPR5 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

fk`%f3{3;YG6jLEr2P-w=YIr4gLveJ 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');return!n||r?a:(function(e){var t=e.theme,n=e.isLegacy,r=e.isStandalone,o="dark"===t?"light":"dark",a=i({theme:o,isLegacy:n,isStandalone:r});return'\n\x3c!-- Preload the required stylesheets (optional) --\x3e\n\n')}({theme:t,isLegacy:n,isStandalone:!0})+"\n\n"+a).trim()},a={_productHunt:document.querySelector("#js-producthunt"),_stylesheet:document.querySelector("#js-stylesheet"),_removeStartupStylesheet:function(){var e=document.head.querySelector("#js-startup-stylesheet");e&&document.head.removeChild(e);var t=a;t._stylesheet.removeEventListener("load",t._removeStartupStylesheet)},_updateProductHunt:function(e){this._productHunt.src=this._productHunt.src.replace(/dark|light/,e)},_updateStylesheet:function(e){this._stylesheet.href="./water.css/"+e},init:function(e,t){this._stylesheet.addEventListener("load",this._removeStartupStylesheet),this.update(e,t)},update:function(e,t){var n=e.isStandalone?e.theme:t||e.theme;this._updateStylesheet(i(e)),this._updateProductHunt(n)}},c=function(t,n){var s=e.matchMedia("(prefers-color-scheme: ".concat(t,")"));s.addListener(function(e){return n(e.matches)}),n(s.matches)},l=t.get("theme"),h={theme:"dark"===l||"light"===l?l:"dark",isLegacy:t.has("legacy")||!n,isStandalone:t.has("standalone")};new e.Vue({el:"#installation",filters:{capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},data:{versionOptions:h,preferedColorScheme:null,copyStatus:null},computed:{isOverwritten:function(){var e=this.versionOptions,t=e.isStandalone,n=e.theme;return!(t||!this.preferedColorScheme)&&n!==this.preferedColorScheme},selectedVersion:function(){return{fileName:i(this.versionOptions),fileSize:(e=this.versionOptions,r[i(e)]||0).toFixed(2),fileSnippet:o(this.versionOptions)};var e}},created:function(){var e=this;c("dark",function(t){return t&&(e.preferedColorScheme="dark")}),c("light",function(t){return t&&(e.preferedColorScheme="light")}),a.init(this.versionOptions,this.preferedColorScheme)},methods:{getTooltipMessage:function(e){return this.versionOptions.theme===e&&this.isOverwritten?"Your theme selection is currently overwritten by the theme setting on your device.":"Selected theme can be overwritten by theme setting on user's device."},copyToClipboard:function(){var t=this;Promise.resolve().then(function(){return e.clipboard.writeText(t.selectedVersion.fileSnippet)}).then(function(){return t.copyStatus="success"}).catch(function(){return t.copyStatus="failed"}),setTimeout(function(){return t.copyStatus=null},1e3)}},watch:{preferedColorScheme:function(e){a.update(this.versionOptions,e)},versionOptions:{deep:!0,handler:function(e){a.update(e,this.preferedColorScheme)}}}}); -//# sourceMappingURL=script.js.map diff --git a/dist/docs/script.js.map b/dist/docs/script.js.map deleted file mode 100644 index 16d0e7c..0000000 --- a/dist/docs/script.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["script.js"],"names":["w","window","queryParams","URLSearchParams","location","search","supportsCssVars","CSS","supports","CDN_BASE","FILE_SIZES","dark.min.css","dark.standalone.min.css","dark-legacy.min.css","dark-legacy.standalone.min.css","light.min.css","light.standalone.min.css","light-legacy.min.css","light-legacy.standalone.min.css","getFileName","_ref","theme","legacySuffix","isLegacy","standaloneExt","isStandalone","concat","getFileSnippet","_ref3","fileName","stylesheetSnippet","_ref2","alternativeTheme","alternativeFile","getFilePreloadSnippet","trim","externalElements","_productHunt","document","querySelector","_stylesheet","_removeStartupStylesheet","startupStylesheet","head","removeChild","that","removeEventListener","_updateProductHunt","this","src","replace","_updateStylesheet","href","init","options","preferedTheme","addEventListener","update","displayedTheme","createColorSchemeListener","scheme","queryHandler","mediaQuery","matchMedia","addListener","query","matches","themeFromParams","get","initialVersionOptions","has","Vue","el","filters","capitalize","str","charAt","toUpperCase","slice","data","versionOptions","preferedColorScheme","copyStatus","computed","isOverwritten","_this$versionOptions","selectedVersion","fileSize","toFixed","fileSnippet","created","_this","match","methods","getTooltipMessage","copyToClipboard","_this2","Promise","resolve","then","clipboard","writeText","setTimeout","watch","nextScheme","deep","handler","nextOptions"],"mappings":"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","file":"script.js","sourcesContent":["// @ts-check\n/** @typedef {'dark' | 'light'} Theme */\n/** @typedef {keyof typeof FILE_SIZES} FileName */\n/** @typedef {'success' | 'failed'} CopyStatus */\n/**\n * @typedef {Object} VersionOptions Configurable options for water.css versions\n * @prop {Theme} theme\n * @prop {boolean} isLegacy\n * @prop {boolean} isStandalone\n */\n/**\n * @typedef {Object} Libraries External packages exposed on `window` (loaded through ` + @@ -71,12 +62,20 @@ } + + + diff --git a/docs/script.js b/docs/script.js index 3ce192e..e1c664c 100644 --- a/docs/script.js +++ b/docs/script.js @@ -40,7 +40,7 @@ const FILE_SIZES = { 'light.min.css': 1.4, 'light.standalone.min.css': 1.3, 'light-legacy.min.css': 0.178 + 1.16 + 1.15, - 'light-legacy.standalone.min.css': 1.15, + 'light-legacy.standalone.min.css': 1.15 } /** Takes in version options and returns the respective CSS file name. */ @@ -81,31 +81,30 @@ const getFileSnippet = (/** @type {VersionOptions} */ { theme, isLegacy, isStand const externalElements = { _productHunt: /** @type {HTMLImageElement} */ (document.querySelector('#js-producthunt')), _stylesheet: /** @type {HTMLLinkElement} */ (document.querySelector('#js-stylesheet')), - _removeStartupStylesheet() { + _removeStartupStylesheet: () => { const startupStylesheet = document.head.querySelector('#js-startup-stylesheet') if (startupStylesheet) document.head.removeChild(startupStylesheet) - const that = externalElements - that._stylesheet.removeEventListener('load', that._removeStartupStylesheet) + externalElements._stylesheet.removeEventListener('load', externalElements._removeStartupStylesheet) }, - _updateProductHunt(/** @type {Theme} */ theme) { - this._productHunt.src = this._productHunt.src.replace(/dark|light/, theme) + _updateProductHunt: (/** @type {Theme} */ theme) => { + externalElements._productHunt.src = this._productHunt.src.replace(/dark|light/, theme) }, - _updateStylesheet(/** @type {FileName} */ fileName) { - this._stylesheet.href = DEV_BASE + fileName + _updateStylesheet: (/** @type {FileName} */ fileName) => { + externalElements._stylesheet.href = DEV_BASE + fileName }, /** Sets up listener to remove startup version of water.css when right one loads, then updates */ - init(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) { - this._stylesheet.addEventListener('load', this._removeStartupStylesheet) - this.update(options, preferedTheme) + init: (/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) => { + externalElements._stylesheet.addEventListener('load', externalElements._removeStartupStylesheet) + externalElements.update(options, preferedTheme) }, /** Takes current version + the user's prefered scheme and updates all external elements. */ - update(/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) { + update: (/** @type {VersionOptions} */ options, /** @type {?Theme} */ preferedTheme) => { const displayedTheme = options.isStandalone ? options.theme : preferedTheme || options.theme - this._updateStylesheet(getFileName(options)) - this._updateProductHunt(displayedTheme) - }, + externalElements._updateStylesheet(getFileName(options)) + externalElements._updateProductHunt(displayedTheme) + } } /** @@ -124,65 +123,65 @@ const themeFromParams = queryParams.get('theme') const initialVersionOptions = { theme: themeFromParams === 'dark' || themeFromParams === 'light' ? themeFromParams : 'dark', isLegacy: queryParams.has('legacy') || !supportsCssVars, - isStandalone: queryParams.has('standalone'), + isStandalone: queryParams.has('standalone') } -new w.Vue({ +new w.Vue({ // eslint-disable-line no-new el: '#installation', filters: { - capitalize: (/** @type {string} */ str) => str.charAt(0).toUpperCase() + str.slice(1), + capitalize: (/** @type {string} */ str) => str.charAt(0).toUpperCase() + str.slice(1) }, /** @type {VueData} */ data: { versionOptions: initialVersionOptions, preferedColorScheme: null, - copyStatus: null, + copyStatus: null }, computed: { /** @returns {boolean} */ - isOverwritten() { + isOverwritten () { const { isStandalone, theme } = this.versionOptions if (isStandalone || !this.preferedColorScheme) return false return theme !== this.preferedColorScheme }, /** @returns {{ fileName: string, fileSize: string, fileSnippet: string }} */ - selectedVersion() { + selectedVersion () { return { fileName: getFileName(this.versionOptions), fileSize: getFileSize(this.versionOptions).toFixed(2), - fileSnippet: getFileSnippet(this.versionOptions), + fileSnippet: getFileSnippet(this.versionOptions) } - }, + } }, - created() { + created () { createColorSchemeListener('dark', match => match && (this.preferedColorScheme = 'dark')) createColorSchemeListener('light', match => match && (this.preferedColorScheme = 'light')) externalElements.init(this.versionOptions, this.preferedColorScheme) }, methods: { - getTooltipMessage(/** @type {Theme} */ theme) { + getTooltipMessage (/** @type {Theme} */ theme) { if (this.versionOptions.theme === theme && this.isOverwritten) { return 'Your theme selection is currently overwritten by the theme setting on your device.' } else return "Selected theme can be overwritten by theme setting on user's device." }, - copyToClipboard() { + copyToClipboard () { Promise.resolve() .then(() => w.clipboard.writeText(this.selectedVersion.fileSnippet)) .then(() => (this.copyStatus = 'success')) .catch(() => (this.copyStatus = 'failed')) setTimeout(() => (this.copyStatus = null), 1000) - }, + } }, watch: { - preferedColorScheme(/** @type {Theme} */ nextScheme) { + preferedColorScheme (/** @type {Theme} */ nextScheme) { externalElements.update(this.versionOptions, nextScheme) }, versionOptions: { deep: true, - handler(/** @type {VersionOptions} */ nextOptions) { + handler (/** @type {VersionOptions} */ nextOptions) { externalElements.update(nextOptions, this.preferedColorScheme) - }, - }, - }, + } + } + } }) diff --git a/gulpfile.js b/gulpfile.js index 49a09eb..ff881fa 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -29,12 +29,12 @@ const paths = { } // https://stackoverflow.com/a/20732091 -function humanFileSize(size) { - var i = Math.floor(Math.log(size) / Math.log(1024)) +const humanFileSize = (size) => { + const i = Math.floor(Math.log(size) / Math.log(1024)) return (size / Math.pow(1024, i)).toFixed(2) * 1 + ' ' + ['B', 'kB', 'MB', 'GB', 'TB'][i] } -function formatByteMessage(source, data) { +const formatByteMessage = (source, data) => { const prettyStartSize = humanFileSize(data.startSize) let message = '' @@ -52,14 +52,14 @@ function formatByteMessage(source, data) { return chalk`{cyan ${source.padStart(12, ' ')}}: {bold ${data.fileName}} ${message}` } -function style() { - const isLegacy = path => /legacy/.test(path) +const style = () => { + const isLegacy = (path) => /legacy/.test(path) const excludeModern = filter(file => isLegacy(file.path), { restore: true }) const excludeLegacy = filter(file => !isLegacy(file.path), { restore: true }) // Don't inline minified versions, so builds can lazily import them at runtime - const cssImportOptions = { filter: path => !/\.min/.test(path) } + const cssImportOptions = { filter: (path) => !/\.min/.test(path) } return ( gulp @@ -124,7 +124,7 @@ function style() { ) } -function docs() { +const docs = () => { const htmlOnly = filter('**/*.html', { restore: true }) const jsOnly = filter('**/*.js', { restore: true }) const cssOnly = filter('**/*.css', { restore: true }) @@ -158,7 +158,11 @@ function docs() { ) } -const browserReload = done => (browserSync.reload(), done()) +const browserReload = (done) => { + browserSync.reload() + return done() +} + const startDevServer = () => { browserSync.init({ server: { baseDir: './dist' }, startPath: 'docs/index.html' }) diff --git a/package.json b/package.json index cf59c43..4b76e69 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,10 @@ "main": "index.js", "scripts": { "build": "gulp build", - "dev": "gulp watch" + "dev": "gulp watch", + "lint:js": "eslint **/*.js **/*.html gulpfile.js --fix", + "lint:css": "stylelint src/**/*.css --fix", + "lint": "yarn lint:js && yarn lint:css" }, "repository": { "type": "git", @@ -32,6 +35,15 @@ "chalk": "^2.4.2", "clipboard-polyfill": "^2.8.1", "cssnano": "^4.1.10", + "eslint": "^7.1.0", + "eslint-config-standard": "^14.1.1", + "eslint-plugin-html": "^6.0.2", + "eslint-plugin-import": "^2.20.2", + "eslint-plugin-markdown": "^2.0.0-alpha.0", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-prefer-arrow": "^1.2.1", + "eslint-plugin-promise": "^4.2.1", + "eslint-plugin-standard": "^4.0.1", "favicon-mode-switcher": "^1.0.4", "gulp": "^4.0.0", "gulp-babel": "^8.0.0", @@ -50,6 +62,8 @@ "postcss-import": "^12.0.1", "postcss-inline-svg": "^4.1.0", "posthtml-include": "^1.2.0", + "stylelint": "^13.5.0", + "stylelint-config-standard": "^20.0.0", "vue": "^2.6.10" }, "browserslist": { diff --git a/src/builds/dark.css b/src/builds/dark.css index d0547fd..3805bd9 100644 --- a/src/builds/dark.css +++ b/src/builds/dark.css @@ -9,5 +9,4 @@ @import '../variables-dark.css'; @import '../variables-light.css' (prefers-color-scheme: light); - @import '../parts/_core.css'; diff --git a/src/builds/light.css b/src/builds/light.css index 21633d1..41dac0f 100644 --- a/src/builds/light.css +++ b/src/builds/light.css @@ -9,6 +9,4 @@ @import '../variables-light.css'; @import '../variables-dark.css' (prefers-color-scheme: dark); - - -@import '../parts/_core.css'; \ No newline at end of file +@import '../parts/_core.css'; diff --git a/src/parts/_base.css b/src/parts/_base.css index 8dee538..88682eb 100644 --- a/src/parts/_base.css +++ b/src/parts/_base.css @@ -1,22 +1,22 @@ body { font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; line-height: 1.4; - max-width: 800px; margin: 20px auto; padding: 0 10px; word-wrap: break-word; - color: var(--text-main); background: var(--background-body); - text-rendering: optimizeLegibility; } -button, input, textarea { - transition: background-color var(--animation-duration) linear, - border-color var(--animation-duration) linear, - color var(--animation-duration) linear, - box-shadow var(--animation-duration) linear, - transform var(--animation-duration) ease; +button, +input, +textarea { + transition: + background-color var(--animation-duration) linear, + border-color var(--animation-duration) linear, + color var(--animation-duration) linear, + box-shadow var(--animation-duration) linear, + transform var(--animation-duration) ease; } diff --git a/src/parts/_code.css b/src/parts/_code.css index 565221e..166fe1d 100644 --- a/src/parts/_code.css +++ b/src/parts/_code.css @@ -1,5 +1,7 @@ -code, samp, time { - background: var(--background); +code, +samp, +time { + background: var(--background); color: var(--code); padding: 2.5px 5px; border-radius: 6px; @@ -24,4 +26,4 @@ kbd { border-radius: 2px; color: var(--text-main); padding: 2px 4px 2px 4px; -} \ No newline at end of file +} diff --git a/src/parts/_core.css b/src/parts/_core.css index d10b131..76f0428 100644 --- a/src/parts/_core.css +++ b/src/parts/_core.css @@ -4,4 +4,4 @@ @import '_range.css'; @import '_links.css'; @import '_code.css'; -@import '_misc.css'; \ No newline at end of file +@import '_misc.css'; diff --git a/src/parts/_forms.css b/src/parts/_forms.css index 83dc23f..1cff40d 100644 --- a/src/parts/_forms.css +++ b/src/parts/_forms.css @@ -1,4 +1,5 @@ -button, select, +button, +select, input[type='submit'], input[type='button'], input[type='checkbox'], @@ -11,25 +12,6 @@ select { display: block; } -input, -button, -textarea, -select { - color: var(--form-text); - background-color: var(--background); - - font-family: inherit; - font-size: inherit; - - margin-right: 6px; - margin-bottom: 6px; - padding: 10px; - - border: none; - border-radius: 6px; - outline: none; -} - input:not([type='checkbox']):not([type='radio']), input[type='range'], select, @@ -112,4 +94,4 @@ fieldset { legend { font-size: 0.9em; font-weight: 600; -} \ No newline at end of file +} diff --git a/src/parts/_links.css b/src/parts/_links.css index cc115f1..24fd086 100644 --- a/src/parts/_links.css +++ b/src/parts/_links.css @@ -5,4 +5,4 @@ a { a:hover { text-decoration: underline; -} \ No newline at end of file +} diff --git a/src/parts/_misc.css b/src/parts/_misc.css index 02c28c9..44e84ef 100644 --- a/src/parts/_misc.css +++ b/src/parts/_misc.css @@ -98,4 +98,4 @@ footer { padding-top: 10px; font-size: 0.8em; color: var(--text-muted); -} \ No newline at end of file +} diff --git a/src/parts/_range.css b/src/parts/_range.css index 1091291..9a903fa 100644 --- a/src/parts/_range.css +++ b/src/parts/_range.css @@ -17,7 +17,7 @@ input[type='range']::-webkit-slider-runnable-track { } input[type='range']::-webkit-slider-thumb { - box-shadow: 0px 1px 1px #000000, 0px 0px 1px #0d0d0d; + box-shadow: 0 1px 1px #000, 0 0 1px #0d0d0d; height: 20px; width: 20px; border-radius: 50%; @@ -39,7 +39,7 @@ input[type='range']::-moz-range-track { } input[type='range']::-moz-range-thumb { - box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d; + box-shadow: 1px 1px 1px #000, 0 0 1px #0d0d0d; height: 20px; width: 20px; border-radius: 50%; @@ -59,19 +59,19 @@ input[type='range']::-ms-fill-lower { background: var(--background); border: 0.2px solid #010101; border-radius: 3px; - box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d; + box-shadow: 1px 1px 1px #000, 0 0 1px #0d0d0d; } input[type='range']::-ms-fill-upper { background: var(--background); border: 0.2px solid #010101; border-radius: 3px; - box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d; + box-shadow: 1px 1px 1px #000, 0 0 1px #0d0d0d; } input[type='range']::-ms-thumb { - box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d; - border: 1px solid #000000; + box-shadow: 1px 1px 1px #000, 0 0 1px #0d0d0d; + border: 1px solid #000; height: 20px; width: 20px; border-radius: 50%; @@ -84,4 +84,4 @@ input[type='range']:focus::-ms-fill-lower { input[type='range']:focus::-ms-fill-upper { background: var(--background); -} \ No newline at end of file +} diff --git a/src/parts/_typography.css b/src/parts/_typography.css index 74f63d1..2988935 100644 --- a/src/parts/_typography.css +++ b/src/parts/_typography.css @@ -35,16 +35,17 @@ th { } q::before { - content: none; + content: none; } q::after { - content: none; + content: none; } -blockquote, q { +blockquote, +q { border-left: 4px solid var(--focus); - margin: 1.5em 0em; + margin: 1.5em 0; padding: 0.5em 1em; font-style: italic; } @@ -77,6 +78,6 @@ a[href^='sms\:']::before { mark { background-color: var(--highlight); border-radius: 2px; - padding: 0px 2px 0px 2px; - color: #000000; + padding: 0 2px 0 2px; + color: #000; } diff --git a/yarn.lock b/yarn.lock index 5e65bdf..2b1c087 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,7 +2,7 @@ # yarn lockfile v1 -"@babel/code-frame@^7.8.3": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== @@ -18,7 +18,7 @@ invariant "^2.2.4" semver "^5.5.0" -"@babel/core@^7.4.5": +"@babel/core@>=7.9.0", "@babel/core@^7.4.5": version "7.10.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.0.tgz#a6fe5db77ebfb61e0da6c5c36aaf14aab07b2b44" integrity sha512-FGgV2XyPoVtYDvbFXlukEWt13Afka4mBRQ2CoTsHxpgVGO6XfgtT6eI+WyjQRGGTL90IDkIVmme8riFCLZ8lUw== @@ -813,11 +813,72 @@ normalize-path "^2.0.1" through2 "^2.0.3" +"@nodelib/fs.scandir@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" + integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== + dependencies: + "@nodelib/fs.stat" "2.0.3" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" + integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" + integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== + dependencies: + "@nodelib/fs.scandir" "2.1.3" + fastq "^1.6.0" + +"@stylelint/postcss-css-in-js@^0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.1.tgz#41e5e7660f73d88227610e18c6ebb262d56ac125" + integrity sha512-UMf2Rni3JGKi3ZwYRGMYJ5ipOA5ENJSKMtYA/pE1ZLURwdh7B5+z2r73RmWvub+N0UuH1Lo+TGfCgYwPvqpXNw== + dependencies: + "@babel/core" ">=7.9.0" + +"@stylelint/postcss-markdown@^0.36.1": + version "0.36.1" + resolved "https://registry.yarnpkg.com/@stylelint/postcss-markdown/-/postcss-markdown-0.36.1.tgz#829b87e6c0f108014533d9d7b987dc9efb6632e8" + integrity sha512-iDxMBWk9nB2BPi1VFQ+Dc5+XpvODBHw2n3tYpaBZuEAFQlbtF9If0Qh5LTTwSi/XwdbJ2jt+0dis3i8omyggpw== + dependencies: + remark "^12.0.0" + unist-util-find-all-after "^3.0.1" + +"@types/color-name@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" + integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + +"@types/minimist@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.0.tgz#69a23a3ad29caf0097f06eda59b361ee2f0639f6" + integrity sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY= + +"@types/normalize-package-data@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" + integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + "@types/q@^1.5.1": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== +"@types/unist@^2.0.0", "@types/unist@^2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" + integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== + "@ungap/url-search-params@^0.1.2": version "0.1.4" resolved "https://registry.yarnpkg.com/@ungap/url-search-params/-/url-search-params-0.1.4.tgz#727e9b4c811beaa6be6d7e4cc0516663c884cfd0" @@ -844,6 +905,11 @@ acorn-globals@^4.3.0: acorn "^6.0.1" acorn-walk "^6.0.1" +acorn-jsx@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" + integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== + acorn-walk@^6.0.1: version "6.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" @@ -859,12 +925,17 @@ acorn@^6.0.1, acorn@^6.0.4: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== +acorn@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.2.0.tgz#17ea7e40d7c8640ff54a694c889c26f31704effe" + integrity sha512-apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ== + after@0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= -ajv@^6.5.5: +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: version "6.12.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== @@ -893,6 +964,13 @@ ansi-cyan@^0.1.1: dependencies: ansi-wrap "0.1.0" +ansi-escapes@^4.2.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" + integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== + dependencies: + type-fest "^0.11.0" + ansi-gray@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" @@ -917,6 +995,11 @@ ansi-regex@^4.1.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" @@ -929,6 +1012,14 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +ansi-styles@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" + integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + dependencies: + "@types/color-name" "^1.1.1" + color-convert "^2.0.1" + ansi-wrap@0.1.0, ansi-wrap@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" @@ -1018,6 +1109,15 @@ array-equal@^1.0.0: resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= +array-includes@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" + integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0" + is-string "^1.0.5" + array-initial@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" @@ -1059,6 +1159,11 @@ array-union@^1.0.1: dependencies: array-uniq "^1.0.1" +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + array-uniq@^1.0.1, array-uniq@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -1069,16 +1174,29 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.flat@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b" + integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + arraybuffer.slice@~0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog== -arrify@^1.0.0: +arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + asn1@~0.2.3: version "0.2.4" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" @@ -1096,6 +1214,11 @@ assign-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== + async-done@^1.2.0, async-done@^1.2.2: version "1.3.2" resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" @@ -1143,7 +1266,7 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -autoprefixer@^9.5.1: +autoprefixer@^9.5.1, autoprefixer@^9.7.6: version "9.8.0" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.0.tgz#68e2d2bef7ba4c3a65436f662d0a56a741e56511" integrity sha512-D96ZiIHXbDmU02dBaemyAg53ez+6F5yZmapmgKcjm35yEe1uVDYI8hGW3VYoGRaG290ZFf91YxHrR518vC0u/A== @@ -1201,6 +1324,11 @@ backo2@1.0.2: resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= +bail@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" + integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" @@ -1299,6 +1427,13 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -1436,16 +1571,35 @@ callsites@^2.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase-keys@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== + dependencies: + camelcase "^5.3.1" + map-obj "^4.0.0" + quick-lru "^4.0.1" + camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= -camelcase@^5.0.0: +camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== +camelcase@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" + integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== + caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -1466,6 +1620,11 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +ccount@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.5.tgz#ac82a944905a65ce204eb03023157edf29425c17" + integrity sha512-MOli1W+nfbPLlKEhInaxhRdp7KVLFxLN5ykwzHgLsLI3H3gs5jjFAK4Eoj3OzzcxCtumDaI8onoVDeQyWaNTkw== + chalk@^1.0.0, chalk@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" @@ -1477,7 +1636,7 @@ chalk@^1.0.0, chalk@^1.1.1: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -1486,6 +1645,47 @@ chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.0.0.tgz#6e98081ed2d17faab615eb52ac66ec1fe6209e72" + integrity sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +character-entities-html4@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.4.tgz#0e64b0a3753ddbf1fdc044c5fd01d0199a02e125" + integrity sha512-HRcDxZuZqMx3/a+qrzxdBKBPUpxWEq9xw2OPZ3a/174ihfrQKVsFhqtthBInFy1zZ9GgZyFXOatNujm8M+El3g== + +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + chokidar@^2.0.0, chokidar@^2.0.4: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -1515,6 +1715,13 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + cli-table@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" @@ -1522,6 +1729,11 @@ cli-table@^0.3.1: dependencies: colors "1.0.3" +cli-width@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" + integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== + clipboard-polyfill@^2.8.1: version "2.8.6" resolved "https://registry.yarnpkg.com/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz#19d27283f11f2933bb18737263b98b8c95b5a0f7" @@ -1550,6 +1762,13 @@ clone-buffer@^1.0.0: resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" integrity sha1-4+JbIHrE5wGvch4staFnksrD3Fg= +clone-regexp@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz#7d65e00885cd8796405c35a737e7a86b7429e36f" + integrity sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q== + dependencies: + is-regexp "^2.0.0" + clone-stats@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" @@ -1593,6 +1812,11 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= +collapse-white-space@^1.0.2: + version "1.0.6" + resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" + integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== + collection-map@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" @@ -1617,12 +1841,19 @@ color-convert@^1.9.0, color-convert@^1.9.1: dependencies: color-name "1.1.3" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= -color-name@^1.0.0: +color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== @@ -1715,6 +1946,11 @@ connect@3.6.6: parseurl "~1.3.2" utils-merge "1.0.1" +contains-path@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" + integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= + convert-source-map@1.X, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" @@ -1776,6 +2012,26 @@ cosmiconfig@^5.0.0: js-yaml "^3.13.1" parse-json "^4.0.0" +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + +cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + css-color-names@0.0.4, css-color-names@^0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" @@ -1965,7 +2221,7 @@ debug-fabulous@1.X: memoizee "0.4.X" object-assign "4.X" -debug@2.6.9, debug@^2.2.0, debug@^2.3.3: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -1979,7 +2235,7 @@ debug@3.X: dependencies: ms "^2.1.1" -debug@4.1.1, debug@^4.1.0, debug@~4.1.0: +debug@4.1.1, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@~4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== @@ -1993,7 +2249,15 @@ debug@=3.1.0, debug@~3.1.0: dependencies: ms "2.0.0" -decamelize@^1.1.1, decamelize@^1.2.0: +decamelize-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" + integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -2003,7 +2267,7 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= @@ -2079,7 +2343,29 @@ dev-ip@^1.0.1: resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" integrity sha1-p2o+0YVb56ASu4rBbLgPPADcKPA= -dom-serializer@0: +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" + integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= + dependencies: + esutils "^2.0.2" + isarray "^1.0.0" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +dom-serializer@0, dom-serializer@^0.2.1: version "0.2.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== @@ -2119,6 +2405,13 @@ domhandler@^2.3.0: dependencies: domelementtype "1" +domhandler@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9" + integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw== + dependencies: + domelementtype "^2.0.1" + domutils@^1.5.1, domutils@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" @@ -2127,6 +2420,15 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" +domutils@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.1.0.tgz#7ade3201af43703fde154952e3a868eb4b635f16" + integrity sha512-CD9M0Dm1iaHfQ1R/TI+z3/JWp/pgub0j4jIQKH89ARR4ATAV2nbaOQS5XxU9maJP5jHaPdDDQSEHuE2UmpUTKg== + dependencies: + dom-serializer "^0.2.1" + domelementtype "^2.0.1" + domhandler "^3.0.0" + dot-prop@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" @@ -2201,6 +2503,11 @@ emoji-regex@^7.0.1: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + encodeurl@~1.0.1, encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -2298,7 +2605,7 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: +es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: version "1.17.5" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== @@ -2382,16 +2689,195 @@ escodegen@^1.11.0: optionalDependencies: source-map "~0.6.1" +eslint-config-standard@^14.1.1: + version "14.1.1" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz#830a8e44e7aef7de67464979ad06b406026c56ea" + integrity sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg== + +eslint-import-resolver-node@^0.3.2: + version "0.3.3" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz#dbaa52b6b2816b50bc6711af75422de808e98404" + integrity sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg== + dependencies: + debug "^2.6.9" + resolve "^1.13.1" + +eslint-module-utils@^2.4.1: + version "2.6.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" + integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== + dependencies: + debug "^2.6.9" + pkg-dir "^2.0.0" + +eslint-plugin-es@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-html@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-6.0.2.tgz#fcbd293e218d03dd72c147fc999d185c6f5989fe" + integrity sha512-Ik/z32UteKLo8GEfwNqVKcJ/WOz/be4h8N5mbMmxxnZ+9aL9XczOXQFz/bGu+nAGVoRg8CflldxJhONFpqlrxw== + dependencies: + htmlparser2 "^4.1.0" + +eslint-plugin-import@^2.20.2: + version "2.20.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz#91fc3807ce08be4837141272c8b99073906e588d" + integrity sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg== + dependencies: + array-includes "^3.0.3" + array.prototype.flat "^1.2.1" + contains-path "^0.1.0" + debug "^2.6.9" + doctrine "1.5.0" + eslint-import-resolver-node "^0.3.2" + eslint-module-utils "^2.4.1" + has "^1.0.3" + minimatch "^3.0.4" + object.values "^1.1.0" + read-pkg-up "^2.0.0" + resolve "^1.12.0" + +eslint-plugin-markdown@^2.0.0-alpha.0: + version "2.0.0-alpha.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-markdown/-/eslint-plugin-markdown-2.0.0-alpha.0.tgz#4316c3dc32e37cefbae6cd6b6676344a2982e5e8" + integrity sha512-NIp6WBiGDRWkGuuG1s5biJ55s4E+B5wbfrIlf3m8cLeTFD2ijkxrP1l3LXx0BexnL7XL2Hz5Ce1e2nOazdaTHg== + dependencies: + remark-parse "^5.0.0" + unified "^6.1.2" + +eslint-plugin-node@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== + dependencies: + eslint-plugin-es "^3.0.0" + eslint-utils "^2.0.0" + ignore "^5.1.1" + minimatch "^3.0.4" + resolve "^1.10.1" + semver "^6.1.0" + +eslint-plugin-prefer-arrow@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prefer-arrow/-/eslint-plugin-prefer-arrow-1.2.1.tgz#9e2943cdae4476e41f94f50dd7a250f267db6865" + integrity sha512-CPAvdTGG0YbFAJrUKdRBrOJ0X1I7jTtF5VIM4m2Bw1/A2jrhfUeUAcPy4pAEB5DNaUuDqc59f3pKTeiVeamS1A== + +eslint-plugin-promise@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a" + integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw== + +eslint-plugin-standard@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz#ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4" + integrity sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ== + +eslint-scope@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" + integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd" + integrity sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" + integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== + +eslint@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.1.0.tgz#d9a1df25e5b7859b0a3d86bb05f0940ab676a851" + integrity sha512-DfS3b8iHMK5z/YLSme8K5cge168I8j8o1uiVmFCgnnjxZQbCGyraF8bMl7Ju4yfBmCuxD7shOF7eqGkcuIHfsA== + dependencies: + "@babel/code-frame" "^7.0.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + eslint-scope "^5.0.0" + eslint-utils "^2.0.0" + eslint-visitor-keys "^1.1.0" + espree "^7.0.0" + esquery "^1.2.0" + esutils "^2.0.2" + file-entry-cache "^5.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + inquirer "^7.0.0" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash "^4.17.14" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.0.0.tgz#8a7a60f218e69f120a842dc24c5a88aa7748a74e" + integrity sha512-/r2XEx5Mw4pgKdyb7GNLQNsu++asx/dltf/CI8RFi9oGHxmQFgvLbc5Op4U6i8Oaj+kdslhJtVlEZeAqH5qOTw== + dependencies: + acorn "^7.1.1" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.1.0" + esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -estraverse@^4.2.0: +esquery@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" + integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" + integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== + dependencies: + estraverse "^4.1.0" + +estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== +estraverse@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" + integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -2415,6 +2901,13 @@ eventemitter3@1.x.x: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" integrity sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg= +execall@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz#16a06b5fe5099df7d00be5d9c06eecded1663b45" + integrity sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow== + dependencies: + clone-regexp "^2.1.0" + expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" @@ -2469,6 +2962,15 @@ extend@^3.0.0, extend@^3.0.1, extend@~3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + extglob@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" @@ -2508,16 +3010,35 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== +fast-glob@^3.1.1: + version "3.2.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.2.tgz#ade1a9d91148965d4bf7c51f72e1ca662d32e63d" + integrity sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= +fastq@^1.6.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" + integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== + dependencies: + reusify "^1.0.4" + favicon-mode-switcher@^1.0.4: version "1.1.0" resolved "https://registry.yarnpkg.com/favicon-mode-switcher/-/favicon-mode-switcher-1.1.0.tgz#b06ec7526f25fdf0b744b456f16b4c9315b42fed" @@ -2528,6 +3049,20 @@ fclone@^1.0.11: resolved "https://registry.yarnpkg.com/fclone/-/fclone-1.0.11.tgz#10e85da38bfea7fc599341c296ee1d77266ee640" integrity sha1-EOhdo4v+p/xZk0HClu4ddyZu5kA= +figures@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== + dependencies: + escape-string-regexp "^1.0.5" + +file-entry-cache@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" + integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== + dependencies: + flat-cache "^2.0.1" + file-uri-to-path@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" @@ -2548,6 +3083,13 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + finalhandler@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" @@ -2569,7 +3111,7 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.1.0: +find-up@^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" integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= @@ -2583,6 +3125,14 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + findup-sync@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" @@ -2619,6 +3169,20 @@ flagged-respawn@^1.0.0: resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== +flat-cache@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" + integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== + dependencies: + flatted "^2.0.0" + rimraf "2.6.3" + write "1.0.3" + +flatted@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== + flatten@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" @@ -2712,6 +3276,11 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + gensync@^1.0.0-beta.1: version "1.0.0-beta.1" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" @@ -2727,6 +3296,11 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -2747,6 +3321,13 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" +glob-parent@^5.0.0, glob-parent@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== + dependencies: + is-glob "^4.0.1" + glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" @@ -2796,6 +3377,13 @@ global-modules@^1.0.0: is-windows "^1.0.1" resolve-dir "^1.0.0" +global-modules@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + global-prefix@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" @@ -2807,11 +3395,44 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" +global-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" + integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== + dependencies: + ini "^1.3.5" + kind-of "^6.0.2" + which "^1.3.1" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^12.1.0: + version "12.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== + dependencies: + type-fest "^0.8.1" + +globby@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.0.tgz#56fd0e9f0d4f8fb0c456f1ab0dee96e1380bc154" + integrity sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + +globjoin@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43" + integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM= + glogg@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f" @@ -2819,6 +3440,13 @@ glogg@^1.0.0: dependencies: sparkles "^1.0.0" +gonzales-pe@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.3.0.tgz#fe9dec5f3c557eead09ff868c65826be54d067b3" + integrity sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ== + dependencies: + minimist "^1.2.5" + graceful-fs@4.X, graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" @@ -3011,6 +3639,11 @@ har-validator@~5.1.3: ajv "^6.5.5" har-schema "^2.0.0" +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== + has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" @@ -3035,6 +3668,11 @@ has-flag@^3.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + has-gulplog@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" @@ -3129,6 +3767,11 @@ html-tags@^1.0.0: resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-1.2.0.tgz#c78de65b5663aa597989dd2b7ab49200d7e4db98" integrity sha1-x43mW1Zjqll5id0rerSSANfk25g= +html-tags@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" + integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== + htmlnano@^0.2.3: version "0.2.5" resolved "https://registry.yarnpkg.com/htmlnano/-/htmlnano-0.2.5.tgz#134fd9548c7cbe51c8508ce434a3f9488cff1b0b" @@ -3143,7 +3786,7 @@ htmlnano@^0.2.3: terser "^4.3.9" uncss "^0.17.2" -htmlparser2@^3.10.1, htmlparser2@^3.9.2: +htmlparser2@^3.10.0, htmlparser2@^3.10.1, htmlparser2@^3.9.2: version "3.10.1" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== @@ -3155,6 +3798,16 @@ htmlparser2@^3.10.1, htmlparser2@^3.9.2: inherits "^2.0.1" readable-stream "^3.1.1" +htmlparser2@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78" + integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q== + dependencies: + domelementtype "^2.0.1" + domhandler "^3.0.0" + domutils "^2.0.0" + entities "^2.0.0" + http-errors@1.7.3: version "1.7.3" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" @@ -3193,13 +3846,23 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -iconv-lite@0.4.24: +iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.1, ignore@^5.1.4: + version "5.1.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.6.tgz#643194ad4bf2712f37852e386b6998eff0db2106" + integrity sha512-cgXgkypZBcCnOgSihyeqbo6gjIaIyDqPQB7Ra4vhE9m6kigdGoQDMHjviFhRZo3IMlRy6yElosoviMs5YxZXUA== + immutable@^3: version "3.8.2" resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" @@ -3220,6 +3883,14 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" +import-fresh@^3.0.0, import-fresh@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" + integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + import-from@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" @@ -3227,6 +3898,21 @@ import-from@^2.1.0: dependencies: resolve-from "^3.0.0" +import-lazy@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + indexes-of@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" @@ -3245,7 +3931,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -3255,11 +3941,30 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.4: +ini@^1.3.4, ini@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== +inquirer@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" + integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== + dependencies: + ansi-escapes "^4.2.1" + chalk "^3.0.0" + cli-cursor "^3.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" + run-async "^2.4.0" + rxjs "^6.5.3" + string-width "^4.1.0" + strip-ansi "^6.0.0" + through "^2.3.6" + interpret@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" @@ -3309,6 +4014,24 @@ is-accessor-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" +is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumeric@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz#4a9cef71daf4c001c1d81d63d140cf53fd6889f4" + integrity sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ= + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -3326,12 +4049,12 @@ is-binary-path@^1.0.0: dependencies: binary-extensions "^1.0.0" -is-buffer@^1.1.5: +is-buffer@^1.1.4, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-buffer@^2.0.2: +is-buffer@^2.0.0, is-buffer@^2.0.2: version "2.0.4" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== @@ -3372,6 +4095,11 @@ is-date-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== +is-decimal@^1.0.0, is-decimal@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -3424,6 +4152,11 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -3431,13 +4164,18 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0: +is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== dependencies: is-extglob "^2.1.1" +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + is-html@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-html/-/is-html-1.1.0.tgz#e04f1c18d39485111396f9a0273eab51af218464" @@ -3469,11 +4207,26 @@ is-number@^4.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + is-obj@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -3493,6 +4246,11 @@ is-regex@^1.0.5: dependencies: has "^1.0.3" +is-regexp@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz#cd734a56864e23b956bf4e7c66c396a4c0b22c2d" + integrity sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA== + is-relative@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" @@ -3505,6 +4263,11 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== +is-string@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" + integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== + is-svg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" @@ -3519,7 +4282,7 @@ is-symbol@^1.0.2: dependencies: has-symbols "^1.0.1" -is-typedarray@~1.0.0: +is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= @@ -3541,11 +4304,21 @@ is-valid-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= +is-whitespace-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" + integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== + is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== +is-word-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" + integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== + is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" @@ -3556,7 +4329,7 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= -isarray@1.0.0, isarray@~1.0.0: +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= @@ -3726,11 +4499,16 @@ kind-of@^5.0.0, kind-of@^5.0.2: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== -kind-of@^6.0.0, kind-of@^6.0.2: +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +known-css-properties@^0.19.0: + version "0.19.0" + resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.19.0.tgz#5d92b7fa16c72d971bda9b7fe295bdf61836ee5b" + integrity sha512-eYboRV94Vco725nKMlpkn3nV2+96p9c3gKXRsYqAJSswSENvBhN7n5L+uDhY58xQa0UukWsDMTGELzmD8Q+wTA== + last-run@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" @@ -3772,6 +4550,14 @@ levenary@^1.1.1: dependencies: leven "^3.1.0" +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" @@ -3799,6 +4585,11 @@ limiter@^1.0.5: resolved "https://registry.yarnpkg.com/limiter/-/limiter-1.1.5.tgz#8f92a25b3b16c6131293a0cc834b4a838a2aa7c2" integrity sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA== +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + 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" @@ -3810,6 +4601,16 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + localtunnel@1.9.2: version "1.9.2" resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-1.9.2.tgz#0012fcabc29cf964c130a01858768aa2bb65b5af" @@ -3836,6 +4637,13 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" @@ -3955,11 +4763,30 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.17.10, lodash@^4.17.13, lodash@^4.17.15: +lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== +log-symbols@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== + dependencies: + chalk "^2.0.1" + +log-symbols@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" + integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== + dependencies: + chalk "^4.0.0" + +longest-streak@^2.0.1: + version "2.0.4" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" + integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== + loose-envify@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -3986,6 +4813,16 @@ map-cache@^0.2.0, map-cache@^0.2.2: resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= +map-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + +map-obj@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.1.0.tgz#b91221b542734b9f14256c0132c897c5d7256fd5" + integrity sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g== + map-stream@~0.0.6: version "0.0.7" resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.7.tgz#8a1f07896d82b10926bd3744a2420009f88974a8" @@ -3998,6 +4835,18 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" +markdown-escapes@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" + integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== + +markdown-table@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" + integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== + dependencies: + repeat-string "^1.0.0" + matchdep@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" @@ -4008,6 +4857,18 @@ matchdep@^2.0.0: resolve "^1.4.0" stack-trace "0.0.10" +mathml-tag-names@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3" + integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== + +mdast-util-compact@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz#cabc69a2f43103628326f35b1acf735d55c99490" + integrity sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA== + dependencies: + unist-util-visit "^2.0.0" + mdn-data@2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" @@ -4032,6 +4893,30 @@ memoizee@0.4.X: next-tick "1" timers-ext "^0.1.5" +meow@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/meow/-/meow-7.0.1.tgz#1ed4a0a50b3844b451369c48362eb0515f04c1dc" + integrity sha512-tBKIQqVrAHqwit0vfuFPY3LlzJYkEOFyKa3bPgxzNl6q/RtN8KQ+ALYEASYuFayzSAsjlhXj/JZ10rH85Q6TUw== + dependencies: + "@types/minimist" "^1.2.0" + arrify "^2.0.1" + camelcase "^6.0.0" + camelcase-keys "^6.2.2" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "^4.0.2" + normalize-package-data "^2.5.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.13.1" + yargs-parser "^18.1.3" + +merge2@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" + integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== + micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" @@ -4051,6 +4936,14 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + mime-db@1.44.0: version "1.44.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" @@ -4068,6 +4961,16 @@ mime@1.4.1: resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +min-indent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256" + integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= + minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -4075,6 +4978,15 @@ minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" +minimist-options@^4.0.2: + version "4.1.0" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + kind-of "^6.0.3" + minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" @@ -4093,7 +5005,7 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp@~0.5.1: +mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -4132,6 +5044,11 @@ mute-stdout@^1.0.0: resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + nan@^2.12.1: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -4154,6 +5071,11 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -4179,7 +5101,7 @@ normalize-html-whitespace@^1.0.0: resolved "https://registry.yarnpkg.com/normalize-html-whitespace/-/normalize-html-whitespace-1.0.0.tgz#5e3c8e192f1b06c3b9eee4b7e7f28854c7601e34" integrity sha512-9ui7CGtOOlehQu0t/OhhlmDyc71mKVlv+4vF+me4iZLPrNtRL2xoquEdfZxasC/bdQi/Hr3iTrpyRKIG+ocabA== -normalize-package-data@^2.3.2: +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -4206,6 +5128,11 @@ normalize-range@^0.1.2: resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= +normalize-selector@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz#d0b145eb691189c63a78d201dc4fdb1293ef0c03" + integrity sha1-0LFF62kRicY6eNIB3E/bEpPvDAM= + normalize-url@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" @@ -4366,6 +5293,13 @@ once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: dependencies: wrappy "1" +onetime@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" + integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== + dependencies: + mimic-fn "^2.1.0" + openurl@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/openurl/-/openurl-1.1.1.tgz#3875b4b0ef7a52c156f0db41d4609dbb0f94b387" @@ -4390,6 +5324,18 @@ optionator@^0.8.1: type-check "~0.3.2" word-wrap "~1.2.3" +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" @@ -4409,6 +5355,11 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -4416,7 +5367,7 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.0.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -4437,6 +5388,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -4447,6 +5405,37 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-entities@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.2.2.tgz#c31bf0f653b6661354f8973559cb86dd1d5edf50" + integrity sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + parse-filepath@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -4471,6 +5460,16 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" +parse-json@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" + integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + lines-and-columns "^1.1.6" + parse-node-version@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" @@ -4527,11 +5526,21 @@ path-exists@^3.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + 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" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + path-parse@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" @@ -4558,11 +5567,28 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= + dependencies: + pify "^2.0.0" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picomatch@^2.0.5, picomatch@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== + pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -4580,6 +5606,13 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= + dependencies: + find-up "^2.1.0" + pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" @@ -4700,6 +5733,13 @@ postcss-discard-overridden@^4.0.1: dependencies: postcss "^7.0.0" +postcss-html@^0.36.0: + version "0.36.0" + resolved "https://registry.yarnpkg.com/postcss-html/-/postcss-html-0.36.0.tgz#b40913f94eaacc2453fd30a1327ad6ee1f88b204" + integrity sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw== + dependencies: + htmlparser2 "^3.10.0" + postcss-import@^12.0.1: version "12.0.1" resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-12.0.1.tgz#cf8c7ab0b5ccab5649024536e565f841928b7153" @@ -4721,6 +5761,13 @@ postcss-inline-svg@^4.1.0: postcss "^7.0.17" postcss-value-parser "^4.0.0" +postcss-less@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/postcss-less/-/postcss-less-3.1.4.tgz#369f58642b5928ef898ffbc1a6e93c958304c5ad" + integrity sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA== + dependencies: + postcss "^7.0.14" + postcss-load-config@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" @@ -4729,6 +5776,11 @@ postcss-load-config@^2.0.0: cosmiconfig "^5.0.0" import-cwd "^2.0.0" +postcss-media-query-parser@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" + integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ= + postcss-merge-longhand@^4.0.11: version "4.0.11" resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" @@ -4901,6 +5953,43 @@ postcss-reduce-transforms@^4.0.2: postcss "^7.0.0" postcss-value-parser "^3.0.0" +postcss-reporter@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-reporter/-/postcss-reporter-6.0.1.tgz#7c055120060a97c8837b4e48215661aafb74245f" + integrity sha512-LpmQjfRWyabc+fRygxZjpRxfhRf9u/fdlKf4VHG4TSPbV2XNsuISzYW1KL+1aQzx53CAppa1bKG4APIB/DOXXw== + dependencies: + chalk "^2.4.1" + lodash "^4.17.11" + log-symbols "^2.2.0" + postcss "^7.0.7" + +postcss-resolve-nested-selector@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz#29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e" + integrity sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4= + +postcss-safe-parser@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz#a6d4e48f0f37d9f7c11b2a581bf00f8ba4870b96" + integrity sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g== + dependencies: + postcss "^7.0.26" + +postcss-sass@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/postcss-sass/-/postcss-sass-0.4.4.tgz#91f0f3447b45ce373227a98b61f8d8f0785285a3" + integrity sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg== + dependencies: + gonzales-pe "^4.3.0" + postcss "^7.0.21" + +postcss-scss@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-2.1.1.tgz#ec3a75fa29a55e016b90bf3269026c53c1d2b383" + integrity sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA== + dependencies: + postcss "^7.0.6" + postcss-selector-parser@6.0.2, postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" @@ -4929,6 +6018,11 @@ postcss-svgo@^4.0.2: postcss-value-parser "^3.0.0" svgo "^1.0.0" +postcss-syntax@^0.36.2: + version "0.36.2" + resolved "https://registry.yarnpkg.com/postcss-syntax/-/postcss-syntax-0.36.2.tgz#f08578c7d95834574e5593a82dfbfa8afae3b51c" + integrity sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w== + postcss-unique-selectors@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" @@ -4966,7 +6060,7 @@ postcss@^6.0.8: source-map "^0.6.1" supports-color "^5.4.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.30: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.27, postcss@^7.0.30, postcss@^7.0.6, postcss@^7.0.7: version "7.0.31" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.31.tgz#332af45cb73e26c0ee2614d7c7fb02dfcc2bd6dd" integrity sha512-a937VDHE1ftkjk+8/7nj/mrjtmkn69xxzJgRETXdAUU+IgOYPQNJF17haGWbeDxSyk++HA14UA98FurvPyBJOA== @@ -5034,6 +6128,11 @@ posthtml@^0.12.0, posthtml@^0.12.1: posthtml-parser "^0.4.2" posthtml-render "^1.2.2" +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -5061,6 +6160,11 @@ process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + psl@^1.1.28: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -5113,6 +6217,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +quick-lru@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== + range-parser@~1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -5143,6 +6252,23 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" @@ -5152,6 +6278,25 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + "readable-stream@2 || 3", readable-stream@^3.1.1: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -5200,6 +6345,14 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +redent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== + dependencies: + indent-string "^4.0.0" + strip-indent "^3.0.0" + regenerate-unicode-properties@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" @@ -5233,6 +6386,11 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +regexpp@^3.0.0, regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== + regexpu-core@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" @@ -5257,6 +6415,78 @@ regjsparser@^0.6.4: dependencies: jsesc "~0.5.0" +remark-parse@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-5.0.0.tgz#4c077f9e499044d1d5c13f80d7a98cf7b9285d95" + integrity sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA== + dependencies: + collapse-white-space "^1.0.2" + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + is-word-character "^1.0.0" + markdown-escapes "^1.0.0" + parse-entities "^1.1.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + trim "0.0.1" + trim-trailing-lines "^1.0.0" + unherit "^1.0.4" + unist-util-remove-position "^1.0.0" + vfile-location "^2.0.0" + xtend "^4.0.1" + +remark-parse@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.2.tgz#5999bc0b9c2e3edc038800a64ff103d0890b318b" + integrity sha512-eMI6kMRjsAGpMXXBAywJwiwAse+KNpmt+BK55Oofy4KvBZEqUDj6mWbGLJZrujoPIPPxDXzn3T9baRlpsm2jnQ== + dependencies: + ccount "^1.0.0" + collapse-white-space "^1.0.2" + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + is-word-character "^1.0.0" + markdown-escapes "^1.0.0" + parse-entities "^2.0.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + trim "0.0.1" + trim-trailing-lines "^1.0.0" + unherit "^1.0.4" + unist-util-remove-position "^2.0.0" + vfile-location "^3.0.0" + xtend "^4.0.1" + +remark-stringify@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-8.0.0.tgz#33423ab8bf3076fb197f4cf582aaaf866b531625" + integrity sha512-cABVYVloFH+2ZI5bdqzoOmemcz/ZuhQSH6W6ZNYnLojAUUn3xtX7u+6BpnYp35qHoGr2NFBsERV14t4vCIeW8w== + dependencies: + ccount "^1.0.0" + is-alphanumeric "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + longest-streak "^2.0.1" + markdown-escapes "^1.0.0" + markdown-table "^2.0.0" + mdast-util-compact "^2.0.0" + parse-entities "^2.0.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + stringify-entities "^3.0.0" + unherit "^1.0.4" + xtend "^4.0.1" + +remark@^12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/remark/-/remark-12.0.0.tgz#d1c145c07341c9232f93b2f8539d56da15a2548c" + integrity sha512-oX4lMIS0csgk8AEbzY0h2jdR0ngiCHOpwwpxjmRa5TqAkeknY+tkhjRJGZqnCmvyuWh55/0SW5WY3R3nn3PH9A== + dependencies: + remark-parse "^8.0.0" + remark-stringify "^8.0.0" + unified "^9.0.0" + remove-bom-buffer@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz#c2bf1e377520d324f623892e33c10cac2c252b53" @@ -5284,7 +6514,7 @@ repeat-element@^1.1.2: resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== -repeat-string@^1.6.1: +repeat-string@^1.0.0, repeat-string@^1.5.4, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= @@ -5294,6 +6524,11 @@ replace-ext@0.0.1: resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ= +replace-ext@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + replace-ext@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a" @@ -5388,6 +6623,16 @@ resolve-from@^3.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" integrity sha1-six699nWiBvItuZTM17rywoYh0g= +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + resolve-options@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" @@ -5400,7 +6645,7 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.3.2, resolve@^1.4.0: +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.3.2, resolve@^1.4.0: version "1.17.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== @@ -5415,11 +6660,24 @@ resp-modifier@6.0.2: debug "^2.2.0" minimatch "^3.0.2" +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + rgb-regex@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" @@ -5430,6 +6688,23 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= +rimraf@2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + +run-async@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + +run-parallel@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + rx@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" @@ -5442,6 +6717,13 @@ rxjs@^5.5.6: dependencies: symbol-observable "1.0.1" +rxjs@^6.5.3: + version "6.5.5" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" + integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== + dependencies: + tslib "^1.9.0" + safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -5493,6 +6775,16 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== +semver@^6.1.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1: + version "7.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" + integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== + send@0.16.2: version "0.16.2" resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" @@ -5565,6 +6857,23 @@ setprototypeof@1.1.1: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +signal-exit@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" @@ -5572,6 +6881,20 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== + dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" + is-fullwidth-code-point "^2.0.0" + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -5742,6 +7065,11 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== +specificity@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz#aab5e645012db08ba182e151165738d00887b019" + integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg== + split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" @@ -5779,6 +7107,11 @@ stack-trace@0.0.10: resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= +state-toggle@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" + integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== + static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" @@ -5850,6 +7183,15 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" + integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + string.prototype.trimend@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" @@ -5903,6 +7245,17 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +stringify-entities@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-3.0.1.tgz#32154b91286ab0869ab2c07696223bd23b6dbfc0" + integrity sha512-Lsk3ISA2++eJYqBMPKcr/8eby1I6L0gP0NlxF8Zja6c05yr/yCYyb2c9PwXjd08Ib3If1vn1rbs1H5ZtVuOfvQ== + dependencies: + character-entities-html4 "^1.0.0" + character-entities-legacy "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.2" + is-hexadecimal "^1.0.0" + strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -5917,6 +7270,13 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + strip-bom-string@1.X: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" @@ -5929,6 +7289,28 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" + +strip-json-comments@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" + integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== + +style-search@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902" + integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI= + stylehacks@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" @@ -5938,6 +7320,79 @@ stylehacks@^4.0.0: postcss "^7.0.0" postcss-selector-parser "^3.0.0" +stylelint-config-recommended@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz#e0e547434016c5539fe2650afd58049a2fd1d657" + integrity sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ== + +stylelint-config-standard@^20.0.0: + version "20.0.0" + resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz#06135090c9e064befee3d594289f50e295b5e20d" + integrity sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA== + dependencies: + stylelint-config-recommended "^3.0.0" + +stylelint@^13.5.0: + version "13.5.0" + resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.5.0.tgz#9edbf90c8c02c47fd0c4818376e3799145f22cab" + integrity sha512-+Jy7ieKAWKTf2tmcAE7jgScxH39Urb87i0bjK/enScFaGWWaFn4kAPwepGOSk2b7CLUDVt/O6kwA0x0p/V7moQ== + dependencies: + "@stylelint/postcss-css-in-js" "^0.37.1" + "@stylelint/postcss-markdown" "^0.36.1" + autoprefixer "^9.7.6" + balanced-match "^1.0.0" + chalk "^4.0.0" + cosmiconfig "^6.0.0" + debug "^4.1.1" + execall "^2.0.0" + file-entry-cache "^5.0.1" + get-stdin "^8.0.0" + global-modules "^2.0.0" + globby "^11.0.0" + globjoin "^0.1.4" + html-tags "^3.1.0" + ignore "^5.1.4" + import-lazy "^4.0.0" + imurmurhash "^0.1.4" + known-css-properties "^0.19.0" + leven "^3.1.0" + lodash "^4.17.15" + log-symbols "^4.0.0" + mathml-tag-names "^2.1.3" + meow "^7.0.1" + micromatch "^4.0.2" + normalize-selector "^0.2.0" + postcss "^7.0.30" + postcss-html "^0.36.0" + postcss-less "^3.1.4" + postcss-media-query-parser "^0.2.3" + postcss-reporter "^6.0.1" + postcss-resolve-nested-selector "^0.1.1" + postcss-safe-parser "^4.0.2" + postcss-sass "^0.4.4" + postcss-scss "^2.0.0" + postcss-selector-parser "^6.0.2" + postcss-syntax "^0.36.2" + postcss-value-parser "^4.1.0" + resolve-from "^5.0.0" + slash "^3.0.0" + specificity "^0.4.1" + string-width "^4.2.0" + strip-ansi "^6.0.0" + style-search "^0.1.0" + sugarss "^2.0.0" + svg-tags "^1.0.0" + table "^5.4.6" + v8-compile-cache "^2.1.0" + write-file-atomic "^3.0.3" + +sugarss@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sugarss/-/sugarss-2.0.0.tgz#ddd76e0124b297d40bf3cca31c8b22ecb43bc61d" + integrity sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ== + dependencies: + postcss "^7.0.2" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -5957,6 +7412,13 @@ supports-color@^6.1.0: dependencies: has-flag "^3.0.0" +supports-color@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" + integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== + dependencies: + has-flag "^4.0.0" + sver-compat@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" @@ -5965,6 +7427,11 @@ sver-compat@^1.5.0: es6-iterator "^2.0.1" es6-symbol "^3.1.1" +svg-tags@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" + integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= + svgo@^1.0.0, svgo@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" @@ -5994,6 +7461,16 @@ symbol-tree@^3.2.2: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== +table@^5.2.3, table@^5.4.6: + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== + dependencies: + ajv "^6.10.2" + lodash "^4.17.14" + slice-ansi "^2.1.0" + string-width "^3.0.0" + terser@^4.0.0, terser@^4.3.9: version "4.7.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.7.0.tgz#15852cf1a08e3256a80428e865a2fa893ffba006" @@ -6003,6 +7480,11 @@ terser@^4.0.0, terser@^4.3.9: source-map "~0.6.1" source-map-support "~0.5.12" +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + tfunk@^3.0.1: version "3.1.0" resolved "https://registry.yarnpkg.com/tfunk/-/tfunk-3.1.0.tgz#38e4414fc64977d87afdaa72facb6d29f82f7b5b" @@ -6034,6 +7516,11 @@ through2@^3.0.1: dependencies: readable-stream "2 || 3" +through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + time-stamp@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" @@ -6052,6 +7539,13 @@ timsort@^0.3.0: resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" @@ -6085,6 +7579,13 @@ to-regex-range@^2.1.0: is-number "^3.0.0" repeat-string "^1.6.1" +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" @@ -6122,6 +7623,31 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +trim-newlines@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.0.tgz#79726304a6a898aa8373427298d54c2ee8b1cb30" + integrity sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA== + +trim-trailing-lines@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.3.tgz#7f0739881ff76657b7776e10874128004b625a94" + integrity sha512-4ku0mmjXifQcTVfYDfR5lpgV7zVqPg6zV9rdZmwOPqq0+Zq19xDqEgagqVbc4pOOShbncuAOIs59R3+3gcF3ZA== + +trim@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" + integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= + +trough@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" + integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== + +tslib@^1.9.0: + version "1.13.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" + integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -6134,6 +7660,13 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -6141,6 +7674,26 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-fest@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" + integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== + +type-fest@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934" + integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + type@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" @@ -6151,6 +7704,13 @@ type@^2.0.0: resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -6206,6 +7766,14 @@ undertaker@^1.2.1: object.reduce "^1.0.0" undertaker-registry "^1.0.0" +unherit@^1.0.4: + version "1.1.3" + resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" + integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== + dependencies: + inherits "^2.0.0" + xtend "^4.0.0" + unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" @@ -6229,6 +7797,30 @@ unicode-property-aliases-ecmascript@^1.0.4: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== +unified@^6.1.2: + version "6.2.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-6.2.0.tgz#7fbd630f719126d67d40c644b7e3f617035f6dba" + integrity sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-plain-obj "^1.1.0" + trough "^1.0.0" + vfile "^2.0.0" + x-is-string "^0.1.0" + +unified@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-9.0.0.tgz#12b099f97ee8b36792dbad13d278ee2f696eed1d" + integrity sha512-ssFo33gljU3PdlWLjNp15Inqb77d6JnJSfyplGJPT/a+fNRNyCBeveBAYJdO5khKdF6WVHa/yYCC7Xl6BDwZUQ== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -6257,6 +7849,80 @@ unique-stream@^2.0.2: json-stable-stringify-without-jsonify "^1.0.1" through2-filter "^3.0.0" +unist-util-find-all-after@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/unist-util-find-all-after/-/unist-util-find-all-after-3.0.1.tgz#95cc62f48812d879b4685a0512bf1b838da50e9a" + integrity sha512-0GICgc++sRJesLwEYDjFVJPJttBpVQaTNgc6Jw0Jhzvfs+jtKePEMu+uD+PqkRUrAvGQqwhpDwLGWo1PK8PDEw== + dependencies: + unist-util-is "^4.0.0" + +unist-util-is@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-3.0.0.tgz#d9e84381c2468e82629e4a5be9d7d05a2dd324cd" + integrity sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A== + +unist-util-is@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.2.tgz#c7d1341188aa9ce5b3cff538958de9895f14a5de" + integrity sha512-Ofx8uf6haexJwI1gxWMGg6I/dLnF2yE+KibhD3/diOqY2TinLcqHXCV6OI5gFVn3xQqDH+u0M625pfKwIwgBKQ== + +unist-util-remove-position@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz#ec037348b6102c897703eee6d0294ca4755a2020" + integrity sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A== + dependencies: + unist-util-visit "^1.1.0" + +unist-util-remove-position@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" + integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== + dependencies: + unist-util-visit "^2.0.0" + +unist-util-stringify-position@^1.0.0, unist-util-stringify-position@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz#3f37fcf351279dcbca7480ab5889bb8a832ee1c6" + integrity sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ== + +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +unist-util-visit-parents@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz#25e43e55312166f3348cae6743588781d112c1e9" + integrity sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g== + dependencies: + unist-util-is "^3.0.0" + +unist-util-visit-parents@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.0.2.tgz#d4076af3011739c71d2ce99d05de37d545f4351d" + integrity sha512-yJEfuZtzFpQmg1OSCyS9M5NJRrln/9FbYosH3iW0MG402QbdbaB8ZESwUv9RO6nRfLAKvWcMxCwdLWOov36x/g== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + +unist-util-visit@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.4.1.tgz#4724aaa8486e6ee6e26d7ff3c8685960d560b1e3" + integrity sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw== + dependencies: + unist-util-visit-parents "^2.0.0" + +unist-util-visit@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.2.tgz#3843782a517de3d2357b4c193b24af2d9366afb7" + integrity sha512-HoHNhGnKj6y+Sq+7ASo2zpVdfdRifhTgX2KTU3B/sO/TTlZchp7E3S4vjRzDJ7L60KmrCPsQkVK3lEF3cz36XQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -6327,6 +7993,11 @@ uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +v8-compile-cache@^2.0.3, v8-compile-cache@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== + v8flags@^3.0.1: version "3.1.3" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.1.3.tgz#fc9dc23521ca20c5433f81cc4eb9b3033bb105d8" @@ -6361,6 +8032,52 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +vfile-location@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.6.tgz#8a274f39411b8719ea5728802e10d9e0dff1519e" + integrity sha512-sSFdyCP3G6Ka0CEmN83A2YCMKIieHx0EDaj5IDP4g1pa5ZJ4FJDvpO0WODLxo4LUX4oe52gmSCK7Jw4SBghqxA== + +vfile-location@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.0.1.tgz#d78677c3546de0f7cd977544c367266764d31bb3" + integrity sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ== + +vfile-message@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.1.1.tgz#5833ae078a1dfa2d96e9647886cd32993ab313e1" + integrity sha512-1WmsopSGhWt5laNir+633LszXvZ+Z/lxveBf6yhGsqnQIhlhzooZae7zV6YVM1Sdkw68dtAW3ow0pOdPANugvA== + dependencies: + unist-util-stringify-position "^1.1.1" + +vfile-message@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" + integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^2.0.0" + +vfile@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-2.3.0.tgz#e62d8e72b20e83c324bc6c67278ee272488bf84a" + integrity sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w== + dependencies: + is-buffer "^1.1.4" + replace-ext "1.0.0" + unist-util-stringify-position "^1.0.0" + vfile-message "^1.0.0" + +vfile@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.1.1.tgz#282d28cebb609183ac51703001bc18b3e3f17de9" + integrity sha512-lRjkpyDGjVlBA7cDQhQ+gNcvB1BGaTHYuSOcY3S7OhDmBtnzX95FhtZZDecSTDm6aajFymyve6S5DN4ZHGezdQ== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + replace-ext "1.0.0" + unist-util-stringify-position "^2.0.0" + vfile-message "^2.0.0" + vinyl-fs@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" @@ -6482,19 +8199,26 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.14: +which@^1.2.14, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" integrity sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU= -word-wrap@~1.2.3: +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -6521,6 +8245,23 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +write-file-atomic@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +write@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" + integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== + dependencies: + mkdirp "^0.5.1" + ws@^6.1.2: version "6.2.1" resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" @@ -6544,6 +8285,11 @@ ws@~6.1.0: dependencies: async-limiter "~1.0.0" +x-is-string@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" + integrity sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= + xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" @@ -6559,7 +8305,7 @@ xmlhttprequest-ssl@~1.5.4: resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4= -xtend@~4.0.0, xtend@~4.0.1: +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== @@ -6574,6 +8320,11 @@ y18n@^4.0.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +yaml@^1.7.2: + version "1.10.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" + integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== + yargs-parser@5.0.0-security.0: version "5.0.0-security.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz#4ff7271d25f90ac15643b86076a2ab499ec9ee24" @@ -6590,6 +8341,14 @@ yargs-parser@^15.0.1: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^18.1.3: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^4.1.0, yargs-parser@^4.2.0: version "4.2.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" From f67b8da4facff61da0d84e5dc63ba8d04134d6b8 Mon Sep 17 00:00:00 2001 From: Felix Date: Wed, 27 May 2020 14:20:45 -0500 Subject: [PATCH 044/131] Add Changesets and update documentation --- .changeset/README.md | 8 + .changeset/config.json | 9 + .github/CONTRIBUTING.md | 53 ++- package.json | 3 +- yarn.lock | 807 +++++++++++++++++++++++++++++++++++++++- 5 files changed, 847 insertions(+), 33 deletions(-) create mode 100644 .changeset/README.md create mode 100644 .changeset/config.json diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 0000000..4f3b76b --- /dev/null +++ b/.changeset/README.md @@ -0,0 +1,8 @@ +# Changesets + +Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works +with multi-package repos, or single-package repos to help you version and publish your code. You can +find the full documentation for it [in our repository](https://github.com/changesets/changesets) + +We have a quick list of common questions to get you started engaging with this project in +[our documentation](https://github.com/changesets/changesets/blob/master/docs/common-questions.md) diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 0000000..b9a2a44 --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@1.1.0/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "linked": [], + "access": "restricted", + "baseBranch": "master", + "updateInternalDependencies": "patch" +} \ No newline at end of file diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index e451fa8..72b2afb 100755 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -4,27 +4,21 @@ Water.css becomes better for everyone when people like you help make it better! Have any questions or concerns? Did I forget an element or selector? Does something look ugly? Feel free to submit an issue or pull request. -Before contributing, please read the [code of conduct](CODE_OF_CONDUCT.md). Also you agree that your contributions will be licensed under its [MIT License](./LICENSE.md). +Before contributing, please read the [code of conduct](CODE_OF_CONDUCT.md). Also you agree that your contributions will be licensed under its [MIT License](../LICENSE.md). ## How to get started 1. Get a copy of repository. It is recommended to fork it first and clone to your machine using `git`. - 2. Make sure that you have [yarn](https://yarnpkg.com) and install dependencies listed in `package.json` using it. - -``` -yarn -``` - + ``` + yarn + ``` 3. Then you can run development server with live reloading out of the box and play around with the framework. + ``` + yarn dev + ``` -``` -yarn dev -``` - -So you can access the `index.html` in browser by visiting http://localhost:3000/index.html - -More details will be provided in command line interface. +So you can access the `index.html` in browser by visiting [localhost:3000](http://localhost:3000/) *Note.* A script that builds distribution ready files is also available but it is not the part of development workflow, it is designed to be triggered automatically while publishing a new version of a package. The script itself could be run manually: @@ -44,18 +38,37 @@ Also everyone is welcome to contribute on issues tagged with `help wanted`, you It is a few general rules of thumb about making pull requests: -* Make sure that your pull request covers a small and well defined scope +- Make sure that your pull request covers a small and well defined scope +- Make small commits with clear and explainful messages +- You need to provide a clear description about your contribution on GitHub -* Make small commits with clear and explainful messages +Before making a pull request, make sure you lint your code and generate a changelog. -* You need to provide a clear description about your contribution on GitHub +**Linting** + +If you aren't familiar, a linter is a program that automatically checks your code for formatting issues and potential bugs. Our linters are configured to automatically fix what they can so you can typically run one command and be done with it: + +``` +yarn lint +``` + +**Changelogs** + +We use software called Changesets to keep track of what changes have been made between versions. Make sure to create a changelog before creating your pull request! + +Just run this command, and then answer a few questions: + +``` +yarn changeset +``` ## Directory structure ``` . ├── dist -├── icons +└── docs + └── icons └── src ├── assets ├── builds @@ -64,7 +77,9 @@ It is a few general rules of thumb about making pull requests: `dist` directory is ignored by git and it contains built assets for distribution -`icons` directory contains water.css favicons used in `index.html` demo/docs file +`docs` directory contains the documentation and demo page + +`docs/icons` directory contains water.css favicons used in the documentation `src` directory contains all the source stylesheets groupped into folders and variables diff --git a/package.json b/package.json index 4b76e69..80e9405 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "water.css", - "version": "2.0.0", + "version": "1.4.0", "description": "A just-add-css collection of styles to make simple websites just a little nicer.", "main": "index.js", "scripts": { @@ -29,6 +29,7 @@ "devDependencies": { "@babel/core": "^7.4.5", "@babel/preset-env": "^7.4.5", + "@changesets/cli": "^2.7.2", "@ungap/url-search-params": "^0.1.2", "autoprefixer": "^9.5.1", "browser-sync": "^2.26.3", diff --git a/yarn.lock b/yarn.lock index 2b1c087..eee7696 100644 --- a/yarn.lock +++ b/yarn.lock @@ -749,7 +749,7 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime@^7.8.4": +"@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": version "7.10.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.0.tgz#2cdcd6d7a391c24f7154235134c830cfb58ac0b1" integrity sha512-tgYb3zVApHbLHYOPWtVwg25sBqHhfBXRKeKoTIyoheIxln1nA7oBl7SfHfiTG2GhDPI8EUBkOD/0wJCP/3HN4Q== @@ -789,6 +789,185 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@changesets/apply-release-plan@^3.0.3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-3.0.3.tgz#3f63e37a8637c5db6394956fe9a70b1b33b4ce44" + integrity sha512-OJFFO9OzUhzMK7vuWDWuXUEI0kCpm0VclEWw2uIRecPewR7Vprvio91L6t/QrNRXKKntRshvUy0I6Z3nZXOGyQ== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/config" "^1.1.0" + "@changesets/get-version-range-type" "^0.3.2" + "@changesets/git" "^1.0.5" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + fs-extra "^7.0.1" + lodash.startcase "^4.4.0" + outdent "^0.5.0" + prettier "^1.18.2" + resolve-from "^5.0.0" + semver "^5.4.1" + +"@changesets/assemble-release-plan@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@changesets/assemble-release-plan/-/assemble-release-plan-2.0.4.tgz#4c138fa306340f851c04e70434dd0a8e2e62a8ad" + integrity sha512-v7Z6/7PliGZY62Pod5GzBW4bJ5nBNTMRuCNMIQ/n3BUZkEH6wQrCI/jzEs0tGp8s88HITpdDF3ZMHIBfGsH3eQ== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/errors" "^0.1.4" + "@changesets/get-dependents-graph" "^1.1.3" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + semver "^5.4.1" + +"@changesets/cli@^2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@changesets/cli/-/cli-2.7.2.tgz#b3fe8272a9d9c41e8a886099f6a81330641636c7" + integrity sha512-cQxFRXePxEDr8E+b/hSjUufpa0Bdil3nDRCjGpPU0/42MzQJj/hKwAeGs1ggSMJgVUc46q6MM6+C7bABGxH3zg== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/apply-release-plan" "^3.0.3" + "@changesets/assemble-release-plan" "^2.0.4" + "@changesets/config" "^1.1.0" + "@changesets/errors" "^0.1.4" + "@changesets/get-release-plan" "^1.0.4" + "@changesets/git" "^1.0.5" + "@changesets/logger" "^0.0.5" + "@changesets/pre" "^1.0.4" + "@changesets/read" "^0.4.6" + "@changesets/types" "^3.0.0" + "@changesets/write" "^0.1.3" + "@manypkg/get-packages" "^1.0.1" + "@types/semver" "^6.0.0" + boxen "^1.3.0" + chalk "^2.1.0" + enquirer "^2.3.0" + fs-extra "^7.0.1" + human-id "^1.0.2" + is-ci "^2.0.0" + meow "^5.0.0" + outdent "^0.5.0" + p-limit "^2.2.0" + preferred-pm "^3.0.0" + semver "^5.4.1" + spawndamnit "^2.0.0" + term-size "^2.1.0" + tty-table "^2.7.0" + +"@changesets/config@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@changesets/config/-/config-1.1.0.tgz#35d96d12b27df905cc6d706eecf1cc378bf6cffe" + integrity sha512-KXZ67QLRd/kMv+CK45r2Edl4O6oOMxKI7B0Sf4qVmwwoonGM5oxHNyNAxeGL31YhE+6z4hIh57+rD7PppF+KFw== + dependencies: + "@changesets/errors" "^0.1.4" + "@changesets/logger" "^0.0.5" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + fs-extra "^7.0.1" + +"@changesets/errors@^0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@changesets/errors/-/errors-0.1.4.tgz#f79851746c43679a66b383fdff4c012f480f480d" + integrity sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q== + dependencies: + extendable-error "^0.1.5" + +"@changesets/get-dependents-graph@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@changesets/get-dependents-graph/-/get-dependents-graph-1.1.3.tgz#da959c43ce98f3a990a6b8d9c1f894bcc1b629c7" + integrity sha512-cTbySXwSv9yWp4Pp5R/b5Qv23wJgFaFCqUbsI3IJ2pyPl0vMaODAZS8NI1nNK2XSxGIg1tw+dWNSR4PlrKBSVQ== + dependencies: + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + chalk "^2.1.0" + fs-extra "^7.0.1" + semver "^5.4.1" + +"@changesets/get-release-plan@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@changesets/get-release-plan/-/get-release-plan-1.0.4.tgz#9c0b830d8ef4aa0988379e7405d2d2ece29d604e" + integrity sha512-yxym5rS0seFaAtGI+arUdm3dCz7trb/lvsqsfNpH1Yf0cN90QKMEZSOmWKo8ZEMuifnnl8AFqnH9wRS2+bWVCg== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/assemble-release-plan" "^2.0.4" + "@changesets/config" "^1.1.0" + "@changesets/pre" "^1.0.4" + "@changesets/read" "^0.4.6" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + +"@changesets/get-version-range-type@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@changesets/get-version-range-type/-/get-version-range-type-0.3.2.tgz#8131a99035edd11aa7a44c341cbb05e668618c67" + integrity sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg== + +"@changesets/git@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@changesets/git/-/git-1.0.5.tgz#e392128a13b210c482324d0d329029a3f7613b10" + integrity sha512-MgacjTRCrfFCffvoipqbtHSENydaO+HDR6z+gDQ49Gl2kHIat0iIazL1TBfEuW8H4eGCay+Naz/x6412ucUOTw== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/errors" "^0.1.4" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + is-subdir "^1.1.1" + spawndamnit "^2.0.0" + +"@changesets/logger@^0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@changesets/logger/-/logger-0.0.5.tgz#68305dd5a643e336be16a2369cb17cdd8ed37d4c" + integrity sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw== + dependencies: + chalk "^2.1.0" + +"@changesets/parse@^0.3.6": + version "0.3.6" + resolved "https://registry.yarnpkg.com/@changesets/parse/-/parse-0.3.6.tgz#8c2c8480fc07d2db2c37469d4a8df10906a989c6" + integrity sha512-0XPd/es9CfogI7XIqDr7I2mWzm++xX2s9GZsij3GajPYd7ouEsgJyNatPooxNtqj6ZepkiD6uqlqbeBUyj/A0Q== + dependencies: + "@changesets/types" "^3.0.0" + js-yaml "^3.13.1" + +"@changesets/pre@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@changesets/pre/-/pre-1.0.4.tgz#32aa9040f3798e8a46adc6c30cc4c02a617d1889" + integrity sha512-PGD3uSCZIs6Fd+HsPziLh0BjJ2ypyTEFZSY8qkwINvAvWYpDK805svV0x9usp54kn6PWI9RZ4tVD2A41dqJ0jw== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/errors" "^0.1.4" + "@changesets/types" "^3.0.0" + "@manypkg/get-packages" "^1.0.1" + fs-extra "^7.0.1" + +"@changesets/read@^0.4.6": + version "0.4.6" + resolved "https://registry.yarnpkg.com/@changesets/read/-/read-0.4.6.tgz#1c03e709a870a070fc95490ffa696297d23458f7" + integrity sha512-rOd8dsF/Lgyy2SYlDalb3Ts/meDI2AcKPXYhSXIW3k6+ZLlj6Pt+nmgV5Ut8euyH7loibklNTDemfvMffF4xig== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/git" "^1.0.5" + "@changesets/logger" "^0.0.5" + "@changesets/parse" "^0.3.6" + "@changesets/types" "^3.0.0" + chalk "^2.1.0" + fs-extra "^7.0.1" + p-filter "^2.1.0" + +"@changesets/types@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@changesets/types/-/types-3.0.0.tgz#3804662aa455c1622282ec3253cf6ddd309eee65" + integrity sha512-9Mh/JqkX3nkjfu53ESM3UjFmR2meOo4Zw+Tp4vnon0XYtMurk7KjZG5L+J0fD3+Qx0A2FFTZrgydPwiHR4GrXQ== + +"@changesets/write@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@changesets/write/-/write-0.1.3.tgz#00ae575af50274773d7493e77fb96838a08ad8ad" + integrity sha512-q79rbwlVmTNKP9O6XxcMDj81CEOn/kQHbTFdRleW0tFUv98S1EyEAE9vLPPzO6WnQipHnaozxB1zMhHy0aQn8Q== + dependencies: + "@babel/runtime" "^7.4.4" + "@changesets/types" "^3.0.0" + fs-extra "^7.0.1" + human-id "^1.0.2" + prettier "^1.18.2" + "@csstools/convert-colors@^1.4.0": version "1.4.0" resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" @@ -813,6 +992,27 @@ normalize-path "^2.0.1" through2 "^2.0.3" +"@manypkg/find-root@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@manypkg/find-root/-/find-root-1.0.0.tgz#b8e96d7c24678b1b65c2057ae47df750669197d7" + integrity sha512-c2J5B6MgkCqPVN49/FggigF2a5WThPnjd2RxknDPZjQM/QfSTHpU1r3NOXjQOzKSNRTnFFMHuOYJAVZ66LZNCQ== + dependencies: + "@babel/runtime" "^7.5.5" + "@types/node" "^12.7.1" + find-up "^4.1.0" + fs-extra "^8.1.0" + +"@manypkg/get-packages@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@manypkg/get-packages/-/get-packages-1.0.1.tgz#0b46907555626ae773abb828e6c1cb313aa44777" + integrity sha512-paGfOt9yW+4/kkK9pM5DlnZDfrP7pp75TDimA8VJQlfxxD7/yHpRsBQZh+soqArr9uqwnCw2XkDggG7BlPdQ3Q== + dependencies: + "@babel/runtime" "^7.5.5" + "@manypkg/find-root" "^1.0.0" + fs-extra "^8.1.0" + globby "^11.0.0" + read-yaml-file "^1.1.0" + "@nodelib/fs.scandir@2.1.3": version "2.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" @@ -859,6 +1059,11 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.0.tgz#69a23a3ad29caf0097f06eda59b361ee2f0639f6" integrity sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY= +"@types/node@^12.7.1": + version "12.12.42" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.42.tgz#d0d1149336bd07540dd1ea576692829d575dec34" + integrity sha512-R/9QdYFLL9dE9l5cWWzWIZByVGFd7lk7JVOJ7KD+E1SJ4gni7XJRLz9QTjyYQiHIqEAgku9VgxdLjMlhhUaAFg== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -874,6 +1079,11 @@ resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== +"@types/semver@^6.0.0": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-6.2.1.tgz#a236185670a7860f1597cf73bea2e16d001461ba" + integrity sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA== + "@types/unist@^2.0.0", "@types/unist@^2.0.2": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" @@ -950,6 +1160,13 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +ansi-align@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" + integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= + dependencies: + string-width "^2.0.0" + ansi-colors@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" @@ -957,6 +1174,11 @@ ansi-colors@^1.0.1: dependencies: ansi-wrap "^0.1.0" +ansi-colors@^3.2.1: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== + ansi-cyan@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-cyan/-/ansi-cyan-0.1.1.tgz#538ae528af8982f28ae30d86f2f17456d2609873" @@ -990,6 +1212,11 @@ ansi-regex@^2.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + ansi-regex@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" @@ -1012,7 +1239,7 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.1.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== @@ -1109,6 +1336,11 @@ array-equal@^1.0.0: resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + array-includes@^3.0.3: version "3.1.1" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" @@ -1381,6 +1613,13 @@ better-assert@~1.0.0: dependencies: callsite "1.0.0" +better-path-resolve@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/better-path-resolve/-/better-path-resolve-1.0.0.tgz#13a35a1104cdd48a7b74bf8758f96a1ee613f99d" + integrity sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g== + dependencies: + is-windows "^1.0.0" + binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" @@ -1403,6 +1642,19 @@ boolbase@^1.0.0, boolbase@~1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= +boxen@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" + integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== + dependencies: + ansi-align "^2.0.0" + camelcase "^4.0.0" + chalk "^2.0.1" + cli-boxes "^1.0.0" + string-width "^2.0.0" + term-size "^1.2.0" + widest-line "^2.0.0" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1434,6 +1686,13 @@ braces@^3.0.1: dependencies: fill-range "^7.0.1" +breakword@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/breakword/-/breakword-1.0.5.tgz#fd420a417f55016736b5b615161cae1c8f819810" + integrity sha512-ex5W9DoOQ/LUEU3PMdLs9ua/CYZl1678NUkKOdUSi8Aw5F1idieaiRURCBFJCwVcrD1J8Iy3vfWSloaMwO2qFg== + dependencies: + wcwidth "^1.0.1" + browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -1576,6 +1835,15 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camelcase-keys@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" + integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= + dependencies: + camelcase "^4.1.0" + map-obj "^2.0.0" + quick-lru "^1.0.0" + camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -1590,6 +1858,11 @@ camelcase@^3.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= +camelcase@^4.0.0, camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= + camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -1636,7 +1909,7 @@ chalk@^1.0.0, chalk@^1.1.1: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -1705,6 +1978,11 @@ chokidar@^2.0.0, chokidar@^2.0.4: optionalDependencies: fsevents "^1.2.7" +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + class-utils@^0.3.5: version "0.3.6" resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" @@ -1715,6 +1993,11 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" +cli-boxes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" + integrity sha1-T6kXw+WclKAEzWH47lCdplFocUM= + cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -1757,6 +2040,15 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" @@ -1779,7 +2071,7 @@ clone-stats@^1.0.0: resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= -clone@^1.0.0: +clone@^1.0.0, clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= @@ -2023,6 +2315,15 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" +cross-spawn@^5.0.1, cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -2183,6 +2484,38 @@ cssstyle@^1.1.1: dependencies: cssom "0.3.x" +csv-generate@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.2.4.tgz#440dab9177339ee0676c9e5c16f50e2b3463c019" + integrity sha512-qNM9eqlxd53TWJeGtY1IQPj90b563Zx49eZs8e0uMyEvPgvNVmX1uZDtdzAcflB3PniuH9creAzcFOdyJ9YGvA== + +csv-parse@^4.8.8: + version "4.10.1" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.10.1.tgz#1e26ba63d29c75e94d0eba6e9de9a8aaf89d72a6" + integrity sha512-gdDJVchi0oSLIcYXz1H/VSgLE6htHDqJyFsRU/vTkQgmVOZ3S0IR2LXnNbWUYG7VD76dYVwdfBLyx8AX9+An8A== + +csv-stringify@^5.3.6: + version "5.5.0" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.5.0.tgz#0bdeaaf60d6e15b89c752a0eceb4b4c2c8af5a8a" + integrity sha512-G05575DSO/9vFzQxZN+Srh30cNyHk0SM0ePyiTChMD5WVt7GMTVPBQf4rtgMF6mqhNCJUPw4pN8LDe8MF9EYOA== + +csv@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/csv/-/csv-5.3.2.tgz#50b344e25dfbb8c62684a1bcec18c22468b2161e" + integrity sha512-odDyucr9OgJTdGM2wrMbJXbOkJx3nnUX3Pt8SFOwlAMOpsUQlz1dywvLMXJWX/4Ib0rjfOsaawuuwfI5ucqBGQ== + dependencies: + csv-generate "^3.2.4" + csv-parse "^4.8.8" + csv-stringify "^5.3.6" + stream-transform "^2.0.1" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + dependencies: + array-find-index "^1.0.1" + d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -2249,7 +2582,7 @@ debug@=3.1.0, debug@~3.1.0: dependencies: ms "2.0.0" -decamelize-keys@^1.1.0: +decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= @@ -2284,6 +2617,13 @@ default-resolution@^2.0.0: resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" integrity sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ= +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" @@ -2588,6 +2928,13 @@ engine.io@~3.2.0: engine.io-parser "~2.1.0" ws "~3.3.1" +enquirer@^2.3.0: + version "2.3.5" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.5.tgz#3ab2b838df0a9d8ab9e7dff235b0e8712ef92381" + integrity sha512-BNT1C08P9XD0vNg3J475yIUG+mVdp9T6towYFHUv897X0KoHBjB1shyrNmhmtHWKP17iSWgo7Gqh7BBuzLZMSA== + dependencies: + ansi-colors "^3.2.1" + entities@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" @@ -2901,6 +3248,19 @@ eventemitter3@1.x.x: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" integrity sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg= +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execall@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz#16a06b5fe5099df7d00be5d9c06eecded1663b45" @@ -2962,6 +3322,11 @@ extend@^3.0.0, extend@^3.0.1, extend@~3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== +extendable-error@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/extendable-error/-/extendable-error-0.1.5.tgz#122308a7097bc89a263b2c4fbf089c78140e3b6d" + integrity sha1-EiMIpwl7yJomOyxPvwiceBQOO20= + external-editor@^3.0.3: version "3.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" @@ -3125,7 +3490,7 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -find-up@^4.1.0: +find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== @@ -3133,6 +3498,14 @@ find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-yarn-workspace-root2@^1.2.11: + version "1.2.13" + resolved "https://registry.yarnpkg.com/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.13.tgz#84d5dbf395b6de3476d0801c8d528b4c1e458e4a" + integrity sha512-4pmWhar5O4uybrZGvLf1Sp9ByMKor5o2Kc/v99deOkGcjt15+lwZ2Re6FoyRKTYezv5NNcYyCo8AQiH0ZpTMzw== + dependencies: + micromatch "^4.0.2" + pkg-dir "^4.2.0" + findup-sync@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" @@ -3250,6 +3623,24 @@ fs-extra@3.0.1: jsonfile "^3.0.0" universalify "^0.1.0" +fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" @@ -3301,6 +3692,11 @@ get-stdin@^8.0.0: resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -3447,11 +3843,16 @@ gonzales-pe@^4.3.0: dependencies: minimist "^1.2.5" -graceful-fs@4.X, graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: +graceful-fs@4.X, graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== +grapheme-splitter@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" + integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== + gulp-babel@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/gulp-babel/-/gulp-babel-8.0.0.tgz#e0da96f4f2ec4a88dd3a3030f476e38ab2126d87" @@ -3846,6 +4247,11 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" +human-id@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/human-id/-/human-id-1.0.2.tgz#e654d4b2b0d8b07e45da9f6020d8af17ec0a5df3" + integrity sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw== + iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -3908,6 +4314,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" @@ -4064,6 +4475,13 @@ is-callable@^1.1.4, is-callable@^1.1.5: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + is-color-stop@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" @@ -4263,11 +4681,23 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + is-string@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== +is-subdir@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-subdir/-/is-subdir-1.1.1.tgz#423e66902f9c5f159b9cc4826c820df083059538" + integrity sha512-VYpq0S7gPBVkkmfwkvGnx1EL9UVIo87NQyNcgMiNUdQCws3CJm5wj2nB+XPL7zigvjxhuZgp3bl2yBcKkSIj1w== + dependencies: + better-path-resolve "1.0.0" + is-svg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" @@ -4309,7 +4739,7 @@ is-whitespace-character@^1.0.0: resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== -is-windows@^1.0.1, is-windows@^1.0.2: +is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -4366,7 +4796,7 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.13.1, js-yaml@^3.4.3: +js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.4.3, js-yaml@^3.6.1: version "3.14.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== @@ -4460,6 +4890,13 @@ jsonfile@^3.0.0: optionalDependencies: graceful-fs "^4.1.6" +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -4611,6 +5048,26 @@ load-json-file@^2.0.0: pify "^2.0.0" strip-bom "^3.0.0" +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + +load-yaml-file@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/load-yaml-file/-/load-yaml-file-0.2.0.tgz#af854edaf2bea89346c07549122753c07372f64d" + integrity sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw== + dependencies: + graceful-fs "^4.1.5" + js-yaml "^3.13.0" + pify "^4.0.1" + strip-bom "^3.0.0" + localtunnel@1.9.2: version "1.9.2" resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-1.9.2.tgz#0012fcabc29cf964c130a01858768aa2bb65b5af" @@ -4735,6 +5192,11 @@ lodash.sortby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= +lodash.startcase@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" + integrity sha1-lDbjTtJgk+1/+uGTYUQ1CRXZrdg= + lodash.template@^3.0.0: version "3.6.2" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" @@ -4794,6 +5256,22 @@ loose-envify@^1.0.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lru-cache@^4.0.1: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + lru-queue@0.1: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" @@ -4818,6 +5296,11 @@ map-obj@^1.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= +map-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" + integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= + map-obj@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.1.0.tgz#b91221b542734b9f14256c0132c897c5d7256fd5" @@ -4893,6 +5376,21 @@ memoizee@0.4.X: next-tick "1" timers-ext "^0.1.5" +meow@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-5.0.0.tgz#dfc73d63a9afc714a5e371760eb5c88b91078aa4" + integrity sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig== + dependencies: + camelcase-keys "^4.0.0" + decamelize-keys "^1.0.0" + loud-rejection "^1.0.0" + minimist-options "^3.0.1" + normalize-package-data "^2.3.4" + read-pkg-up "^3.0.0" + redent "^2.0.0" + trim-newlines "^2.0.0" + yargs-parser "^10.0.0" + meow@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/meow/-/meow-7.0.1.tgz#1ed4a0a50b3844b451369c48362eb0515f04c1dc" @@ -4978,6 +5476,14 @@ minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" +minimist-options@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" + integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -5005,6 +5511,11 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" +mixme@^0.3.1: + version "0.3.5" + resolved "https://registry.yarnpkg.com/mixme/-/mixme-0.3.5.tgz#304652cdaf24a3df0487205e61ac6162c6906ddd" + integrity sha512-SyV9uPETRig5ZmYev0ANfiGeB+g6N2EnqqEfBbCGmmJ6MgZ3E4qv5aPbnHVdZ60KAHHXV+T3sXopdrnIXQdmjQ== + mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" @@ -5101,7 +5612,7 @@ normalize-html-whitespace@^1.0.0: resolved "https://registry.yarnpkg.com/normalize-html-whitespace/-/normalize-html-whitespace-1.0.0.tgz#5e3c8e192f1b06c3b9eee4b7e7f28854c7601e34" integrity sha512-9ui7CGtOOlehQu0t/OhhlmDyc71mKVlv+4vF+me4iZLPrNtRL2xoquEdfZxasC/bdQi/Hr3iTrpyRKIG+ocabA== -normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -5145,6 +5656,13 @@ now-and-later@^2.0.0: dependencies: once "^1.3.2" +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" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + nth-check@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" @@ -5360,6 +5878,23 @@ os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= +outdent@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" + integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== + +p-filter@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" + integrity sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw== + dependencies: + p-map "^2.0.0" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -5395,6 +5930,11 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-map@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -5536,6 +6076,11 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= +path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -5574,6 +6119,13 @@ path-type@^2.0.0: dependencies: pify "^2.0.0" +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -5594,6 +6146,16 @@ pify@^2.0.0, pify@^2.3.0: resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" @@ -5613,6 +6175,13 @@ pkg-dir@^2.0.0: dependencies: find-up "^2.1.0" +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" @@ -6128,6 +6697,16 @@ posthtml@^0.12.0, posthtml@^0.12.1: posthtml-parser "^0.4.2" posthtml-render "^1.2.2" +preferred-pm@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/preferred-pm/-/preferred-pm-3.0.0.tgz#26cc7fbbfc1815e4cb8272d5fdde15dc96220fb8" + integrity sha512-NbN+2UuqjakJpyHamsuIWyeFdQcFUQHF9nkw16hpFE++z3px+/KDsj+AF1h0BlnsBJi1Z5U4EKBW7XnHriny8g== + dependencies: + find-up "^4.1.0" + find-yarn-workspace-root2 "^1.2.11" + path-exists "^4.0.0" + which-pm "2.0.0" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -6138,6 +6717,11 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +prettier@^1.18.2: + version "1.19.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" + integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== + pretty-bytes@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-3.0.1.tgz#27d0008d778063a0b4811bb35c79f1bd5d5fbccf" @@ -6165,6 +6749,11 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + psl@^1.1.28: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -6217,6 +6806,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +quick-lru@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" + integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= + quick-lru@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" @@ -6260,6 +6854,14 @@ read-pkg-up@^2.0.0: find-up "^2.0.0" read-pkg "^2.0.0" +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -6287,6 +6889,15 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + read-pkg@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" @@ -6297,6 +6908,16 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" +read-yaml-file@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-yaml-file/-/read-yaml-file-1.1.0.tgz#9362bbcbdc77007cc8ea4519fe1c0b821a7ce0d8" + integrity sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA== + dependencies: + graceful-fs "^4.1.5" + js-yaml "^3.6.1" + pify "^4.0.1" + strip-bom "^3.0.0" + "readable-stream@2 || 3", readable-stream@^3.1.1: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -6345,6 +6966,14 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +redent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" + integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= + dependencies: + indent-string "^3.0.0" + strip-indent "^2.0.0" + redent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" @@ -6857,6 +7486,13 @@ setprototypeof@1.1.1: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -6864,12 +7500,17 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -signal-exit@^3.0.2: +signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== @@ -6895,6 +7536,17 @@ slice-ansi@^2.1.0: astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" +smartwrap@^1.2.3: + version "1.2.5" + resolved "https://registry.yarnpkg.com/smartwrap/-/smartwrap-1.2.5.tgz#45ee3e09ac234e5f7f17c16e916f511834f3cd23" + integrity sha512-bzWRwHwu0RnWjwU7dFy7tF68pDAx/zMSu3g7xr9Nx5J0iSImYInglwEVExyHLxXljy6PWMjkSAbwF7t2mPnRmg== + dependencies: + breakword "^1.0.5" + grapheme-splitter "^1.0.4" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + yargs "^15.1.0" + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -7039,6 +7691,14 @@ sparkles@^1.0.0: resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== +spawndamnit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/spawndamnit/-/spawndamnit-2.0.0.tgz#9f762ac5c3476abb994b42ad592b5ad22bb4b0ad" + integrity sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA== + dependencies: + cross-spawn "^5.1.0" + signal-exit "^3.0.2" + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -7158,6 +7818,13 @@ stream-throttle@^0.1.3: commander "^2.2.0" limiter "^1.0.5" +stream-transform@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-2.0.2.tgz#3cb7a14c802eb39bc40caaab0535e584f3a65caf" + integrity sha512-J+D5jWPF/1oX+r9ZaZvEXFbu7znjxSkbNAHJ9L44bt/tCVuOEWZlDqU9qJk7N2xBU1S+K2DPpSKeR/MucmCA1Q== + dependencies: + mixme "^0.3.1" + streamfilter@^1.0.5: version "1.0.7" resolved "https://registry.yarnpkg.com/streamfilter/-/streamfilter-1.0.7.tgz#ae3e64522aa5a35c061fd17f67620c7653c643c9" @@ -7174,6 +7841,14 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" +string-width@^2.0.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + string-width@^3.0.0, string-width@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" @@ -7263,6 +7938,13 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: dependencies: ansi-regex "^2.0.0" +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" @@ -7294,6 +7976,16 @@ strip-bom@^3.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + +strip-indent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" + integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -7471,6 +8163,18 @@ table@^5.2.3, table@^5.4.6: slice-ansi "^2.1.0" string-width "^3.0.0" +term-size@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" + integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= + dependencies: + execa "^0.7.0" + +term-size@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" + integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== + terser@^4.0.0, terser@^4.3.9: version "4.7.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.7.0.tgz#15852cf1a08e3256a80428e865a2fa893ffba006" @@ -7623,6 +8327,11 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +trim-newlines@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" + integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= + trim-newlines@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.0.tgz#79726304a6a898aa8373427298d54c2ee8b1cb30" @@ -7648,6 +8357,18 @@ tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== +tty-table@^2.7.0: + version "2.8.13" + resolved "https://registry.yarnpkg.com/tty-table/-/tty-table-2.8.13.tgz#d484a416381973eaebbdf19c79136b390e5c6d70" + integrity sha512-eVV/+kB6fIIdx+iUImhXrO22gl7f6VmmYh0Zbu6C196fe1elcHXd7U6LcLXu0YoVPc2kNesWiukYcdK8ZmJ6aQ== + dependencies: + chalk "^3.0.0" + csv "^5.3.1" + smartwrap "^1.2.3" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + yargs "^15.1.0" + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -8163,6 +8884,13 @@ w3c-xmlserializer@^1.1.2: webidl-conversions "^4.0.2" xml-name-validator "^3.0.0" +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -8199,7 +8927,15 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.14, which@^1.3.1: +which-pm@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-pm/-/which-pm-2.0.0.tgz#8245609ecfe64bf751d0eef2f376d83bf1ddb7ae" + integrity sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w== + dependencies: + load-yaml-file "^0.2.0" + path-exists "^4.0.0" + +which@^1.2.14, which@^1.2.9, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -8213,6 +8949,13 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +widest-line@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" + integrity sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA== + dependencies: + string-width "^2.1.1" + window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" @@ -8240,6 +8983,15 @@ wrap-ansi@^5.1.0: string-width "^3.0.0" strip-ansi "^5.0.0" +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -8320,6 +9072,11 @@ y18n@^4.0.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + yaml@^1.7.2: version "1.10.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" @@ -8333,6 +9090,13 @@ yargs-parser@5.0.0-security.0: camelcase "^3.0.0" object.assign "^4.1.0" +yargs-parser@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" + integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== + dependencies: + camelcase "^4.1.0" + yargs-parser@^15.0.1: version "15.0.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.1.tgz#54786af40b820dcb2fb8025b11b4d659d76323b3" @@ -8341,7 +9105,7 @@ yargs-parser@^15.0.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^18.1.3: +yargs-parser@^18.1.1, yargs-parser@^18.1.3: version "18.1.3" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== @@ -8412,6 +9176,23 @@ yargs@^14.0.0: y18n "^4.0.0" yargs-parser "^15.0.1" +yargs@^15.1.0: + version "15.3.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b" + integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.1" + yargs@^7.1.0: version "7.1.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.1.tgz#67f0ef52e228d4ee0d6311acede8850f53464df6" From f7f5cae8177b0b52788a3f75c26ca6c2ec9c5dc8 Mon Sep 17 00:00:00 2001 From: Felix Date: Wed, 27 May 2020 14:23:56 -0500 Subject: [PATCH 045/131] Clarify changesets a bit more in CONTRIBUTING.md --- .github/CONTRIBUTING.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 72b2afb..6b4f88e 100755 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -56,12 +56,14 @@ yarn lint We use software called Changesets to keep track of what changes have been made between versions. Make sure to create a changelog before creating your pull request! -Just run this command, and then answer a few questions: +Just run this command for each change you made, and then answer a few questions: ``` yarn changeset ``` +If you're not sure what kind of change you're making, pick patch. + ## Directory structure ``` From 1297b75c5cc7dbf70e9fd06accbc2be8932352f1 Mon Sep 17 00:00:00 2001 From: Felix Date: Wed, 27 May 2020 14:47:48 -0500 Subject: [PATCH 046/131] Make some changes outlined in #64 --- README.md | 4 ++-- package.json | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c3ca51a..91e07ff 100644 --- a/README.md +++ b/README.md @@ -40,11 +40,11 @@ Just stick this in your ``: ### 🌙 Dark Theme: -`` +`` ### ☀ Light Theme: -`` +``
diff --git a/package.json b/package.json index 80e9405..0abe881 100644 --- a/package.json +++ b/package.json @@ -87,6 +87,7 @@ ] }, "files": [ - "dist" + "dist/*.css", + "LICENSE.md" ] } From 8695e925ba3dc314ebda499754a984b4122ce78b Mon Sep 17 00:00:00 2001 From: Felix Date: Wed, 27 May 2020 18:29:40 -0500 Subject: [PATCH 047/131] Oops, I deleted the button code --- src/parts/_forms.css | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/parts/_forms.css b/src/parts/_forms.css index 1cff40d..99d08f6 100644 --- a/src/parts/_forms.css +++ b/src/parts/_forms.css @@ -12,6 +12,22 @@ select { display: block; } +input, +button, +textarea, +select { + color: var(--form-text); + background-color: var(--background); + font-family: inherit; + font-size: inherit; + margin-right: 6px; + margin-bottom: 6px; + padding: 10px; + border: none; + border-radius: 6px; + outline: none; +} + input:not([type='checkbox']):not([type='radio']), input[type='range'], select, From 73143be201e3e33636d160dbafffcf03e2a76d33 Mon Sep 17 00:00:00 2001 From: Felix Date: Wed, 27 May 2020 18:29:52 -0500 Subject: [PATCH 048/131] Update cdn urls --- README.md | 4 ++-- docs/script.js | 4 ++-- gulpfile.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 91e07ff..1746bb7 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ Just stick this in your ``: ### 🌙 Dark Theme: -`` +`` ### ☀ Light Theme: @@ -81,7 +81,7 @@ Because of this, you can simply add your own stylesheet to the page and set your This short example will use Water.css, but color all links red: ```html - + ``` -If you want to change a value for dark or light mode only, use a media query like so: +If you want to change a value for dark or light mode only, use a media query like this: ```html @@ -115,15 +122,6 @@ If you are targeting browsers without support for CSS Custom Properties such as - Run `yarn build` to compile the CSS files - Use the compiled files in the `dist/` directory on your site -When making your changes, we recommend you don't change the values set by Water.css directly, instead simply add your own variable declarations: - -```css -/* ⬇ Add this block! */ -:root { - /* Your variable declarations, overriding previous ones */ -} -``` - You also might want to check out the [Contributing Guide](https://github.com/kognise/water.css/tree/master/.github/CONTRIBUTING.md) as it contains further information about the build setup. ## Contributing From 56be0bc0ae9e32f16f4f0be167adfba39bde7db4 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 18:37:30 -0500 Subject: [PATCH 057/131] Update readme badges --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index fb8a235..02f1811 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@

- - On Reddit - On Product Hunt + NPM page + On Product Hunt + Contributors MIT license

From cd08cd22a92127c89a1fa9e9ea0b7b7961e6a4bd Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 19:28:24 -0500 Subject: [PATCH 058/131] Improve checkboxes and radio button styles --- src/parts/_forms.css | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/parts/_forms.css b/src/parts/_forms.css index ff85308..4d41ddf 100644 --- a/src/parts/_forms.css +++ b/src/parts/_forms.css @@ -29,14 +29,20 @@ select { outline: none; } -input, -label { +input[type='checkbox'], +input[type='radio'] { + height: 1em; + width: 1em; +} + +input { vertical-align: top; } label { - display: inline-block; + vertical-align: middle; margin-bottom: 4px; + display: inline-block; } input:not([type='checkbox']):not([type='radio']), From c47f0e3599e52a9dbcf6540ec9bb5177939a23b4 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 19:33:52 -0500 Subject: [PATCH 059/131] Increase border radius --- src/parts/_forms.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/parts/_forms.css b/src/parts/_forms.css index 4d41ddf..48004ec 100644 --- a/src/parts/_forms.css +++ b/src/parts/_forms.css @@ -35,6 +35,10 @@ input[type='radio'] { width: 1em; } +input[type='radio'] { + border-radius: 100%; +} + input { vertical-align: top; } From 16fa28bdc8ecf781fbfe79e7ad415badc944bbc2 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 19:38:17 -0500 Subject: [PATCH 060/131] Add a clarification about prefers-color-scheme support --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 28fe84f..6c3e9f2 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,7 @@ For the main `water.css` file, dark is only treated as a _default theme_: if a u #### Want to support Internet Explorer? -Both `dark.css` and `light.css` support Internet Explorer 11, but the main `water.css` file **does not** due to lack of `prefers-color-scheme` support. +All three distrubutions of Water.css support Internet Explorer 11, but the main `water.css` file **doesn't respect the user's color scheme** and will be locked to dark mode due to lack of `prefers-color-scheme` support. Be aware that IE also doesn't support [runtime theming](#theming), and fixed fallback values will be used. If you want to override the Water.css theme, we recommend that you [compile your own theme](#compiling-your-own-theme). From 5c0043984f338a43eb14bdb5ca55a5fc83c976f5 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 19:40:15 -0500 Subject: [PATCH 061/131] Fix a smol typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6c3e9f2..ce9119e 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,7 @@ For the main `water.css` file, dark is only treated as a _default theme_: if a u #### Want to support Internet Explorer? -All three distrubutions of Water.css support Internet Explorer 11, but the main `water.css` file **doesn't respect the user's color scheme** and will be locked to dark mode due to lack of `prefers-color-scheme` support. +All three distributions of Water.css support Internet Explorer 11, but the main `water.css` file **doesn't respect the user's color scheme** and will be locked to dark mode due to lack of `prefers-color-scheme` support. Be aware that IE also doesn't support [runtime theming](#theming), and fixed fallback values will be used. If you want to override the Water.css theme, we recommend that you [compile your own theme](#compiling-your-own-theme). From fa7e9f5c51c85604609904fec83091919c61b8a8 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 23:05:22 -0500 Subject: [PATCH 062/131] Add husky --- .huskyrc.json | 5 +++ .stylelintrc => .stylelintrc.json | 0 package.json | 1 + yarn.lock | 55 +++++++++++++++++++++++++++++++ 4 files changed, 61 insertions(+) create mode 100644 .huskyrc.json rename .stylelintrc => .stylelintrc.json (100%) diff --git a/.huskyrc.json b/.huskyrc.json new file mode 100644 index 0000000..545efe5 --- /dev/null +++ b/.huskyrc.json @@ -0,0 +1,5 @@ +{ + "hooks": { + "pre-commit": "yarn lint" + } +} \ No newline at end of file diff --git a/.stylelintrc b/.stylelintrc.json similarity index 100% rename from .stylelintrc rename to .stylelintrc.json diff --git a/package.json b/package.json index 0abe881..3e15f64 100644 --- a/package.json +++ b/package.json @@ -58,6 +58,7 @@ "gulp-sourcemaps": "^2.6.5", "gulp-terser": "^1.2.0", "htmlnano": "^0.2.3", + "husky": "^4.2.5", "postcss-color-mod-function": "^3.0.3", "postcss-css-variables": "^0.12.0", "postcss-import": "^12.0.1", diff --git a/yarn.lock b/yarn.lock index eee7696..e557fa0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2188,6 +2188,11 @@ commander@^2.2.0, commander@^2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +compare-versions@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz#1a5689913685e5a87637b8d3ffca75514ec41d62" + integrity sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA== + component-bind@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" @@ -3498,6 +3503,13 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-versions@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-3.2.0.tgz#10297f98030a786829681690545ef659ed1d254e" + integrity sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww== + dependencies: + semver-regex "^2.0.0" + find-yarn-workspace-root2@^1.2.11: version "1.2.13" resolved "https://registry.yarnpkg.com/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.13.tgz#84d5dbf395b6de3476d0801c8d528b4c1e458e4a" @@ -4252,6 +4264,22 @@ human-id@^1.0.2: resolved "https://registry.yarnpkg.com/human-id/-/human-id-1.0.2.tgz#e654d4b2b0d8b07e45da9f6020d8af17ec0a5df3" integrity sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw== +husky@^4.2.5: + version "4.2.5" + resolved "https://registry.yarnpkg.com/husky/-/husky-4.2.5.tgz#2b4f7622673a71579f901d9885ed448394b5fa36" + integrity sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ== + dependencies: + chalk "^4.0.0" + ci-info "^2.0.0" + compare-versions "^3.6.0" + cosmiconfig "^6.0.0" + find-versions "^3.2.0" + opencollective-postinstall "^2.0.2" + pkg-dir "^4.2.0" + please-upgrade-node "^3.2.0" + slash "^3.0.0" + which-pm-runs "^1.0.0" + iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -5818,6 +5846,11 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" +opencollective-postinstall@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" + integrity sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw== + openurl@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/openurl/-/openurl-1.1.1.tgz#3875b4b0ef7a52c156f0db41d4609dbb0f94b387" @@ -6189,6 +6222,13 @@ pkg-up@^2.0.0: dependencies: find-up "^2.1.0" +please-upgrade-node@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" + integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== + dependencies: + semver-compare "^1.0.0" + plugin-error@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-0.1.2.tgz#3b9bb3335ccf00f425e07437e19276967da47ace" @@ -7387,6 +7427,11 @@ saxes@^3.1.9: dependencies: xmlchars "^2.1.1" +semver-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" + integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= + semver-greatest-satisfied-range@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" @@ -7394,6 +7439,11 @@ semver-greatest-satisfied-range@^1.1.0: dependencies: sver-compat "^1.5.0" +semver-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" + integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== + "semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -8927,6 +8977,11 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= +which-pm-runs@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" + integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= + which-pm@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-pm/-/which-pm-2.0.0.tgz#8245609ecfe64bf751d0eef2f376d83bf1ddb7ae" From 9fb32259b93a99c584177b42ddf23cbbb8989ae5 Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 28 May 2020 23:15:55 -0500 Subject: [PATCH 063/131] Add bookmarklet code --- bookmarklet/original.js | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 bookmarklet/original.js diff --git a/bookmarklet/original.js b/bookmarklet/original.js new file mode 100644 index 0000000..989787c --- /dev/null +++ b/bookmarklet/original.js @@ -0,0 +1,23 @@ +// Water.css Bookmarklet +// --------------------- + +const $$ = (selector) => document.querySelectorAll(selector) +const createElement = (tagName, properties) => Object.assign(document.createElement(tagName), properties) + +// Remove all CSS stylesheets, external and internal +$$('link[rel="stylesheet"],style').forEach((el) => el.remove()) + +// Remove all inline styles +$$('*').forEach((el) => (el.style = '')) + +// Add water.css and responsive viewport (if necessary) +document.head.append( + createElement('link', { + rel: 'stylesheet', + href: '//cdn.jsdelivr.net/npm/water.css@2/dist/water.css' + }), + !$$('meta[name="viewport"]').length && createElement('meta', { + name: 'viewport', + content: 'width=device-width,initial-scale=1.0' + }) +) From dbd4d1b5793d040149e2c60ed92813583ab0bd81 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 11:47:26 -0500 Subject: [PATCH 064/131] Add basic print stylesheet --- src/parts/_core.css | 1 + src/parts/_print.css | 53 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 src/parts/_print.css diff --git a/src/parts/_core.css b/src/parts/_core.css index 76f0428..eaa3316 100644 --- a/src/parts/_core.css +++ b/src/parts/_core.css @@ -5,3 +5,4 @@ @import '_links.css'; @import '_code.css'; @import '_misc.css'; +@import '_print.css'; diff --git a/src/parts/_print.css b/src/parts/_print.css new file mode 100644 index 0000000..b088192 --- /dev/null +++ b/src/parts/_print.css @@ -0,0 +1,53 @@ +@media print { + body, + pre, + code, + summary, + details, + button, + input, + textarea { + background-color: #fff; + } + + button, + input, + textarea { + border: 1px solid #000; + } + + body, + h1, + h2, + h3, + h4, + h5, + h6, + pre, + code, + button, + input, + textarea, + footer, + summary, + strong { + color: #000; + } + + summary::marker { + color: #000; + } + + summary::-webkit-details-marker { + color: #000; + } + + tbody tr:nth-child(even) { + background-color: #f2f2f2; + } + + a { + color: #00f; + text-decoration: underline; + } +} From 68834efd732e58c3a82bbb25973179a9550a6d9d Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 02:21:34 +0200 Subject: [PATCH 065/131] refactor: remove old versionpicker code --- docs/script.js | 188 ---------------------------------------- docs/versionpicker.html | 119 ------------------------- 2 files changed, 307 deletions(-) delete mode 100755 docs/versionpicker.html diff --git a/docs/script.js b/docs/script.js index f9f7dd1..ef7a9d6 100644 --- a/docs/script.js +++ b/docs/script.js @@ -60,191 +60,3 @@ prefersColorScheme.addEventListener('change', () => { updateTheme() startupStylesheet.remove() - -// // @ts-check -// /** @typedef {'dark' | 'light'} Theme */ -// /** @typedef {keyof typeof FILE_SIZES} FileName */ -// /** @typedef {'success' | 'failed'} CopyStatus */ -// /** -// * @typedef {Object} VersionOptions Configurable options for water.css versions -// * @prop {Theme} theme -// * @prop {boolean} isLegacy -// * @prop {boolean} isStandalone -// */ -// /** -// * @typedef {Object} Libraries External packages exposed on `window` (loaded through ` @@ -118,9 +121,9 @@ Copy to clipboard - +
Oh noes, the JavaScript hasn't loaded!
- +

Options

diff --git a/docs/script.js b/docs/script.js index ef7a9d6..cd877a6 100644 --- a/docs/script.js +++ b/docs/script.js @@ -1,3 +1,5 @@ +'use strict' + const cdnBase = 'https://cdn.jsdelivr.net/npm/water.css@2/dist/' const localBase = './water.css/' @@ -25,7 +27,8 @@ const updateProductHunt = (theme) => { } const updateTheme = () => { - const theme = themeForm.theme.value + const theme = themeForm.querySelector('input[name="theme"]:checked').value + const fileName = `${theme === 'auto' ? 'water' : theme}.min.css` const cdnUrl = `${cdnBase}${fileName}` const localUrl = `${localBase}${fileName}` @@ -40,7 +43,7 @@ const updateTheme = () => { table.theme.innerHTML = 'Defaults to dark, but respects user-defined theme settings. Detected via prefers-color-scheme' table.browserSupport.innerHTML = ` All current browsers - (support for CSS Custom Properties) + (support for CSS Custom Properties) ` } else { table.theme.innerText = `Theme is forced to ${theme}` @@ -49,14 +52,14 @@ const updateTheme = () => { } } -themeForm.addEventListener('input', updateTheme) +themeForm.addEventListener('change', updateTheme) const prefersColorScheme = window.matchMedia('(prefers-color-scheme: light)') updateProductHunt(prefersColorScheme.matches ? 'light' : 'dark') -prefersColorScheme.addEventListener('change', () => { +prefersColorScheme.addListener(() => { if (themeForm.theme.value !== 'auto') return updateProductHunt(prefersColorScheme.matches ? 'light' : 'dark') }) updateTheme() -startupStylesheet.remove() +startupStylesheet.parentElement.removeChild(startupStylesheet) From 3a3762ff9eb231fe57f129218844dee8b6653006 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 02:43:55 +0200 Subject: [PATCH 067/131] feat: turn "prefers-color-scheme" into link to MDN --- docs/script.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/script.js b/docs/script.js index cd877a6..8f6694a 100644 --- a/docs/script.js +++ b/docs/script.js @@ -40,13 +40,16 @@ const updateTheme = () => { table.fileSize.innerText = `${fileSizes[theme].toFixed(2)} kb` if (theme === 'auto') { - table.theme.innerHTML = 'Defaults to dark, but respects user-defined theme settings. Detected via prefers-color-scheme' + table.theme.innerHTML = ` + Defaults to dark, but respects user-defined theme settings.
+ (detected via prefers-color-scheme) + ` table.browserSupport.innerHTML = ` All current browsers (support for CSS Custom Properties) ` } else { - table.theme.innerText = `Theme is forced to ${theme}` + table.theme.innerText = `Theme is forced to ${theme}.` table.browserSupport.innerText = 'All browsers (including Internet Explorer)' updateProductHunt(theme) } From aff527a79115504dc246b017eb7f2d243fed4cb0 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 02:46:17 +0200 Subject: [PATCH 068/131] docs: correctly document default theme as "light" --- docs/script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/script.js b/docs/script.js index 8f6694a..a7502ff 100644 --- a/docs/script.js +++ b/docs/script.js @@ -41,7 +41,7 @@ const updateTheme = () => { if (theme === 'auto') { table.theme.innerHTML = ` - Defaults to dark, but respects user-defined theme settings.
+ Defaults to light, but respects user-defined theme settings.
(detected via prefers-color-scheme) ` table.browserSupport.innerHTML = ` From f8c095827b6983fb07f2b721df38561240991ac4 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 03:00:15 +0200 Subject: [PATCH 069/131] fix: always update product hunt on theme change If the selected (forced) theme was different from the system preference and then switches back to auto, need to reset the product hunt theme too --- docs/script.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/docs/script.js b/docs/script.js index a7502ff..02d72d0 100644 --- a/docs/script.js +++ b/docs/script.js @@ -22,7 +22,10 @@ const table = { browserSupport: document.getElementById('table-browser-support') } -const updateProductHunt = (theme) => { +const prefersColorScheme = window.matchMedia('(prefers-color-scheme: light)') + +const updateProductHunt = () => { + const theme = prefersColorScheme.matches ? 'light' : 'dark' productHunt.src = `https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=150490&theme=${theme}&period=daily` } @@ -39,6 +42,8 @@ const updateTheme = () => { table.fileName.innerText = fileName table.fileSize.innerText = `${fileSizes[theme].toFixed(2)} kb` + updateProductHunt() + if (theme === 'auto') { table.theme.innerHTML = ` Defaults to light, but respects user-defined theme settings.
@@ -51,17 +56,15 @@ const updateTheme = () => { } else { table.theme.innerText = `Theme is forced to ${theme}.` table.browserSupport.innerText = 'All browsers (including Internet Explorer)' - updateProductHunt(theme) } } themeForm.addEventListener('change', updateTheme) -const prefersColorScheme = window.matchMedia('(prefers-color-scheme: light)') -updateProductHunt(prefersColorScheme.matches ? 'light' : 'dark') +updateProductHunt() prefersColorScheme.addListener(() => { if (themeForm.theme.value !== 'auto') return - updateProductHunt(prefersColorScheme.matches ? 'light' : 'dark') + updateProductHunt() }) updateTheme() From d93d03acd5e6e31a38fa0bdee6f3f3260600d00c Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 03:14:24 +0200 Subject: [PATCH 070/131] chore: add .prettierignore --- .prettierignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..f59ec20 --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +* \ No newline at end of file From 24ac4002055fcf6680c7a73af5f41cc6d981f567 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 03:58:04 +0200 Subject: [PATCH 071/131] feat: add transitions for the code snippets --- docs/index.html | 8 ++++++-- docs/script.js | 9 +++++---- docs/style.css | 27 ++++++++++++++++++++++----- 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/docs/index.html b/docs/index.html index 95cbc0a..3fe3f07 100644 --- a/docs/index.html +++ b/docs/index.html @@ -114,7 +114,7 @@

Installation

-
+

Paste this into the <head> of your HTML:

-
Oh noes, the JavaScript hasn't loaded!
+

Options

diff --git a/docs/script.js b/docs/script.js index 02d72d0..3e79fb0 100644 --- a/docs/script.js +++ b/docs/script.js @@ -1,6 +1,5 @@ 'use strict' -const cdnBase = 'https://cdn.jsdelivr.net/npm/water.css@2/dist/' const localBase = './water.css/' const fileSizes = { @@ -10,10 +9,10 @@ const fileSizes = { } const themeForm = document.getElementById('theme-form') -const linkSnippet = document.getElementById('link-snippet') const stylesheet = document.getElementById('js-stylesheet') const startupStylesheet = document.getElementById('js-startup-stylesheet') const productHunt = document.getElementById('product-hunt') +const linkSnippets = [].slice.call(document.querySelectorAll('#link-snippet-container > pre')) const table = { fileName: document.getElementById('table-file-name'), @@ -33,12 +32,14 @@ const updateTheme = () => { const theme = themeForm.querySelector('input[name="theme"]:checked').value const fileName = `${theme === 'auto' ? 'water' : theme}.min.css` - const cdnUrl = `${cdnBase}${fileName}` const localUrl = `${localBase}${fileName}` stylesheet.href = localUrl - linkSnippet.innerText = `` + for (const snippet of linkSnippets) { + snippet.hidden = snippet.id.indexOf(theme) === -1 + } + table.fileName.innerText = fileName table.fileSize.innerText = `${fileSizes[theme].toFixed(2)} kb` diff --git a/docs/style.css b/docs/style.css index 34b20f8..88e1e80 100755 --- a/docs/style.css +++ b/docs/style.css @@ -6,10 +6,6 @@ html { margin-top: 1rem; } -.version-select { - overflow: hidden; -} - .version-select-snippet h3 { margin: 1rem 2.5rem 1rem 0; } @@ -67,4 +63,25 @@ body > footer { Droid Sans, Helvetica Neue, sans-serif; -} \ No newline at end of file +} + +#link-snippet-container { + overflow: hidden; + display: grid; + display: -ms-grid; + -ms-grid-columns: 1fr; +} + +#link-snippet-container > pre { + overflow: auto; + grid-column: 1; + grid-row: 1; + transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275) 220ms; +} + +#link-snippet-container > pre[hidden] { + display: block; + visibility: hidden; + transform: scale(0); + transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275), visibility 0ms 220ms; +} From c938689a7ea4eec8826502bcc9d961d7e1e03cf6 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 04:27:57 +0200 Subject: [PATCH 072/131] feat: wire up copy button --- docs/index.html | 8 +++++++- docs/script.js | 13 +++++++++++++ docs/style.css | 4 ++-- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/docs/index.html b/docs/index.html index 3fe3f07..68d9db5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -57,6 +57,11 @@ } + + - - From 4af11172f13c8f0f89276808cd832bd490284cb6 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 04:46:54 +0200 Subject: [PATCH 075/131] feat: remove misleading note about browser support --- docs/index.html | 5 ----- docs/script.js | 12 +++--------- 2 files changed, 3 insertions(+), 14 deletions(-) diff --git a/docs/index.html b/docs/index.html index e1b6acc..78b816b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -168,11 +168,6 @@ Theme - - - Browser support - -
diff --git a/docs/script.js b/docs/script.js index 8b43794..314b194 100644 --- a/docs/script.js +++ b/docs/script.js @@ -19,8 +19,7 @@ const linkSnippets = [].slice.call(document.querySelectorAll('#link-snippet-cont const table = { fileName: document.getElementById('table-file-name'), fileSize: document.getElementById('table-file-size'), - theme: document.getElementById('table-theme'), - browserSupport: document.getElementById('table-browser-support') + theme: document.getElementById('table-theme') } const prefersColorScheme = window.matchMedia('(prefers-color-scheme: light)') @@ -49,16 +48,11 @@ const updateTheme = () => { if (theme === 'auto') { table.theme.innerHTML = ` - Defaults to light, but respects user-defined theme settings.
- (detected via prefers-color-scheme) - ` - table.browserSupport.innerHTML = ` - All current browsers - (support for CSS Custom Properties) + Respects user-defined theme settings using prefers-color-scheme.
+ Light in browsers where the theme settings can't be detected. ` } else { table.theme.innerText = `Theme is forced to ${theme}.` - table.browserSupport.innerText = 'All browsers (including Internet Explorer)' } } From 30cbcfa4921ca2447597ef2c3a09aba2cdcc9db3 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 05:09:52 +0200 Subject: [PATCH 076/131] fix: no bouncey transition, max scale 1 --- docs/style.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/style.css b/docs/style.css index 034dd22..ba7c144 100755 --- a/docs/style.css +++ b/docs/style.css @@ -35,14 +35,14 @@ html { overflow: auto; grid-column: 1; grid-row: 1; - transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275) 220ms; + transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1) 220ms; } #link-snippet-container > pre[hidden] { display: block; visibility: hidden; transform: scale(0); - transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1.275), visibility 0ms 220ms; + transition: transform 220ms cubic-bezier(0.175, 0.885, 0.32, 1), visibility 0ms 220ms; } #theme-form > label:not(:last-of-type) { From 827691d5513ea52dfbc5cfc403ee28597a6ee548 Mon Sep 17 00:00:00 2001 From: Jonas Kuske <30421456+jonaskuske@users.noreply.github.com> Date: Sat, 30 May 2020 05:16:45 +0200 Subject: [PATCH 077/131] fix: allow overriding product hunt theme --- docs/script.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/script.js b/docs/script.js index 314b194..4e9f01f 100644 --- a/docs/script.js +++ b/docs/script.js @@ -24,8 +24,8 @@ const table = { const prefersColorScheme = window.matchMedia('(prefers-color-scheme: light)') -const updateProductHunt = () => { - const theme = prefersColorScheme.matches ? 'light' : 'dark' +const updateProductHunt = (theme) => { + theme = theme || (prefersColorScheme.matches ? 'light' : 'dark') productHunt.src = `https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=150490&theme=${theme}&period=daily` } @@ -44,14 +44,14 @@ const updateTheme = () => { table.fileName.innerText = fileName table.fileSize.innerText = `${fileSizes[theme].toFixed(2)} kb` - updateProductHunt() - if (theme === 'auto') { + updateProductHunt() table.theme.innerHTML = ` Respects user-defined theme settings using prefers-color-scheme.
Light in browsers where the theme settings can't be detected. ` } else { + updateProductHunt(theme) table.theme.innerText = `Theme is forced to ${theme}.` } } From 95296ac857e8c3a3eb28900797f5c393841dc60a Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 22:26:32 -0500 Subject: [PATCH 078/131] Update file sizes --- docs/script.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/script.js b/docs/script.js index 4e9f01f..1bc7497 100644 --- a/docs/script.js +++ b/docs/script.js @@ -3,9 +3,9 @@ const localBase = './water.css/' const fileSizes = { - dark: 2.3, - light: 2.29, - auto: 2.96 + dark: 2.46, + light: 2.43, + auto: 3.13 } const themeForm = document.getElementById('theme-form') From 5e3cc93c8b855b1e441fdf43750c7f863776b288 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 22:36:59 -0500 Subject: [PATCH 079/131] Slightly improve heading margins --- src/parts/_typography.css | 1 + 1 file changed, 1 insertion(+) diff --git a/src/parts/_typography.css b/src/parts/_typography.css index 2988935..a4a16d4 100644 --- a/src/parts/_typography.css +++ b/src/parts/_typography.css @@ -10,6 +10,7 @@ h4, h5, h6 { margin-bottom: 12px; + margin-top: 24px; } h1, From c940d74d10eb62a2b347ea2d9dc158d500ea9710 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 22:37:47 -0500 Subject: [PATCH 080/131] Add bookmarklet to documentation --- docs/index.html | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/index.html b/docs/index.html index 78b816b..7f88007 100644 --- a/docs/index.html +++ b/docs/index.html @@ -191,6 +191,19 @@

In fact, try resizing this page. Everything flows super nicely as you'll see.

+

Bookmarklet

+

+ A bookmarklet is a snippet of JavaScript that sits in your bookmarks bar. +

+

+ The Waterize bookmarklet can be used to make ugly websites more readable by replacing the styles with Water.css. Just drag this link to your bookmarks bar: +

+ + + Waterize + + +

Element demos

This is supposed to be a demo page so we need more elements!

From 7a656de78e74fabb0b38f8ae1628fcc1cec30b16 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 23:23:08 -0500 Subject: [PATCH 081/131] Add color emojis to the base stylesheet --- docs/index.html | 10 +++++----- docs/style.css | 20 -------------------- src/parts/_base.css | 2 +- 3 files changed, 6 insertions(+), 26 deletions(-) diff --git a/docs/index.html b/docs/index.html index 7f88007..69e6918 100644 --- a/docs/index.html +++ b/docs/index.html @@ -125,7 +125,7 @@ Paste this into the <head> of your HTML: @@ -139,13 +139,13 @@

Options

- + - + - + @@ -339,7 +339,7 @@
Heading 6
diff --git a/docs/style.css b/docs/style.css index ba7c144..a0c3fc9 100755 --- a/docs/style.css +++ b/docs/style.css @@ -63,23 +63,3 @@ body > footer { align-items: center; justify-content: space-between; } - -.emoji { - /* Use proper Emoji instead of plain Unicode chars */ - font-family: - 'Segoe UI Emoji', - 'Apple Color Emoji', - 'Noto Color Emoji', - system-ui, - -apple-system, - BlinkMacSystemFont, - Segoe UI, - Roboto, - Oxygen, - Ubuntu, - Cantarell, - Fira Sans, - Droid Sans, - Helvetica Neue, - sans-serif; -} diff --git a/src/parts/_base.css b/src/parts/_base.css index 88682eb..2166bbe 100644 --- a/src/parts/_base.css +++ b/src/parts/_base.css @@ -1,5 +1,5 @@ body { - font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; + font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',, 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif; line-height: 1.4; max-width: 800px; margin: 20px auto; From 69ba583ccd937458d2e2ffd666bccb3a290cdee1 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 23:23:50 -0500 Subject: [PATCH 082/131] Fix a typo (oops!) --- src/parts/_base.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/parts/_base.css b/src/parts/_base.css index 2166bbe..41cc1ee 100644 --- a/src/parts/_base.css +++ b/src/parts/_base.css @@ -1,5 +1,5 @@ body { - font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',, 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif; + font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif; line-height: 1.4; max-width: 800px; margin: 20px auto; From b49b852722a86e9a4b5bbd898eecfcabec195bb3 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 23:25:26 -0500 Subject: [PATCH 083/131] Update precommit hook to not fix changes and error --- .huskyrc.json | 2 +- package.json | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.huskyrc.json b/.huskyrc.json index 545efe5..42414c7 100644 --- a/.huskyrc.json +++ b/.huskyrc.json @@ -1,5 +1,5 @@ { "hooks": { - "pre-commit": "yarn lint" + "pre-commit": "yarn lint:nofix" } } \ No newline at end of file diff --git a/package.json b/package.json index c3761db..a5a5997 100644 --- a/package.json +++ b/package.json @@ -6,9 +6,10 @@ "scripts": { "build": "gulp build", "dev": "gulp watch", - "lint:js": "eslint **/*.js **/*.html gulpfile.js --fix", - "lint:css": "stylelint src/**/*.css docs/style.css --fix", - "lint": "yarn lint:js && yarn lint:css" + "lint:js": "eslint **/*.js **/*.html gulpfile.js", + "lint:css": "stylelint src/**/*.css docs/style.css", + "lint": "yarn lint:js --fix && yarn lint:css --fix", + "lint:nofix": "yarn lint:js && yarn lint:css" }, "repository": { "type": "git", From f7a0b68f08b4bc2a75c4bf8d24057fce15303ec0 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 29 May 2020 23:27:36 -0500 Subject: [PATCH 084/131] Fix color scheme priority --- src/builds/water.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/builds/water.css b/src/builds/water.css index 32d2d02..709f313 100644 --- a/src/builds/water.css +++ b/src/builds/water.css @@ -4,6 +4,6 @@ * if a system-wide theme preference is set on the user's device. */ -@import '../variables-light.css'; -@import '../variables-dark.css' (prefers-color-scheme: dark); +@import '../variables-dark.css'; +@import '../variables-light.css' (prefers-color-scheme: light); @import '../parts/_core.css'; From b06097ee38d3213161bcac51fd9c1b898a62d470 Mon Sep 17 00:00:00 2001 From: Felix Date: Sat, 30 May 2020 12:47:34 -0500 Subject: [PATCH 085/131] Remove unneeded styles --- package.json | 6 +----- yarn.lock | 20 -------------------- 2 files changed, 1 insertion(+), 25 deletions(-) diff --git a/package.json b/package.json index a5a5997..9051fc0 100644 --- a/package.json +++ b/package.json @@ -31,11 +31,9 @@ "@babel/core": "^7.4.5", "@babel/preset-env": "^7.4.5", "@changesets/cli": "^2.7.2", - "@ungap/url-search-params": "^0.1.2", "autoprefixer": "^9.5.1", "browser-sync": "^2.26.3", "chalk": "^2.4.2", - "clipboard-polyfill": "^2.8.1", "cssnano": "^4.1.10", "eslint": "^7.1.0", "eslint-config-standard": "^14.1.1", @@ -46,7 +44,6 @@ "eslint-plugin-prefer-arrow": "^1.2.1", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.1", - "favicon-mode-switcher": "^1.0.4", "gulp": "^4.0.0", "gulp-babel": "^8.0.0", "gulp-bytediff": "^1.0.0", @@ -66,8 +63,7 @@ "postcss-inline-svg": "^4.1.0", "posthtml-include": "^1.2.0", "stylelint": "^13.5.0", - "stylelint-config-standard": "^20.0.0", - "vue": "^2.6.10" + "stylelint-config-standard": "^20.0.0" }, "browserslist": { "legacy": [ diff --git a/yarn.lock b/yarn.lock index e557fa0..85a05eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1089,11 +1089,6 @@ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== -"@ungap/url-search-params@^0.1.2": - version "0.1.4" - resolved "https://registry.yarnpkg.com/@ungap/url-search-params/-/url-search-params-0.1.4.tgz#727e9b4c811beaa6be6d7e4cc0516663c884cfd0" - integrity sha512-RLwrxCTDNiNev9hpr9rDq8NyeQ8Nn0X1we4Wu7Tlf368I8r+7hBj3uObhifhuLk74egaYaSX5nUsBlWz6kjj+A== - abab@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" @@ -2017,11 +2012,6 @@ cli-width@^2.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== -clipboard-polyfill@^2.8.1: - version "2.8.6" - resolved "https://registry.yarnpkg.com/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz#19d27283f11f2933bb18737263b98b8c95b5a0f7" - integrity sha512-kz/1ov+PXsBpGnW9XJH3dLWdYj12FpXqO89Dngm/GRPoI36E/tnYs6N0YPTEhxM9WHAlFiN5eoyIVuv5nzKXvg== - cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -3409,11 +3399,6 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -favicon-mode-switcher@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/favicon-mode-switcher/-/favicon-mode-switcher-1.1.0.tgz#b06ec7526f25fdf0b744b456f16b4c9315b42fed" - integrity sha512-SL+F07TzXtJJ+/HDniyTmRyovkSfOCCQ5w4BJhkKOj4G8jVITrMPtjhzjjBZt4oiOZlIoUOJblooN3zBiw1v9w== - fclone@^1.0.11: version "1.0.11" resolved "https://registry.yarnpkg.com/fclone/-/fclone-1.0.11.tgz#10e85da38bfea7fc599341c296ee1d77266ee640" @@ -8913,11 +8898,6 @@ vinyl@^2.0.0: remove-trailing-separator "^1.0.1" replace-ext "^1.0.0" -vue@^2.6.10: - version "2.6.11" - resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.11.tgz#76594d877d4b12234406e84e35275c6d514125c5" - integrity sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ== - w3c-hr-time@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" From 476074e62eb823933189eb303be5fa4af171a0c5 Mon Sep 17 00:00:00 2001 From: Felix Date: Sat, 30 May 2020 12:52:48 -0500 Subject: [PATCH 086/131] Make documentation clearer --- README.md | 10 +++++----- src/builds/water.css | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ce9119e..73c62c9 100644 --- a/README.md +++ b/README.md @@ -59,11 +59,11 @@ Just stick this in your ``: #### Enforce a theme and ignore `(prefers-color-scheme)` -For the main `water.css` file, dark is only treated as a _default theme_: if a user has a preference for either dark or light mode on their device, the stylesheet will respect this. This detection is made possible through a recent CSS media query called `prefers-color-scheme`. If you want to avoid this behavior and enforce dark or light theme, use either `dark.css` or `light.css`. +For the main `water.css` file, light is only treated as a _default theme_: if a user has a preference for either dark or light mode on their device, the stylesheet will respect this. This detection is made possible through a CSS media query called `prefers-color-scheme`. If you want to avoid this behavior and enforce a theme, use either `dark.css` or `light.css`. #### Want to support Internet Explorer? -All three distributions of Water.css support Internet Explorer 11, but the main `water.css` file **doesn't respect the user's color scheme** and will be locked to dark mode due to lack of `prefers-color-scheme` support. +All three distributions of Water.css support Internet Explorer 11, but the main `water.css` file **doesn't respect the user's color scheme** and will be locked to light mode due to lack of `prefers-color-scheme` support. Be aware that IE also doesn't support [runtime theming](#theming), and fixed fallback values will be used. If you want to override the Water.css theme, we recommend that you [compile your own theme](#compiling-your-own-theme). @@ -101,12 +101,12 @@ If you want to change a value for dark or light mode only, use a media query lik ```html diff --git a/src/builds/water.css b/src/builds/water.css index 709f313..32d2d02 100644 --- a/src/builds/water.css +++ b/src/builds/water.css @@ -4,6 +4,6 @@ * if a system-wide theme preference is set on the user's device. */ -@import '../variables-dark.css'; -@import '../variables-light.css' (prefers-color-scheme: light); +@import '../variables-light.css'; +@import '../variables-dark.css' (prefers-color-scheme: dark); @import '../parts/_core.css'; From 1c7806c5182be87878fb6bab297c738535a4a6cc Mon Sep 17 00:00:00 2001 From: Felix Date: Sat, 30 May 2020 13:58:58 -0500 Subject: [PATCH 087/131] Add summary/details to the demo page, improve styles --- docs/index.html | 5 +++++ src/parts/_misc.css | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/docs/index.html b/docs/index.html index 69e6918..216e79e 100644 --- a/docs/index.html +++ b/docs/index.html @@ -283,6 +283,11 @@
+
+ Some summary/details can't hurt! +

Lorem ipsum dolor sit blah blah.

+
+

Typography

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque dictum hendrerit velit, quis diff --git a/src/parts/_misc.css b/src/parts/_misc.css index a705d13..1dd4fb9 100644 --- a/src/parts/_misc.css +++ b/src/parts/_misc.css @@ -88,6 +88,13 @@ summary { background-color: var(--background); padding: 10px; margin: -10px -10px 0; + cursor: pointer; + outline: none; +} + +summary:hover, +summary:focus { + text-decoration: underline; } details > :not(summary) { From 3a3d1baa6abc4f90409b5d47bc5ba1fafa07e082 Mon Sep 17 00:00:00 2001 From: Felix Date: Sat, 30 May 2020 14:01:59 -0500 Subject: [PATCH 088/131] Add min-height to