From df1043be0af0d3b4265966a4247c33de04cf8151 Mon Sep 17 00:00:00 2001 From: Runjuu Date: Fri, 30 Oct 2020 15:58:42 +0800 Subject: [PATCH] feat(dev): update build process change output from `resources/static/` to `static/` --- .gitignore | 2 - gulpfile.js | 67 +++++++---- package.json | 8 +- postcss.config.js | 2 +- resources/css/common.css | 6 +- resources/css/datepicker.css | 1 + resources/css/inter.css | 78 ++++++------ resources/css/style.css | 4 +- resources/fonts/inter/inter.css | 200 ------------------------------- shadow-cljs.edn | 4 +- yarn.lock | 202 ++++++++++++++++++++++++++++++-- 11 files changed, 291 insertions(+), 283 deletions(-) delete mode 100644 resources/fonts/inter/inter.css diff --git a/.gitignore b/.gitignore index cc7cbc0b672..4ad24f4c74f 100644 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,5 @@ static/ .DS_Store report.html strings.csv -/resources/static/css/tailwind.min.css -resources/static/style.css .calva diff --git a/gulpfile.js b/gulpfile.js index 5a89b055f7c..8baeb35387c 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,35 +1,58 @@ +const path = require('path') const gulp = require('gulp') const postcss = require('gulp-postcss') const concat = require('gulp-concat') -const merge = require('merge-stream') const cleanCSS = require('gulp-clean-css') +const del = require('del') + +const outputPath = path.join(__dirname, 'static') +const resourcesPath = path.join(__dirname, 'resources') +const sourcePath = path.join(__dirname, 'src') +const resourceFilePath = path.join(resourcesPath, '**') const tailwind = { - entryPath: './tailwind.css', - cssPath: './src/**/*.css', - outputDir: './resources/static/css/', - outputName: 'tailwind.min.css', + paths: [path.join(__dirname, 'tailwind.css'), path.join(sourcePath, '**/*.css')], + outputDir: path.join(outputPath, 'css'), + outputName: 'tailwind.build.css', } -function buildCSS() { - return merge(gulp.src(tailwind.entryPath), gulp.src(tailwind.cssPath)) - .pipe(postcss()) - .pipe(concat(tailwind.outputName)) - .pipe(gulp.dest(tailwind.outputDir)) -} +const css = { + watchCSS() { + return gulp.watch(tailwind.paths, { ignoreInitial: false }, css._buildTailwind) + }, -function watchCSS() { - return gulp.watch([tailwind.entryPath, tailwind.cssPath], { ignoreInitial: false }, buildCSS) -} + buildCSS(...params) { + return gulp.series(css._buildTailwind, css._optimizeCSSForRelease)(...params) + }, + + _buildTailwind() { + return gulp.src(tailwind.paths) + .pipe(postcss()) + .pipe(concat(tailwind.outputName)) + .pipe(gulp.dest(tailwind.outputDir)) + }, -function optimizeCSSForRelease() { - return gulp.src('./resources/static/css/style.css') - .pipe(cleanCSS()) - .pipe(gulp.dest('./resources/static/')) + _optimizeCSSForRelease() { + return gulp.src(path.join(outputPath, 'css', 'style.css')) + .pipe(cleanCSS()) + .pipe(gulp.dest(outputPath)) + }, } -const releaseCSS = gulp.series(buildCSS, optimizeCSSForRelease) +const common = { + clean() { + return del(outputPath) + }, + + syncResourceFile() { + return gulp.src(resourceFilePath).pipe(gulp.dest(outputPath)) + }, + + keepSyncResourceFile() { + return gulp.watch(resourceFilePath, { ignoreInitial: false }, common.syncResourceFile) + } +} -exports.watchCSS = watchCSS -exports.buildCSS = buildCSS -exports.releaseCSS = releaseCSS +exports.clean = common.clean +exports.watch = gulp.parallel(common.keepSyncResourceFile, css.watchCSS) +exports.build = gulp.series(common.syncResourceFile, css.buildCSS) diff --git a/package.json b/package.json index 6281841c44f..0ac6169c60c 100644 --- a/package.json +++ b/package.json @@ -6,11 +6,11 @@ "@fullhuman/postcss-purgecss": "^2.1.2", "@tailwindcss/ui": "^0.1.3", "cssnano": "^4.1.10", + "del": "^6.0.0", "gulp": "^4.0.2", "gulp-clean-css": "^4.3.0", "gulp-concat": "^2.6.1", "gulp-postcss": "^9.0.0", - "merge-stream": "^2.0.0", "postcss": "^7.0.21", "postcss-cli": "^6.1.3", "purgecss": "^2.1.0", @@ -18,15 +18,15 @@ "tailwindcss": "^1.3.4" }, "scripts": { - "watch:css": "gulp watchCSS", - "release:css": "NODE_ENV=production gulp releaseCSS", + "gulp:watch": "gulp watch", + "gulp:build": "NODE_ENV=production gulp build", "watch": "clojure -A:cljs watch app publishing", "release": "clojure -A:cljs release app publishing", "watch-app": "clojure -A:cljs watch app", "release-app": "clojure -A:cljs release app", "debug": "clojure -A:cljs release app --debug", "report": "clojure -A:cljs run shadow.cljs.build-report app report.html", - "clean": "/usr/bin/rm -rf target; /usr/bin/rm -rf ./resources/static/js/compiled; /usr/bin/rm -rf ./resources/static/js/cljs-runtime; /usr/bin/rm -rf ./resources/static/js/publishing; /usr/bin/rm -rf ./resources/static/js/main.js;" + "clean": "/usr/bin/rm -rf target; /usr/bin/rm -rf ./static;" }, "dependencies": { "codemirror": "^5.58.1", diff --git a/postcss.config.js b/postcss.config.js index e850255faf1..8a7db6e56a5 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -6,7 +6,7 @@ module.exports = (ctx) => ({ ctx.env === "production" ? require("@fullhuman/postcss-purgecss")({ content: [ - '../resources/static/js/main.js', + './static/js/main.js', // etc. ], diff --git a/resources/css/common.css b/resources/css/common.css index 30058470978..19446c66534 100644 --- a/resources/css/common.css +++ b/resources/css/common.css @@ -875,13 +875,13 @@ iframe { .aspect-ratio-square { padding-top: 100%; } -.aspect-ratio-16/9 { +.aspect-ratio-16\/9 { padding-top: 56.25%; } -.aspect-ratio-4/3 { +.aspect-ratio-4\/3 { padding-top: 75%; } -.aspect-ratio-21/9 { +.aspect-ratio-21\/9 { padding-top: 42.86%; } diff --git a/resources/css/datepicker.css b/resources/css/datepicker.css index 34569a152cf..091bb904122 100644 --- a/resources/css/datepicker.css +++ b/resources/css/datepicker.css @@ -227,3 +227,4 @@ } /*---------------------------------------------------------------------------------------- END OF DATE PICKER SECTION... +----------------------------------------------------------------------------------------*/ \ No newline at end of file diff --git a/resources/css/inter.css b/resources/css/inter.css index 4f1ef60d9c6..d13f6ecb3d7 100644 --- a/resources/css/inter.css +++ b/resources/css/inter.css @@ -3,16 +3,16 @@ font-style: normal; font-weight: 100; font-display: swap; - src: url("Inter-Thin-BETA.woff2") format("woff2"), - url("Inter-Thin-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Thin.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Thin.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 100; font-display: swap; - src: url("Inter-ThinItalic-BETA.woff2") format("woff2"), - url("Inter-ThinItalic-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-ThinItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-ThinItalic.woff?v=3.15") format("woff"); } @font-face { @@ -20,16 +20,16 @@ font-style: normal; font-weight: 200; font-display: swap; - src: url("Inter-ExtraLight-BETA.woff2") format("woff2"), - url("Inter-ExtraLight-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-ExtraLight.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-ExtraLight.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 200; font-display: swap; - src: url("Inter-ExtraLightItalic-BETA.woff2") format("woff2"), - url("Inter-ExtraLightItalic-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-ExtraLightItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-ExtraLightItalic.woff?v=3.15") format("woff"); } @font-face { @@ -37,16 +37,16 @@ font-style: normal; font-weight: 300; font-display: swap; - src: url("Inter-Light-BETA.woff2") format("woff2"), - url("Inter-Light-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Light.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Light.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 300; font-display: swap; - src: url("Inter-LightItalic-BETA.woff2") format("woff2"), - url("Inter-LightItalic-BETA.woff") format("woff"); + src: url("/static/fonts/inter/Inter-LightItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-LightItalic.woff?v=3.15") format("woff"); } @font-face { @@ -54,16 +54,16 @@ font-style: normal; font-weight: 400; font-display: swap; - src: url("Inter-Regular.woff2") format("woff2"), - url("Inter-Regular.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Regular.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Regular.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 400; font-display: swap; - src: url("Inter-Italic.woff2") format("woff2"), - url("Inter-Italic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Italic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Italic.woff?v=3.15") format("woff"); } @font-face { @@ -71,16 +71,16 @@ font-style: normal; font-weight: 500; font-display: swap; - src: url("Inter-Medium.woff2") format("woff2"), - url("Inter-Medium.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Medium.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Medium.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 500; font-display: swap; - src: url("Inter-MediumItalic.woff2") format("woff2"), - url("Inter-MediumItalic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-MediumItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-MediumItalic.woff?v=3.15") format("woff"); } @font-face { @@ -88,16 +88,16 @@ font-style: normal; font-weight: 600; font-display: swap; - src: url("Inter-SemiBold.woff2") format("woff2"), - url("Inter-SemiBold.woff") format("woff"); + src: url("/static/fonts/inter/Inter-SemiBold.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-SemiBold.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 600; font-display: swap; - src: url("Inter-SemiBoldItalic.woff2") format("woff2"), - url("Inter-SemiBoldItalic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-SemiBoldItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-SemiBoldItalic.woff?v=3.15") format("woff"); } @font-face { @@ -105,16 +105,16 @@ font-style: normal; font-weight: 700; font-display: swap; - src: url("Inter-Bold.woff2") format("woff2"), - url("Inter-Bold.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Bold.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Bold.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 700; font-display: swap; - src: url("Inter-BoldItalic.woff2") format("woff2"), - url("Inter-BoldItalic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-BoldItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-BoldItalic.woff?v=3.15") format("woff"); } @font-face { @@ -122,16 +122,16 @@ font-style: normal; font-weight: 800; font-display: swap; - src: url("Inter-ExtraBold.woff2") format("woff2"), - url("Inter-ExtraBold.woff") format("woff"); + src: url("/static/fonts/inter/Inter-ExtraBold.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-ExtraBold.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 800; font-display: swap; - src: url("Inter-ExtraBoldItalic.woff2") format("woff2"), - url("Inter-ExtraBoldItalic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-ExtraBoldItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-ExtraBoldItalic.woff?v=3.15") format("woff"); } @font-face { @@ -139,16 +139,16 @@ font-style: normal; font-weight: 900; font-display: swap; - src: url("Inter-Black.woff2") format("woff2"), - url("Inter-Black.woff") format("woff"); + src: url("/static/fonts/inter/Inter-Black.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-Black.woff?v=3.15") format("woff"); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 900; font-display: swap; - src: url("Inter-BlackItalic.woff2") format("woff2"), - url("Inter-BlackItalic.woff") format("woff"); + src: url("/static/fonts/inter/Inter-BlackItalic.woff2?v=3.15") format("woff2"), + url("/static/fonts/inter/Inter-BlackItalic.woff?v=3.15") format("woff"); } /* ------------------------------------------------------- @@ -166,7 +166,7 @@ Usage: font-display: swap; font-style: normal; font-named-instance: 'Regular'; - src: url("Inter-upright.var.woff2") format("woff2"); + src: url("/static/fonts/inter/Inter-roman.var.woff2?v=3.15") format("woff2"); } @font-face { font-family: 'Inter var'; @@ -174,7 +174,7 @@ Usage: font-display: swap; font-style: italic; font-named-instance: 'Italic'; - src: url("Inter-italic.var.woff2") format("woff2"); + src: url("/static/fonts/inter/Inter-italic.var.woff2?v=3.15") format("woff2"); } @@ -196,5 +196,5 @@ explicitly, e.g. font-weight: 100 900; font-display: swap; font-style: oblique 0deg 10deg; - src: url("Inter.var.woff2") format("woff2"); + src: url("/static/fonts/inter/Inter.var.woff2?v=3.15") format("woff2"); } diff --git a/resources/css/style.css b/resources/css/style.css index fcd2a4d6e2c..f6a056af89a 100644 --- a/resources/css/style.css +++ b/resources/css/style.css @@ -1,9 +1,9 @@ @charset "utf-8"; -@import "../fonts/inter/inter.css"; +@import "./inter.css"; @import "./reveal.min.css"; @import "./reveal_black.min.css"; @import "./katex.min.css"; -@import "./tailwind.min.css"; +@import "./tailwind.build.css"; /* Build by gulp. Check `_buildTailwind` for more detail */ @import "./common.css"; @import "./datepicker.css"; @import "./highlight.css"; diff --git a/resources/fonts/inter/inter.css b/resources/fonts/inter/inter.css deleted file mode 100644 index 66c7fb69c59..00000000000 --- a/resources/fonts/inter/inter.css +++ /dev/null @@ -1,200 +0,0 @@ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 100; - font-display: swap; - src: url("Inter-Thin.woff2?v=3.15") format("woff2"), - url("Inter-Thin.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 100; - font-display: swap; - src: url("Inter-ThinItalic.woff2?v=3.15") format("woff2"), - url("Inter-ThinItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 200; - font-display: swap; - src: url("Inter-ExtraLight.woff2?v=3.15") format("woff2"), - url("Inter-ExtraLight.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 200; - font-display: swap; - src: url("Inter-ExtraLightItalic.woff2?v=3.15") format("woff2"), - url("Inter-ExtraLightItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 300; - font-display: swap; - src: url("Inter-Light.woff2?v=3.15") format("woff2"), - url("Inter-Light.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 300; - font-display: swap; - src: url("Inter-LightItalic.woff2?v=3.15") format("woff2"), - url("Inter-LightItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url("Inter-Regular.woff2?v=3.15") format("woff2"), - url("Inter-Regular.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 400; - font-display: swap; - src: url("Inter-Italic.woff2?v=3.15") format("woff2"), - url("Inter-Italic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-display: swap; - src: url("Inter-Medium.woff2?v=3.15") format("woff2"), - url("Inter-Medium.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 500; - font-display: swap; - src: url("Inter-MediumItalic.woff2?v=3.15") format("woff2"), - url("Inter-MediumItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 600; - font-display: swap; - src: url("Inter-SemiBold.woff2?v=3.15") format("woff2"), - url("Inter-SemiBold.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 600; - font-display: swap; - src: url("Inter-SemiBoldItalic.woff2?v=3.15") format("woff2"), - url("Inter-SemiBoldItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 700; - font-display: swap; - src: url("Inter-Bold.woff2?v=3.15") format("woff2"), - url("Inter-Bold.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 700; - font-display: swap; - src: url("Inter-BoldItalic.woff2?v=3.15") format("woff2"), - url("Inter-BoldItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 800; - font-display: swap; - src: url("Inter-ExtraBold.woff2?v=3.15") format("woff2"), - url("Inter-ExtraBold.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 800; - font-display: swap; - src: url("Inter-ExtraBoldItalic.woff2?v=3.15") format("woff2"), - url("Inter-ExtraBoldItalic.woff?v=3.15") format("woff"); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 900; - font-display: swap; - src: url("Inter-Black.woff2?v=3.15") format("woff2"), - url("Inter-Black.woff?v=3.15") format("woff"); -} -@font-face { - font-family: 'Inter'; - font-style: italic; - font-weight: 900; - font-display: swap; - src: url("Inter-BlackItalic.woff2?v=3.15") format("woff2"), - url("Inter-BlackItalic.woff?v=3.15") format("woff"); -} - -/* ------------------------------------------------------- -Variable font. -Usage: - - html { font-family: 'Inter', sans-serif; } - @supports (font-variation-settings: normal) { - html { font-family: 'Inter var', sans-serif; } - } -*/ -@font-face { - font-family: 'Inter var'; - font-weight: 100 900; - font-display: swap; - font-style: normal; - font-named-instance: 'Regular'; - src: url("Inter-roman.var.woff2?v=3.15") format("woff2"); -} -@font-face { - font-family: 'Inter var'; - font-weight: 100 900; - font-display: swap; - font-style: italic; - font-named-instance: 'Italic'; - src: url("Inter-italic.var.woff2?v=3.15") format("woff2"); -} - - -/* -------------------------------------------------------------------------- -[EXPERIMENTAL] Multi-axis, single variable font. - -Slant axis is not yet widely supported (as of February 2019) and thus this -multi-axis single variable font is opt-in rather than the default. - -When using this, you will probably need to set font-variation-settings -explicitly, e.g. - - * { font-variation-settings: "slnt" 0deg } - .italic { font-variation-settings: "slnt" 10deg } - -*/ -@font-face { - font-family: 'Inter var experimental'; - font-weight: 100 900; - font-display: swap; - font-style: oblique 0deg 10deg; - src: url("Inter.var.woff2?v=3.15") format("woff2"); -} diff --git a/shadow-cljs.edn b/shadow-cljs.edn index f395273e27e..f464ca7baef 100644 --- a/shadow-cljs.edn +++ b/shadow-cljs.edn @@ -11,7 +11,7 @@ {:entries [frontend.extensions.code] :depends-on #{:main}}} - :output-dir "./resources/static/js" + :output-dir "./static/js" :asset-path "/static/js" :release {:asset-path "https://asset.logseq.com/static/js"} :compiler-options {:infer-externs :auto @@ -34,7 +34,7 @@ :release {:asset-path "https://asset.logseq.com/static/js"} - :output-dir "../resources/static/js/publishing" + :output-dir "./static/js/publishing" :asset-path "/static/js" :closure-defines {frontend.config/PUBLISHING true} diff --git a/yarn.lock b/yarn.lock index c9b4ca5e185..70caeb467d0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -32,11 +32,32 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.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" + 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.stat@^1.1.2": version "1.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== +"@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" + "@tailwindcss/custom-forms@^0.2.1": version "0.2.1" resolved "https://registry.yarnpkg.com/@tailwindcss/custom-forms/-/custom-forms-0.2.1.tgz#40e5ed1fff6d29d8ed1c508a0b2aaf8da96962e0" @@ -102,6 +123,14 @@ acorn@^7.0.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + alphanum-sort@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" @@ -248,6 +277,11 @@ array-union@^1.0.2: 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: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -421,6 +455,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" + brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -681,6 +722,11 @@ clean-css@4.2.3: dependencies: source-map "~0.6.0" +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -1162,6 +1208,20 @@ defined@^1.0.0: resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= +del@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952" + integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== + dependencies: + globby "^11.0.1" + graceful-fs "^4.2.4" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + rimraf "^3.0.2" + slash "^3.0.0" + dependency-graph@^0.8.0: version "0.8.1" resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.8.1.tgz#9b8cae3aa2c7bd95ccb3347a09a2d1047a6c3c5a" @@ -1210,6 +1270,13 @@ dir-glob@^2.2.2: dependencies: path-type "^3.0.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" + dom-helpers@^5.0.1: version "5.1.3" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.3.tgz#7233248eb3a2d1f74aafca31e52c5299cc8ce821" @@ -1528,6 +1595,18 @@ fast-glob@^2.2.6: merge2 "^1.2.3" micromatch "^3.1.10" +fast-glob@^3.1.1: + version "3.2.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" + integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ== + 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-levenshtein@^1.0.0: version "1.1.4" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz#e6a754cc8f15e58987aa9cbd27af66fd6f4e5af9" @@ -1538,6 +1617,13 @@ fast-xml-parser@^3.16.0: resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.17.4.tgz#d668495fb3e4bbcf7970f3c24ac0019d82e76477" integrity sha512-qudnQuyYBgnvzf5Lj/yxMcf4L9NcVWihXJg7CiU1L+oUCq8MUnFEfH2/nXR/W5uq+yvUN1h7z6s7vs2v1WkL1A== +fastq@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.9.0.tgz#e16a72f338eaca48e91b5c23593bcc2ef66b7947" + integrity sha512-i7FVWL8HhVY+CTkwFxkN2mk3h+787ixS5S63eb78diVRc1MCssarHq3W5cj0av7YDSwmaV928RNag+U1etRQ7w== + dependencies: + reusify "^1.0.4" + 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" @@ -1553,6 +1639,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" + find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -1712,6 +1805,13 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.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" @@ -1778,6 +1878,18 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" +globby@^11.0.1: + version "11.0.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" + integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== + 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" + globby@^9.0.0: version "9.2.0" resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" @@ -1799,7 +1911,7 @@ glogg@^1.0.0: dependencies: sparkles "^1.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2: +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -2019,6 +2131,11 @@ ignore@^4.0.3: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== +ignore@^5.1.4: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + immediate@~3.0.5: version "3.0.6" resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" @@ -2046,6 +2163,11 @@ import-from@^2.1.0: dependencies: resolve-from "^3.0.0" +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" @@ -2250,7 +2372,7 @@ 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== @@ -2279,11 +2401,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-path-cwd@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== + +is-path-inside@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" + integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== + 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" @@ -2620,12 +2757,7 @@ mem@^4.0.0: mimic-fn "^2.0.0" p-is-promise "^2.0.0" -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.2.3: +merge2@^1.2.3, merge2@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -2649,6 +2781,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" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -3060,6 +3200,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -3203,6 +3350,11 @@ path-type@^3.0.0: 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" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + pbkdf2@^3.0.3: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -3214,6 +3366,11 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" +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" @@ -4009,6 +4166,11 @@ ret@~0.1.10: 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" @@ -4019,6 +4181,13 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -4027,6 +4196,11 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" +run-parallel@^1.1.9: + version "1.1.10" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.10.tgz#60a51b2ae836636c81377df16cb107351bcd13ef" + integrity sha512-zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw== + safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" @@ -4149,6 +4323,11 @@ slash@^2.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -4525,6 +4704,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"