From a6477b82fc8bc61329c25411b34de09d234f0086 Mon Sep 17 00:00:00 2001 From: Jake Archibald Date: Wed, 16 Sep 2020 09:59:24 +0100 Subject: [PATCH] wip # Conflicts: # codecs/cpp.Dockerfile # codecs/imagequant/example.html # codecs/webp/dec/webp_dec.d.ts # codecs/webp/dec/webp_dec.js # codecs/webp/dec/webp_dec.wasm # codecs/webp/enc/webp_enc.d.ts # codecs/webp/enc/webp_enc.js # codecs/webp/enc/webp_enc.wasm # package-lock.json # package.json # src/codecs/tiny.webp # src_old/codecs/encoders.ts # src_old/codecs/processor-worker/tiny.avif # src_old/codecs/processor-worker/tiny.webp # src_old/codecs/tiny.webp # src_old/components/compress/index.tsx # src_old/lib/util.ts # src_old/sw/util.ts --- .gitignore | 7 +- .nvmrc | 2 +- .prettierrc.json | 4 + _headers.ejs | 18 - codecs/cpp.Dockerfile | 2 +- codecs/imagequant/Makefile | 4 +- codecs/imagequant/example.html | 34 +- codecs/imagequant/imagequant.d.ts | 21 +- codecs/imagequant/imagequant.js | 1238 +- codecs/imagequant/imagequant.wasm | Bin 58170 -> 58067 bytes codecs/mozjpeg_enc/Makefile | 6 +- codecs/mozjpeg_enc/example.html | 19 +- codecs/mozjpeg_enc/mozjpeg_enc.d.ts | 15 +- codecs/mozjpeg_enc/mozjpeg_enc.js | 1385 +- codecs/mozjpeg_enc/mozjpeg_enc.wasm | Bin 217799 -> 217348 bytes codecs/webp/Makefile | 6 +- codecs/webp/dec/example.html | 22 +- codecs/webp/dec/webp_dec.d.ts | 6 +- codecs/webp/dec/webp_dec.js | 1205 +- codecs/webp/dec/webp_dec.wasm | Bin 79700 -> 79772 bytes codecs/webp/enc/example.html | 19 +- codecs/webp/enc/webp_enc.d.ts | 15 +- codecs/webp/enc/webp_enc.js | 1335 +- codecs/webp/enc/webp_enc.wasm | Bin 147961 -> 148220 bytes config/add-css-types.js | 76 - config/asset-template-plugin.js | 47 - config/async-component-loader.js | 29 - config/async-component.js | 30 - config/auto-sw-plugin.js | 158 - config/watch-timestamps-plugin.js | 30 - emscripten-wasm.d.ts => emscripten-types.d.ts | 51 +- generic-tsconfig.json | 22 + global.d.ts | 23 - lib/asset-plugin.js | 75 + lib/client-bundle-plugin.js | 163 + lib/css-plugin.js | 195 + lib/emit-files-plugin.js | 37 + lib/image-worker-plugin.js | 55 + lib/move-output.js | 19 + lib/node-external-plugin.js | 24 + lib/omt.ejs | 84 + lib/resolve-dirs-plugin.js | 36 + lib/run-script.js | 34 + lib/simple-ts.js | 130 + missing-types.d.ts | 23 + package-lock.json | 17399 +++------------- package.json | 99 +- rollup.config.js | 106 + serve.json | 13 + sizereport.config.js | 14 - src/client/index.tsx | 59 + src/client/missing-types.d.ts | 13 + src/client/tmp.png | Bin 0 -> 92167 bytes src/client/tsconfig.json | 8 + src/codecs/imagequant/processor.ts | 19 - src/codecs/resize/processor.ts | 39 - src/copy/_headers | 5 + _redirects.ejs => src/copy/_redirects | 0 src/image-worker/missing-types.d.ts | 13 + src/image-worker/mozjpegEncode/index.ts | 56 + src/image-worker/quantize/index.ts | 52 + src/image-worker/tsconfig.json | 7 + src/image-worker/util.ts | 39 + src/image-worker/webpDecode/index.ts | 26 + src/image-worker/webpEncode/index.ts | 61 + src/static-build/components/base/all.css | 3 + src/static-build/components/base/index.tsx | 44 + src/static-build/index.tsx | 25 + src/static-build/missing-types.d.ts | 25 + src/static-build/pages/index/index.tsx | 21 + src/static-build/tsconfig.json | 8 + src/static-build/utils.tsx | 46 + {src => src_old}/assets/favicon.ico | Bin .../assets/icon-large-maskable.png | Bin {src => src_old}/assets/icon-large.png | Bin {src => src_old}/assets/icon-small.png | Bin .../codecs/browser-bmp/encoder-meta.ts | 7 +- .../codecs/browser-bmp/encoder.ts | 0 .../codecs/browser-gif/encoder-meta.ts | 5 +- .../codecs/browser-gif/encoder.ts | 0 .../codecs/browser-jp2/encoder-meta.ts | 7 +- .../codecs/browser-jp2/encoder.ts | 0 .../codecs/browser-jpeg/encoder-meta.ts | 9 +- .../codecs/browser-jpeg/encoder.ts | 0 .../codecs/browser-jpeg/options.ts | 0 .../codecs/browser-pdf/encoder-meta.ts | 7 +- .../codecs/browser-pdf/encoder.ts | 0 .../codecs/browser-png/encoder-meta.ts | 5 +- .../codecs/browser-png/encoder.tsx | 0 .../codecs/browser-tiff/encoder-meta.ts | 7 +- .../codecs/browser-tiff/encoder.ts | 0 .../codecs/browser-webp/encoder-meta.ts | 9 +- .../codecs/browser-webp/encoder.ts | 0 .../codecs/browser-webp/options.ts | 0 {src => src_old}/codecs/decoders.ts | 5 +- {src => src_old}/codecs/encoders.ts | 65 +- .../codecs/generic/quality-option.tsx | 10 +- {src => src_old}/codecs/generic/util.ts | 0 {src => src_old}/codecs/hqx/processor-meta.ts | 0 {src => src_old}/codecs/hqx/processor.ts | 0 .../codecs/identity/encoder-meta.ts | 5 +- .../codecs/imagequant/options.tsx | 23 +- .../codecs/imagequant/processor-meta.ts | 0 src_old/codecs/imagequant/processor.ts | 30 + {src => src_old}/codecs/input-processors.ts | 0 .../codecs/mozjpeg/encoder-meta.ts | 5 +- {src => src_old}/codecs/mozjpeg/encoder.ts | 12 +- {src => src_old}/codecs/mozjpeg/options.tsx | 99 +- .../codecs/oxipng/encoder-meta.ts | 5 +- {src => src_old}/codecs/oxipng/encoder.ts | 5 +- {src => src_old}/codecs/oxipng/options.tsx | 4 +- {src => src_old}/codecs/preprocessors.ts | 8 +- .../codecs/processor-worker/index.ts | 53 +- .../codecs/processor-worker}/tiny.avif | Bin .../codecs/processor-worker}/tiny.webp | Bin .../codecs/processor-worker}/tsconfig.json | 5 +- {src => src_old}/codecs/processor.ts | 50 +- {src => src_old}/codecs/resize/options.tsx | 43 +- .../codecs/resize/processor-meta.ts | 0 .../codecs/resize/processor-sync.ts | 32 +- src_old/codecs/resize/processor.ts | 73 + {src => src_old}/codecs/resize/util.ts | 7 +- .../codecs/rotate/processor-meta.ts | 0 {src => src_old}/codecs/rotate/processor.ts | 4 +- src_old/codecs/tiny.webp | Bin 0 -> 38 bytes {src => src_old}/codecs/util.ts | 5 +- {src => src_old}/codecs/webp/decoder-meta.ts | 0 {src => src_old}/codecs/webp/decoder.ts | 3 +- {src => src_old}/codecs/webp/encoder-meta.ts | 9 +- {src => src_old}/codecs/webp/encoder.ts | 8 +- {src => src_old}/codecs/webp/options.tsx | 116 +- {src => src_old}/components/App/index.tsx | 54 +- {src => src_old}/components/App/style.scss | 0 {src => src_old}/components/Options/index.tsx | 62 +- .../components/Options/style.scss | 0 .../Output/custom-els/PinchZoom/index.ts | 70 +- .../custom-els/PinchZoom/missing-types.d.ts | 0 .../Output/custom-els/PinchZoom/styles.css | 0 .../Output/custom-els/TwoUp/index.ts | 33 +- .../custom-els/TwoUp/missing-types.d.ts | 4 +- .../Output/custom-els/TwoUp/styles.css | 22 +- {src => src_old}/components/Output/index.tsx | 74 +- {src => src_old}/components/Output/style.scss | 0 .../components/checkbox/index.tsx | 11 +- .../components/checkbox/style.scss | 0 .../compress/custom-els/MultiPanel/index.ts | 26 +- .../custom-els/MultiPanel/missing-types.d.ts | 0 .../compress/custom-els/MultiPanel/styles.css | 2 +- .../components/compress/index.tsx | 312 +- .../components/compress/result-cache.ts | 9 +- .../components/compress/style.scss | 0 .../custom-els/LoadingSpinner/index.ts | 32 +- .../LoadingSpinner/missing-types.d.ts | 0 .../custom-els/LoadingSpinner/styles.css | 74 +- .../components/expander/index.tsx | 13 +- .../components/expander/style.scss | 0 .../intro/imgs/demos/demo-artwork.jpg | Bin .../intro/imgs/demos/demo-device-screen.png | Bin .../intro/imgs/demos/demo-large-photo.jpg | Bin .../intro/imgs/demos/icon-demo-artwork.jpg | Bin .../imgs/demos/icon-demo-device-screen.jpg | Bin .../imgs/demos/icon-demo-large-photo.jpg | Bin .../intro/imgs/demos/icon-demo-logo.png | Bin .../components/intro/imgs/logo.svg | 0 {src => src_old}/components/intro/index.tsx | 58 +- .../components/intro/missing-types.d.ts | 7 +- {src => src_old}/components/intro/style.scss | 0 {src => src_old}/components/range/index.tsx | 9 +- {src => src_old}/components/range/style.scss | 0 .../components/results/FileSize.tsx | 10 +- {src => src_old}/components/results/index.tsx | 46 +- .../components/results/style.scss | 0 {src => src_old}/components/select/index.tsx | 9 +- {src => src_old}/components/select/style.scss | 0 .../custom-els/RangeInput/index.ts | 47 +- .../custom-els/RangeInput/missing-types.d.ts | 0 .../custom-els/RangeInput/styles.css | 24 +- {src => src_old}/index.html | 0 {src => src_old}/index.ts | 3 +- {src => src_old}/init-app.tsx | 0 {src => src_old}/lib/SnackBar/index.ts | 21 +- .../lib/SnackBar/missing-types.d.ts | 0 {src => src_old}/lib/SnackBar/styles.css | 8 +- {src => src_old}/lib/clean-modify.ts | 6 +- {src => src_old}/lib/fix-pmc.mjs | 0 {src => src_old}/lib/icons.tsx | 43 +- {src => src_old}/lib/initial-util.ts | 6 +- {src => src_old}/lib/missing-types.d.ts | 0 {src => src_old}/lib/sw-bridge.ts | 12 +- {src => src_old}/lib/util.scss | 0 {src => src_old}/lib/util.ts | 51 +- {src => src_old}/manifest.json | 0 {src => src_old}/missing-types.d.ts | 2 +- {src => src_old}/style/index.scss | 0 {src => src_old}/style/reset.scss | 0 {src => src_old}/sw/index.ts | 48 +- {src => src_old}/sw/missing-types.d.ts | 0 .../sw}/tsconfig.json | 5 +- {src => src_old}/sw/util.ts | 128 +- tsconfig.json | 23 +- tslint.json | 23 - webpack.config.js | 357 - 202 files changed, 10435 insertions(+), 16953 deletions(-) create mode 100644 .prettierrc.json delete mode 100644 _headers.ejs delete mode 100644 config/add-css-types.js delete mode 100644 config/asset-template-plugin.js delete mode 100644 config/async-component-loader.js delete mode 100644 config/async-component.js delete mode 100644 config/auto-sw-plugin.js delete mode 100644 config/watch-timestamps-plugin.js rename emscripten-wasm.d.ts => emscripten-types.d.ts (75%) create mode 100644 generic-tsconfig.json delete mode 100644 global.d.ts create mode 100644 lib/asset-plugin.js create mode 100644 lib/client-bundle-plugin.js create mode 100644 lib/css-plugin.js create mode 100644 lib/emit-files-plugin.js create mode 100644 lib/image-worker-plugin.js create mode 100644 lib/move-output.js create mode 100644 lib/node-external-plugin.js create mode 100644 lib/omt.ejs create mode 100644 lib/resolve-dirs-plugin.js create mode 100644 lib/run-script.js create mode 100644 lib/simple-ts.js create mode 100644 missing-types.d.ts create mode 100644 rollup.config.js create mode 100644 serve.json delete mode 100644 sizereport.config.js create mode 100644 src/client/index.tsx create mode 100644 src/client/missing-types.d.ts create mode 100644 src/client/tmp.png create mode 100644 src/client/tsconfig.json delete mode 100644 src/codecs/imagequant/processor.ts delete mode 100644 src/codecs/resize/processor.ts create mode 100644 src/copy/_headers rename _redirects.ejs => src/copy/_redirects (100%) create mode 100644 src/image-worker/missing-types.d.ts create mode 100644 src/image-worker/mozjpegEncode/index.ts create mode 100644 src/image-worker/quantize/index.ts create mode 100644 src/image-worker/tsconfig.json create mode 100644 src/image-worker/util.ts create mode 100644 src/image-worker/webpDecode/index.ts create mode 100644 src/image-worker/webpEncode/index.ts create mode 100644 src/static-build/components/base/all.css create mode 100644 src/static-build/components/base/index.tsx create mode 100644 src/static-build/index.tsx create mode 100644 src/static-build/missing-types.d.ts create mode 100644 src/static-build/pages/index/index.tsx create mode 100644 src/static-build/tsconfig.json create mode 100644 src/static-build/utils.tsx rename {src => src_old}/assets/favicon.ico (100%) rename {src => src_old}/assets/icon-large-maskable.png (100%) rename {src => src_old}/assets/icon-large.png (100%) rename {src => src_old}/assets/icon-small.png (100%) rename {src => src_old}/codecs/browser-bmp/encoder-meta.ts (72%) rename {src => src_old}/codecs/browser-bmp/encoder.ts (100%) rename {src => src_old}/codecs/browser-gif/encoder-meta.ts (80%) rename {src => src_old}/codecs/browser-gif/encoder.ts (100%) rename {src => src_old}/codecs/browser-jp2/encoder-meta.ts (72%) rename {src => src_old}/codecs/browser-jp2/encoder.ts (100%) rename {src => src_old}/codecs/browser-jpeg/encoder-meta.ts (60%) rename {src => src_old}/codecs/browser-jpeg/encoder.ts (100%) rename {src => src_old}/codecs/browser-jpeg/options.ts (100%) rename {src => src_old}/codecs/browser-pdf/encoder-meta.ts (72%) rename {src => src_old}/codecs/browser-pdf/encoder.ts (100%) rename {src => src_old}/codecs/browser-png/encoder-meta.ts (73%) rename {src => src_old}/codecs/browser-png/encoder.tsx (100%) rename {src => src_old}/codecs/browser-tiff/encoder-meta.ts (72%) rename {src => src_old}/codecs/browser-tiff/encoder.ts (100%) rename {src => src_old}/codecs/browser-webp/encoder-meta.ts (70%) rename {src => src_old}/codecs/browser-webp/encoder.ts (100%) rename {src => src_old}/codecs/browser-webp/options.ts (100%) rename {src => src_old}/codecs/decoders.ts (86%) rename {src => src_old}/codecs/encoders.ts (61%) rename {src => src_old}/codecs/generic/quality-option.tsx (89%) rename {src => src_old}/codecs/generic/util.ts (100%) rename {src => src_old}/codecs/hqx/processor-meta.ts (100%) rename {src => src_old}/codecs/hqx/processor.ts (100%) rename {src => src_old}/codecs/identity/encoder-meta.ts (65%) rename {src => src_old}/codecs/imagequant/options.tsx (87%) rename {src => src_old}/codecs/imagequant/processor-meta.ts (100%) create mode 100644 src_old/codecs/imagequant/processor.ts rename {src => src_old}/codecs/input-processors.ts (100%) rename {src => src_old}/codecs/mozjpeg/encoder-meta.ts (93%) rename {src => src_old}/codecs/mozjpeg/encoder.ts (61%) rename {src => src_old}/codecs/mozjpeg/options.tsx (81%) rename {src => src_old}/codecs/oxipng/encoder-meta.ts (75%) rename {src => src_old}/codecs/oxipng/encoder.ts (61%) rename {src => src_old}/codecs/oxipng/options.tsx (96%) rename {src => src_old}/codecs/preprocessors.ts (71%) rename {src => src_old}/codecs/processor-worker/index.ts (75%) rename {src/sw => src_old/codecs/processor-worker}/tiny.avif (100%) rename {src/sw => src_old/codecs/processor-worker}/tiny.webp (100%) rename {src/sw => src_old/codecs/processor-worker}/tsconfig.json (84%) rename {src => src_old}/codecs/processor.ts (86%) rename {src => src_old}/codecs/resize/options.tsx (89%) rename {src => src_old}/codecs/resize/processor-meta.ts (100%) rename {src => src_old}/codecs/resize/processor-sync.ts (59%) create mode 100644 src_old/codecs/resize/processor.ts rename {src => src_old}/codecs/resize/util.ts (77%) rename {src => src_old}/codecs/rotate/processor-meta.ts (100%) rename {src => src_old}/codecs/rotate/processor.ts (95%) create mode 100644 src_old/codecs/tiny.webp rename {src => src_old}/codecs/util.ts (91%) rename {src => src_old}/codecs/webp/decoder-meta.ts (100%) rename {src => src_old}/codecs/webp/decoder.ts (83%) rename {src => src_old}/codecs/webp/encoder-meta.ts (88%) rename {src => src_old}/codecs/webp/encoder.ts (75%) rename {src => src_old}/codecs/webp/options.tsx (80%) rename {src => src_old}/components/App/index.tsx (78%) rename {src => src_old}/components/App/style.scss (100%) rename {src => src_old}/components/Options/index.tsx (83%) rename {src => src_old}/components/Options/style.scss (100%) rename {src => src_old}/components/Output/custom-els/PinchZoom/index.ts (89%) rename {src => src_old}/components/Output/custom-els/PinchZoom/missing-types.d.ts (100%) rename {src => src_old}/components/Output/custom-els/PinchZoom/styles.css (100%) rename {src => src_old}/components/Output/custom-els/TwoUp/index.ts (85%) rename {src => src_old}/components/Output/custom-els/TwoUp/missing-types.d.ts (92%) rename {src => src_old}/components/Output/custom-els/TwoUp/styles.css (83%) rename {src => src_old}/components/Output/index.tsx (88%) rename {src => src_old}/components/Output/style.scss (100%) rename {src => src_old}/components/checkbox/index.tsx (71%) rename {src => src_old}/components/checkbox/style.scss (100%) rename {src => src_old}/components/compress/custom-els/MultiPanel/index.ts (94%) rename {src => src_old}/components/compress/custom-els/MultiPanel/missing-types.d.ts (100%) rename {src => src_old}/components/compress/custom-els/MultiPanel/styles.css (73%) rename {src => src_old}/components/compress/index.tsx (72%) rename {src => src_old}/components/compress/result-cache.ts (92%) rename {src => src_old}/components/compress/style.scss (100%) rename {src => src_old}/components/custom-els/LoadingSpinner/index.ts (68%) rename {src => src_old}/components/custom-els/LoadingSpinner/missing-types.d.ts (100%) rename {src => src_old}/components/custom-els/LoadingSpinner/styles.css (65%) rename {src => src_old}/components/expander/index.tsx (90%) rename {src => src_old}/components/expander/style.scss (100%) rename {src => src_old}/components/intro/imgs/demos/demo-artwork.jpg (100%) rename {src => src_old}/components/intro/imgs/demos/demo-device-screen.png (100%) rename {src => src_old}/components/intro/imgs/demos/demo-large-photo.jpg (100%) rename {src => src_old}/components/intro/imgs/demos/icon-demo-artwork.jpg (100%) rename {src => src_old}/components/intro/imgs/demos/icon-demo-device-screen.jpg (100%) rename {src => src_old}/components/intro/imgs/demos/icon-demo-large-photo.jpg (100%) rename {src => src_old}/components/intro/imgs/demos/icon-demo-logo.png (100%) rename {src => src_old}/components/intro/imgs/logo.svg (100%) rename {src => src_old}/components/intro/index.tsx (82%) rename {src => src_old}/components/intro/missing-types.d.ts (89%) rename {src => src_old}/components/intro/style.scss (100%) rename {src => src_old}/components/range/index.tsx (92%) rename {src => src_old}/components/range/style.scss (100%) rename {src => src_old}/components/results/FileSize.tsx (85%) rename {src => src_old}/components/results/index.tsx (76%) rename {src => src_old}/components/results/style.scss (100%) rename {src => src_old}/components/select/index.tsx (61%) rename {src => src_old}/components/select/style.scss (100%) rename {src => src_old}/custom-els/RangeInput/index.ts (79%) rename {src => src_old}/custom-els/RangeInput/missing-types.d.ts (100%) rename {src => src_old}/custom-els/RangeInput/styles.css (74%) rename {src => src_old}/index.html (100%) rename {src => src_old}/index.ts (94%) rename {src => src_old}/init-app.tsx (100%) rename {src => src_old}/lib/SnackBar/index.ts (86%) rename {src => src_old}/lib/SnackBar/missing-types.d.ts (100%) rename {src => src_old}/lib/SnackBar/styles.css (91%) rename {src => src_old}/lib/clean-modify.ts (94%) rename {src => src_old}/lib/fix-pmc.mjs (100%) rename {src => src_old}/lib/icons.tsx (74%) rename {src => src_old}/lib/initial-util.ts (93%) rename {src => src_old}/lib/missing-types.d.ts (100%) rename {src => src_old}/lib/sw-bridge.ts (94%) rename {src => src_old}/lib/util.scss (100%) rename {src => src_old}/lib/util.ts (90%) rename {src => src_old}/manifest.json (100%) rename {src => src_old}/missing-types.d.ts (95%) rename {src => src_old}/style/index.scss (100%) rename {src => src_old}/style/reset.scss (100%) rename {src => src_old}/sw/index.ts (59%) rename {src => src_old}/sw/missing-types.d.ts (100%) rename {src/codecs/processor-worker => src_old/sw}/tsconfig.json (84%) rename {src => src_old}/sw/util.ts (51%) delete mode 100644 tslint.json delete mode 100644 webpack.config.js diff --git a/.gitignore b/.gitignore index 9d58f008..19d6cfbc 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,9 @@ +.tmp node_modules -/build -/*.log *.scss.d.ts *.css.d.ts +build *.o + +# Auto-generated by lib/image-worker-plugin.js +src/image-worker/index.ts diff --git a/.nvmrc b/.nvmrc index ba5fe175..9cd25a1f 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -10.16.2 +12.18.3 diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 00000000..a20502b7 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,4 @@ +{ + "singleQuote": true, + "trailingComma": "all" +} diff --git a/_headers.ejs b/_headers.ejs deleted file mode 100644 index 999e0982..00000000 --- a/_headers.ejs +++ /dev/null @@ -1,18 +0,0 @@ -# Long-term cache by default. -/* - Cache-Control: max-age=31536000 - -# And here are the exceptions: -/ - Cache-Control: no-cache - -/serviceworker.js - Cache-Control: no-cache - -/manifest.json - Cache-Control: must-revalidate, max-age=3600 - -# URLs in /assets do not include a hash and are mutable. -# But it isn't a big deal if the user gets an old version. -/assets/* - Cache-Control: must-revalidate, max-age=3600 diff --git a/codecs/cpp.Dockerfile b/codecs/cpp.Dockerfile index 31172834..ea9dc563 100644 --- a/codecs/cpp.Dockerfile +++ b/codecs/cpp.Dockerfile @@ -1,4 +1,4 @@ -FROM emscripten/emsdk:1.40.0 +FROM emscripten/emsdk:2.0.3 RUN apt-get update && apt-get install -qqy autoconf libtool pkg-config ENV CFLAGS "-Os -flto" ENV CXXFLAGS "${CFLAGS} -std=c++17" diff --git a/codecs/imagequant/Makefile b/codecs/imagequant/Makefile index 1b56ab76..6d0c7897 100644 --- a/codecs/imagequant/Makefile +++ b/codecs/imagequant/Makefile @@ -18,7 +18,9 @@ all: $(OUT_JS) --closure 1 \ -s ALLOW_MEMORY_GROWTH=1 \ -s MODULARIZE=1 \ - -s 'EXPORT_NAME="$(basename $(@F))"' \ + -s TEXTDECODER=2 \ + -s ENVIRONMENT='worker' \ + -s EXPORT_ES6=1 \ -o $@ \ $+ diff --git a/codecs/imagequant/example.html b/codecs/imagequant/example.html index c2a90c0c..fc94ab3e 100644 --- a/codecs/imagequant/example.html +++ b/codecs/imagequant/example.html @@ -1,18 +1,17 @@ - + - - diff --git a/codecs/imagequant/imagequant.d.ts b/codecs/imagequant/imagequant.d.ts index d25d7a35..e30b39d1 100644 --- a/codecs/imagequant/imagequant.d.ts +++ b/codecs/imagequant/imagequant.d.ts @@ -1,6 +1,19 @@ -interface QuantizerModule extends EmscriptenWasm.Module { - quantize(data: BufferSource, width: number, height: number, numColors: number, dither: number): Uint8ClampedArray; - zx_quantize(data: BufferSource, width: number, height: number, dither: number): Uint8ClampedArray; +export interface QuantizerModule extends EmscriptenWasm.Module { + quantize( + data: BufferSource, + width: number, + height: number, + numColors: number, + dither: number, + ): Uint8ClampedArray; + zx_quantize( + data: BufferSource, + width: number, + height: number, + dither: number, + ): Uint8ClampedArray; } -export default function(opts: EmscriptenWasm.ModuleOpts): QuantizerModule; +declare var moduleFactory: EmscriptenWasm.ModuleFactory; + +export default moduleFactory; diff --git a/codecs/imagequant/imagequant.js b/codecs/imagequant/imagequant.js index cad60c5e..4d40c6db 100644 --- a/codecs/imagequant/imagequant.js +++ b/codecs/imagequant/imagequant.js @@ -1,68 +1,1182 @@ +var Module = (function () { + var _scriptDir = import.meta.url; -var imagequant = (function() { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(imagequant) { - imagequant = imagequant || {}; + return function (Module) { + Module = Module || {}; + var e; + e || (e = typeof Module !== 'undefined' ? Module : {}); + var aa, ba; + e.ready = new Promise(function (a, b) { + aa = a; + ba = b; + }); + var r = {}, + t; + for (t in e) e.hasOwnProperty(t) && (r[t] = e[t]); + var u = '', + ca; + u = self.location.href; + _scriptDir && (u = _scriptDir); + 0 !== u.indexOf('blob:') + ? (u = u.substr(0, u.lastIndexOf('/') + 1)) + : (u = ''); + ca = function (a) { + var b = new XMLHttpRequest(); + b.open('GET', a, !1); + b.responseType = 'arraybuffer'; + b.send(null); + return new Uint8Array(b.response); + }; + var da = e.print || console.log.bind(console), + v = e.printErr || console.warn.bind(console); + for (t in r) r.hasOwnProperty(t) && (e[t] = r[t]); + r = null; + var w; + e.wasmBinary && (w = e.wasmBinary); + var noExitRuntime; + e.noExitRuntime && (noExitRuntime = e.noExitRuntime); + 'object' !== typeof WebAssembly && y('no native wasm support detected'); + var z, + A = new WebAssembly.Table({ + initial: 46, + maximum: 46, + element: 'anyfunc', + }), + ea = !1, + fa = new TextDecoder('utf8'); + function ha(a, b, c) { + var d = B; + if (0 < c) { + c = b + c - 1; + for (var f = 0; f < a.length; ++f) { + var g = a.charCodeAt(f); + if (55296 <= g && 57343 >= g) { + var l = a.charCodeAt(++f); + g = (65536 + ((g & 1023) << 10)) | (l & 1023); + } + if (127 >= g) { + if (b >= c) break; + d[b++] = g; + } else { + if (2047 >= g) { + if (b + 1 >= c) break; + d[b++] = 192 | (g >> 6); + } else { + if (65535 >= g) { + if (b + 2 >= c) break; + d[b++] = 224 | (g >> 12); + } else { + if (b + 3 >= c) break; + d[b++] = 240 | (g >> 18); + d[b++] = 128 | ((g >> 12) & 63); + } + d[b++] = 128 | ((g >> 6) & 63); + } + d[b++] = 128 | (g & 63); + } + } + d[b] = 0; + } + } + var ia = new TextDecoder('utf-16le'); + function ja(a, b) { + var c = a >> 1; + for (b = c + b / 2; !(c >= b) && D[c]; ) ++c; + return ia.decode(B.subarray(a, c << 1)); + } + function ka(a, b, c) { + void 0 === c && (c = 2147483647); + if (2 > c) return 0; + c -= 2; + var d = b; + c = c < 2 * a.length ? c / 2 : a.length; + for (var f = 0; f < c; ++f) (E[b >> 1] = a.charCodeAt(f)), (b += 2); + E[b >> 1] = 0; + return b - d; + } + function la(a) { + return 2 * a.length; + } + function ma(a, b) { + for (var c = 0, d = ''; !(c >= b / 4); ) { + var f = F[(a + 4 * c) >> 2]; + if (0 == f) break; + ++c; + 65536 <= f + ? ((f -= 65536), + (d += String.fromCharCode(55296 | (f >> 10), 56320 | (f & 1023)))) + : (d += String.fromCharCode(f)); + } + return d; + } + function na(a, b, c) { + void 0 === c && (c = 2147483647); + if (4 > c) return 0; + var d = b; + c = d + c - 4; + for (var f = 0; f < a.length; ++f) { + var g = a.charCodeAt(f); + if (55296 <= g && 57343 >= g) { + var l = a.charCodeAt(++f); + g = (65536 + ((g & 1023) << 10)) | (l & 1023); + } + F[b >> 2] = g; + b += 4; + if (b + 4 > c) break; + } + F[b >> 2] = 0; + return b - d; + } + function oa(a) { + for (var b = 0, c = 0; c < a.length; ++c) { + var d = a.charCodeAt(c); + 55296 <= d && 57343 >= d && ++c; + b += 4; + } + return b; + } + var G, H, B, E, D, F, J, pa, qa; + function ra(a) { + G = a; + e.HEAP8 = H = new Int8Array(a); + e.HEAP16 = E = new Int16Array(a); + e.HEAP32 = F = new Int32Array(a); + e.HEAPU8 = B = new Uint8Array(a); + e.HEAPU16 = D = new Uint16Array(a); + e.HEAPU32 = J = new Uint32Array(a); + e.HEAPF32 = pa = new Float32Array(a); + e.HEAPF64 = qa = new Float64Array(a); + } + var sa = e.INITIAL_MEMORY || 16777216; + e.wasmMemory + ? (z = e.wasmMemory) + : (z = new WebAssembly.Memory({ initial: sa / 65536, maximum: 32768 })); + z && (G = z.buffer); + sa = G.byteLength; + ra(G); + var ta = [], + ua = [], + va = [], + wa = []; + function xa() { + var a = e.preRun.shift(); + ta.unshift(a); + } + var K = 0, + ya = null, + L = null; + e.preloadedImages = {}; + e.preloadedAudios = {}; + function y(a) { + if (e.onAbort) e.onAbort(a); + v(a); + ea = !0; + a = new WebAssembly.RuntimeError( + 'abort(' + a + '). Build with -s ASSERTIONS=1 for more info.', + ); + ba(a); + throw a; + } + function za() { + var a = N; + return String.prototype.startsWith + ? a.startsWith('data:application/octet-stream;base64,') + : 0 === a.indexOf('data:application/octet-stream;base64,'); + } + var N = 'imagequant.wasm'; + if (!za()) { + var Aa = N; + N = e.locateFile ? e.locateFile(Aa, u) : u + Aa; + } + function Ba() { + try { + if (w) return new Uint8Array(w); + if (ca) return ca(N); + throw 'both async and sync fetching of the wasm failed'; + } catch (a) { + y(a); + } + } + function Ca() { + return w || 'function' !== typeof fetch + ? Promise.resolve().then(Ba) + : fetch(N, { credentials: 'same-origin' }) + .then(function (a) { + if (!a.ok) throw "failed to load wasm binary file at '" + N + "'"; + return a.arrayBuffer(); + }) + .catch(function () { + return Ba(); + }); + } + ua.push({ + M: function () { + Da(); + }, + }); + function O(a) { + for (; 0 < a.length; ) { + var b = a.shift(); + if ('function' == typeof b) b(e); + else { + var c = b.M; + 'number' === typeof c + ? void 0 === b.I + ? A.get(c)() + : A.get(c)(b.I) + : c(void 0 === b.I ? null : b.I); + } + } + } + function Ea(a) { + this.H = a - 16; + this.U = function (b) { + F[(this.H + 8) >> 2] = b; + }; + this.R = function (b) { + F[(this.H + 0) >> 2] = b; + }; + this.S = function () { + F[(this.H + 4) >> 2] = 0; + }; + this.P = function () { + H[(this.H + 12) >> 0] = 0; + }; + this.T = function () { + H[(this.H + 13) >> 0] = 0; + }; + this.O = function (b, c) { + this.U(b); + this.R(c); + this.S(); + this.P(); + this.T(); + }; + } + function P() { + return 0 < P.K; + } + function Fa(a) { + switch (a) { + case 1: + return 0; + case 2: + return 1; + case 4: + return 2; + case 8: + return 3; + default: + throw new TypeError('Unknown type size: ' + a); + } + } + var Ga = void 0; + function Q(a) { + for (var b = ''; B[a]; ) b += Ga[B[a++]]; + return b; + } + var R = {}, + S = {}, + T = {}; + function Ha(a) { + if (void 0 === a) return '_unknown'; + a = a.replace(/[^a-zA-Z0-9_]/g, '$'); + var b = a.charCodeAt(0); + return 48 <= b && 57 >= b ? '_' + a : a; + } + function Ia(a, b) { + a = Ha(a); + return new Function( + 'body', + 'return function ' + + a + + '() {\n "use strict"; return body.apply(this, arguments);\n};\n', + )(b); + } + function Ja(a) { + var b = Error, + c = Ia(a, function (d) { + this.name = a; + this.message = d; + d = Error(d).stack; + void 0 !== d && + (this.stack = + this.toString() + '\n' + d.replace(/^Error(:[^\n]*)?\n/, '')); + }); + c.prototype = Object.create(b.prototype); + c.prototype.constructor = c; + c.prototype.toString = function () { + return void 0 === this.message + ? this.name + : this.name + ': ' + this.message; + }; + return c; + } + var Ka = void 0; + function U(a) { + throw new Ka(a); + } + var La = void 0; + function Oa(a, b) { + function c(h) { + h = b(h); + if (h.length !== d.length) + throw new La('Mismatched type converter count'); + for (var p = 0; p < d.length; ++p) V(d[p], h[p]); + } + var d = []; + d.forEach(function (h) { + T[h] = a; + }); + var f = Array(a.length), + g = [], + l = 0; + a.forEach(function (h, p) { + S.hasOwnProperty(h) + ? (f[p] = S[h]) + : (g.push(h), + R.hasOwnProperty(h) || (R[h] = []), + R[h].push(function () { + f[p] = S[h]; + ++l; + l === g.length && c(f); + })); + }); + 0 === g.length && c(f); + } + function V(a, b, c) { + c = c || {}; + if (!('argPackAdvance' in b)) + throw new TypeError( + 'registerType registeredInstance requires argPackAdvance', + ); + var d = b.name; + a || U('type "' + d + '" must have a positive integer typeid pointer'); + if (S.hasOwnProperty(a)) { + if (c.N) return; + U("Cannot register type '" + d + "' twice"); + } + S[a] = b; + delete T[a]; + R.hasOwnProperty(a) && + ((b = R[a]), + delete R[a], + b.forEach(function (f) { + f(); + })); + } + var Pa = [], + W = [ + {}, + { value: void 0 }, + { value: null }, + { value: !0 }, + { value: !1 }, + ]; + function Qa(a) { + 4 < a && 0 === --W[a].J && ((W[a] = void 0), Pa.push(a)); + } + function X(a) { + switch (a) { + case void 0: + return 1; + case null: + return 2; + case !0: + return 3; + case !1: + return 4; + default: + var b = Pa.length ? Pa.pop() : W.length; + W[b] = { J: 1, value: a }; + return b; + } + } + function Ra(a) { + return this.fromWireType(J[a >> 2]); + } + function Sa(a) { + if (null === a) return 'null'; + var b = typeof a; + return 'object' === b || 'array' === b || 'function' === b + ? a.toString() + : '' + a; + } + function Ta(a, b) { + switch (b) { + case 2: + return function (c) { + return this.fromWireType(pa[c >> 2]); + }; + case 3: + return function (c) { + return this.fromWireType(qa[c >> 3]); + }; + default: + throw new TypeError('Unknown float type: ' + a); + } + } + function Ua(a) { + var b = Function; + if (!(b instanceof Function)) + throw new TypeError( + 'new_ called with constructor type ' + + typeof b + + ' which is not a function', + ); + var c = Ia(b.name || 'unknownFunctionName', function () {}); + c.prototype = b.prototype; + c = new c(); + a = b.apply(c, a); + return a instanceof Object ? a : c; + } + function Va(a) { + for (; a.length; ) { + var b = a.pop(); + a.pop()(b); + } + } + function Wa(a, b) { + var c = e; + if (void 0 === c[a].F) { + var d = c[a]; + c[a] = function () { + c[a].F.hasOwnProperty(arguments.length) || + U( + "Function '" + + b + + "' called with an invalid number of arguments (" + + arguments.length + + ') - expects one of (' + + c[a].F + + ')!', + ); + return c[a].F[arguments.length].apply(this, arguments); + }; + c[a].F = []; + c[a].F[d.L] = d; + } + } + function Xa(a, b, c) { + e.hasOwnProperty(a) + ? ((void 0 === c || (void 0 !== e[a].F && void 0 !== e[a].F[c])) && + U("Cannot register public name '" + a + "' twice"), + Wa(a, a), + e.hasOwnProperty(c) && + U( + 'Cannot register multiple overloads of a function with the same number of arguments (' + + c + + ')!', + ), + (e[a].F[c] = b)) + : ((e[a] = b), void 0 !== c && (e[a].W = c)); + } + function Ya(a, b) { + for (var c = [], d = 0; d < a; d++) c.push(F[(b >> 2) + d]); + return c; + } + function Za(a, b) { + 0 <= a.indexOf('j') || + y('Assertion failed: getDynCaller should only be called with i64 sigs'); + var c = []; + return function () { + c.length = arguments.length; + for (var d = 0; d < arguments.length; d++) c[d] = arguments[d]; + var f; + -1 != a.indexOf('j') + ? (f = + c && c.length + ? e['dynCall_' + a].apply(null, [b].concat(c)) + : e['dynCall_' + a].call(null, b)) + : (f = A.get(b).apply(null, c)); + return f; + }; + } + function $a(a, b) { + a = Q(a); + var c = -1 != a.indexOf('j') ? Za(a, b) : A.get(b); + 'function' !== typeof c && + U('unknown function pointer with signature ' + a + ': ' + b); + return c; + } + var ab = void 0; + function bb(a) { + a = cb(a); + var b = Q(a); + Y(a); + return b; + } + function db(a, b) { + function c(g) { + f[g] || S[g] || (T[g] ? T[g].forEach(c) : (d.push(g), (f[g] = !0))); + } + var d = [], + f = {}; + b.forEach(c); + throw new ab(a + ': ' + d.map(bb).join([', '])); + } + function eb(a, b, c) { + switch (b) { + case 0: + return c + ? function (d) { + return H[d]; + } + : function (d) { + return B[d]; + }; + case 1: + return c + ? function (d) { + return E[d >> 1]; + } + : function (d) { + return D[d >> 1]; + }; + case 2: + return c + ? function (d) { + return F[d >> 2]; + } + : function (d) { + return J[d >> 2]; + }; + default: + throw new TypeError('Unknown integer type: ' + a); + } + } + var fb = {}; + function gb() { + return 'object' === typeof globalThis + ? globalThis + : Function('return this')(); + } + function hb(a, b) { + var c = S[a]; + void 0 === c && U(b + ' has unknown type ' + bb(a)); + return c; + } + for (var ib = {}, jb = [null, [], []], kb = Array(256), Z = 0; 256 > Z; ++Z) + kb[Z] = String.fromCharCode(Z); + Ga = kb; + Ka = e.BindingError = Ja('BindingError'); + La = e.InternalError = Ja('InternalError'); + e.count_emval_handles = function () { + for (var a = 0, b = 5; b < W.length; ++b) void 0 !== W[b] && ++a; + return a; + }; + e.get_first_emval = function () { + for (var a = 5; a < W.length; ++a) if (void 0 !== W[a]) return W[a]; + return null; + }; + ab = e.UnboundTypeError = Ja('UnboundTypeError'); + var mb = { + p: function (a) { + return lb(a + 16) + 16; + }, + y: function () {}, + o: function (a, b, c) { + new Ea(a).O(b, c); + 'uncaught_exception' in P ? P.K++ : (P.K = 1); + throw a; + }, + b: A, + w: function (a, b, c, d, f) { + var g = Fa(c); + b = Q(b); + V(a, { + name: b, + fromWireType: function (l) { + return !!l; + }, + toWireType: function (l, h) { + return h ? d : f; + }, + argPackAdvance: 8, + readValueFromPointer: function (l) { + if (1 === c) var h = H; + else if (2 === c) h = E; + else if (4 === c) h = F; + else throw new TypeError('Unknown boolean type size: ' + b); + return this.fromWireType(h[l >> g]); + }, + G: null, + }); + }, + v: function (a, b) { + b = Q(b); + V(a, { + name: b, + fromWireType: function (c) { + var d = W[c].value; + Qa(c); + return d; + }, + toWireType: function (c, d) { + return X(d); + }, + argPackAdvance: 8, + readValueFromPointer: Ra, + G: null, + }); + }, + j: function (a, b, c) { + c = Fa(c); + b = Q(b); + V(a, { + name: b, + fromWireType: function (d) { + return d; + }, + toWireType: function (d, f) { + if ('number' !== typeof f && 'boolean' !== typeof f) + throw new TypeError( + 'Cannot convert "' + Sa(f) + '" to ' + this.name, + ); + return f; + }, + argPackAdvance: 8, + readValueFromPointer: Ta(b, c), + G: null, + }); + }, + f: function (a, b, c, d, f, g) { + var l = Ya(b, c); + a = Q(a); + f = $a(d, f); + Xa( + a, + function () { + db('Cannot call ' + a + ' due to unbound types', l); + }, + b - 1, + ); + Oa(l, function (h) { + var p = a, + k = a; + h = [h[0], null].concat(h.slice(1)); + var m = f, + q = h.length; + 2 > q && + U( + "argTypes array size mismatch! Must at least get return value and 'this' types!", + ); + for (var x = null !== h[1] && !1, C = !1, n = 1; n < h.length; ++n) + if (null !== h[n] && void 0 === h[n].G) { + C = !0; + break; + } + var Ma = 'void' !== h[0].name, + I = '', + M = ''; + for (n = 0; n < q - 2; ++n) + (I += (0 !== n ? ', ' : '') + 'arg' + n), + (M += (0 !== n ? ', ' : '') + 'arg' + n + 'Wired'); + k = + 'return function ' + + Ha(k) + + '(' + + I + + ') {\nif (arguments.length !== ' + + (q - 2) + + ") {\nthrowBindingError('function " + + k + + " called with ' + arguments.length + ' arguments, expected " + + (q - 2) + + " args!');\n}\n"; + C && (k += 'var destructors = [];\n'); + var Na = C ? 'destructors' : 'null'; + I = 'throwBindingError invoker fn runDestructors retType classParam'.split( + ' ', + ); + m = [U, m, g, Va, h[0], h[1]]; + x && + (k += 'var thisWired = classParam.toWireType(' + Na + ', this);\n'); + for (n = 0; n < q - 2; ++n) + (k += + 'var arg' + + n + + 'Wired = argType' + + n + + '.toWireType(' + + Na + + ', arg' + + n + + '); // ' + + h[n + 2].name + + '\n'), + I.push('argType' + n), + m.push(h[n + 2]); + x && (M = 'thisWired' + (0 < M.length ? ', ' : '') + M); + k += + (Ma ? 'var rv = ' : '') + + 'invoker(fn' + + (0 < M.length ? ', ' : '') + + M + + ');\n'; + if (C) k += 'runDestructors(destructors);\n'; + else + for (n = x ? 1 : 2; n < h.length; ++n) + (q = 1 === n ? 'thisWired' : 'arg' + (n - 2) + 'Wired'), + null !== h[n].G && + ((k += q + '_dtor(' + q + '); // ' + h[n].name + '\n'), + I.push(q + '_dtor'), + m.push(h[n].G)); + Ma && (k += 'var ret = retType.fromWireType(rv);\nreturn ret;\n'); + I.push(k + '}\n'); + h = Ua(I).apply(null, m); + n = b - 1; + if (!e.hasOwnProperty(p)) + throw new La('Replacing nonexistant public symbol'); + void 0 !== e[p].F && void 0 !== n + ? (e[p].F[n] = h) + : ((e[p] = h), (e[p].L = n)); + return []; + }); + }, + d: function (a, b, c, d, f) { + function g(k) { + return k; + } + b = Q(b); + -1 === f && (f = 4294967295); + var l = Fa(c); + if (0 === d) { + var h = 32 - 8 * c; + g = function (k) { + return (k << h) >>> h; + }; + } + var p = -1 != b.indexOf('unsigned'); + V(a, { + name: b, + fromWireType: g, + toWireType: function (k, m) { + if ('number' !== typeof m && 'boolean' !== typeof m) + throw new TypeError( + 'Cannot convert "' + Sa(m) + '" to ' + this.name, + ); + if (m < d || m > f) + throw new TypeError( + 'Passing a number "' + + Sa(m) + + '" from JS side to C/C++ side to an argument of type "' + + b + + '", which is outside the valid range [' + + d + + ', ' + + f + + ']!', + ); + return p ? m >>> 0 : m | 0; + }, + argPackAdvance: 8, + readValueFromPointer: eb(b, l, 0 !== d), + G: null, + }); + }, + c: function (a, b, c) { + function d(g) { + g >>= 2; + var l = J; + return new f(G, l[g + 1], l[g]); + } + var f = [ + Int8Array, + Uint8Array, + Int16Array, + Uint16Array, + Int32Array, + Uint32Array, + Float32Array, + Float64Array, + ][b]; + c = Q(c); + V( + a, + { + name: c, + fromWireType: d, + argPackAdvance: 8, + readValueFromPointer: d, + }, + { N: !0 }, + ); + }, + k: function (a, b) { + b = Q(b); + var c = 'std::string' === b; + V(a, { + name: b, + fromWireType: function (d) { + var f = J[d >> 2]; + if (c) + for (var g = d + 4, l = 0; l <= f; ++l) { + var h = d + 4 + l; + if (l == f || 0 == B[h]) { + if (g) { + for (var p = g + (h - g), k = g; !(k >= p) && B[k]; ) ++k; + g = fa.decode(B.subarray(g, k)); + } else g = ''; + if (void 0 === m) var m = g; + else (m += String.fromCharCode(0)), (m += g); + g = h + 1; + } + } + else { + m = Array(f); + for (l = 0; l < f; ++l) m[l] = String.fromCharCode(B[d + 4 + l]); + m = m.join(''); + } + Y(d); + return m; + }, + toWireType: function (d, f) { + f instanceof ArrayBuffer && (f = new Uint8Array(f)); + var g = 'string' === typeof f; + g || + f instanceof Uint8Array || + f instanceof Uint8ClampedArray || + f instanceof Int8Array || + U('Cannot pass non-string to std::string'); + var l = (c && g + ? function () { + for (var k = 0, m = 0; m < f.length; ++m) { + var q = f.charCodeAt(m); + 55296 <= q && + 57343 >= q && + (q = + (65536 + ((q & 1023) << 10)) | + (f.charCodeAt(++m) & 1023)); + 127 >= q + ? ++k + : (k = 2047 >= q ? k + 2 : 65535 >= q ? k + 3 : k + 4); + } + return k; + } + : function () { + return f.length; + })(), + h = lb(4 + l + 1); + J[h >> 2] = l; + if (c && g) ha(f, h + 4, l + 1); + else if (g) + for (g = 0; g < l; ++g) { + var p = f.charCodeAt(g); + 255 < p && + (Y(h), + U('String has UTF-16 code units that do not fit in 8 bits')); + B[h + 4 + g] = p; + } + else for (g = 0; g < l; ++g) B[h + 4 + g] = f[g]; + null !== d && d.push(Y, h); + return h; + }, + argPackAdvance: 8, + readValueFromPointer: Ra, + G: function (d) { + Y(d); + }, + }); + }, + g: function (a, b, c) { + c = Q(c); + if (2 === b) { + var d = ja; + var f = ka; + var g = la; + var l = function () { + return D; + }; + var h = 1; + } else + 4 === b && + ((d = ma), + (f = na), + (g = oa), + (l = function () { + return J; + }), + (h = 2)); + V(a, { + name: c, + fromWireType: function (p) { + for (var k = J[p >> 2], m = l(), q, x = p + 4, C = 0; C <= k; ++C) { + var n = p + 4 + C * b; + if (C == k || 0 == m[n >> h]) + (x = d(x, n - x)), + void 0 === q + ? (q = x) + : ((q += String.fromCharCode(0)), (q += x)), + (x = n + b); + } + Y(p); + return q; + }, + toWireType: function (p, k) { + 'string' !== typeof k && + U('Cannot pass non-string to C++ string type ' + c); + var m = g(k), + q = lb(4 + m + b); + J[q >> 2] = m >> h; + f(k, q + 4, m + b); + null !== p && p.push(Y, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Ra, + G: function (p) { + Y(p); + }, + }); + }, + l: function (a, b) { + b = Q(b); + V(a, { + V: !0, + name: b, + argPackAdvance: 0, + fromWireType: function () {}, + toWireType: function () {}, + }); + }, + t: Qa, + x: function (a) { + if (0 === a) return X(gb()); + var b = fb[a]; + a = void 0 === b ? Q(a) : b; + return X(gb()[a]); + }, + m: function (a) { + 4 < a && (W[a].J += 1); + }, + n: function (a, b, c, d) { + a || U('Cannot use deleted val. handle = ' + a); + a = W[a].value; + var f = ib[b]; + if (!f) { + f = ''; + for (var g = 0; g < b; ++g) f += (0 !== g ? ', ' : '') + 'arg' + g; + var l = + 'return function emval_allocator_' + + b + + '(constructor, argTypes, args) {\n'; + for (g = 0; g < b; ++g) + l += + 'var argType' + + g + + " = requireRegisteredType(Module['HEAP32'][(argTypes >>> 2) + " + + g + + '], "parameter ' + + g + + '");\nvar arg' + + g + + ' = argType' + + g + + '.readValueFromPointer(args);\nargs += argType' + + g + + "['argPackAdvance'];\n"; + f = new Function( + 'requireRegisteredType', + 'Module', + '__emval_register', + l + + ('var obj = new constructor(' + + f + + ');\nreturn __emval_register(obj);\n}\n'), + )(hb, e, X); + ib[b] = f; + } + return f(a, c, d); + }, + h: function () { + y(); + }, + s: function (a, b, c) { + B.copyWithin(a, b, b + c); + }, + e: function (a) { + a >>>= 0; + var b = B.length; + if (2147483648 < a) return !1; + for (var c = 1; 4 >= c; c *= 2) { + var d = b * (1 + 0.2 / c); + d = Math.min(d, a + 100663296); + d = Math.max(16777216, a, d); + 0 < d % 65536 && (d += 65536 - (d % 65536)); + a: { + try { + z.grow((Math.min(2147483648, d) - G.byteLength + 65535) >>> 16); + ra(z.buffer); + var f = 1; + break a; + } catch (g) {} + f = void 0; + } + if (f) return !0; + } + return !1; + }, + u: function () { + return 0; + }, + q: function () {}, + i: function (a, b, c, d) { + for (var f = 0, g = 0; g < c; g++) { + for ( + var l = F[(b + 8 * g) >> 2], h = F[(b + (8 * g + 4)) >> 2], p = 0; + p < h; + p++ + ) { + var k = B[l + p], + m = jb[a]; + if (0 === k || 10 === k) { + for (k = 0; m[k] && !(NaN <= k); ) ++k; + k = fa.decode( + m.subarray ? m.subarray(0, k) : new Uint8Array(m.slice(0, k)), + ); + (1 === a ? da : v)(k); + m.length = 0; + } else m.push(k); + } + f += h; + } + F[d >> 2] = f; + return 0; + }, + a: z, + r: function () {}, + }; + (function () { + function a(f) { + e.asm = f.exports; + K--; + e.monitorRunDependencies && e.monitorRunDependencies(K); + 0 == K && + (null !== ya && (clearInterval(ya), (ya = null)), + L && ((f = L), (L = null), f())); + } + function b(f) { + a(f.instance); + } + function c(f) { + return Ca() + .then(function (g) { + return WebAssembly.instantiate(g, d); + }) + .then(f, function (g) { + v('failed to asynchronously prepare wasm: ' + g); + y(g); + }); + } + var d = { a: mb }; + K++; + e.monitorRunDependencies && e.monitorRunDependencies(K); + if (e.instantiateWasm) + try { + return e.instantiateWasm(d, a); + } catch (f) { + return ( + v('Module.instantiateWasm callback failed with error: ' + f), !1 + ); + } + (function () { + if ( + w || + 'function' !== typeof WebAssembly.instantiateStreaming || + za() || + 'function' !== typeof fetch + ) + return c(b); + fetch(N, { credentials: 'same-origin' }).then(function (f) { + return WebAssembly.instantiateStreaming(f, d).then(b, function (g) { + v('wasm streaming compile failed: ' + g); + v('falling back to ArrayBuffer instantiation'); + return c(b); + }); + }); + })(); + return {}; + })(); + var Da = (e.___wasm_call_ctors = function () { + return (Da = e.___wasm_call_ctors = e.asm.z).apply(null, arguments); + }), + lb = (e._malloc = function () { + return (lb = e._malloc = e.asm.A).apply(null, arguments); + }), + Y = (e._free = function () { + return (Y = e._free = e.asm.B).apply(null, arguments); + }), + cb = (e.___getTypeName = function () { + return (cb = e.___getTypeName = e.asm.C).apply(null, arguments); + }); + e.___embind_register_native_and_builtin_types = function () { + return (e.___embind_register_native_and_builtin_types = e.asm.D).apply( + null, + arguments, + ); + }; + e.dynCall_jiji = function () { + return (e.dynCall_jiji = e.asm.E).apply(null, arguments); + }; + var nb; + L = function ob() { + nb || pb(); + nb || (L = ob); + }; + function pb() { + function a() { + if (!nb && ((nb = !0), (e.calledRun = !0), !ea)) { + O(ua); + O(va); + aa(e); + if (e.onRuntimeInitialized) e.onRuntimeInitialized(); + if (e.postRun) + for ( + 'function' == typeof e.postRun && (e.postRun = [e.postRun]); + e.postRun.length; -var d;d||(d=typeof imagequant !== 'undefined' ? imagequant : {});var aa;d.ready=new Promise(function(a){aa=a});var r={},t;for(t in d)d.hasOwnProperty(t)&&(r[t]=d[t]);var u=!1,v=!1,ba=!1,ca=!1;u="object"===typeof window;v="function"===typeof importScripts;ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ca=!u&&!ba&&!v;var w="",x,z,da,ea; -if(ba)w=v?require("path").dirname(w)+"/":__dirname+"/",x=function(a,b){da||(da=require("fs"));ea||(ea=require("path"));a=ea.normalize(a);return da.readFileSync(a,b?null:"utf8")},z=function(a){a=x(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||A("Assertion failed: undefined");return a},1=e);)++c;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e} -function la(a,b,c){var e=F;if(0=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(b+3>=c)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var ma="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0; -function na(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&G[c];)++c;c<<=1;if(32>1];if(0==f||c==b/2)return e;++c;e+=String.fromCharCode(f)}}function oa(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;H[b>>1]=0;return b-e}function pa(a){return 2*a.length} -function qa(a,b){for(var c=0,e="";!(c>=b/4);){var f=I[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function ra(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}I[b>>2]=g;b+=4;if(b+4>c)break}I[b>>2]=0;return b-e} -function sa(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var J,ta,F,H,G,I,L,ua,va;function wa(a){J=a;d.HEAP8=ta=new Int8Array(a);d.HEAP16=H=new Int16Array(a);d.HEAP32=I=new Int32Array(a);d.HEAPU8=F=new Uint8Array(a);d.HEAPU16=G=new Uint16Array(a);d.HEAPU32=L=new Uint32Array(a);d.HEAPF32=ua=new Float32Array(a);d.HEAPF64=va=new Float64Array(a)}var xa=d.INITIAL_MEMORY||16777216;d.wasmMemory?E=d.wasmMemory:E=new WebAssembly.Memory({initial:xa/65536,maximum:32768}); -E&&(J=E.buffer);xa=J.byteLength;wa(J);I[1472]=5248928;function M(a){for(;0=b?"_"+a:a} -function Na(a,b){a=Ma(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function Oa(a){var b=Error,c=Na(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c} -var Pa=void 0;function W(a){throw new Pa(a);}var Qa=void 0;function Ra(a,b){function c(k){k=b(k);if(k.length!==e.length)throw new Qa("Mismatched type converter count");for(var h=0;h>2])}function Ya(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} -function Za(a,b){switch(b){case 2:return function(c){return this.fromWireType(ua[c>>2])};case 3:return function(c){return this.fromWireType(va[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function $a(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var c=Na(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c} -function ab(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function bb(a,b){var c=d;if(void 0===c[a].S){var e=c[a];c[a]=function(){c[a].S.hasOwnProperty(arguments.length)||W("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].S+")!");return c[a].S[arguments.length].apply(this,arguments)};c[a].S=[];c[a].S[e.X]=e}} -function cb(a,b,c){d.hasOwnProperty(a)?((void 0===c||void 0!==d[a].S&&void 0!==d[a].S[c])&&W("Cannot register public name '"+a+"' twice"),bb(a,a),d.hasOwnProperty(c)&&W("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),d[a].S[c]=b):(d[a]=b,void 0!==c&&(d[a].aa=c))}function db(a,b){for(var c=[],e=0;e>2)+e]);return c} -function eb(a,b){a=S(a);var c=d["dynCall_"+a];for(var e=[],f=1;f>1]}:function(e){return G[e>>1]};case 2:return c?function(e){return I[e>>2]}:function(e){return L[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var kb={}; -function lb(){return"object"===typeof globalThis?globalThis:Function("return this")()}function mb(a,b){var c=U[a];void 0===c&&W(b+" has unknown type "+gb(a));return c}for(var nb={},ob=[null,[],[]],pb=Array(256),qb=0;256>qb;++qb)pb[qb]=String.fromCharCode(qb);La=pb;Pa=d.BindingError=Oa("BindingError");Qa=d.InternalError=Oa("InternalError");d.count_emval_handles=function(){for(var a=0,b=5;b>g])},T:null})},t:function(a,b){b=S(b);X(a,{name:b,fromWireType:function(c){var e= -Y[c].value;Ta(c);return e},toWireType:function(c,e){return Ua(e)},argPackAdvance:8,readValueFromPointer:Xa,T:null})},h:function(a,b,c){c=Ka(c);b=S(b);X(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+Ya(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Za(b,c),T:null})},d:function(a,b,c,e,f,g){var l=db(b,c);a=S(a);f=eb(e,f);cb(a,function(){ib("Cannot call "+a+" due to unbound types", -l)},b-1);Ra(l,function(k){var h=[k[0],null].concat(k.slice(1)),n=k=a,p=f,q=h.length;2>q&&W("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var y=null!==h[1]&&!1,C=!1,m=1;m>>k}}var h=-1!=b.indexOf("unsigned");X(a,{name:b,fromWireType:g,toWireType:function(n,p){if("number"!==typeof p&&"boolean"!==typeof p)throw new TypeError('Cannot convert "'+Ya(p)+'" to '+this.name);if(pf)throw new TypeError('Passing a number "'+Ya(p)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return h?p>>>0:p|0},argPackAdvance:8,readValueFromPointer:jb(b, -l,0!==e),T:null})},a:function(a,b,c){function e(g){g>>=2;var l=L;return new f(J,l[g+1],l[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=S(c);X(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{Z:!0})},i:function(a,b){b=S(b);var c="std::string"===b;X(a,{name:b,fromWireType:function(e){var f=L[e>>2];if(c)for(var g=e+4,l=0;l<=f;++l){var k=e+4+l;if(0==F[k]||l==f){g=g?ka(F,g,k-g):"";if(void 0===h)var h=g;else h+=String.fromCharCode(0), -h+=g;g=k+1}}else{h=Array(f);for(l=0;l=q&&(q=65536+((q&1023)<<10)|f.charCodeAt(++p)&1023);127>=q?++n:n=2047>=q?n+ -2:65535>=q?n+3:n+4}return n}:function(){return f.length})(),k=rb(4+l+1);L[k>>2]=l;if(c&&g)la(f,k+4,l+1);else if(g)for(g=0;g>2],p=l(),q,y=h+4,C=0;C<=n;++C){var m=h+4+C*b;if(0==p[m>>k]||C==n)y=e(y,m-y),void 0===q?q=y:(q+=String.fromCharCode(0),q+=y),y=m+b}Z(h);return q},toWireType:function(h,n){"string"!==typeof n&&W("Cannot pass non-string to C++ string type "+c);var p=g(n),q=rb(4+p+b);L[q>>2]=p>>k;f(n,q+4,p+b);null!==h&&h.push(Z,q);return q},argPackAdvance:8,readValueFromPointer:Xa,T:function(h){Z(h)}})},j:function(a,b){b=S(b);X(a,{$:!0,name:b,argPackAdvance:0,fromWireType:function(){}, -toWireType:function(){}})},r:Ta,v:function(a){if(0===a)return Ua(lb());var b=kb[a];a=void 0===b?S(a):b;return Ua(lb()[a])},k:function(a){4>> 2) + "+g+'], "parameter '+g+ -'");\nvar arg'+g+" = argType"+g+".readValueFromPointer(args);\nargs += argType"+g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",l+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(mb,d,Ua);nb[b]=f}return f(a,c,e)},f:function(){A()},q:function(a,b,c){F.copyWithin(a,b,b+c)},c:function(a){a>>>=0;var b=F.length;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0>>16);wa(E.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},s:function(){return 0},o:function(){},g:function(a,b,c,e){for(var f=0,g=0;g>2],k=I[b+(8*g+4)>>2],h=0;h>2]=f;return 0},memory:E,p:function(){},table:ha}; -(function(){function a(f){d.asm=f.exports;N--;d.monitorRunDependencies&&d.monitorRunDependencies(N);0==N&&(null!==Da&&(clearInterval(Da),Da=null),O&&(f=O,O=null,f()))}function b(f){a(f.instance)}function c(f){return Ia().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){B("failed to asynchronously prepare wasm: "+g);A(g)})}var e={a:sb};N++;d.monitorRunDependencies&&d.monitorRunDependencies(N);if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return B("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){if(D||"function"!==typeof WebAssembly.instantiateStreaming||Fa()||Ea("file://")||"function"!==typeof fetch)return c(b);fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){B("wasm streaming compile failed: "+g);B("falling back to ArrayBuffer instantiation");return c(b)})})})();return{}})(); -var Ja=d.___wasm_call_ctors=function(){return(Ja=d.___wasm_call_ctors=d.asm.x).apply(null,arguments)},rb=d._malloc=function(){return(rb=d._malloc=d.asm.y).apply(null,arguments)},Z=d._free=function(){return(Z=d._free=d.asm.z).apply(null,arguments)},hb=d.___getTypeName=function(){return(hb=d.___getTypeName=d.asm.A).apply(null,arguments)};d.___embind_register_native_and_builtin_types=function(){return(d.___embind_register_native_and_builtin_types=d.asm.B).apply(null,arguments)}; -d.dynCall_iiiiiif=function(){return(d.dynCall_iiiiiif=d.asm.C).apply(null,arguments)};d.dynCall_viiiiif=function(){return(d.dynCall_viiiiif=d.asm.D).apply(null,arguments)};d.dynCall_iiiiif=function(){return(d.dynCall_iiiiif=d.asm.E).apply(null,arguments)};d.dynCall_viiiif=function(){return(d.dynCall_viiiif=d.asm.F).apply(null,arguments)};d.dynCall_ii=function(){return(d.dynCall_ii=d.asm.G).apply(null,arguments)};d.dynCall_i=function(){return(d.dynCall_i=d.asm.H).apply(null,arguments)}; -d.dynCall_vi=function(){return(d.dynCall_vi=d.asm.I).apply(null,arguments)};d.dynCall_iii=function(){return(d.dynCall_iii=d.asm.J).apply(null,arguments)};d.dynCall_vif=function(){return(d.dynCall_vif=d.asm.K).apply(null,arguments)};d.dynCall_iidiiii=function(){return(d.dynCall_iidiiii=d.asm.L).apply(null,arguments)};d.dynCall_vii=function(){return(d.dynCall_vii=d.asm.M).apply(null,arguments)};d.dynCall_iiii=function(){return(d.dynCall_iiii=d.asm.N).apply(null,arguments)}; -d.dynCall_jiji=function(){return(d.dynCall_jiji=d.asm.O).apply(null,arguments)};d.dynCall_viiiiii=function(){return(d.dynCall_viiiiii=d.asm.P).apply(null,arguments)};d.dynCall_viiiii=function(){return(d.dynCall_viiiii=d.asm.Q).apply(null,arguments)};d.dynCall_viiii=function(){return(d.dynCall_viiii=d.asm.R).apply(null,arguments)};var tb;O=function ub(){tb||vb();tb||(O=ub)}; -function vb(){function a(){if(!tb&&(tb=!0,d.calledRun=!0,!ia)){M(za);M(Aa);aa(d);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Ba.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 delta 15323 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 H@?-xWCfJp- diff --git a/codecs/mozjpeg_enc/Makefile b/codecs/mozjpeg_enc/Makefile index 30b5ca0e..062b5dc4 100644 --- a/codecs/mozjpeg_enc/Makefile +++ b/codecs/mozjpeg_enc/Makefile @@ -14,11 +14,13 @@ all: $(OUT_JS) -I $(CODEC_DIR) \ ${CXXFLAGS} \ ${LDFLAGS} \ - --bind \ --closure 1 \ + --bind \ -s ALLOW_MEMORY_GROWTH=1 \ -s MODULARIZE=1 \ - -s 'EXPORT_NAME="$(basename $(@F))"' \ + -s TEXTDECODER=2 \ + -s ENVIRONMENT='worker' \ + -s EXPORT_ES6=1 \ -o $@ \ $+ diff --git a/codecs/mozjpeg_enc/example.html b/codecs/mozjpeg_enc/example.html index 2cff900f..82f2511c 100644 --- a/codecs/mozjpeg_enc/example.html +++ b/codecs/mozjpeg_enc/example.html @@ -1,13 +1,12 @@ - - - diff --git a/codecs/mozjpeg_enc/mozjpeg_enc.d.ts b/codecs/mozjpeg_enc/mozjpeg_enc.d.ts index 58e808f4..b7669b14 100644 --- a/codecs/mozjpeg_enc/mozjpeg_enc.d.ts +++ b/codecs/mozjpeg_enc/mozjpeg_enc.d.ts @@ -1,7 +1,14 @@ -import { EncodeOptions } from '../../src/codecs/mozjpeg/encoder-meta'; +import { EncodeOptions } from 'image-worker/mozjpegEncode'; -interface MozJPEGModule extends EmscriptenWasm.Module { - encode(data: BufferSource, width: number, height: number, options: EncodeOptions): Uint8Array; +export interface MozJPEGModule extends EmscriptenWasm.Module { + encode( + data: BufferSource, + width: number, + height: number, + options: EncodeOptions, + ): Uint8Array; } -export default function(opts: EmscriptenWasm.ModuleOpts): MozJPEGModule; +declare var moduleFactory: EmscriptenWasm.ModuleFactory; + +export default moduleFactory; diff --git a/codecs/mozjpeg_enc/mozjpeg_enc.js b/codecs/mozjpeg_enc/mozjpeg_enc.js index 7c6d20f6..cd4b0389 100644 --- a/codecs/mozjpeg_enc/mozjpeg_enc.js +++ b/codecs/mozjpeg_enc/mozjpeg_enc.js @@ -1,72 +1,1325 @@ +var Module = (function () { + var _scriptDir = import.meta.url; -var mozjpeg_enc = (function() { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(mozjpeg_enc) { - mozjpeg_enc = mozjpeg_enc || {}; + return function (Module) { + Module = Module || {}; + var g; + g || (g = typeof Module !== 'undefined' ? Module : {}); + var aa, ba; + g.ready = new Promise(function (a, b) { + aa = a; + ba = b; + }); + var r = {}, + t; + for (t in g) g.hasOwnProperty(t) && (r[t] = g[t]); + var ca = './this.program'; + function da(a, b) { + throw b; + } + var u = '', + ea; + u = self.location.href; + _scriptDir && (u = _scriptDir); + 0 !== u.indexOf('blob:') + ? (u = u.substr(0, u.lastIndexOf('/') + 1)) + : (u = ''); + ea = function (a) { + var b = new XMLHttpRequest(); + b.open('GET', a, !1); + b.responseType = 'arraybuffer'; + b.send(null); + return new Uint8Array(b.response); + }; + var ha = g.print || console.log.bind(console), + v = g.printErr || console.warn.bind(console); + for (t in r) r.hasOwnProperty(t) && (g[t] = r[t]); + r = null; + g.thisProgram && (ca = g.thisProgram); + g.quit && (da = g.quit); + var w; + g.wasmBinary && (w = g.wasmBinary); + var noExitRuntime; + g.noExitRuntime && (noExitRuntime = g.noExitRuntime); + 'object' !== typeof WebAssembly && A('no native wasm support detected'); + var B, + C = new WebAssembly.Table({ + initial: 122, + maximum: 122, + element: 'anyfunc', + }), + ia = !1, + ja = new TextDecoder('utf8'); + function ka(a, b, c) { + var d = D; + if (0 < c) { + c = b + c - 1; + for (var e = 0; e < a.length; ++e) { + var f = a.charCodeAt(e); + if (55296 <= f && 57343 >= f) { + var m = a.charCodeAt(++e); + f = (65536 + ((f & 1023) << 10)) | (m & 1023); + } + if (127 >= f) { + if (b >= c) break; + d[b++] = f; + } else { + if (2047 >= f) { + if (b + 1 >= c) break; + d[b++] = 192 | (f >> 6); + } else { + if (65535 >= f) { + if (b + 2 >= c) break; + d[b++] = 224 | (f >> 12); + } else { + if (b + 3 >= c) break; + d[b++] = 240 | (f >> 18); + d[b++] = 128 | ((f >> 12) & 63); + } + d[b++] = 128 | ((f >> 6) & 63); + } + d[b++] = 128 | (f & 63); + } + } + d[b] = 0; + } + } + var la = new TextDecoder('utf-16le'); + function ma(a, b) { + var c = a >> 1; + for (b = c + b / 2; !(c >= b) && E[c]; ) ++c; + return la.decode(D.subarray(a, c << 1)); + } + function na(a, b, c) { + void 0 === c && (c = 2147483647); + if (2 > c) return 0; + c -= 2; + var d = b; + c = c < 2 * a.length ? c / 2 : a.length; + for (var e = 0; e < c; ++e) (G[b >> 1] = a.charCodeAt(e)), (b += 2); + G[b >> 1] = 0; + return b - d; + } + function oa(a) { + return 2 * a.length; + } + function pa(a, b) { + for (var c = 0, d = ''; !(c >= b / 4); ) { + var e = H[(a + 4 * c) >> 2]; + if (0 == e) break; + ++c; + 65536 <= e + ? ((e -= 65536), + (d += String.fromCharCode(55296 | (e >> 10), 56320 | (e & 1023)))) + : (d += String.fromCharCode(e)); + } + return d; + } + function qa(a, b, c) { + void 0 === c && (c = 2147483647); + if (4 > c) return 0; + var d = b; + c = d + c - 4; + for (var e = 0; e < a.length; ++e) { + var f = a.charCodeAt(e); + if (55296 <= f && 57343 >= f) { + var m = a.charCodeAt(++e); + f = (65536 + ((f & 1023) << 10)) | (m & 1023); + } + H[b >> 2] = f; + b += 4; + if (b + 4 > c) break; + } + H[b >> 2] = 0; + return b - d; + } + function ra(a) { + for (var b = 0, c = 0; c < a.length; ++c) { + var d = a.charCodeAt(c); + 55296 <= d && 57343 >= d && ++c; + b += 4; + } + return b; + } + var I, J, D, G, E, H, K, sa, ta; + function ua(a) { + I = a; + g.HEAP8 = J = new Int8Array(a); + g.HEAP16 = G = new Int16Array(a); + g.HEAP32 = H = new Int32Array(a); + g.HEAPU8 = D = new Uint8Array(a); + g.HEAPU16 = E = new Uint16Array(a); + g.HEAPU32 = K = new Uint32Array(a); + g.HEAPF32 = sa = new Float32Array(a); + g.HEAPF64 = ta = new Float64Array(a); + } + var va = g.INITIAL_MEMORY || 16777216; + g.wasmMemory + ? (B = g.wasmMemory) + : (B = new WebAssembly.Memory({ initial: va / 65536, maximum: 32768 })); + B && (I = B.buffer); + va = I.byteLength; + ua(I); + var wa = [], + xa = [], + ya = [], + za = []; + function Aa() { + var a = g.preRun.shift(); + wa.unshift(a); + } + var L = 0, + Ba = null, + M = null; + g.preloadedImages = {}; + g.preloadedAudios = {}; + function A(a) { + if (g.onAbort) g.onAbort(a); + v(a); + ia = !0; + a = new WebAssembly.RuntimeError( + 'abort(' + a + '). Build with -s ASSERTIONS=1 for more info.', + ); + ba(a); + throw a; + } + function Ca() { + var a = N; + return String.prototype.startsWith + ? a.startsWith('data:application/octet-stream;base64,') + : 0 === a.indexOf('data:application/octet-stream;base64,'); + } + var N = 'mozjpeg_enc.wasm'; + if (!Ca()) { + var Da = N; + N = g.locateFile ? g.locateFile(Da, u) : u + Da; + } + function Ea() { + try { + if (w) return new Uint8Array(w); + if (ea) return ea(N); + throw 'both async and sync fetching of the wasm failed'; + } catch (a) { + A(a); + } + } + function Fa() { + return w || 'function' !== typeof fetch + ? Promise.resolve().then(Ea) + : fetch(N, { credentials: 'same-origin' }) + .then(function (a) { + if (!a.ok) throw "failed to load wasm binary file at '" + N + "'"; + return a.arrayBuffer(); + }) + .catch(function () { + return Ea(); + }); + } + xa.push({ + V: function () { + Ga(); + }, + }); + function O(a) { + for (; 0 < a.length; ) { + var b = a.shift(); + if ('function' == typeof b) b(g); + else { + var c = b.V; + 'number' === typeof c + ? void 0 === b.O + ? C.get(c)() + : C.get(c)(b.O) + : c(void 0 === b.O ? null : b.O); + } + } + } + function Ha(a) { + this.N = a - 16; + this.ga = function (b) { + H[(this.N + 8) >> 2] = b; + }; + this.da = function (b) { + H[(this.N + 0) >> 2] = b; + }; + this.ea = function () { + H[(this.N + 4) >> 2] = 0; + }; + this.ca = function () { + J[(this.N + 12) >> 0] = 0; + }; + this.fa = function () { + J[(this.N + 13) >> 0] = 0; + }; + this.$ = function (b, c) { + this.ga(b); + this.da(c); + this.ea(); + this.ca(); + this.fa(); + }; + } + function P() { + return 0 < P.R; + } + var Q = {}; + function Ia(a) { + for (; a.length; ) { + var b = a.pop(); + a.pop()(b); + } + } + function Ja(a) { + return this.fromWireType(K[a >> 2]); + } + var R = {}, + S = {}, + Ka = {}; + function La(a) { + if (void 0 === a) return '_unknown'; + a = a.replace(/[^a-zA-Z0-9_]/g, '$'); + var b = a.charCodeAt(0); + return 48 <= b && 57 >= b ? '_' + a : a; + } + function Ma(a, b) { + a = La(a); + return new Function( + 'body', + 'return function ' + + a + + '() {\n "use strict"; return body.apply(this, arguments);\n};\n', + )(b); + } + function Na(a) { + var b = Error, + c = Ma(a, function (d) { + this.name = a; + this.message = d; + d = Error(d).stack; + void 0 !== d && + (this.stack = + this.toString() + '\n' + d.replace(/^Error(:[^\n]*)?\n/, '')); + }); + c.prototype = Object.create(b.prototype); + c.prototype.constructor = c; + c.prototype.toString = function () { + return void 0 === this.message + ? this.name + : this.name + ': ' + this.message; + }; + return c; + } + var Oa = void 0; + function Pa(a, b, c) { + function d(h) { + h = c(h); + if (h.length !== a.length) + throw new Oa('Mismatched type converter count'); + for (var n = 0; n < a.length; ++n) T(a[n], h[n]); + } + a.forEach(function (h) { + Ka[h] = b; + }); + var e = Array(b.length), + f = [], + m = 0; + b.forEach(function (h, n) { + S.hasOwnProperty(h) + ? (e[n] = S[h]) + : (f.push(h), + R.hasOwnProperty(h) || (R[h] = []), + R[h].push(function () { + e[n] = S[h]; + ++m; + m === f.length && d(e); + })); + }); + 0 === f.length && d(e); + } + function Qa(a) { + switch (a) { + case 1: + return 0; + case 2: + return 1; + case 4: + return 2; + case 8: + return 3; + default: + throw new TypeError('Unknown type size: ' + a); + } + } + var Ra = void 0; + function U(a) { + for (var b = ''; D[a]; ) b += Ra[D[a++]]; + return b; + } + var Sa = void 0; + function W(a) { + throw new Sa(a); + } + function T(a, b, c) { + c = c || {}; + if (!('argPackAdvance' in b)) + throw new TypeError( + 'registerType registeredInstance requires argPackAdvance', + ); + var d = b.name; + a || W('type "' + d + '" must have a positive integer typeid pointer'); + if (S.hasOwnProperty(a)) { + if (c.Z) return; + W("Cannot register type '" + d + "' twice"); + } + S[a] = b; + delete Ka[a]; + R.hasOwnProperty(a) && + ((b = R[a]), + delete R[a], + b.forEach(function (e) { + e(); + })); + } + var Ta = [], + X = [ + {}, + { value: void 0 }, + { value: null }, + { value: !0 }, + { value: !1 }, + ]; + function Ua(a) { + 4 < a && 0 === --X[a].P && ((X[a] = void 0), Ta.push(a)); + } + function Va(a) { + switch (a) { + case void 0: + return 1; + case null: + return 2; + case !0: + return 3; + case !1: + return 4; + default: + var b = Ta.length ? Ta.pop() : X.length; + X[b] = { P: 1, value: a }; + return b; + } + } + function Wa(a) { + if (null === a) return 'null'; + var b = typeof a; + return 'object' === b || 'array' === b || 'function' === b + ? a.toString() + : '' + a; + } + function Xa(a, b) { + switch (b) { + case 2: + return function (c) { + return this.fromWireType(sa[c >> 2]); + }; + case 3: + return function (c) { + return this.fromWireType(ta[c >> 3]); + }; + default: + throw new TypeError('Unknown float type: ' + a); + } + } + function Ya(a) { + var b = Function; + if (!(b instanceof Function)) + throw new TypeError( + 'new_ called with constructor type ' + + typeof b + + ' which is not a function', + ); + var c = Ma(b.name || 'unknownFunctionName', function () {}); + c.prototype = b.prototype; + c = new c(); + a = b.apply(c, a); + return a instanceof Object ? a : c; + } + function Za(a, b) { + var c = g; + if (void 0 === c[a].L) { + var d = c[a]; + c[a] = function () { + c[a].L.hasOwnProperty(arguments.length) || + W( + "Function '" + + b + + "' called with an invalid number of arguments (" + + arguments.length + + ') - expects one of (' + + c[a].L + + ')!', + ); + return c[a].L[arguments.length].apply(this, arguments); + }; + c[a].L = []; + c[a].L[d.T] = d; + } + } + function $a(a, b, c) { + g.hasOwnProperty(a) + ? ((void 0 === c || (void 0 !== g[a].L && void 0 !== g[a].L[c])) && + W("Cannot register public name '" + a + "' twice"), + Za(a, a), + g.hasOwnProperty(c) && + W( + 'Cannot register multiple overloads of a function with the same number of arguments (' + + c + + ')!', + ), + (g[a].L[c] = b)) + : ((g[a] = b), void 0 !== c && (g[a].la = c)); + } + function ab(a, b) { + for (var c = [], d = 0; d < a; d++) c.push(H[(b >> 2) + d]); + return c; + } + function bb(a, b) { + 0 <= a.indexOf('j') || + A('Assertion failed: getDynCaller should only be called with i64 sigs'); + var c = []; + return function () { + c.length = arguments.length; + for (var d = 0; d < arguments.length; d++) c[d] = arguments[d]; + var e; + -1 != a.indexOf('j') + ? (e = + c && c.length + ? g['dynCall_' + a].apply(null, [b].concat(c)) + : g['dynCall_' + a].call(null, b)) + : (e = C.get(b).apply(null, c)); + return e; + }; + } + function Y(a, b) { + a = U(a); + var c = -1 != a.indexOf('j') ? bb(a, b) : C.get(b); + 'function' !== typeof c && + W('unknown function pointer with signature ' + a + ': ' + b); + return c; + } + var cb = void 0; + function db(a) { + a = eb(a); + var b = U(a); + Z(a); + return b; + } + function fb(a, b) { + function c(f) { + e[f] || S[f] || (Ka[f] ? Ka[f].forEach(c) : (d.push(f), (e[f] = !0))); + } + var d = [], + e = {}; + b.forEach(c); + throw new cb(a + ': ' + d.map(db).join([', '])); + } + function gb(a, b, c) { + switch (b) { + case 0: + return c + ? function (d) { + return J[d]; + } + : function (d) { + return D[d]; + }; + case 1: + return c + ? function (d) { + return G[d >> 1]; + } + : function (d) { + return E[d >> 1]; + }; + case 2: + return c + ? function (d) { + return H[d >> 2]; + } + : function (d) { + return K[d >> 2]; + }; + default: + throw new TypeError('Unknown integer type: ' + a); + } + } + var hb = {}; + function ib() { + return 'object' === typeof globalThis + ? globalThis + : Function('return this')(); + } + function jb(a, b) { + var c = S[a]; + void 0 === c && W(b + ' has unknown type ' + db(a)); + return c; + } + var kb = {}, + lb = {}; + function mb() { + if (!nb) { + var a = { + USER: 'web_user', + LOGNAME: 'web_user', + PATH: '/', + PWD: '/', + HOME: '/home/web_user', + LANG: + ( + ('object' === typeof navigator && + navigator.languages && + navigator.languages[0]) || + 'C' + ).replace('-', '_') + '.UTF-8', + _: ca || './this.program', + }, + b; + for (b in lb) a[b] = lb[b]; + var c = []; + for (b in a) c.push(b + '=' + a[b]); + nb = c; + } + return nb; + } + var nb, + ob = [null, [], []]; + Oa = g.InternalError = Na('InternalError'); + for (var pb = Array(256), qb = 0; 256 > qb; ++qb) + pb[qb] = String.fromCharCode(qb); + Ra = pb; + Sa = g.BindingError = Na('BindingError'); + g.count_emval_handles = function () { + for (var a = 0, b = 5; b < X.length; ++b) void 0 !== X[b] && ++a; + return a; + }; + g.get_first_emval = function () { + for (var a = 5; a < X.length; ++a) if (void 0 !== X[a]) return X[a]; + return null; + }; + cb = g.UnboundTypeError = Na('UnboundTypeError'); + var tb = { + l: function (a) { + return rb(a + 16) + 16; + }, + E: function () {}, + C: function (a, b, c) { + new Ha(a).$(b, c); + 'uncaught_exception' in P ? P.R++ : (P.R = 1); + throw a; + }, + b: C, + n: function (a) { + var b = Q[a]; + delete Q[a]; + var c = b.aa, + d = b.ba, + e = b.S, + f = e + .map(function (m) { + return m.Y; + }) + .concat( + e.map(function (m) { + return m.ia; + }), + ); + Pa([a], f, function (m) { + var h = {}; + e.forEach(function (n, k) { + var l = m[k], + q = n.W, + x = n.X, + y = m[k + e.length], + p = n.ha, + fa = n.ja; + h[n.U] = { + read: function (z) { + return l.fromWireType(q(x, z)); + }, + write: function (z, F) { + var V = []; + p(fa, z, y.toWireType(V, F)); + Ia(V); + }, + }; + }); + return [ + { + name: b.name, + fromWireType: function (n) { + var k = {}, + l; + for (l in h) k[l] = h[l].read(n); + d(n); + return k; + }, + toWireType: function (n, k) { + for (var l in h) + if (!(l in k)) + throw new TypeError('Missing field: "' + l + '"'); + var q = c(); + for (l in h) h[l].write(q, k[l]); + null !== n && n.push(d, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Ja, + M: d, + }, + ]; + }); + }, + z: function (a, b, c, d, e) { + var f = Qa(c); + b = U(b); + T(a, { + name: b, + fromWireType: function (m) { + return !!m; + }, + toWireType: function (m, h) { + return h ? d : e; + }, + argPackAdvance: 8, + readValueFromPointer: function (m) { + if (1 === c) var h = J; + else if (2 === c) h = G; + else if (4 === c) h = H; + else throw new TypeError('Unknown boolean type size: ' + b); + return this.fromWireType(h[m >> f]); + }, + M: null, + }); + }, + y: function (a, b) { + b = U(b); + T(a, { + name: b, + fromWireType: function (c) { + var d = X[c].value; + Ua(c); + return d; + }, + toWireType: function (c, d) { + return Va(d); + }, + argPackAdvance: 8, + readValueFromPointer: Ja, + M: null, + }); + }, + j: function (a, b, c) { + c = Qa(c); + b = U(b); + T(a, { + name: b, + fromWireType: function (d) { + return d; + }, + toWireType: function (d, e) { + if ('number' !== typeof e && 'boolean' !== typeof e) + throw new TypeError( + 'Cannot convert "' + Wa(e) + '" to ' + this.name, + ); + return e; + }, + argPackAdvance: 8, + readValueFromPointer: Xa(b, c), + M: null, + }); + }, + g: function (a, b, c, d, e, f) { + var m = ab(b, c); + a = U(a); + e = Y(d, e); + $a( + a, + function () { + fb('Cannot call ' + a + ' due to unbound types', m); + }, + b - 1, + ); + Pa([], m, function (h) { + var n = a, + k = a; + h = [h[0], null].concat(h.slice(1)); + var l = e, + q = h.length; + 2 > q && + W( + "argTypes array size mismatch! Must at least get return value and 'this' types!", + ); + for (var x = null !== h[1] && !1, y = !1, p = 1; p < h.length; ++p) + if (null !== h[p] && void 0 === h[p].M) { + y = !0; + break; + } + var fa = 'void' !== h[0].name, + z = '', + F = ''; + for (p = 0; p < q - 2; ++p) + (z += (0 !== p ? ', ' : '') + 'arg' + p), + (F += (0 !== p ? ', ' : '') + 'arg' + p + 'Wired'); + k = + 'return function ' + + La(k) + + '(' + + z + + ') {\nif (arguments.length !== ' + + (q - 2) + + ") {\nthrowBindingError('function " + + k + + " called with ' + arguments.length + ' arguments, expected " + + (q - 2) + + " args!');\n}\n"; + y && (k += 'var destructors = [];\n'); + var V = y ? 'destructors' : 'null'; + z = 'throwBindingError invoker fn runDestructors retType classParam'.split( + ' ', + ); + l = [W, l, f, Ia, h[0], h[1]]; + x && + (k += 'var thisWired = classParam.toWireType(' + V + ', this);\n'); + for (p = 0; p < q - 2; ++p) + (k += + 'var arg' + + p + + 'Wired = argType' + + p + + '.toWireType(' + + V + + ', arg' + + p + + '); // ' + + h[p + 2].name + + '\n'), + z.push('argType' + p), + l.push(h[p + 2]); + x && (F = 'thisWired' + (0 < F.length ? ', ' : '') + F); + k += + (fa ? 'var rv = ' : '') + + 'invoker(fn' + + (0 < F.length ? ', ' : '') + + F + + ');\n'; + if (y) k += 'runDestructors(destructors);\n'; + else + for (p = x ? 1 : 2; p < h.length; ++p) + (q = 1 === p ? 'thisWired' : 'arg' + (p - 2) + 'Wired'), + null !== h[p].M && + ((k += q + '_dtor(' + q + '); // ' + h[p].name + '\n'), + z.push(q + '_dtor'), + l.push(h[p].M)); + fa && (k += 'var ret = retType.fromWireType(rv);\nreturn ret;\n'); + z.push(k + '}\n'); + h = Ya(z).apply(null, l); + p = b - 1; + if (!g.hasOwnProperty(n)) + throw new Oa('Replacing nonexistant public symbol'); + void 0 !== g[n].L && void 0 !== p + ? (g[n].L[p] = h) + : ((g[n] = h), (g[n].T = p)); + return []; + }); + }, + d: function (a, b, c, d, e) { + function f(k) { + return k; + } + b = U(b); + -1 === e && (e = 4294967295); + var m = Qa(c); + if (0 === d) { + var h = 32 - 8 * c; + f = function (k) { + return (k << h) >>> h; + }; + } + var n = -1 != b.indexOf('unsigned'); + T(a, { + name: b, + fromWireType: f, + toWireType: function (k, l) { + if ('number' !== typeof l && 'boolean' !== typeof l) + throw new TypeError( + 'Cannot convert "' + Wa(l) + '" to ' + this.name, + ); + if (l < d || l > e) + throw new TypeError( + 'Passing a number "' + + Wa(l) + + '" from JS side to C/C++ side to an argument of type "' + + b + + '", which is outside the valid range [' + + d + + ', ' + + e + + ']!', + ); + return n ? l >>> 0 : l | 0; + }, + argPackAdvance: 8, + readValueFromPointer: gb(b, m, 0 !== d), + M: null, + }); + }, + c: function (a, b, c) { + function d(f) { + f >>= 2; + var m = K; + return new e(I, m[f + 1], m[f]); + } + var e = [ + Int8Array, + Uint8Array, + Int16Array, + Uint16Array, + Int32Array, + Uint32Array, + Float32Array, + Float64Array, + ][b]; + c = U(c); + T( + a, + { + name: c, + fromWireType: d, + argPackAdvance: 8, + readValueFromPointer: d, + }, + { Z: !0 }, + ); + }, + k: function (a, b) { + b = U(b); + var c = 'std::string' === b; + T(a, { + name: b, + fromWireType: function (d) { + var e = K[d >> 2]; + if (c) + for (var f = d + 4, m = 0; m <= e; ++m) { + var h = d + 4 + m; + if (m == e || 0 == D[h]) { + if (f) { + for (var n = f + (h - f), k = f; !(k >= n) && D[k]; ) ++k; + f = ja.decode(D.subarray(f, k)); + } else f = ''; + if (void 0 === l) var l = f; + else (l += String.fromCharCode(0)), (l += f); + f = h + 1; + } + } + else { + l = Array(e); + for (m = 0; m < e; ++m) l[m] = String.fromCharCode(D[d + 4 + m]); + l = l.join(''); + } + Z(d); + return l; + }, + toWireType: function (d, e) { + e instanceof ArrayBuffer && (e = new Uint8Array(e)); + var f = 'string' === typeof e; + f || + e instanceof Uint8Array || + e instanceof Uint8ClampedArray || + e instanceof Int8Array || + W('Cannot pass non-string to std::string'); + var m = (c && f + ? function () { + for (var k = 0, l = 0; l < e.length; ++l) { + var q = e.charCodeAt(l); + 55296 <= q && + 57343 >= q && + (q = + (65536 + ((q & 1023) << 10)) | + (e.charCodeAt(++l) & 1023)); + 127 >= q + ? ++k + : (k = 2047 >= q ? k + 2 : 65535 >= q ? k + 3 : k + 4); + } + return k; + } + : function () { + return e.length; + })(), + h = rb(4 + m + 1); + K[h >> 2] = m; + if (c && f) ka(e, h + 4, m + 1); + else if (f) + for (f = 0; f < m; ++f) { + var n = e.charCodeAt(f); + 255 < n && + (Z(h), + W('String has UTF-16 code units that do not fit in 8 bits')); + D[h + 4 + f] = n; + } + else for (f = 0; f < m; ++f) D[h + 4 + f] = e[f]; + null !== d && d.push(Z, h); + return h; + }, + argPackAdvance: 8, + readValueFromPointer: Ja, + M: function (d) { + Z(d); + }, + }); + }, + f: function (a, b, c) { + c = U(c); + if (2 === b) { + var d = ma; + var e = na; + var f = oa; + var m = function () { + return E; + }; + var h = 1; + } else + 4 === b && + ((d = pa), + (e = qa), + (f = ra), + (m = function () { + return K; + }), + (h = 2)); + T(a, { + name: c, + fromWireType: function (n) { + for (var k = K[n >> 2], l = m(), q, x = n + 4, y = 0; y <= k; ++y) { + var p = n + 4 + y * b; + if (y == k || 0 == l[p >> h]) + (x = d(x, p - x)), + void 0 === q + ? (q = x) + : ((q += String.fromCharCode(0)), (q += x)), + (x = p + b); + } + Z(n); + return q; + }, + toWireType: function (n, k) { + 'string' !== typeof k && + W('Cannot pass non-string to C++ string type ' + c); + var l = f(k), + q = rb(4 + l + b); + K[q >> 2] = l >> h; + e(k, q + 4, l + b); + null !== n && n.push(Z, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Ja, + M: function (n) { + Z(n); + }, + }); + }, + o: function (a, b, c, d, e, f) { + Q[a] = { name: U(b), aa: Y(c, d), ba: Y(e, f), S: [] }; + }, + h: function (a, b, c, d, e, f, m, h, n, k) { + Q[a].S.push({ + U: U(b), + Y: c, + W: Y(d, e), + X: f, + ia: m, + ha: Y(h, n), + ja: k, + }); + }, + A: function (a, b) { + b = U(b); + T(a, { + ka: !0, + name: b, + argPackAdvance: 0, + fromWireType: function () {}, + toWireType: function () {}, + }); + }, + x: Ua, + D: function (a) { + if (0 === a) return Va(ib()); + var b = hb[a]; + a = void 0 === b ? U(a) : b; + return Va(ib()[a]); + }, + m: function (a) { + 4 < a && (X[a].P += 1); + }, + p: function (a, b, c, d) { + a || W('Cannot use deleted val. handle = ' + a); + a = X[a].value; + var e = kb[b]; + if (!e) { + e = ''; + for (var f = 0; f < b; ++f) e += (0 !== f ? ', ' : '') + 'arg' + f; + var m = + 'return function emval_allocator_' + + b + + '(constructor, argTypes, args) {\n'; + for (f = 0; f < b; ++f) + m += + 'var argType' + + f + + " = requireRegisteredType(Module['HEAP32'][(argTypes >>> 2) + " + + f + + '], "parameter ' + + f + + '");\nvar arg' + + f + + ' = argType' + + f + + '.readValueFromPointer(args);\nargs += argType' + + f + + "['argPackAdvance'];\n"; + e = new Function( + 'requireRegisteredType', + 'Module', + '__emval_register', + m + + ('var obj = new constructor(' + + e + + ');\nreturn __emval_register(obj);\n}\n'), + )(jb, g, Va); + kb[b] = e; + } + return e(a, c, d); + }, + t: function () { + A(); + }, + s: function (a, b, c) { + D.copyWithin(a, b, b + c); + }, + e: function (a) { + a >>>= 0; + var b = D.length; + if (2147483648 < a) return !1; + for (var c = 1; 4 >= c; c *= 2) { + var d = b * (1 + 0.2 / c); + d = Math.min(d, a + 100663296); + d = Math.max(16777216, a, d); + 0 < d % 65536 && (d += 65536 - (d % 65536)); + a: { + try { + B.grow((Math.min(2147483648, d) - I.byteLength + 65535) >>> 16); + ua(B.buffer); + var e = 1; + break a; + } catch (f) {} + e = void 0; + } + if (e) return !0; + } + return !1; + }, + u: function (a, b) { + var c = 0; + mb().forEach(function (d, e) { + var f = b + c; + e = H[(a + 4 * e) >> 2] = f; + for (f = 0; f < d.length; ++f) J[e++ >> 0] = d.charCodeAt(f); + J[e >> 0] = 0; + c += d.length + 1; + }); + return 0; + }, + v: function (a, b) { + var c = mb(); + H[a >> 2] = c.length; + var d = 0; + c.forEach(function (e) { + d += e.length + 1; + }); + H[b >> 2] = d; + return 0; + }, + B: function (a) { + if (!noExitRuntime) { + if (g.onExit) g.onExit(a); + ia = !0; + } + da(a, new sb(a)); + }, + w: function () { + return 0; + }, + q: function () {}, + i: function (a, b, c, d) { + for (var e = 0, f = 0; f < c; f++) { + for ( + var m = H[(b + 8 * f) >> 2], h = H[(b + (8 * f + 4)) >> 2], n = 0; + n < h; + n++ + ) { + var k = D[m + n], + l = ob[a]; + if (0 === k || 10 === k) { + for (k = 0; l[k] && !(NaN <= k); ) ++k; + k = ja.decode( + l.subarray ? l.subarray(0, k) : new Uint8Array(l.slice(0, k)), + ); + (1 === a ? ha : v)(k); + l.length = 0; + } else l.push(k); + } + e += h; + } + H[d >> 2] = e; + return 0; + }, + a: B, + r: function () {}, + }; + (function () { + function a(e) { + g.asm = e.exports; + L--; + g.monitorRunDependencies && g.monitorRunDependencies(L); + 0 == L && + (null !== Ba && (clearInterval(Ba), (Ba = null)), + M && ((e = M), (M = null), e())); + } + function b(e) { + a(e.instance); + } + function c(e) { + return Fa() + .then(function (f) { + return WebAssembly.instantiate(f, d); + }) + .then(e, function (f) { + v('failed to asynchronously prepare wasm: ' + f); + A(f); + }); + } + var d = { a: tb }; + L++; + g.monitorRunDependencies && g.monitorRunDependencies(L); + if (g.instantiateWasm) + try { + return g.instantiateWasm(d, a); + } catch (e) { + return ( + v('Module.instantiateWasm callback failed with error: ' + e), !1 + ); + } + (function () { + if ( + w || + 'function' !== typeof WebAssembly.instantiateStreaming || + Ca() || + 'function' !== typeof fetch + ) + return c(b); + fetch(N, { credentials: 'same-origin' }).then(function (e) { + return WebAssembly.instantiateStreaming(e, d).then(b, function (f) { + v('wasm streaming compile failed: ' + f); + v('falling back to ArrayBuffer instantiation'); + return c(b); + }); + }); + })(); + return {}; + })(); + var Ga = (g.___wasm_call_ctors = function () { + return (Ga = g.___wasm_call_ctors = g.asm.F).apply(null, arguments); + }), + Z = (g._free = function () { + return (Z = g._free = g.asm.G).apply(null, arguments); + }), + rb = (g._malloc = function () { + return (rb = g._malloc = g.asm.H).apply(null, arguments); + }), + eb = (g.___getTypeName = function () { + return (eb = g.___getTypeName = g.asm.I).apply(null, arguments); + }); + g.___embind_register_native_and_builtin_types = function () { + return (g.___embind_register_native_and_builtin_types = g.asm.J).apply( + null, + arguments, + ); + }; + g.dynCall_jiji = function () { + return (g.dynCall_jiji = g.asm.K).apply(null, arguments); + }; + var ub; + function sb(a) { + this.name = 'ExitStatus'; + this.message = 'Program terminated with exit(' + a + ')'; + this.status = a; + } + M = function vb() { + ub || wb(); + ub || (M = vb); + }; + function wb() { + function a() { + if (!ub && ((ub = !0), (g.calledRun = !0), !ia)) { + O(xa); + O(ya); + aa(g); + if (g.onRuntimeInitialized) g.onRuntimeInitialized(); + if (g.postRun) + for ( + 'function' == typeof g.postRun && (g.postRun = [g.postRun]); + g.postRun.length; -var d;d||(d=typeof mozjpeg_enc !== 'undefined' ? mozjpeg_enc : {});var aa;d.ready=new Promise(function(a){aa=a});var r={},t;for(t in d)d.hasOwnProperty(t)&&(r[t]=d[t]);var ba="./this.program";function u(a,b){throw b;}var v=!1,w=!1,ca=!1,da=!1;v="object"===typeof window;w="function"===typeof importScripts;ca="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;da=!v&&!ca&&!w;var x="",B,C,ea,fa; -if(ca)x=w?require("path").dirname(x)+"/":__dirname+"/",B=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);return ea.readFileSync(a,b?null:"utf8")},C=function(a){a=B(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||D("Assertion failed: undefined");return a},1=e);)++c;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e} -function oa(a,b,c){var e=I;if(0=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(b+3>=c)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var pa="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0; -function qa(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&ra[c];)++c;c<<=1;if(32>1];if(0==f||c==b/2)return e;++c;e+=String.fromCharCode(f)}}function sa(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;J[b>>1]=0;return b-e}function ta(a){return 2*a.length} -function ua(a,b){for(var c=0,e="";!(c>=b/4);){var f=K[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function va(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}K[b>>2]=g;b+=4;if(b+4>c)break}K[b>>2]=0;return b-e} -function wa(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var L,M,I,J,ra,K,N,xa,ya;function za(a){L=a;d.HEAP8=M=new Int8Array(a);d.HEAP16=J=new Int16Array(a);d.HEAP32=K=new Int32Array(a);d.HEAPU8=I=new Uint8Array(a);d.HEAPU16=ra=new Uint16Array(a);d.HEAPU32=N=new Uint32Array(a);d.HEAPF32=xa=new Float32Array(a);d.HEAPF64=ya=new Float64Array(a)}var Aa=d.INITIAL_MEMORY||16777216;d.wasmMemory?H=d.wasmMemory:H=new WebAssembly.Memory({initial:Aa/65536,maximum:32768}); -H&&(L=H.buffer);Aa=L.byteLength;za(L);K[22876]=5334544;function Ba(a){for(;0>2])}var R={},S={},Sa={};function Ta(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function Ua(a,b){a=Ta(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} -function Va(a){var b=Error,c=Ua(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var Wa=void 0; -function Xa(a,b,c){function e(k){k=c(k);if(k.length!==a.length)throw new Wa("Mismatched type converter count");for(var h=0;h>2])};case 3:return function(c){return this.fromWireType(ya[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function fb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var c=Ua(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c} -function gb(a,b){var c=d;if(void 0===c[a].Y){var e=c[a];c[a]=function(){c[a].Y.hasOwnProperty(arguments.length)||V("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].Y+")!");return c[a].Y[arguments.length].apply(this,arguments)};c[a].Y=[];c[a].Y[e.ea]=e}} -function hb(a,b,c){d.hasOwnProperty(a)?((void 0===c||void 0!==d[a].Y&&void 0!==d[a].Y[c])&&V("Cannot register public name '"+a+"' twice"),gb(a,a),d.hasOwnProperty(c)&&V("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),d[a].Y[c]=b):(d[a]=b,void 0!==c&&(d[a].ra=c))}function ib(a,b){for(var c=[],e=0;e>2)+e]);return c} -function Y(a,b){a=U(a);var c=d["dynCall_"+a];for(var e=[],f=1;f>1]}:function(e){return ra[e>>1]};case 2:return c?function(e){return K[e>>2]}:function(e){return N[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var ob={}; -function pb(){return"object"===typeof globalThis?globalThis:Function("return this")()}function qb(a,b){var c=S[a];void 0===c&&V(b+" has unknown type "+kb(a));return c}var rb={},sb={};function tb(){if(!ub){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"===typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ba||"./this.program"},b;for(b in sb)a[b]=sb[b];var c=[];for(b in a)c.push(b+"="+a[b]);ub=c}return ub} -var ub,vb=[null,[],[]];Wa=d.InternalError=Va("InternalError");for(var wb=Array(256),xb=0;256>xb;++xb)wb[xb]=String.fromCharCode(xb);Za=wb;$a=d.BindingError=Va("BindingError");d.count_emval_handles=function(){for(var a=0,b=5;b>g])},Z:null})},w:function(a,b){b=U(b);T(a,{name:b,fromWireType:function(c){var e=X[c].value;bb(c);return e},toWireType:function(c,e){return cb(e)},argPackAdvance:8,readValueFromPointer:Ra,Z:null})},h:function(a,b,c){c=Ya(c);b=U(b);T(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+db(f)+ -'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:eb(b,c),Z:null})},e:function(a,b,c,e,f,g){var l=ib(b,c);a=U(a);f=Y(e,f);hb(a,function(){mb("Cannot call "+a+" due to unbound types",l)},b-1);Xa([],l,function(k){var h=[k[0],null].concat(k.slice(1)),m=k=a,n=f,q=h.length;2>q&&V("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var y=null!==h[1]&&!1,z=!1,p=1;p>>k}}var h=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:g,toWireType:function(m,n){if("number"!==typeof n&&"boolean"!==typeof n)throw new TypeError('Cannot convert "'+db(n)+ -'" to '+this.name);if(nf)throw new TypeError('Passing a number "'+db(n)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return h?n>>>0:n|0},argPackAdvance:8,readValueFromPointer:nb(b,l,0!==e),Z:null})},a:function(a,b,c){function e(g){g>>=2;var l=N;return new f(L,l[g+1],l[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=U(c);T(a,{name:c,fromWireType:e,argPackAdvance:8, -readValueFromPointer:e},{ka:!0})},i:function(a,b){b=U(b);var c="std::string"===b;T(a,{name:b,fromWireType:function(e){var f=N[e>>2];if(c)for(var g=e+4,l=0;l<=f;++l){var k=e+4+l;if(0==I[k]||l==f){g=g?na(I,g,k-g):"";if(void 0===h)var h=g;else h+=String.fromCharCode(0),h+=g;g=k+1}}else{h=Array(f);for(l=0;l=q&&(q=65536+((q&1023)<<10)|f.charCodeAt(++n)&1023);127>=q?++m:m=2047>=q?m+2:65535>=q?m+3:m+4}return m}:function(){return f.length})(),k=yb(4+l+1);N[k>>2]=l;if(c&&g)oa(f,k+4,l+1);else if(g)for(g=0;g>2],n=l(),q,y=h+4,z=0;z<=m;++z){var p=h+4+z*b;if(0==n[p>>k]||z==m)y=e(y,p-y),void 0===q?q=y:(q+=String.fromCharCode(0),q+=y),y=p+b}Z(h);return q},toWireType:function(h, -m){"string"!==typeof m&&V("Cannot pass non-string to C++ string type "+c);var n=g(m),q=yb(4+n+b);N[q>>2]=n>>k;f(m,q+4,n+b);null!==h&&h.push(Z,q);return q},argPackAdvance:8,readValueFromPointer:Ra,Z:function(h){Z(h)}})},m:function(a,b,c,e,f,g){Pa[a]={name:U(b),la:Y(c,e),ma:Y(f,g),da:[]}},f:function(a,b,c,e,f,g,l,k,h,m){Pa[a].da.push({fa:U(b),ja:c,ha:Y(e,f),ia:g,oa:l,na:Y(k,h),pa:m})},y:function(a,b){b=U(b);T(a,{qa:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},v:bb, -B:function(a){if(0===a)return cb(pb());var b=ob[a];a=void 0===b?U(a):b;return cb(pb()[a])},k:function(a){4>> 2) + "+g+'], "parameter '+g+'");\nvar arg'+g+" = argType"+ -g+".readValueFromPointer(args);\nargs += argType"+g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",l+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(qb,d,cb);rb[b]=f}return f(a,c,e)},r:function(){D()},q:function(a,b,c){I.copyWithin(a,b,b+c)},c:function(a){a>>>=0;var b=I.length;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0>>16);za(H.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},s:function(a,b){var c=0;tb().forEach(function(e,f){var g=b+c;f=K[a+4*f>>2]=g;for(g=0;g>0]=e.charCodeAt(g);M[f>>0]=0;c+=e.length+1});return 0},t:function(a,b){var c=tb();K[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});K[b>>2]=e;return 0},z:function(a){if(!noExitRuntime&&(la=!0,d.onExit))d.onExit(a);u(a,new ha(a))},u:function(){return 0},o:function(){},g:function(a, -b,c,e){for(var f=0,g=0;g>2],k=K[b+(8*g+4)>>2],h=0;h>2]=f;return 0},memory:H,p:function(){},table:ja}; -(function(){function a(f){d.asm=f.exports;O--;d.monitorRunDependencies&&d.monitorRunDependencies(O);0==O&&(null!==Ha&&(clearInterval(Ha),Ha=null),P&&(f=P,P=null,f()))}function b(f){a(f.instance)}function c(f){return Ma().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){E("failed to asynchronously prepare wasm: "+g);D(g)})}var e={a:zb};O++;d.monitorRunDependencies&&d.monitorRunDependencies(O);if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return E("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){if(G||"function"!==typeof WebAssembly.instantiateStreaming||Ja()||Ia("file://")||"function"!==typeof fetch)return c(b);fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){E("wasm streaming compile failed: "+g);E("falling back to ArrayBuffer instantiation");return c(b)})})})();return{}})(); -var Na=d.___wasm_call_ctors=function(){return(Na=d.___wasm_call_ctors=d.asm.D).apply(null,arguments)},Z=d._free=function(){return(Z=d._free=d.asm.E).apply(null,arguments)},yb=d._malloc=function(){return(yb=d._malloc=d.asm.F).apply(null,arguments)},lb=d.___getTypeName=function(){return(lb=d.___getTypeName=d.asm.G).apply(null,arguments)};d.___embind_register_native_and_builtin_types=function(){return(d.___embind_register_native_and_builtin_types=d.asm.H).apply(null,arguments)}; -d.dynCall_i=function(){return(d.dynCall_i=d.asm.I).apply(null,arguments)};d.dynCall_vi=function(){return(d.dynCall_vi=d.asm.J).apply(null,arguments)};d.dynCall_iii=function(){return(d.dynCall_iii=d.asm.K).apply(null,arguments)};d.dynCall_viii=function(){return(d.dynCall_viii=d.asm.L).apply(null,arguments)};d.dynCall_ii=function(){return(d.dynCall_ii=d.asm.M).apply(null,arguments)};d.dynCall_iiiiii=function(){return(d.dynCall_iiiiii=d.asm.N).apply(null,arguments)}; -d.dynCall_viiiii=function(){return(d.dynCall_viiiii=d.asm.O).apply(null,arguments)};d.dynCall_vii=function(){return(d.dynCall_vii=d.asm.P).apply(null,arguments)};d.dynCall_iiiiiii=function(){return(d.dynCall_iiiiiii=d.asm.Q).apply(null,arguments)};d.dynCall_iiiii=function(){return(d.dynCall_iiiii=d.asm.R).apply(null,arguments)};d.dynCall_iiii=function(){return(d.dynCall_iiii=d.asm.S).apply(null,arguments)};d.dynCall_viiiiiiii=function(){return(d.dynCall_viiiiiiii=d.asm.T).apply(null,arguments)}; -d.dynCall_viiii=function(){return(d.dynCall_viiii=d.asm.U).apply(null,arguments)};d.dynCall_viiiiiii=function(){return(d.dynCall_viiiiiii=d.asm.V).apply(null,arguments)};d.dynCall_jiji=function(){return(d.dynCall_jiji=d.asm.W).apply(null,arguments)};d.dynCall_viiiiii=function(){return(d.dynCall_viiiiii=d.asm.X).apply(null,arguments)};var Ab;function ha(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}P=function Bb(){Ab||Cb();Ab||(P=Bb)}; -function Cb(){function a(){if(!Ab&&(Ab=!0,d.calledRun=!0,!la)){Ba(Da);Ba(Ea);aa(d);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Fa.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 delta 20135 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 - - diff --git a/codecs/webp/dec/webp_dec.d.ts b/codecs/webp/dec/webp_dec.d.ts index a26279d8..ff6a5974 100644 --- a/codecs/webp/dec/webp_dec.d.ts +++ b/codecs/webp/dec/webp_dec.d.ts @@ -1,5 +1,7 @@ -interface WebPModule extends EmscriptenWasm.Module { +export interface WebPModule extends EmscriptenWasm.Module { decode(data: BufferSource): ImageData | null; } -export default function(opts: EmscriptenWasm.ModuleOpts): WebPModule; +declare var moduleFactory: EmscriptenWasm.ModuleFactory; + +export default moduleFactory; diff --git a/codecs/webp/dec/webp_dec.js b/codecs/webp/dec/webp_dec.js index 0145beb2..367a36ec 100644 --- a/codecs/webp/dec/webp_dec.js +++ b/codecs/webp/dec/webp_dec.js @@ -1,67 +1,1150 @@ +var Module = (function () { + var _scriptDir = import.meta.url; -var webp_dec = (function() { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(webp_dec) { - webp_dec = webp_dec || {}; + return function (Module) { + Module = Module || {}; + var e; + e || (e = typeof Module !== 'undefined' ? Module : {}); + var aa, ba; + e.ready = new Promise(function (a, b) { + aa = a; + ba = b; + }); + var r = {}, + t; + for (t in e) e.hasOwnProperty(t) && (r[t] = e[t]); + var u = '', + ca; + u = self.location.href; + _scriptDir && (u = _scriptDir); + 0 !== u.indexOf('blob:') + ? (u = u.substr(0, u.lastIndexOf('/') + 1)) + : (u = ''); + ca = function (a) { + var b = new XMLHttpRequest(); + b.open('GET', a, !1); + b.responseType = 'arraybuffer'; + b.send(null); + return new Uint8Array(b.response); + }; + var v = e.printErr || console.warn.bind(console); + for (t in r) r.hasOwnProperty(t) && (e[t] = r[t]); + r = null; + var w; + e.wasmBinary && (w = e.wasmBinary); + var noExitRuntime; + e.noExitRuntime && (noExitRuntime = e.noExitRuntime); + 'object' !== typeof WebAssembly && y('no native wasm support detected'); + var z, + A = new WebAssembly.Table({ + initial: 130, + maximum: 130, + element: 'anyfunc', + }), + da = !1, + ea = new TextDecoder('utf8'); + function fa(a, b, c) { + var d = B; + if (0 < c) { + c = b + c - 1; + for (var f = 0; f < a.length; ++f) { + var g = a.charCodeAt(f); + if (55296 <= g && 57343 >= g) { + var k = a.charCodeAt(++f); + g = (65536 + ((g & 1023) << 10)) | (k & 1023); + } + if (127 >= g) { + if (b >= c) break; + d[b++] = g; + } else { + if (2047 >= g) { + if (b + 1 >= c) break; + d[b++] = 192 | (g >> 6); + } else { + if (65535 >= g) { + if (b + 2 >= c) break; + d[b++] = 224 | (g >> 12); + } else { + if (b + 3 >= c) break; + d[b++] = 240 | (g >> 18); + d[b++] = 128 | ((g >> 12) & 63); + } + d[b++] = 128 | ((g >> 6) & 63); + } + d[b++] = 128 | (g & 63); + } + } + d[b] = 0; + } + } + var ha = new TextDecoder('utf-16le'); + function ia(a, b) { + var c = a >> 1; + for (b = c + b / 2; !(c >= b) && D[c]; ) ++c; + return ha.decode(B.subarray(a, c << 1)); + } + function ja(a, b, c) { + void 0 === c && (c = 2147483647); + if (2 > c) return 0; + c -= 2; + var d = b; + c = c < 2 * a.length ? c / 2 : a.length; + for (var f = 0; f < c; ++f) (E[b >> 1] = a.charCodeAt(f)), (b += 2); + E[b >> 1] = 0; + return b - d; + } + function ka(a) { + return 2 * a.length; + } + function la(a, b) { + for (var c = 0, d = ''; !(c >= b / 4); ) { + var f = F[(a + 4 * c) >> 2]; + if (0 == f) break; + ++c; + 65536 <= f + ? ((f -= 65536), + (d += String.fromCharCode(55296 | (f >> 10), 56320 | (f & 1023)))) + : (d += String.fromCharCode(f)); + } + return d; + } + function ma(a, b, c) { + void 0 === c && (c = 2147483647); + if (4 > c) return 0; + var d = b; + c = d + c - 4; + for (var f = 0; f < a.length; ++f) { + var g = a.charCodeAt(f); + if (55296 <= g && 57343 >= g) { + var k = a.charCodeAt(++f); + g = (65536 + ((g & 1023) << 10)) | (k & 1023); + } + F[b >> 2] = g; + b += 4; + if (b + 4 > c) break; + } + F[b >> 2] = 0; + return b - d; + } + function na(a) { + for (var b = 0, c = 0; c < a.length; ++c) { + var d = a.charCodeAt(c); + 55296 <= d && 57343 >= d && ++c; + b += 4; + } + return b; + } + var G, H, B, E, D, F, J, oa, pa; + function qa(a) { + G = a; + e.HEAP8 = H = new Int8Array(a); + e.HEAP16 = E = new Int16Array(a); + e.HEAP32 = F = new Int32Array(a); + e.HEAPU8 = B = new Uint8Array(a); + e.HEAPU16 = D = new Uint16Array(a); + e.HEAPU32 = J = new Uint32Array(a); + e.HEAPF32 = oa = new Float32Array(a); + e.HEAPF64 = pa = new Float64Array(a); + } + var ra = e.INITIAL_MEMORY || 16777216; + e.wasmMemory + ? (z = e.wasmMemory) + : (z = new WebAssembly.Memory({ initial: ra / 65536, maximum: 32768 })); + z && (G = z.buffer); + ra = G.byteLength; + qa(G); + var sa = [], + ta = [], + ua = [], + va = []; + function wa() { + var a = e.preRun.shift(); + sa.unshift(a); + } + var K = 0, + xa = null, + M = null; + e.preloadedImages = {}; + e.preloadedAudios = {}; + function y(a) { + if (e.onAbort) e.onAbort(a); + v(a); + da = !0; + a = new WebAssembly.RuntimeError( + 'abort(' + a + '). Build with -s ASSERTIONS=1 for more info.', + ); + ba(a); + throw a; + } + function ya() { + var a = N; + return String.prototype.startsWith + ? a.startsWith('data:application/octet-stream;base64,') + : 0 === a.indexOf('data:application/octet-stream;base64,'); + } + var N = 'webp_dec.wasm'; + if (!ya()) { + var za = N; + N = e.locateFile ? e.locateFile(za, u) : u + za; + } + function Aa() { + try { + if (w) return new Uint8Array(w); + if (ca) return ca(N); + throw 'both async and sync fetching of the wasm failed'; + } catch (a) { + y(a); + } + } + function Ba() { + return w || 'function' !== typeof fetch + ? Promise.resolve().then(Aa) + : fetch(N, { credentials: 'same-origin' }) + .then(function (a) { + if (!a.ok) throw "failed to load wasm binary file at '" + N + "'"; + return a.arrayBuffer(); + }) + .catch(function () { + return Aa(); + }); + } + ta.push({ + I: function () { + Ca(); + }, + }); + function O(a) { + for (; 0 < a.length; ) { + var b = a.shift(); + if ('function' == typeof b) b(e); + else { + var c = b.I; + 'number' === typeof c + ? void 0 === b.D + ? A.get(c)() + : A.get(c)(b.D) + : c(void 0 === b.D ? null : b.D); + } + } + } + function Da(a) { + this.C = a - 16; + this.P = function (b) { + F[(this.C + 8) >> 2] = b; + }; + this.M = function (b) { + F[(this.C + 0) >> 2] = b; + }; + this.N = function () { + F[(this.C + 4) >> 2] = 0; + }; + this.L = function () { + H[(this.C + 12) >> 0] = 0; + }; + this.O = function () { + H[(this.C + 13) >> 0] = 0; + }; + this.K = function (b, c) { + this.P(b); + this.M(c); + this.N(); + this.L(); + this.O(); + }; + } + function P() { + return 0 < P.G; + } + function Ea(a) { + switch (a) { + case 1: + return 0; + case 2: + return 1; + case 4: + return 2; + case 8: + return 3; + default: + throw new TypeError('Unknown type size: ' + a); + } + } + var Fa = void 0; + function Q(a) { + for (var b = ''; B[a]; ) b += Fa[B[a++]]; + return b; + } + var R = {}, + S = {}, + T = {}; + function Ga(a) { + if (void 0 === a) return '_unknown'; + a = a.replace(/[^a-zA-Z0-9_]/g, '$'); + var b = a.charCodeAt(0); + return 48 <= b && 57 >= b ? '_' + a : a; + } + function Ha(a, b) { + a = Ga(a); + return new Function( + 'body', + 'return function ' + + a + + '() {\n "use strict"; return body.apply(this, arguments);\n};\n', + )(b); + } + function Ia(a) { + var b = Error, + c = Ha(a, function (d) { + this.name = a; + this.message = d; + d = Error(d).stack; + void 0 !== d && + (this.stack = + this.toString() + '\n' + d.replace(/^Error(:[^\n]*)?\n/, '')); + }); + c.prototype = Object.create(b.prototype); + c.prototype.constructor = c; + c.prototype.toString = function () { + return void 0 === this.message + ? this.name + : this.name + ': ' + this.message; + }; + return c; + } + var Ja = void 0; + function U(a) { + throw new Ja(a); + } + var Ka = void 0; + function Na(a, b) { + function c(h) { + h = b(h); + if (h.length !== d.length) + throw new Ka('Mismatched type converter count'); + for (var p = 0; p < d.length; ++p) V(d[p], h[p]); + } + var d = []; + d.forEach(function (h) { + T[h] = a; + }); + var f = Array(a.length), + g = [], + k = 0; + a.forEach(function (h, p) { + S.hasOwnProperty(h) + ? (f[p] = S[h]) + : (g.push(h), + R.hasOwnProperty(h) || (R[h] = []), + R[h].push(function () { + f[p] = S[h]; + ++k; + k === g.length && c(f); + })); + }); + 0 === g.length && c(f); + } + function V(a, b, c) { + c = c || {}; + if (!('argPackAdvance' in b)) + throw new TypeError( + 'registerType registeredInstance requires argPackAdvance', + ); + var d = b.name; + a || U('type "' + d + '" must have a positive integer typeid pointer'); + if (S.hasOwnProperty(a)) { + if (c.J) return; + U("Cannot register type '" + d + "' twice"); + } + S[a] = b; + delete T[a]; + R.hasOwnProperty(a) && + ((b = R[a]), + delete R[a], + b.forEach(function (f) { + f(); + })); + } + var Oa = [], + W = [ + {}, + { value: void 0 }, + { value: null }, + { value: !0 }, + { value: !1 }, + ]; + function Pa(a) { + 4 < a && 0 === --W[a].F && ((W[a] = void 0), Oa.push(a)); + } + function X(a) { + switch (a) { + case void 0: + return 1; + case null: + return 2; + case !0: + return 3; + case !1: + return 4; + default: + var b = Oa.length ? Oa.pop() : W.length; + W[b] = { F: 1, value: a }; + return b; + } + } + function Qa(a) { + return this.fromWireType(J[a >> 2]); + } + function Ra(a) { + if (null === a) return 'null'; + var b = typeof a; + return 'object' === b || 'array' === b || 'function' === b + ? a.toString() + : '' + a; + } + function Sa(a, b) { + switch (b) { + case 2: + return function (c) { + return this.fromWireType(oa[c >> 2]); + }; + case 3: + return function (c) { + return this.fromWireType(pa[c >> 3]); + }; + default: + throw new TypeError('Unknown float type: ' + a); + } + } + function Ta(a) { + var b = Function; + if (!(b instanceof Function)) + throw new TypeError( + 'new_ called with constructor type ' + + typeof b + + ' which is not a function', + ); + var c = Ha(b.name || 'unknownFunctionName', function () {}); + c.prototype = b.prototype; + c = new c(); + a = b.apply(c, a); + return a instanceof Object ? a : c; + } + function Ua(a) { + for (; a.length; ) { + var b = a.pop(); + a.pop()(b); + } + } + function Va(a, b) { + var c = e; + if (void 0 === c[a].A) { + var d = c[a]; + c[a] = function () { + c[a].A.hasOwnProperty(arguments.length) || + U( + "Function '" + + b + + "' called with an invalid number of arguments (" + + arguments.length + + ') - expects one of (' + + c[a].A + + ')!', + ); + return c[a].A[arguments.length].apply(this, arguments); + }; + c[a].A = []; + c[a].A[d.H] = d; + } + } + function Wa(a, b, c) { + e.hasOwnProperty(a) + ? ((void 0 === c || (void 0 !== e[a].A && void 0 !== e[a].A[c])) && + U("Cannot register public name '" + a + "' twice"), + Va(a, a), + e.hasOwnProperty(c) && + U( + 'Cannot register multiple overloads of a function with the same number of arguments (' + + c + + ')!', + ), + (e[a].A[c] = b)) + : ((e[a] = b), void 0 !== c && (e[a].S = c)); + } + function Xa(a, b) { + for (var c = [], d = 0; d < a; d++) c.push(F[(b >> 2) + d]); + return c; + } + function Ya(a, b) { + 0 <= a.indexOf('j') || + y('Assertion failed: getDynCaller should only be called with i64 sigs'); + var c = []; + return function () { + c.length = arguments.length; + for (var d = 0; d < arguments.length; d++) c[d] = arguments[d]; + var f; + -1 != a.indexOf('j') + ? (f = + c && c.length + ? e['dynCall_' + a].apply(null, [b].concat(c)) + : e['dynCall_' + a].call(null, b)) + : (f = A.get(b).apply(null, c)); + return f; + }; + } + function Za(a, b) { + a = Q(a); + var c = -1 != a.indexOf('j') ? Ya(a, b) : A.get(b); + 'function' !== typeof c && + U('unknown function pointer with signature ' + a + ': ' + b); + return c; + } + var $a = void 0; + function ab(a) { + a = bb(a); + var b = Q(a); + Y(a); + return b; + } + function cb(a, b) { + function c(g) { + f[g] || S[g] || (T[g] ? T[g].forEach(c) : (d.push(g), (f[g] = !0))); + } + var d = [], + f = {}; + b.forEach(c); + throw new $a(a + ': ' + d.map(ab).join([', '])); + } + function db(a, b, c) { + switch (b) { + case 0: + return c + ? function (d) { + return H[d]; + } + : function (d) { + return B[d]; + }; + case 1: + return c + ? function (d) { + return E[d >> 1]; + } + : function (d) { + return D[d >> 1]; + }; + case 2: + return c + ? function (d) { + return F[d >> 2]; + } + : function (d) { + return J[d >> 2]; + }; + default: + throw new TypeError('Unknown integer type: ' + a); + } + } + var eb = {}; + function fb() { + return 'object' === typeof globalThis + ? globalThis + : Function('return this')(); + } + function gb(a, b) { + var c = S[a]; + void 0 === c && U(b + ' has unknown type ' + ab(a)); + return c; + } + for (var hb = {}, ib = Array(256), Z = 0; 256 > Z; ++Z) + ib[Z] = String.fromCharCode(Z); + Fa = ib; + Ja = e.BindingError = Ia('BindingError'); + Ka = e.InternalError = Ia('InternalError'); + e.count_emval_handles = function () { + for (var a = 0, b = 5; b < W.length; ++b) void 0 !== W[b] && ++a; + return a; + }; + e.get_first_emval = function () { + for (var a = 5; a < W.length; ++a) if (void 0 !== W[a]) return W[a]; + return null; + }; + $a = e.UnboundTypeError = Ia('UnboundTypeError'); + var kb = { + o: function (a) { + return jb(a + 16) + 16; + }, + k: function () {}, + n: function (a, b, c) { + new Da(a).K(b, c); + 'uncaught_exception' in P ? P.G++ : (P.G = 1); + throw a; + }, + b: A, + l: function (a, b, c, d, f) { + var g = Ea(c); + b = Q(b); + V(a, { + name: b, + fromWireType: function (k) { + return !!k; + }, + toWireType: function (k, h) { + return h ? d : f; + }, + argPackAdvance: 8, + readValueFromPointer: function (k) { + if (1 === c) var h = H; + else if (2 === c) h = E; + else if (4 === c) h = F; + else throw new TypeError('Unknown boolean type size: ' + b); + return this.fromWireType(h[k >> g]); + }, + B: null, + }); + }, + t: function (a, b) { + b = Q(b); + V(a, { + name: b, + fromWireType: function (c) { + var d = W[c].value; + Pa(c); + return d; + }, + toWireType: function (c, d) { + return X(d); + }, + argPackAdvance: 8, + readValueFromPointer: Qa, + B: null, + }); + }, + i: function (a, b, c) { + c = Ea(c); + b = Q(b); + V(a, { + name: b, + fromWireType: function (d) { + return d; + }, + toWireType: function (d, f) { + if ('number' !== typeof f && 'boolean' !== typeof f) + throw new TypeError( + 'Cannot convert "' + Ra(f) + '" to ' + this.name, + ); + return f; + }, + argPackAdvance: 8, + readValueFromPointer: Sa(b, c), + B: null, + }); + }, + g: function (a, b, c, d, f, g) { + var k = Xa(b, c); + a = Q(a); + f = Za(d, f); + Wa( + a, + function () { + cb('Cannot call ' + a + ' due to unbound types', k); + }, + b - 1, + ); + Na(k, function (h) { + var p = a, + m = a; + h = [h[0], null].concat(h.slice(1)); + var n = f, + q = h.length; + 2 > q && + U( + "argTypes array size mismatch! Must at least get return value and 'this' types!", + ); + for (var x = null !== h[1] && !1, C = !1, l = 1; l < h.length; ++l) + if (null !== h[l] && void 0 === h[l].B) { + C = !0; + break; + } + var La = 'void' !== h[0].name, + I = '', + L = ''; + for (l = 0; l < q - 2; ++l) + (I += (0 !== l ? ', ' : '') + 'arg' + l), + (L += (0 !== l ? ', ' : '') + 'arg' + l + 'Wired'); + m = + 'return function ' + + Ga(m) + + '(' + + I + + ') {\nif (arguments.length !== ' + + (q - 2) + + ") {\nthrowBindingError('function " + + m + + " called with ' + arguments.length + ' arguments, expected " + + (q - 2) + + " args!');\n}\n"; + C && (m += 'var destructors = [];\n'); + var Ma = C ? 'destructors' : 'null'; + I = 'throwBindingError invoker fn runDestructors retType classParam'.split( + ' ', + ); + n = [U, n, g, Ua, h[0], h[1]]; + x && + (m += 'var thisWired = classParam.toWireType(' + Ma + ', this);\n'); + for (l = 0; l < q - 2; ++l) + (m += + 'var arg' + + l + + 'Wired = argType' + + l + + '.toWireType(' + + Ma + + ', arg' + + l + + '); // ' + + h[l + 2].name + + '\n'), + I.push('argType' + l), + n.push(h[l + 2]); + x && (L = 'thisWired' + (0 < L.length ? ', ' : '') + L); + m += + (La ? 'var rv = ' : '') + + 'invoker(fn' + + (0 < L.length ? ', ' : '') + + L + + ');\n'; + if (C) m += 'runDestructors(destructors);\n'; + else + for (l = x ? 1 : 2; l < h.length; ++l) + (q = 1 === l ? 'thisWired' : 'arg' + (l - 2) + 'Wired'), + null !== h[l].B && + ((m += q + '_dtor(' + q + '); // ' + h[l].name + '\n'), + I.push(q + '_dtor'), + n.push(h[l].B)); + La && (m += 'var ret = retType.fromWireType(rv);\nreturn ret;\n'); + I.push(m + '}\n'); + h = Ta(I).apply(null, n); + l = b - 1; + if (!e.hasOwnProperty(p)) + throw new Ka('Replacing nonexistant public symbol'); + void 0 !== e[p].A && void 0 !== l + ? (e[p].A[l] = h) + : ((e[p] = h), (e[p].H = l)); + return []; + }); + }, + d: function (a, b, c, d, f) { + function g(m) { + return m; + } + b = Q(b); + -1 === f && (f = 4294967295); + var k = Ea(c); + if (0 === d) { + var h = 32 - 8 * c; + g = function (m) { + return (m << h) >>> h; + }; + } + var p = -1 != b.indexOf('unsigned'); + V(a, { + name: b, + fromWireType: g, + toWireType: function (m, n) { + if ('number' !== typeof n && 'boolean' !== typeof n) + throw new TypeError( + 'Cannot convert "' + Ra(n) + '" to ' + this.name, + ); + if (n < d || n > f) + throw new TypeError( + 'Passing a number "' + + Ra(n) + + '" from JS side to C/C++ side to an argument of type "' + + b + + '", which is outside the valid range [' + + d + + ', ' + + f + + ']!', + ); + return p ? n >>> 0 : n | 0; + }, + argPackAdvance: 8, + readValueFromPointer: db(b, k, 0 !== d), + B: null, + }); + }, + c: function (a, b, c) { + function d(g) { + g >>= 2; + var k = J; + return new f(G, k[g + 1], k[g]); + } + var f = [ + Int8Array, + Uint8Array, + Int16Array, + Uint16Array, + Int32Array, + Uint32Array, + Float32Array, + Float64Array, + ][b]; + c = Q(c); + V( + a, + { + name: c, + fromWireType: d, + argPackAdvance: 8, + readValueFromPointer: d, + }, + { J: !0 }, + ); + }, + j: function (a, b) { + b = Q(b); + var c = 'std::string' === b; + V(a, { + name: b, + fromWireType: function (d) { + var f = J[d >> 2]; + if (c) + for (var g = d + 4, k = 0; k <= f; ++k) { + var h = d + 4 + k; + if (k == f || 0 == B[h]) { + if (g) { + for (var p = g + (h - g), m = g; !(m >= p) && B[m]; ) ++m; + g = ea.decode(B.subarray(g, m)); + } else g = ''; + if (void 0 === n) var n = g; + else (n += String.fromCharCode(0)), (n += g); + g = h + 1; + } + } + else { + n = Array(f); + for (k = 0; k < f; ++k) n[k] = String.fromCharCode(B[d + 4 + k]); + n = n.join(''); + } + Y(d); + return n; + }, + toWireType: function (d, f) { + f instanceof ArrayBuffer && (f = new Uint8Array(f)); + var g = 'string' === typeof f; + g || + f instanceof Uint8Array || + f instanceof Uint8ClampedArray || + f instanceof Int8Array || + U('Cannot pass non-string to std::string'); + var k = (c && g + ? function () { + for (var m = 0, n = 0; n < f.length; ++n) { + var q = f.charCodeAt(n); + 55296 <= q && + 57343 >= q && + (q = + (65536 + ((q & 1023) << 10)) | + (f.charCodeAt(++n) & 1023)); + 127 >= q + ? ++m + : (m = 2047 >= q ? m + 2 : 65535 >= q ? m + 3 : m + 4); + } + return m; + } + : function () { + return f.length; + })(), + h = jb(4 + k + 1); + J[h >> 2] = k; + if (c && g) fa(f, h + 4, k + 1); + else if (g) + for (g = 0; g < k; ++g) { + var p = f.charCodeAt(g); + 255 < p && + (Y(h), + U('String has UTF-16 code units that do not fit in 8 bits')); + B[h + 4 + g] = p; + } + else for (g = 0; g < k; ++g) B[h + 4 + g] = f[g]; + null !== d && d.push(Y, h); + return h; + }, + argPackAdvance: 8, + readValueFromPointer: Qa, + B: function (d) { + Y(d); + }, + }); + }, + f: function (a, b, c) { + c = Q(c); + if (2 === b) { + var d = ia; + var f = ja; + var g = ka; + var k = function () { + return D; + }; + var h = 1; + } else + 4 === b && + ((d = la), + (f = ma), + (g = na), + (k = function () { + return J; + }), + (h = 2)); + V(a, { + name: c, + fromWireType: function (p) { + for (var m = J[p >> 2], n = k(), q, x = p + 4, C = 0; C <= m; ++C) { + var l = p + 4 + C * b; + if (C == m || 0 == n[l >> h]) + (x = d(x, l - x)), + void 0 === q + ? (q = x) + : ((q += String.fromCharCode(0)), (q += x)), + (x = l + b); + } + Y(p); + return q; + }, + toWireType: function (p, m) { + 'string' !== typeof m && + U('Cannot pass non-string to C++ string type ' + c); + var n = g(m), + q = jb(4 + n + b); + J[q >> 2] = n >> h; + f(m, q + 4, n + b); + null !== p && p.push(Y, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Qa, + B: function (p) { + Y(p); + }, + }); + }, + m: function (a, b) { + b = Q(b); + V(a, { + R: !0, + name: b, + argPackAdvance: 0, + fromWireType: function () {}, + toWireType: function () {}, + }); + }, + q: Pa, + u: function (a) { + if (0 === a) return X(fb()); + var b = eb[a]; + a = void 0 === b ? Q(a) : b; + return X(fb()[a]); + }, + p: function (a) { + 4 < a && (W[a].F += 1); + }, + h: function (a, b, c, d) { + a || U('Cannot use deleted val. handle = ' + a); + a = W[a].value; + var f = hb[b]; + if (!f) { + f = ''; + for (var g = 0; g < b; ++g) f += (0 !== g ? ', ' : '') + 'arg' + g; + var k = + 'return function emval_allocator_' + + b + + '(constructor, argTypes, args) {\n'; + for (g = 0; g < b; ++g) + k += + 'var argType' + + g + + " = requireRegisteredType(Module['HEAP32'][(argTypes >>> 2) + " + + g + + '], "parameter ' + + g + + '");\nvar arg' + + g + + ' = argType' + + g + + '.readValueFromPointer(args);\nargs += argType' + + g + + "['argPackAdvance'];\n"; + f = new Function( + 'requireRegisteredType', + 'Module', + '__emval_register', + k + + ('var obj = new constructor(' + + f + + ');\nreturn __emval_register(obj);\n}\n'), + )(gb, e, X); + hb[b] = f; + } + return f(a, c, d); + }, + s: function () { + y(); + }, + r: function (a, b, c) { + B.copyWithin(a, b, b + c); + }, + e: function (a) { + a >>>= 0; + var b = B.length; + if (2147483648 < a) return !1; + for (var c = 1; 4 >= c; c *= 2) { + var d = b * (1 + 0.2 / c); + d = Math.min(d, a + 100663296); + d = Math.max(16777216, a, d); + 0 < d % 65536 && (d += 65536 - (d % 65536)); + a: { + try { + z.grow((Math.min(2147483648, d) - G.byteLength + 65535) >>> 16); + qa(z.buffer); + var f = 1; + break a; + } catch (g) {} + f = void 0; + } + if (f) return !0; + } + return !1; + }, + a: z, + }; + (function () { + function a(f) { + e.asm = f.exports; + K--; + e.monitorRunDependencies && e.monitorRunDependencies(K); + 0 == K && + (null !== xa && (clearInterval(xa), (xa = null)), + M && ((f = M), (M = null), f())); + } + function b(f) { + a(f.instance); + } + function c(f) { + return Ba() + .then(function (g) { + return WebAssembly.instantiate(g, d); + }) + .then(f, function (g) { + v('failed to asynchronously prepare wasm: ' + g); + y(g); + }); + } + var d = { a: kb }; + K++; + e.monitorRunDependencies && e.monitorRunDependencies(K); + if (e.instantiateWasm) + try { + return e.instantiateWasm(d, a); + } catch (f) { + return ( + v('Module.instantiateWasm callback failed with error: ' + f), !1 + ); + } + (function () { + if ( + w || + 'function' !== typeof WebAssembly.instantiateStreaming || + ya() || + 'function' !== typeof fetch + ) + return c(b); + fetch(N, { credentials: 'same-origin' }).then(function (f) { + return WebAssembly.instantiateStreaming(f, d).then(b, function (g) { + v('wasm streaming compile failed: ' + g); + v('falling back to ArrayBuffer instantiation'); + return c(b); + }); + }); + })(); + return {}; + })(); + var Ca = (e.___wasm_call_ctors = function () { + return (Ca = e.___wasm_call_ctors = e.asm.v).apply(null, arguments); + }), + jb = (e._malloc = function () { + return (jb = e._malloc = e.asm.w).apply(null, arguments); + }), + Y = (e._free = function () { + return (Y = e._free = e.asm.x).apply(null, arguments); + }), + bb = (e.___getTypeName = function () { + return (bb = e.___getTypeName = e.asm.y).apply(null, arguments); + }); + e.___embind_register_native_and_builtin_types = function () { + return (e.___embind_register_native_and_builtin_types = e.asm.z).apply( + null, + arguments, + ); + }; + var lb; + M = function mb() { + lb || nb(); + lb || (M = mb); + }; + function nb() { + function a() { + if (!lb && ((lb = !0), (e.calledRun = !0), !da)) { + O(ta); + O(ua); + aa(e); + if (e.onRuntimeInitialized) e.onRuntimeInitialized(); + if (e.postRun) + for ( + 'function' == typeof e.postRun && (e.postRun = [e.postRun]); + e.postRun.length; -var d;d||(d=typeof webp_dec !== 'undefined' ? webp_dec : {});var aa,ba;d.ready=new Promise(function(a,b){aa=a;ba=b});var t={},u;for(u in d)d.hasOwnProperty(u)&&(t[u]=d[u]);var v=!1,w=!1,ca=!1,da=!1;v="object"===typeof window;w="function"===typeof importScripts;ca="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;da=!v&&!ca&&!w;var x="",z,A,ea,fa; -if(ca)x=w?require("path").dirname(x)+"/":__dirname+"/",z=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);return ea.readFileSync(a,b?null:"utf8")},A=function(a){a=z(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||B("Assertion failed: undefined");return a},1=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&1023}if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(b+3>=c)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var la="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0; -function ma(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&G[c];)++c;c<<=1;if(32>1];if(0==f||c==b/2)return e;++c;e+=String.fromCharCode(f)}}function na(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;H[b>>1]=0;return b-e}function oa(a){return 2*a.length} -function pa(a,b){for(var c=0,e="";!(c>=b/4);){var f=I[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function qa(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&1023}I[b>>2]=g;b+=4;if(b+4>c)break}I[b>>2]=0;return b-e} -function ra(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var J,sa,F,H,G,I,L,ta,ua;function va(a){J=a;d.HEAP8=sa=new Int8Array(a);d.HEAP16=H=new Int16Array(a);d.HEAP32=I=new Int32Array(a);d.HEAPU8=F=new Uint8Array(a);d.HEAPU16=G=new Uint16Array(a);d.HEAPU32=L=new Uint32Array(a);d.HEAPF32=ta=new Float32Array(a);d.HEAPF64=ua=new Float64Array(a)}var wa=d.INITIAL_MEMORY||16777216;d.wasmMemory?E=d.wasmMemory:E=new WebAssembly.Memory({initial:wa/65536,maximum:32768}); -E&&(J=E.buffer);wa=J.byteLength;va(J);I[3260]=5256080;function M(a){for(;0=b?"_"+a:a} -function Ma(a,b){a=La(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function Na(a){var b=Error,c=Ma(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c} -var Oa=void 0;function W(a){throw new Oa(a);}var Pa=void 0;function Qa(a,b){function c(k){k=b(k);if(k.length!==e.length)throw new Pa("Mismatched type converter count");for(var h=0;h>2])}function Xa(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} -function Ya(a,b){switch(b){case 2:return function(c){return this.fromWireType(ta[c>>2])};case 3:return function(c){return this.fromWireType(ua[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Za(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var c=Ma(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c} -function $a(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function ab(a,b){var c=d;if(void 0===c[a].J){var e=c[a];c[a]=function(){c[a].J.hasOwnProperty(arguments.length)||W("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].J+")!");return c[a].J[arguments.length].apply(this,arguments)};c[a].J=[];c[a].J[e.O]=e}} -function bb(a,b,c){d.hasOwnProperty(a)?((void 0===c||void 0!==d[a].J&&void 0!==d[a].J[c])&&W("Cannot register public name '"+a+"' twice"),ab(a,a),d.hasOwnProperty(c)&&W("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),d[a].J[c]=b):(d[a]=b,void 0!==c&&(d[a].T=c))}function cb(a,b){for(var c=[],e=0;e>2)+e]);return c} -function db(a,b){a=S(a);var c=d["dynCall_"+a];for(var e=[],f=1;f>1]}:function(e){return G[e>>1]};case 2:return c?function(e){return I[e>>2]}:function(e){return L[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var jb={}; -function kb(){return"object"===typeof globalThis?globalThis:Function("return this")()}function lb(a,b){var c=U[a];void 0===c&&W(b+" has unknown type "+fb(a));return c}for(var mb={},nb=Array(256),ob=0;256>ob;++ob)nb[ob]=String.fromCharCode(ob);Ka=nb;Oa=d.BindingError=Na("BindingError");Pa=d.InternalError=Na("InternalError");d.count_emval_handles=function(){for(var a=0,b=5;b>g])},K:null})},r:function(a,b){b=S(b);X(a,{name:b,fromWireType:function(c){var e= -Y[c].value;Sa(c);return e},toWireType:function(c,e){return Ta(e)},argPackAdvance:8,readValueFromPointer:Wa,K:null})},g:function(a,b,c){c=Ja(c);b=S(b);X(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+Xa(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Ya(b,c),K:null})},e:function(a,b,c,e,f,g){var n=cb(b,c);a=S(a);f=db(e,f);bb(a,function(){hb("Cannot call "+a+" due to unbound types", -n)},b-1);Qa(n,function(k){var h=[k[0],null].concat(k.slice(1)),p=k=a,q=f,m=h.length;2>m&&W("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var r=null!==h[1]&&!1,y=!1,l=1;l>>k}}var h=-1!=b.indexOf("unsigned");X(a,{name:b,fromWireType:g,toWireType:function(p,q){if("number"!==typeof q&&"boolean"!==typeof q)throw new TypeError('Cannot convert "'+Xa(q)+'" to '+this.name);if(qf)throw new TypeError('Passing a number "'+Xa(q)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return h?q>>>0:q|0},argPackAdvance:8,readValueFromPointer:ib(b, -n,0!==e),K:null})},a:function(a,b,c){function e(g){g>>=2;var n=L;return new f(J,n[g+1],n[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=S(c);X(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{R:!0})},h:function(a,b){b=S(b);var c="std::string"===b;X(a,{name:b,fromWireType:function(e){var f=L[e>>2];if(c)for(var g=e+4,n=0;n<=f;++n){var k=e+4+n;if(n==f||0==F[k]){if(g){var h=g;var p=F,q=h+(k-g);for(g=h;p[g]&&!(g>=q);)++g; -if(16m?q+=String.fromCharCode(m):(m-=65536,q+=String.fromCharCode(55296|m>>10,56320|m&1023))}}else q+=String.fromCharCode(m)}h=q}}else h="";if(void 0===l)var l=h;else l+=String.fromCharCode(0),l+=h;g=k+1}}else{l=Array(f);for(n=0;n=m&&(m=65536+((m&1023)<<10)|f.charCodeAt(++q)&1023);127>=m?++p:p=2047>=m?p+2:65535>=m?p+3:p+4}return p}:function(){return f.length})(),k=pb(4+n+1);L[k>> -2]=n;if(c&&g)ka(f,k+4,n+1);else if(g)for(g=0;g>2],q= -n(),m,r=h+4,y=0;y<=p;++y){var l=h+4+y*b;if(y==p||0==q[l>>k])r=e(r,l-r),void 0===m?m=r:(m+=String.fromCharCode(0),m+=r),r=l+b}Z(h);return m},toWireType:function(h,p){"string"!==typeof p&&W("Cannot pass non-string to C++ string type "+c);var q=g(p),m=pb(4+q+b);L[m>>2]=q>>k;f(p,m+4,q+b);null!==h&&h.push(Z,m);return m},argPackAdvance:8,readValueFromPointer:Wa,K:function(h){Z(h)}})},k:function(a,b){b=S(b);X(a,{S:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},o:Sa,s:function(a){if(0=== -a)return Ta(kb());var b=jb[a];a=void 0===b?S(a):b;return Ta(kb()[a])},n:function(a){4>> 2) + "+g+'], "parameter '+g+'");\nvar arg'+g+" = argType"+g+".readValueFromPointer(args);\nargs += argType"+ -g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",n+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(lb,d,Ta);mb[b]=f}return f(a,c,e)},q:function(){B()},p:function(a,b,c){F.copyWithin(a,b,b+c)},c:function(a){a>>>=0;var b=F.length;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0>> -16);va(E.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},memory:E,table:ha}; -(function(){function a(f){d.asm=f.exports;N--;d.monitorRunDependencies&&d.monitorRunDependencies(N);0==N&&(null!==Ca&&(clearInterval(Ca),Ca=null),P&&(f=P,P=null,f()))}function b(f){a(f.instance)}function c(f){return Ha().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){C("failed to asynchronously prepare wasm: "+g);B(g)})}var e={a:qb};N++;d.monitorRunDependencies&&d.monitorRunDependencies(N);if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return C("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){if(D||"function"!==typeof WebAssembly.instantiateStreaming||Ea()||Da("file://")||"function"!==typeof fetch)return c(b);fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){C("wasm streaming compile failed: "+g);C("falling back to ArrayBuffer instantiation");return c(b)})})})();return{}})(); -var Ia=d.___wasm_call_ctors=function(){return(Ia=d.___wasm_call_ctors=d.asm.t).apply(null,arguments)},pb=d._malloc=function(){return(pb=d._malloc=d.asm.u).apply(null,arguments)},Z=d._free=function(){return(Z=d._free=d.asm.v).apply(null,arguments)},gb=d.___getTypeName=function(){return(gb=d.___getTypeName=d.asm.w).apply(null,arguments)};d.___embind_register_native_and_builtin_types=function(){return(d.___embind_register_native_and_builtin_types=d.asm.x).apply(null,arguments)}; -d.dynCall_iii=function(){return(d.dynCall_iii=d.asm.y).apply(null,arguments)};d.dynCall_vii=function(){return(d.dynCall_vii=d.asm.z).apply(null,arguments)};d.dynCall_ii=function(){return(d.dynCall_ii=d.asm.A).apply(null,arguments)};d.dynCall_i=function(){return(d.dynCall_i=d.asm.B).apply(null,arguments)};d.dynCall_vi=function(){return(d.dynCall_vi=d.asm.C).apply(null,arguments)};d.dynCall_iiii=function(){return(d.dynCall_iiii=d.asm.D).apply(null,arguments)}; -d.dynCall_iiiiiii=function(){return(d.dynCall_iiiiiii=d.asm.E).apply(null,arguments)};d.dynCall_viiii=function(){return(d.dynCall_viiii=d.asm.F).apply(null,arguments)};d.dynCall_viiiii=function(){return(d.dynCall_viiiii=d.asm.G).apply(null,arguments)};d.dynCall_viiiiiiiii=function(){return(d.dynCall_viiiiiiiii=d.asm.H).apply(null,arguments)};d.dynCall_viiiiii=function(){return(d.dynCall_viiiiii=d.asm.I).apply(null,arguments)};var rb;P=function sb(){rb||tb();rb||(P=sb)}; -function tb(){function a(){if(!rb&&(rb=!0,d.calledRun=!0,!ia)){M(ya);M(za);aa(d);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Aa.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 - - diff --git a/codecs/webp/enc/webp_enc.d.ts b/codecs/webp/enc/webp_enc.d.ts index 106290db..1d5ad92c 100644 --- a/codecs/webp/enc/webp_enc.d.ts +++ b/codecs/webp/enc/webp_enc.d.ts @@ -1,7 +1,14 @@ -import { EncodeOptions } from '../../../src/codecs/webp/encoder-meta'; +import { EncodeOptions } from 'image-worker/webpEncode'; -interface WebPModule extends EmscriptenWasm.Module { - encode(data: BufferSource, width: number, height: number, options: EncodeOptions): Uint8Array | null; +export interface WebPModule extends EmscriptenWasm.Module { + encode( + data: BufferSource, + width: number, + height: number, + options: EncodeOptions, + ): Uint8Array | null; } -export default function(opts: EmscriptenWasm.ModuleOpts): WebPModule; +declare var moduleFactory: EmscriptenWasm.ModuleFactory; + +export default moduleFactory; diff --git a/codecs/webp/enc/webp_enc.js b/codecs/webp/enc/webp_enc.js index ad2e4f0c..1e97e4b6 100644 --- a/codecs/webp/enc/webp_enc.js +++ b/codecs/webp/enc/webp_enc.js @@ -1,72 +1,1275 @@ +var Module = (function () { + var _scriptDir = import.meta.url; -var webp_enc = (function() { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(webp_enc) { - webp_enc = webp_enc || {}; + return function (Module) { + Module = Module || {}; + var g; + g || (g = typeof Module !== 'undefined' ? Module : {}); + var aa, ba; + g.ready = new Promise(function (a, b) { + aa = a; + ba = b; + }); + var r = {}, + t; + for (t in g) g.hasOwnProperty(t) && (r[t] = g[t]); + var u = '', + ca; + u = self.location.href; + _scriptDir && (u = _scriptDir); + 0 !== u.indexOf('blob:') + ? (u = u.substr(0, u.lastIndexOf('/') + 1)) + : (u = ''); + ca = function (a) { + var b = new XMLHttpRequest(); + b.open('GET', a, !1); + b.responseType = 'arraybuffer'; + b.send(null); + return new Uint8Array(b.response); + }; + var v = g.printErr || console.warn.bind(console); + for (t in r) r.hasOwnProperty(t) && (g[t] = r[t]); + r = null; + var x; + g.wasmBinary && (x = g.wasmBinary); + var noExitRuntime; + g.noExitRuntime && (noExitRuntime = g.noExitRuntime); + 'object' !== typeof WebAssembly && A('no native wasm support detected'); + var B, + C = new WebAssembly.Table({ + initial: 128, + maximum: 128, + element: 'anyfunc', + }), + da = !1, + ea = new TextDecoder('utf8'); + function fa(a, b, c) { + var d = D; + if (0 < c) { + c = b + c - 1; + for (var e = 0; e < a.length; ++e) { + var f = a.charCodeAt(e); + if (55296 <= f && 57343 >= f) { + var k = a.charCodeAt(++e); + f = (65536 + ((f & 1023) << 10)) | (k & 1023); + } + if (127 >= f) { + if (b >= c) break; + d[b++] = f; + } else { + if (2047 >= f) { + if (b + 1 >= c) break; + d[b++] = 192 | (f >> 6); + } else { + if (65535 >= f) { + if (b + 2 >= c) break; + d[b++] = 224 | (f >> 12); + } else { + if (b + 3 >= c) break; + d[b++] = 240 | (f >> 18); + d[b++] = 128 | ((f >> 12) & 63); + } + d[b++] = 128 | ((f >> 6) & 63); + } + d[b++] = 128 | (f & 63); + } + } + d[b] = 0; + } + } + var ia = new TextDecoder('utf-16le'); + function ja(a, b) { + var c = a >> 1; + for (b = c + b / 2; !(c >= b) && E[c]; ) ++c; + return ia.decode(D.subarray(a, c << 1)); + } + function ka(a, b, c) { + void 0 === c && (c = 2147483647); + if (2 > c) return 0; + c -= 2; + var d = b; + c = c < 2 * a.length ? c / 2 : a.length; + for (var e = 0; e < c; ++e) (G[b >> 1] = a.charCodeAt(e)), (b += 2); + G[b >> 1] = 0; + return b - d; + } + function la(a) { + return 2 * a.length; + } + function ma(a, b) { + for (var c = 0, d = ''; !(c >= b / 4); ) { + var e = H[(a + 4 * c) >> 2]; + if (0 == e) break; + ++c; + 65536 <= e + ? ((e -= 65536), + (d += String.fromCharCode(55296 | (e >> 10), 56320 | (e & 1023)))) + : (d += String.fromCharCode(e)); + } + return d; + } + function na(a, b, c) { + void 0 === c && (c = 2147483647); + if (4 > c) return 0; + var d = b; + c = d + c - 4; + for (var e = 0; e < a.length; ++e) { + var f = a.charCodeAt(e); + if (55296 <= f && 57343 >= f) { + var k = a.charCodeAt(++e); + f = (65536 + ((f & 1023) << 10)) | (k & 1023); + } + H[b >> 2] = f; + b += 4; + if (b + 4 > c) break; + } + H[b >> 2] = 0; + return b - d; + } + function oa(a) { + for (var b = 0, c = 0; c < a.length; ++c) { + var d = a.charCodeAt(c); + 55296 <= d && 57343 >= d && ++c; + b += 4; + } + return b; + } + var I, J, D, G, E, H, K, pa, qa; + function ra(a) { + I = a; + g.HEAP8 = J = new Int8Array(a); + g.HEAP16 = G = new Int16Array(a); + g.HEAP32 = H = new Int32Array(a); + g.HEAPU8 = D = new Uint8Array(a); + g.HEAPU16 = E = new Uint16Array(a); + g.HEAPU32 = K = new Uint32Array(a); + g.HEAPF32 = pa = new Float32Array(a); + g.HEAPF64 = qa = new Float64Array(a); + } + var sa = g.INITIAL_MEMORY || 16777216; + g.wasmMemory + ? (B = g.wasmMemory) + : (B = new WebAssembly.Memory({ initial: sa / 65536, maximum: 32768 })); + B && (I = B.buffer); + sa = I.byteLength; + ra(I); + var ta = [], + ua = [], + va = [], + wa = []; + function xa() { + var a = g.preRun.shift(); + ta.unshift(a); + } + var L = 0, + ya = null, + M = null; + g.preloadedImages = {}; + g.preloadedAudios = {}; + function A(a) { + if (g.onAbort) g.onAbort(a); + v(a); + da = !0; + a = new WebAssembly.RuntimeError( + 'abort(' + a + '). Build with -s ASSERTIONS=1 for more info.', + ); + ba(a); + throw a; + } + function za() { + var a = N; + return String.prototype.startsWith + ? a.startsWith('data:application/octet-stream;base64,') + : 0 === a.indexOf('data:application/octet-stream;base64,'); + } + var N = 'webp_enc.wasm'; + if (!za()) { + var Aa = N; + N = g.locateFile ? g.locateFile(Aa, u) : u + Aa; + } + function Ba() { + try { + if (x) return new Uint8Array(x); + if (ca) return ca(N); + throw 'both async and sync fetching of the wasm failed'; + } catch (a) { + A(a); + } + } + function Ca() { + return x || 'function' !== typeof fetch + ? Promise.resolve().then(Ba) + : fetch(N, { credentials: 'same-origin' }) + .then(function (a) { + if (!a.ok) throw "failed to load wasm binary file at '" + N + "'"; + return a.arrayBuffer(); + }) + .catch(function () { + return Ba(); + }); + } + ua.push({ + O: function () { + Da(); + }, + }); + function O(a) { + for (; 0 < a.length; ) { + var b = a.shift(); + if ('function' == typeof b) b(g); + else { + var c = b.O; + 'number' === typeof c + ? void 0 === b.I + ? C.get(c)() + : C.get(c)(b.I) + : c(void 0 === b.I ? null : b.I); + } + } + } + function Ea(a) { + this.H = a - 16; + this.aa = function (b) { + H[(this.H + 8) >> 2] = b; + }; + this.Y = function (b) { + H[(this.H + 0) >> 2] = b; + }; + this.Z = function () { + H[(this.H + 4) >> 2] = 0; + }; + this.X = function () { + J[(this.H + 12) >> 0] = 0; + }; + this.$ = function () { + J[(this.H + 13) >> 0] = 0; + }; + this.U = function (b, c) { + this.aa(b); + this.Y(c); + this.Z(); + this.X(); + this.$(); + }; + } + function P() { + return 0 < P.K; + } + var Q = {}; + function Fa(a) { + for (; a.length; ) { + var b = a.pop(); + a.pop()(b); + } + } + function Ga(a) { + return this.fromWireType(K[a >> 2]); + } + var R = {}, + S = {}, + Ha = {}; + function Ia(a) { + if (void 0 === a) return '_unknown'; + a = a.replace(/[^a-zA-Z0-9_]/g, '$'); + var b = a.charCodeAt(0); + return 48 <= b && 57 >= b ? '_' + a : a; + } + function Ja(a, b) { + a = Ia(a); + return new Function( + 'body', + 'return function ' + + a + + '() {\n "use strict"; return body.apply(this, arguments);\n};\n', + )(b); + } + function Ka(a) { + var b = Error, + c = Ja(a, function (d) { + this.name = a; + this.message = d; + d = Error(d).stack; + void 0 !== d && + (this.stack = + this.toString() + '\n' + d.replace(/^Error(:[^\n]*)?\n/, '')); + }); + c.prototype = Object.create(b.prototype); + c.prototype.constructor = c; + c.prototype.toString = function () { + return void 0 === this.message + ? this.name + : this.name + ': ' + this.message; + }; + return c; + } + var La = void 0; + function Ma(a, b, c) { + function d(h) { + h = c(h); + if (h.length !== a.length) + throw new La('Mismatched type converter count'); + for (var n = 0; n < a.length; ++n) T(a[n], h[n]); + } + a.forEach(function (h) { + Ha[h] = b; + }); + var e = Array(b.length), + f = [], + k = 0; + b.forEach(function (h, n) { + S.hasOwnProperty(h) + ? (e[n] = S[h]) + : (f.push(h), + R.hasOwnProperty(h) || (R[h] = []), + R[h].push(function () { + e[n] = S[h]; + ++k; + k === f.length && d(e); + })); + }); + 0 === f.length && d(e); + } + function Na(a) { + switch (a) { + case 1: + return 0; + case 2: + return 1; + case 4: + return 2; + case 8: + return 3; + default: + throw new TypeError('Unknown type size: ' + a); + } + } + var Oa = void 0; + function U(a) { + for (var b = ''; D[a]; ) b += Oa[D[a++]]; + return b; + } + var Pa = void 0; + function V(a) { + throw new Pa(a); + } + function T(a, b, c) { + c = c || {}; + if (!('argPackAdvance' in b)) + throw new TypeError( + 'registerType registeredInstance requires argPackAdvance', + ); + var d = b.name; + a || V('type "' + d + '" must have a positive integer typeid pointer'); + if (S.hasOwnProperty(a)) { + if (c.T) return; + V("Cannot register type '" + d + "' twice"); + } + S[a] = b; + delete Ha[a]; + R.hasOwnProperty(a) && + ((b = R[a]), + delete R[a], + b.forEach(function (e) { + e(); + })); + } + var Qa = [], + X = [ + {}, + { value: void 0 }, + { value: null }, + { value: !0 }, + { value: !1 }, + ]; + function Ra(a) { + 4 < a && 0 === --X[a].J && ((X[a] = void 0), Qa.push(a)); + } + function Sa(a) { + switch (a) { + case void 0: + return 1; + case null: + return 2; + case !0: + return 3; + case !1: + return 4; + default: + var b = Qa.length ? Qa.pop() : X.length; + X[b] = { J: 1, value: a }; + return b; + } + } + function Ta(a, b) { + var c = g; + if (void 0 === c[a].G) { + var d = c[a]; + c[a] = function () { + c[a].G.hasOwnProperty(arguments.length) || + V( + "Function '" + + b + + "' called with an invalid number of arguments (" + + arguments.length + + ') - expects one of (' + + c[a].G + + ')!', + ); + return c[a].G[arguments.length].apply(this, arguments); + }; + c[a].G = []; + c[a].G[d.M] = d; + } + } + function Ua(a, b, c) { + g.hasOwnProperty(a) + ? ((void 0 === c || (void 0 !== g[a].G && void 0 !== g[a].G[c])) && + V("Cannot register public name '" + a + "' twice"), + Ta(a, a), + g.hasOwnProperty(c) && + V( + 'Cannot register multiple overloads of a function with the same number of arguments (' + + c + + ')!', + ), + (g[a].G[c] = b)) + : ((g[a] = b), void 0 !== c && (g[a].fa = c)); + } + function Va(a, b, c) { + switch (b) { + case 0: + return function (d) { + return this.fromWireType((c ? J : D)[d]); + }; + case 1: + return function (d) { + return this.fromWireType((c ? G : E)[d >> 1]); + }; + case 2: + return function (d) { + return this.fromWireType((c ? H : K)[d >> 2]); + }; + default: + throw new TypeError('Unknown integer type: ' + a); + } + } + function Wa(a) { + a = Xa(a); + var b = U(a); + Y(a); + return b; + } + function Ya(a, b) { + var c = S[a]; + void 0 === c && V(b + ' has unknown type ' + Wa(a)); + return c; + } + function Za(a) { + if (null === a) return 'null'; + var b = typeof a; + return 'object' === b || 'array' === b || 'function' === b + ? a.toString() + : '' + a; + } + function $a(a, b) { + switch (b) { + case 2: + return function (c) { + return this.fromWireType(pa[c >> 2]); + }; + case 3: + return function (c) { + return this.fromWireType(qa[c >> 3]); + }; + default: + throw new TypeError('Unknown float type: ' + a); + } + } + function ab(a) { + var b = Function; + if (!(b instanceof Function)) + throw new TypeError( + 'new_ called with constructor type ' + + typeof b + + ' which is not a function', + ); + var c = Ja(b.name || 'unknownFunctionName', function () {}); + c.prototype = b.prototype; + c = new c(); + a = b.apply(c, a); + return a instanceof Object ? a : c; + } + function bb(a, b) { + for (var c = [], d = 0; d < a; d++) c.push(H[(b >> 2) + d]); + return c; + } + function cb(a, b) { + 0 <= a.indexOf('j') || + A('Assertion failed: getDynCaller should only be called with i64 sigs'); + var c = []; + return function () { + c.length = arguments.length; + for (var d = 0; d < arguments.length; d++) c[d] = arguments[d]; + var e; + -1 != a.indexOf('j') + ? (e = + c && c.length + ? g['dynCall_' + a].apply(null, [b].concat(c)) + : g['dynCall_' + a].call(null, b)) + : (e = C.get(b).apply(null, c)); + return e; + }; + } + function Z(a, b) { + a = U(a); + var c = -1 != a.indexOf('j') ? cb(a, b) : C.get(b); + 'function' !== typeof c && + V('unknown function pointer with signature ' + a + ': ' + b); + return c; + } + var db = void 0; + function eb(a, b) { + function c(f) { + e[f] || S[f] || (Ha[f] ? Ha[f].forEach(c) : (d.push(f), (e[f] = !0))); + } + var d = [], + e = {}; + b.forEach(c); + throw new db(a + ': ' + d.map(Wa).join([', '])); + } + function fb(a, b, c) { + switch (b) { + case 0: + return c + ? function (d) { + return J[d]; + } + : function (d) { + return D[d]; + }; + case 1: + return c + ? function (d) { + return G[d >> 1]; + } + : function (d) { + return E[d >> 1]; + }; + case 2: + return c + ? function (d) { + return H[d >> 2]; + } + : function (d) { + return K[d >> 2]; + }; + default: + throw new TypeError('Unknown integer type: ' + a); + } + } + var gb = {}; + function hb() { + return 'object' === typeof globalThis + ? globalThis + : Function('return this')(); + } + var ib = {}; + La = g.InternalError = Ka('InternalError'); + for (var jb = Array(256), kb = 0; 256 > kb; ++kb) + jb[kb] = String.fromCharCode(kb); + Oa = jb; + Pa = g.BindingError = Ka('BindingError'); + g.count_emval_handles = function () { + for (var a = 0, b = 5; b < X.length; ++b) void 0 !== X[b] && ++a; + return a; + }; + g.get_first_emval = function () { + for (var a = 5; a < X.length; ++a) if (void 0 !== X[a]) return X[a]; + return null; + }; + db = g.UnboundTypeError = Ka('UnboundTypeError'); + var mb = { + l: function (a) { + return lb(a + 16) + 16; + }, + z: function () {}, + h: function (a, b, c) { + new Ea(a).U(b, c); + 'uncaught_exception' in P ? P.K++ : (P.K = 1); + throw a; + }, + b: C, + m: function (a) { + var b = Q[a]; + delete Q[a]; + var c = b.V, + d = b.W, + e = b.L, + f = e + .map(function (k) { + return k.S; + }) + .concat( + e.map(function (k) { + return k.ca; + }), + ); + Ma([a], f, function (k) { + var h = {}; + e.forEach(function (n, l) { + var m = k[l], + q = n.P, + w = n.R, + y = k[l + e.length], + p = n.ba, + ha = n.da; + h[n.N] = { + read: function (z) { + return m.fromWireType(q(w, z)); + }, + write: function (z, F) { + var W = []; + p(ha, z, y.toWireType(W, F)); + Fa(W); + }, + }; + }); + return [ + { + name: b.name, + fromWireType: function (n) { + var l = {}, + m; + for (m in h) l[m] = h[m].read(n); + d(n); + return l; + }, + toWireType: function (n, l) { + for (var m in h) + if (!(m in l)) + throw new TypeError('Missing field: "' + m + '"'); + var q = c(); + for (m in h) h[m].write(q, l[m]); + null !== n && n.push(d, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Ga, + F: d, + }, + ]; + }); + }, + w: function (a, b, c, d, e) { + var f = Na(c); + b = U(b); + T(a, { + name: b, + fromWireType: function (k) { + return !!k; + }, + toWireType: function (k, h) { + return h ? d : e; + }, + argPackAdvance: 8, + readValueFromPointer: function (k) { + if (1 === c) var h = J; + else if (2 === c) h = G; + else if (4 === c) h = H; + else throw new TypeError('Unknown boolean type size: ' + b); + return this.fromWireType(h[k >> f]); + }, + F: null, + }); + }, + v: function (a, b) { + b = U(b); + T(a, { + name: b, + fromWireType: function (c) { + var d = X[c].value; + Ra(c); + return d; + }, + toWireType: function (c, d) { + return Sa(d); + }, + argPackAdvance: 8, + readValueFromPointer: Ga, + F: null, + }); + }, + p: function (a, b, c, d) { + function e() {} + c = Na(c); + b = U(b); + e.values = {}; + T(a, { + name: b, + constructor: e, + fromWireType: function (f) { + return this.constructor.values[f]; + }, + toWireType: function (f, k) { + return k.value; + }, + argPackAdvance: 8, + readValueFromPointer: Va(b, c, d), + F: null, + }); + Ua(b, e); + }, + o: function (a, b, c) { + var d = Ya(a, 'enum'); + b = U(b); + a = d.constructor; + d = Object.create(d.constructor.prototype, { + value: { value: c }, + constructor: { value: Ja(d.name + '_' + b, function () {}) }, + }); + a.values[c] = d; + a[b] = d; + }, + i: function (a, b, c) { + c = Na(c); + b = U(b); + T(a, { + name: b, + fromWireType: function (d) { + return d; + }, + toWireType: function (d, e) { + if ('number' !== typeof e && 'boolean' !== typeof e) + throw new TypeError( + 'Cannot convert "' + Za(e) + '" to ' + this.name, + ); + return e; + }, + argPackAdvance: 8, + readValueFromPointer: $a(b, c), + F: null, + }); + }, + k: function (a, b, c, d, e, f) { + var k = bb(b, c); + a = U(a); + e = Z(d, e); + Ua( + a, + function () { + eb('Cannot call ' + a + ' due to unbound types', k); + }, + b - 1, + ); + Ma([], k, function (h) { + var n = a, + l = a; + h = [h[0], null].concat(h.slice(1)); + var m = e, + q = h.length; + 2 > q && + V( + "argTypes array size mismatch! Must at least get return value and 'this' types!", + ); + for (var w = null !== h[1] && !1, y = !1, p = 1; p < h.length; ++p) + if (null !== h[p] && void 0 === h[p].F) { + y = !0; + break; + } + var ha = 'void' !== h[0].name, + z = '', + F = ''; + for (p = 0; p < q - 2; ++p) + (z += (0 !== p ? ', ' : '') + 'arg' + p), + (F += (0 !== p ? ', ' : '') + 'arg' + p + 'Wired'); + l = + 'return function ' + + Ia(l) + + '(' + + z + + ') {\nif (arguments.length !== ' + + (q - 2) + + ") {\nthrowBindingError('function " + + l + + " called with ' + arguments.length + ' arguments, expected " + + (q - 2) + + " args!');\n}\n"; + y && (l += 'var destructors = [];\n'); + var W = y ? 'destructors' : 'null'; + z = 'throwBindingError invoker fn runDestructors retType classParam'.split( + ' ', + ); + m = [V, m, f, Fa, h[0], h[1]]; + w && + (l += 'var thisWired = classParam.toWireType(' + W + ', this);\n'); + for (p = 0; p < q - 2; ++p) + (l += + 'var arg' + + p + + 'Wired = argType' + + p + + '.toWireType(' + + W + + ', arg' + + p + + '); // ' + + h[p + 2].name + + '\n'), + z.push('argType' + p), + m.push(h[p + 2]); + w && (F = 'thisWired' + (0 < F.length ? ', ' : '') + F); + l += + (ha ? 'var rv = ' : '') + + 'invoker(fn' + + (0 < F.length ? ', ' : '') + + F + + ');\n'; + if (y) l += 'runDestructors(destructors);\n'; + else + for (p = w ? 1 : 2; p < h.length; ++p) + (q = 1 === p ? 'thisWired' : 'arg' + (p - 2) + 'Wired'), + null !== h[p].F && + ((l += q + '_dtor(' + q + '); // ' + h[p].name + '\n'), + z.push(q + '_dtor'), + m.push(h[p].F)); + ha && (l += 'var ret = retType.fromWireType(rv);\nreturn ret;\n'); + z.push(l + '}\n'); + h = ab(z).apply(null, m); + p = b - 1; + if (!g.hasOwnProperty(n)) + throw new La('Replacing nonexistant public symbol'); + void 0 !== g[n].G && void 0 !== p + ? (g[n].G[p] = h) + : ((g[n] = h), (g[n].M = p)); + return []; + }); + }, + d: function (a, b, c, d, e) { + function f(l) { + return l; + } + b = U(b); + -1 === e && (e = 4294967295); + var k = Na(c); + if (0 === d) { + var h = 32 - 8 * c; + f = function (l) { + return (l << h) >>> h; + }; + } + var n = -1 != b.indexOf('unsigned'); + T(a, { + name: b, + fromWireType: f, + toWireType: function (l, m) { + if ('number' !== typeof m && 'boolean' !== typeof m) + throw new TypeError( + 'Cannot convert "' + Za(m) + '" to ' + this.name, + ); + if (m < d || m > e) + throw new TypeError( + 'Passing a number "' + + Za(m) + + '" from JS side to C/C++ side to an argument of type "' + + b + + '", which is outside the valid range [' + + d + + ', ' + + e + + ']!', + ); + return n ? m >>> 0 : m | 0; + }, + argPackAdvance: 8, + readValueFromPointer: fb(b, k, 0 !== d), + F: null, + }); + }, + c: function (a, b, c) { + function d(f) { + f >>= 2; + var k = K; + return new e(I, k[f + 1], k[f]); + } + var e = [ + Int8Array, + Uint8Array, + Int16Array, + Uint16Array, + Int32Array, + Uint32Array, + Float32Array, + Float64Array, + ][b]; + c = U(c); + T( + a, + { + name: c, + fromWireType: d, + argPackAdvance: 8, + readValueFromPointer: d, + }, + { T: !0 }, + ); + }, + j: function (a, b) { + b = U(b); + var c = 'std::string' === b; + T(a, { + name: b, + fromWireType: function (d) { + var e = K[d >> 2]; + if (c) + for (var f = d + 4, k = 0; k <= e; ++k) { + var h = d + 4 + k; + if (k == e || 0 == D[h]) { + if (f) { + for (var n = f + (h - f), l = f; !(l >= n) && D[l]; ) ++l; + f = ea.decode(D.subarray(f, l)); + } else f = ''; + if (void 0 === m) var m = f; + else (m += String.fromCharCode(0)), (m += f); + f = h + 1; + } + } + else { + m = Array(e); + for (k = 0; k < e; ++k) m[k] = String.fromCharCode(D[d + 4 + k]); + m = m.join(''); + } + Y(d); + return m; + }, + toWireType: function (d, e) { + e instanceof ArrayBuffer && (e = new Uint8Array(e)); + var f = 'string' === typeof e; + f || + e instanceof Uint8Array || + e instanceof Uint8ClampedArray || + e instanceof Int8Array || + V('Cannot pass non-string to std::string'); + var k = (c && f + ? function () { + for (var l = 0, m = 0; m < e.length; ++m) { + var q = e.charCodeAt(m); + 55296 <= q && + 57343 >= q && + (q = + (65536 + ((q & 1023) << 10)) | + (e.charCodeAt(++m) & 1023)); + 127 >= q + ? ++l + : (l = 2047 >= q ? l + 2 : 65535 >= q ? l + 3 : l + 4); + } + return l; + } + : function () { + return e.length; + })(), + h = lb(4 + k + 1); + K[h >> 2] = k; + if (c && f) fa(e, h + 4, k + 1); + else if (f) + for (f = 0; f < k; ++f) { + var n = e.charCodeAt(f); + 255 < n && + (Y(h), + V('String has UTF-16 code units that do not fit in 8 bits')); + D[h + 4 + f] = n; + } + else for (f = 0; f < k; ++f) D[h + 4 + f] = e[f]; + null !== d && d.push(Y, h); + return h; + }, + argPackAdvance: 8, + readValueFromPointer: Ga, + F: function (d) { + Y(d); + }, + }); + }, + f: function (a, b, c) { + c = U(c); + if (2 === b) { + var d = ja; + var e = ka; + var f = la; + var k = function () { + return E; + }; + var h = 1; + } else + 4 === b && + ((d = ma), + (e = na), + (f = oa), + (k = function () { + return K; + }), + (h = 2)); + T(a, { + name: c, + fromWireType: function (n) { + for (var l = K[n >> 2], m = k(), q, w = n + 4, y = 0; y <= l; ++y) { + var p = n + 4 + y * b; + if (y == l || 0 == m[p >> h]) + (w = d(w, p - w)), + void 0 === q + ? (q = w) + : ((q += String.fromCharCode(0)), (q += w)), + (w = p + b); + } + Y(n); + return q; + }, + toWireType: function (n, l) { + 'string' !== typeof l && + V('Cannot pass non-string to C++ string type ' + c); + var m = f(l), + q = lb(4 + m + b); + K[q >> 2] = m >> h; + e(l, q + 4, m + b); + null !== n && n.push(Y, q); + return q; + }, + argPackAdvance: 8, + readValueFromPointer: Ga, + F: function (n) { + Y(n); + }, + }); + }, + n: function (a, b, c, d, e, f) { + Q[a] = { name: U(b), V: Z(c, d), W: Z(e, f), L: [] }; + }, + g: function (a, b, c, d, e, f, k, h, n, l) { + Q[a].L.push({ + N: U(b), + S: c, + P: Z(d, e), + R: f, + ca: k, + ba: Z(h, n), + da: l, + }); + }, + x: function (a, b) { + b = U(b); + T(a, { + ea: !0, + name: b, + argPackAdvance: 0, + fromWireType: function () {}, + toWireType: function () {}, + }); + }, + r: Ra, + s: function (a) { + if (0 === a) return Sa(hb()); + var b = gb[a]; + a = void 0 === b ? U(a) : b; + return Sa(hb()[a]); + }, + y: function (a) { + 4 < a && (X[a].J += 1); + }, + q: function (a, b, c, d) { + a || V('Cannot use deleted val. handle = ' + a); + a = X[a].value; + var e = ib[b]; + if (!e) { + e = ''; + for (var f = 0; f < b; ++f) e += (0 !== f ? ', ' : '') + 'arg' + f; + var k = + 'return function emval_allocator_' + + b + + '(constructor, argTypes, args) {\n'; + for (f = 0; f < b; ++f) + k += + 'var argType' + + f + + " = requireRegisteredType(Module['HEAP32'][(argTypes >>> 2) + " + + f + + '], "parameter ' + + f + + '");\nvar arg' + + f + + ' = argType' + + f + + '.readValueFromPointer(args);\nargs += argType' + + f + + "['argPackAdvance'];\n"; + e = new Function( + 'requireRegisteredType', + 'Module', + '__emval_register', + k + + ('var obj = new constructor(' + + e + + ');\nreturn __emval_register(obj);\n}\n'), + )(Ya, g, Sa); + ib[b] = e; + } + return e(a, c, d); + }, + u: function () { + A(); + }, + t: function (a, b, c) { + D.copyWithin(a, b, b + c); + }, + e: function (a) { + a >>>= 0; + var b = D.length; + if (2147483648 < a) return !1; + for (var c = 1; 4 >= c; c *= 2) { + var d = b * (1 + 0.2 / c); + d = Math.min(d, a + 100663296); + d = Math.max(16777216, a, d); + 0 < d % 65536 && (d += 65536 - (d % 65536)); + a: { + try { + B.grow((Math.min(2147483648, d) - I.byteLength + 65535) >>> 16); + ra(B.buffer); + var e = 1; + break a; + } catch (f) {} + e = void 0; + } + if (e) return !0; + } + return !1; + }, + a: B, + }; + (function () { + function a(e) { + g.asm = e.exports; + L--; + g.monitorRunDependencies && g.monitorRunDependencies(L); + 0 == L && + (null !== ya && (clearInterval(ya), (ya = null)), + M && ((e = M), (M = null), e())); + } + function b(e) { + a(e.instance); + } + function c(e) { + return Ca() + .then(function (f) { + return WebAssembly.instantiate(f, d); + }) + .then(e, function (f) { + v('failed to asynchronously prepare wasm: ' + f); + A(f); + }); + } + var d = { a: mb }; + L++; + g.monitorRunDependencies && g.monitorRunDependencies(L); + if (g.instantiateWasm) + try { + return g.instantiateWasm(d, a); + } catch (e) { + return ( + v('Module.instantiateWasm callback failed with error: ' + e), !1 + ); + } + (function () { + if ( + x || + 'function' !== typeof WebAssembly.instantiateStreaming || + za() || + 'function' !== typeof fetch + ) + return c(b); + fetch(N, { credentials: 'same-origin' }).then(function (e) { + return WebAssembly.instantiateStreaming(e, d).then(b, function (f) { + v('wasm streaming compile failed: ' + f); + v('falling back to ArrayBuffer instantiation'); + return c(b); + }); + }); + })(); + return {}; + })(); + var Da = (g.___wasm_call_ctors = function () { + return (Da = g.___wasm_call_ctors = g.asm.A).apply(null, arguments); + }), + lb = (g._malloc = function () { + return (lb = g._malloc = g.asm.B).apply(null, arguments); + }), + Y = (g._free = function () { + return (Y = g._free = g.asm.C).apply(null, arguments); + }), + Xa = (g.___getTypeName = function () { + return (Xa = g.___getTypeName = g.asm.D).apply(null, arguments); + }); + g.___embind_register_native_and_builtin_types = function () { + return (g.___embind_register_native_and_builtin_types = g.asm.E).apply( + null, + arguments, + ); + }; + var nb; + M = function ob() { + nb || pb(); + nb || (M = ob); + }; + function pb() { + function a() { + if (!nb && ((nb = !0), (g.calledRun = !0), !da)) { + O(ua); + O(va); + aa(g); + if (g.onRuntimeInitialized) g.onRuntimeInitialized(); + if (g.postRun) + for ( + 'function' == typeof g.postRun && (g.postRun = [g.postRun]); + g.postRun.length; -var d;d||(d=typeof webp_enc !== 'undefined' ? webp_enc : {});var aa,ba;d.ready=new Promise(function(a,b){aa=a;ba=b});var r={},u;for(u in d)d.hasOwnProperty(u)&&(r[u]=d[u]);var w=!1,x=!1,ca=!1,da=!1;w="object"===typeof window;x="function"===typeof importScripts;ca="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;da=!w&&!ca&&!x;var y="",A,B,ea,fa; -if(ca)y=x?require("path").dirname(y)+"/":__dirname+"/",A=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);return ea.readFileSync(a,b?null:"utf8")},B=function(a){a=A(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||C("Assertion failed: undefined");return a},1=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(b+3>=c)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var ma="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0; -function na(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&I[c];)++c;c<<=1;if(32>1];if(0==f||c==b/2)return e;++c;e+=String.fromCharCode(f)}}function oa(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;J[b>>1]=0;return b-e}function pa(a){return 2*a.length} -function qa(a,b){for(var c=0,e="";!(c>=b/4);){var f=K[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function ra(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}K[b>>2]=g;b+=4;if(b+4>c)break}K[b>>2]=0;return b-e} -function sa(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var L,M,H,J,I,K,N,ta,ua;function va(a){L=a;d.HEAP8=M=new Int8Array(a);d.HEAP16=J=new Int16Array(a);d.HEAP32=K=new Int32Array(a);d.HEAPU8=H=new Uint8Array(a);d.HEAPU16=I=new Uint16Array(a);d.HEAPU32=N=new Uint32Array(a);d.HEAPF32=ta=new Float32Array(a);d.HEAPF64=ua=new Float64Array(a)}var wa=d.INITIAL_MEMORY||16777216;d.wasmMemory?G=d.wasmMemory:G=new WebAssembly.Memory({initial:wa/65536,maximum:32768}); -G&&(L=G.buffer);wa=L.byteLength;va(L);K[8648]=5277632;function xa(a){for(;0>2])}var R={},S={},Oa={};function Pa(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function Qa(a,b){a=Pa(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} -function Ra(a){var b=Error,c=Qa(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var Sa=void 0; -function Ta(a,b,c){function e(k){k=c(k);if(k.length!==a.length)throw new Sa("Mismatched type converter count");for(var h=0;h>1])};case 2:return function(e){return this.fromWireType((c?K:N)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function cb(a){a=db(a);var b=U(a);Y(a);return b}function eb(a,b){var c=S[a];void 0===c&&V(b+" has unknown type "+cb(a));return c} -function fb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function gb(a,b){switch(b){case 2:return function(c){return this.fromWireType(ta[c>>2])};case 3:return function(c){return this.fromWireType(ua[c>>3])};default:throw new TypeError("Unknown float type: "+a);}} -function hb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var c=Qa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}function ib(a,b){for(var c=[],e=0;e>2)+e]);return c} -function Z(a,b){a=U(a);var c=d["dynCall_"+a];for(var e=[],f=1;f>1]}:function(e){return I[e>>1]};case 2:return c?function(e){return K[e>>2]}:function(e){return N[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var mb={}; -function nb(){return"object"===typeof globalThis?globalThis:Function("return this")()}var ob={};Sa=d.InternalError=Ra("InternalError");for(var pb=Array(256),qb=0;256>qb;++qb)pb[qb]=String.fromCharCode(qb);Va=pb;Wa=d.BindingError=Ra("BindingError");d.count_emval_handles=function(){for(var a=0,b=5;b>g])},R:null})},q:function(a,b){b=U(b);T(a,{name:b,fromWireType:function(c){var e=X[c].value;Ya(c);return e},toWireType:function(c,e){return Za(e)},argPackAdvance:8,readValueFromPointer:Na,R:null})},l:function(a,b,c,e){function f(){}c=Ua(c);b=U(b);f.values={};T(a,{name:b,constructor:f,fromWireType:function(g){return this.constructor.values[g]},toWireType:function(g,l){return l.value},argPackAdvance:8, -readValueFromPointer:bb(b,c,e),R:null});ab(b,f)},k:function(a,b,c){var e=eb(a,"enum");b=U(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Qa(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},g:function(a,b,c){c=Ua(c);b=U(b);T(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+fb(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:gb(b, -c),R:null})},f:function(a,b,c,e,f,g){var l=ib(b,c);a=U(a);f=Z(e,f);ab(a,function(){kb("Cannot call "+a+" due to unbound types",l)},b-1);Ta([],l,function(k){var h=[k[0],null].concat(k.slice(1)),m=k=a,q=f,n=h.length;2>n&&V("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var t=null!==h[1]&&!1,v=!1,p=1;p>>k}}var h=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:g,toWireType:function(m,q){if("number"!==typeof q&&"boolean"!==typeof q)throw new TypeError('Cannot convert "'+fb(q)+'" to '+this.name);if(qf)throw new TypeError('Passing a number "'+fb(q)+'" from JS side to C/C++ side to an argument of type "'+ -b+'", which is outside the valid range ['+e+", "+f+"]!");return h?q>>>0:q|0},argPackAdvance:8,readValueFromPointer:lb(b,l,0!==e),R:null})},a:function(a,b,c){function e(g){g>>=2;var l=N;return new f(L,l[g+1],l[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=U(c);T(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{da:!0})},h:function(a,b){b=U(b);var c="std::string"===b;T(a,{name:b,fromWireType:function(e){var f=N[e>>2];if(c)for(var g= -e+4,l=0;l<=f;++l){var k=e+4+l;if(l==f||0==H[k]){if(g){var h=g;var m=H,q=h+(k-g);for(g=h;m[g]&&!(g>=q);)++g;if(16n?q+=String.fromCharCode(n):(n-=65536,q+=String.fromCharCode(55296|n>>10,56320|n&1023))}}else q+=String.fromCharCode(n)}h=q}}else h="";if(void 0=== -p)var p=h;else p+=String.fromCharCode(0),p+=h;g=k+1}}else{p=Array(f);for(l=0;l=n&&(n=65536+((n&1023)<<10)|f.charCodeAt(++q)& -1023);127>=n?++m:m=2047>=n?m+2:65535>=n?m+3:m+4}return m}:function(){return f.length})(),k=rb(4+l+1);N[k>>2]=l;if(c&&g)la(f,k+4,l+1);else if(g)for(g=0;g>2],q=l(),n,t=h+4,v=0;v<=m;++v){var p=h+4+v*b;if(v==m||0==q[p>>k])t=e(t,p-t),void 0===n?n=t:(n+=String.fromCharCode(0),n+=t),t=p+b}Y(h);return n},toWireType:function(h,m){"string"!==typeof m&&V("Cannot pass non-string to C++ string type "+c);var q=g(m),n=rb(4+q+b);N[n>>2]=q>>k;f(m,n+4,q+b);null!==h&&h.push(Y,n);return n},argPackAdvance:8,readValueFromPointer:Na,R:function(h){Y(h)}})},j:function(a,b,c, -e,f,g){La[a]={name:U(b),ea:Z(c,e),fa:Z(f,g),W:[]}},d:function(a,b,c,e,f,g,l,k,h,m){La[a].W.push({Y:U(b),ba:c,$:Z(e,f),aa:g,ha:l,ga:Z(k,h),ia:m})},s:function(a,b){b=U(b);T(a,{ja:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},p:Ya,w:function(a){if(0===a)return Za(nb());var b=mb[a];a=void 0===b?U(a):b;return Za(nb()[a])},v:function(a){4>> 2) + "+g+'], "parameter '+g+'");\nvar arg'+g+" = argType"+g+".readValueFromPointer(args);\nargs += argType"+g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",l+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(eb,d,Za);ob[b]=f}return f(a, -c,e)},o:function(){C()},n:function(a,b,c){H.copyWithin(a,b,b+c)},c:function(a){a>>>=0;var b=H.length;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0>>16);va(G.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},memory:G,table:ha}; -(function(){function a(f){d.asm=f.exports;O--;d.monitorRunDependencies&&d.monitorRunDependencies(O);0==O&&(null!==Da&&(clearInterval(Da),Da=null),P&&(f=P,P=null,f()))}function b(f){a(f.instance)}function c(f){return Ia().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){D("failed to asynchronously prepare wasm: "+g);C(g)})}var e={a:sb};O++;d.monitorRunDependencies&&d.monitorRunDependencies(O);if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return D("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){if(E||"function"!==typeof WebAssembly.instantiateStreaming||Fa()||Ea("file://")||"function"!==typeof fetch)return c(b);fetch(Q,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){D("wasm streaming compile failed: "+g);D("falling back to ArrayBuffer instantiation");return c(b)})})})();return{}})(); -var Ja=d.___wasm_call_ctors=function(){return(Ja=d.___wasm_call_ctors=d.asm.y).apply(null,arguments)},rb=d._malloc=function(){return(rb=d._malloc=d.asm.z).apply(null,arguments)},Y=d._free=function(){return(Y=d._free=d.asm.A).apply(null,arguments)},db=d.___getTypeName=function(){return(db=d.___getTypeName=d.asm.B).apply(null,arguments)};d.___embind_register_native_and_builtin_types=function(){return(d.___embind_register_native_and_builtin_types=d.asm.C).apply(null,arguments)}; -d.dynCall_i=function(){return(d.dynCall_i=d.asm.D).apply(null,arguments)};d.dynCall_vi=function(){return(d.dynCall_vi=d.asm.E).apply(null,arguments)};d.dynCall_iii=function(){return(d.dynCall_iii=d.asm.F).apply(null,arguments)};d.dynCall_viii=function(){return(d.dynCall_viii=d.asm.G).apply(null,arguments)};d.dynCall_fii=function(){return(d.dynCall_fii=d.asm.H).apply(null,arguments)};d.dynCall_viif=function(){return(d.dynCall_viif=d.asm.I).apply(null,arguments)}; -d.dynCall_ii=function(){return(d.dynCall_ii=d.asm.J).apply(null,arguments)};d.dynCall_iiiiii=function(){return(d.dynCall_iiiiii=d.asm.K).apply(null,arguments)};d.dynCall_viiiii=function(){return(d.dynCall_viiiii=d.asm.L).apply(null,arguments)};d.dynCall_iiii=function(){return(d.dynCall_iiii=d.asm.M).apply(null,arguments)};d.dynCall_viiiiiiiii=function(){return(d.dynCall_viiiiiiiii=d.asm.N).apply(null,arguments)};d.dynCall_viiii=function(){return(d.dynCall_viiii=d.asm.O).apply(null,arguments)}; -d.dynCall_viiiiii=function(){return(d.dynCall_viiiiii=d.asm.P).apply(null,arguments)};var tb;P=function ub(){tb||vb();tb||(P=ub)}; -function vb(){function a(){if(!tb&&(tb=!0,d.calledRun=!0,!ia)){xa(za);xa(Aa);aa(d);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Ba.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 j?{Qhar#-%kAY;I|LI1LOZcJ@Uv6 delta 27599 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 Mn}=T&ev8WgKel#%zW@LL diff --git a/config/add-css-types.js b/config/add-css-types.js deleted file mode 100644 index 97ef9a11..00000000 --- a/config/add-css-types.js +++ /dev/null @@ -1,76 +0,0 @@ -const DtsCreator = require('typed-css-modules'); -const chokidar = require('chokidar'); -const util = require('util'); -const sass = require('node-sass'); -const normalizePath = require('normalize-path'); - -const sassRender = util.promisify(sass.render); - -async function sassToCss(path) { - const result = await sassRender({ file: path }); - return result.css; -} - -/** - * @typedef {Object} Opts - * @property {boolean} watch Watch for changes - */ -/** - * Create typing files for CSS & SCSS. - * - * @param {string[]} rootPaths Paths to search within - * @param {Opts} [opts={}] Options. - */ -function addCssTypes(rootPaths, opts = {}) { - return new Promise((resolve) => { - const { watch = false } = opts; - - const paths = []; - const preReadyPromises = []; - let ready = false; - - for (const rootPath of rootPaths) { - const rootPathUnix = normalizePath(rootPath); - // Look for scss & css in each path. - paths.push(rootPathUnix + '/**/*.scss'); - paths.push(rootPathUnix + '/**/*.css'); - } - - // For simplicity, the watcher is used even if we're not watching. - // If we're not watching, we stop the watcher after the initial files are found. - const watcher = chokidar.watch(paths, { - // Avoid processing already-processed files. - ignored: '*.d.*', - // Without this, travis and netlify builds never complete. I'm not sure why, but it might be - // related to https://github.com/paulmillr/chokidar/pull/758 - persistent: watch, - }); - - function change(path) { - const promise = (async function() { - const creator = new DtsCreator({ camelCase: true }); - const result = path.endsWith('.scss') ? - await creator.create(path, await sassToCss(path)) : - await creator.create(path); - - await result.writeFile(); - })(); - - if (!ready) preReadyPromises.push(promise); - } - - watcher.on('change', change); - watcher.on('add', change); - - // 'ready' is when events have been fired for file discovery. - watcher.on('ready', () => { - ready = true; - // Wait for the current set of processing to finish. - Promise.all(preReadyPromises).then(resolve); - // And if we're not watching, close the watcher. - if (!watch) watcher.close(); - }); - }); -} - -module.exports = addCssTypes; diff --git a/config/asset-template-plugin.js b/config/asset-template-plugin.js deleted file mode 100644 index fb882d3b..00000000 --- a/config/asset-template-plugin.js +++ /dev/null @@ -1,47 +0,0 @@ -const path = require('path'); -const fs = require('fs'); -const ejs = require('ejs'); -const AssetsPlugin = require('assets-webpack-plugin'); - -module.exports = class AssetTemplatePlugin extends AssetsPlugin { - constructor(options) { - options = options || {}; - if (!options.template) throw Error('AssetTemplatePlugin: template option is required.'); - super({ - useCompilerPath: true, - filename: options.filename, - processOutput: files => this._processOutput(files) - }); - this._template = path.resolve(process.cwd(), options.template); - const ignore = options.ignore || /(manifest\.json|\.DS_Store)$/; - this._ignore = typeof ignore === 'function' ? ({ test: ignore }) : ignore; - } - - _processOutput(files) { - const mapping = { - all: [], - byType: {}, - entries: {} - }; - for (const entryName in files) { - // non-entry-point-derived assets are collected under an empty string key - // since that's a bit awkward, we'll call them "assets" - const name = entryName === '' ? 'assets' : entryName; - const listing = files[entryName]; - const entry = mapping.entries[name] = { - all: [], - byType: {} - }; - for (let type in listing) { - const list = [].concat(listing[type]).filter(file => !this._ignore.test(file)); - if (!list.length) continue; - mapping.all = mapping.all.concat(list); - mapping.byType[type] = (mapping.byType[type] || []).concat(list); - entry.all = entry.all.concat(list); - entry.byType[type] = (entry.byType[type] || []).concat(list); - } - } - mapping.files = mapping.all; - return ejs.render(fs.readFileSync(this._template, 'utf8'), mapping); - } -}; diff --git a/config/async-component-loader.js b/config/async-component-loader.js deleted file mode 100644 index 90ca4cd3..00000000 --- a/config/async-component-loader.js +++ /dev/null @@ -1,29 +0,0 @@ -let loaderUtils = require('loader-utils'); -let componentPath = require.resolve('./async-component'); - -module.exports = function () { }; -module.exports.pitch = function (remainingRequest) { - this.cacheable && this.cacheable(); - let query = loaderUtils.getOptions(this) || {}; - let routeName = typeof query.name === 'function' ? query.name(this.resourcePath) : null; - let name; - if (routeName !== null) { - name = routeName; - } - else if ('name' in query) { - name = query.name; - } - else if ('formatName' in query) { - name = query.formatName(this.resourcePath); - } - - return ` - import async from ${JSON.stringify(componentPath)}; - function load(cb) { - require.ensure([], function (require) { - cb( require(${loaderUtils.stringifyRequest(this, '!!' + remainingRequest)}) ); - }${name ? (', ' + JSON.stringify(name)) : ''}); - } - export default async(load); - `; -}; \ No newline at end of file diff --git a/config/async-component.js b/config/async-component.js deleted file mode 100644 index b4dfc4d4..00000000 --- a/config/async-component.js +++ /dev/null @@ -1,30 +0,0 @@ -import { h, Component } from 'preact'; - -export default function (req) { - function Async() { - Component.call(this); - - let b, old; - this.componentWillMount = () => { - b = this.base = this.nextBase || this.__b; // short circuits 1st render - req(m => { - this.setState({ child: m.default || m }); - }); - }; - - this.shouldComponentUpdate = (_, nxt) => { - nxt = nxt.child === void 0; - if (nxt && old === void 0 && !!b) { - old = h(b.nodeName, { dangerouslySetInnerHTML: { __html: b.innerHTML } }); - } - else { - old = ''; // dump it - } - return !nxt; - }; - - this.render = (p, s) => s.child ? h(s.child, p) : old; - } - (Async.prototype = new Component()).constructor = Async; - return Async; -} \ No newline at end of file diff --git a/config/auto-sw-plugin.js b/config/auto-sw-plugin.js deleted file mode 100644 index 5223f254..00000000 --- a/config/auto-sw-plugin.js +++ /dev/null @@ -1,158 +0,0 @@ -const util = require('util'); -const minimatch = require('minimatch'); -const SingleEntryPlugin = require('webpack/lib/SingleEntryPlugin'); -const WebWorkerTemplatePlugin = require('webpack/lib/webworker/WebWorkerTemplatePlugin'); -const ParserHelpers = require('webpack/lib/ParserHelpers'); - -const NAME = 'auto-sw-plugin'; -const JS_TYPES = ['auto', 'esm', 'dynamic']; - -/** - * Automatically finds and bundles Service Workers by looking for navigator.serviceWorker.register(..). - * An Array of webpack assets is injected into the Service Worker bundle as a `BUILD_ASSETS` global. - * Hidden and `.map` files are excluded by default, and this can be customized using the include & exclude options. - * @example - * // webpack config - * plugins: [ - * new AutoSWPlugin({ - * exclude: [ - * '**\/.*', // don't expose hidden files (default) - * '**\/*.map', // don't precache sourcemaps (default) - * 'index.html' // don't cache the page itself - * ] - * }) - * ] - * @param {Object} [options={}] - * @param {string[]} [options.exclude] Minimatch pattern(s) of which assets to omit from BUILD_ASSETS. - * @param {string[]} [options.include] Minimatch pattern(s) of assets to allow in BUILD_ASSETS. - */ -module.exports = class AutoSWPlugin { - constructor(options) { - this.options = Object.assign({ - exclude: [ - '**/*.map', - '**/.*' - ] - }, options || {}); - } - - apply(compiler) { - const serviceWorkers = []; - - compiler.hooks.emit.tapPromise(NAME, compilation => this.emit(compiler, compilation, serviceWorkers)); - - compiler.hooks.normalModuleFactory.tap(NAME, (factory) => { - for (const type of JS_TYPES) { - factory.hooks.parser.for(`javascript/${type}`).tap(NAME, parser => { - let counter = 0; - - const processRegisterCall = expr => { - const dep = parser.evaluateExpression(expr.arguments[0]); - - if (!dep.isString()) { - parser.state.module.warnings.push({ - message: 'navigator.serviceWorker.register() will only be bundled if passed a String literal.' - }); - return false; - } - - const filename = dep.string; - const outputFilename = this.options.filename || 'serviceworker.js' - const context = parser.state.current.context; - serviceWorkers.push({ - outputFilename, - filename, - context - }); - - const id = `__webpack__serviceworker__${++counter}`; - ParserHelpers.toConstantDependency(parser, id)(expr.arguments[0]); - return ParserHelpers.addParsedVariableToModule(parser, id, '__webpack_public_path__ + ' + JSON.stringify(outputFilename)); - }; - - parser.hooks.call.for('navigator.serviceWorker.register').tap(NAME, processRegisterCall); - parser.hooks.call.for('self.navigator.serviceWorker.register').tap(NAME, processRegisterCall); - parser.hooks.call.for('window.navigator.serviceWorker.register').tap(NAME, processRegisterCall); - }); - } - }); - } - - createFilter(list) { - const filters = [].concat(list); - for (let i=0; i { - for (const filter of filters) { - if (filter(filename)) return true; - } - return false; - }); - } - if (this.options.exclude) { - const filters = this.createFilter(this.options.exclude); - assetMapping = assetMapping.filter(filename => { - for (const filter of filters) { - if (filter(filename)) return false; - } - return true; - }); - } - await Promise.all(serviceWorkers.map( - (serviceWorker, index) => this.compileServiceWorker(compiler, compilation, serviceWorker, index, assetMapping) - )); - } - - async compileServiceWorker(compiler, compilation, options, index, assetMapping) { - const entryFilename = options.filename; - - const chunkFilename = compiler.options.output.chunkFilename.replace(/\.([a-z]+)$/i, '.serviceworker.$1'); - const workerOptions = { - filename: options.outputFilename, // chunkFilename.replace(/\.?\[(?:chunkhash|contenthash|hash)(:\d+(?::\d+)?)?\]/g, ''), - chunkFilename: this.options.chunkFilename || chunkFilename, - globalObject: 'self' - }; - - const childCompiler = compilation.createChildCompiler(NAME, { filename: workerOptions.filename }); - (new WebWorkerTemplatePlugin(workerOptions)).apply(childCompiler); - - /* The duplication DefinePlugin ends up causing is problematic (it doesn't hoist injections), so we'll do it manually. */ - // (new DefinePlugin({ - // BUILD_ASSETS: JSON.stringify(assetMapping) - // })).apply(childCompiler); - (new SingleEntryPlugin(options.context, entryFilename, workerOptions.filename)).apply(childCompiler); - - const subCache = `subcache ${__dirname} ${entryFilename} ${index}`; - let childCompilation; - childCompiler.hooks.compilation.tap(NAME, c => { - childCompilation = c; - if (childCompilation.cache) { - if (!childCompilation.cache[subCache]) childCompilation.cache[subCache] = {}; - childCompilation.cache = childCompilation.cache[subCache]; - } - }); - - await (util.promisify(childCompiler.runAsChild.bind(childCompiler)))(); - - const versionVar = this.options.version ? - `var VERSION = ${JSON.stringify(this.options.version)};` : ''; - const original = childCompilation.assets[workerOptions.filename].source(); - const source = `${versionVar}var BUILD_ASSETS=${JSON.stringify(assetMapping)};${original}`; - childCompilation.assets[workerOptions.filename] = { - source: () => source, - size: () => Buffer.byteLength(source, 'utf8') - }; - - Object.assign(compilation.assets, childCompilation.assets); - } -}; diff --git a/config/watch-timestamps-plugin.js b/config/watch-timestamps-plugin.js deleted file mode 100644 index d193f5c6..00000000 --- a/config/watch-timestamps-plugin.js +++ /dev/null @@ -1,30 +0,0 @@ -const fs = require('fs'); - -/** A Webpack plugin to refresh file mtime values from disk before compiling. - * This is used in order to account for SCSS-generated .d.ts files written - * as part of compilation so they trigger only a single recompile per write. - * - * All credit for the technique and implementation goes to @reiv. See: - * https://github.com/Jimdo/typings-for-css-modules-loader/issues/48#issuecomment-347036461 - */ -module.exports = class WatchTimestampsPlugin { - constructor(patterns) { - this.patterns = patterns; - } - - apply(compiler) { - compiler.hooks.watchRun.tapAsync('watch-timestamps-plugin', (watch, callback) => { - const patterns = this.patterns; - const timestamps = watch.fileTimestamps; - - for (const filepath of timestamps) { - if (patterns.some(pat => pat instanceof RegExp ? pat.test(filepath) : filepath.indexOf(pat) === 0)) { - let time = fs.statSync(filepath).mtime; - if (timestamps instanceof Map) timestamps.set(filepath, time); - else timestamps[filepath] = time; - } - } - callback(); - }); - } -}; diff --git a/emscripten-wasm.d.ts b/emscripten-types.d.ts similarity index 75% rename from emscripten-wasm.d.ts rename to emscripten-types.d.ts index 2d56197e..7b4a504d 100644 --- a/emscripten-wasm.d.ts +++ b/emscripten-types.d.ts @@ -1,7 +1,11 @@ // These types roughly model the object that the JS files generated by Emscripten define. Copied from https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/emscripten/index.d.ts and turned into a type definition rather than a global to support our way of using Emscripten. // TODO(@surma): Upstream this? declare namespace EmscriptenWasm { - type EnvironmentType = "WEB" | "NODE" | "SHELL" | "WORKER"; + type ModuleFactory = ( + moduleOverrides?: ModuleOpts, + ) => Promise; + + type EnvironmentType = 'WEB' | 'NODE' | 'SHELL' | 'WORKER'; // Options object for modularized Emscripten files. Shoe-horned by @surma. // FIXME: This an incomplete definition! @@ -16,9 +20,9 @@ declare namespace EmscriptenWasm { printErr(str: string): void; arguments: string[]; environment: EnvironmentType; - preInit: { (): void }[]; - preRun: { (): void }[]; - postRun: { (): void }[]; + preInit: { (): void }[]; + preRun: { (): void }[]; + postRun: { (): void }[]; preinitializedWebGLContext: WebGLRenderingContext; noInitialRun: boolean; noExitRuntime: boolean; @@ -27,17 +31,25 @@ declare namespace EmscriptenWasm { wasmBinary: ArrayBuffer; destroy(object: object): void; - getPreloadedPackage(remotePackageName: string, remotePackageSize: number): ArrayBuffer; + getPreloadedPackage( + remotePackageName: string, + remotePackageSize: number, + ): ArrayBuffer; instantiateWasm( - imports: WebAssembly.Imports, - successCallback: (module: WebAssembly.Module) => void + imports: WebAssembly.Imports, + successCallback: (module: WebAssembly.Module) => void, ): WebAssembly.Exports; locateFile(url: string): string; onCustomMessage(event: MessageEvent): void; Runtime: any; - ccall(ident: string, returnType: string | null, argTypes: string[], args: any[]): any; + ccall( + ident: string, + returnType: string | null, + argTypes: string[], + args: any[], + ): any; cwrap(ident: string, returnType: string | null, argTypes: string[]): any; setValue(ptr: number, value: any, type: string, noSafe?: boolean): void; @@ -50,7 +62,12 @@ declare namespace EmscriptenWasm { ALLOC_NONE: number; allocate(slab: any, types: string, allocator: number, ptr: number): number; - allocate(slab: any, types: string[], allocator: number, ptr: number): number; + allocate( + slab: any, + types: string[], + allocator: number, + ptr: number, + ): number; Pointer_stringify(ptr: number, length?: number): string; UTF16ToString(ptr: number): string; @@ -67,7 +84,7 @@ declare namespace EmscriptenWasm { HEAP8: Int8Array; HEAP16: Int16Array; HEAP32: Int32Array; - HEAPU8: Uint8Array; + HEAPU8: Uint8Array; HEAPU16: Uint16Array; HEAPU32: Uint32Array; HEAPF32: Float32Array; @@ -84,16 +101,23 @@ declare namespace EmscriptenWasm { addOnPostRun(cb: () => any): void; // Tools - intArrayFromString(stringy: string, dontAddNull?: boolean, length?: number): number[]; + intArrayFromString( + stringy: string, + dontAddNull?: boolean, + length?: number, + ): number[]; intArrayToString(array: number[]): string; - writeStringToMemory(str: string, buffer: number, dontAddNull: boolean): void; + writeStringToMemory( + str: string, + buffer: number, + dontAddNull: boolean, + ): void; writeArrayToMemory(array: number[], buffer: number): void; writeAsciiToMemory(str: string, buffer: number, dontAddNull: boolean): void; addRunDependency(id: any): void; removeRunDependency(id: any): void; - preloadedImages: any; preloadedAudios: any; @@ -104,4 +128,3 @@ declare namespace EmscriptenWasm { onRuntimeInitialized: () => void | null; } } - diff --git a/generic-tsconfig.json b/generic-tsconfig.json new file mode 100644 index 00000000..9731d183 --- /dev/null +++ b/generic-tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "target": "ES2019", + "downlevelIteration": true, + "module": "esnext", + "jsx": "react", + "jsxFactory": "h", + "strict": true, + "moduleResolution": "node", + "composite": true, + "declarationMap": true, + "baseUrl": "./", + "rootDir": "./", + "outDir": ".tmp/ts", + "allowSyntheticDefaultImports": true, + "paths": { + "static-build/*": ["src/static-build/*"], + "image-worker/*": ["src/image-worker/*"], + "worker-main-shared/*": ["src/worker-main-shared/*"] + } + } +} diff --git a/global.d.ts b/global.d.ts deleted file mode 100644 index 0f8de726..00000000 --- a/global.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -declare const __webpack_public_path__: string; -declare const PRERENDER: boolean; - -declare interface NodeModule { - hot: any; -} - -declare interface Window { - STATE: any; - ga: typeof ga; -} - -declare namespace JSX { - interface Element { } - interface IntrinsicElements { } - interface HTMLAttributes { - decoding?: string; - } -} - -declare module 'classnames' { - export default function classnames(...args: any[]): string; -} diff --git a/lib/asset-plugin.js b/lib/asset-plugin.js new file mode 100644 index 00000000..aabe3b09 --- /dev/null +++ b/lib/asset-plugin.js @@ -0,0 +1,75 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { promises as fs } from 'fs'; +import { basename } from 'path'; + +const defaultOpts = { + prefix: 'url', +}; + +export default function urlPlugin(opts) { + opts = Object.assign({}, defaultOpts, opts); + + /** @type {Map} */ + let assetIdToSourceBuffer; + + const prefix = opts.prefix + ':'; + return { + name: 'url-plugin', + buildStart() { + assetIdToSourceBuffer = new Map(); + }, + augmentChunkHash(info) { + // Get the sources for all assets imported by this chunk. + const buffers = Object.keys(info.modules) + .map((moduleId) => assetIdToSourceBuffer.get(moduleId)) + .filter(Boolean); + + if (buffers.length === 0) return; + + for (const moduleId of Object.keys(info.modules)) { + const buffer = assetIdToSourceBuffer.get(moduleId); + if (buffer) buffers.push(buffer); + } + + const combinedBuffer = + buffers.length === 1 ? buffers[0] : Buffer.concat(buffers); + + return combinedBuffer; + }, + async resolveId(id, importer) { + if (!id.startsWith(prefix)) return; + const realId = id.slice(prefix.length); + const resolveResult = await this.resolve(realId, importer); + + if (!resolveResult) { + throw Error(`Cannot find ${realId}`); + } + // Add an additional .js to the end so it ends up with .js at the end in the _virtual folder. + return prefix + resolveResult.id + '.js'; + }, + async load(id) { + if (!id.startsWith(prefix)) return; + const realId = id.slice(prefix.length, -'.js'.length); + const source = await fs.readFile(realId); + assetIdToSourceBuffer.set(id, source); + this.addWatchFile(realId); + + return `export default import.meta.ROLLUP_FILE_URL_${this.emitFile({ + type: 'asset', + source, + name: basename(realId), + })}`; + }, + }; +} diff --git a/lib/client-bundle-plugin.js b/lib/client-bundle-plugin.js new file mode 100644 index 00000000..827f3ced --- /dev/null +++ b/lib/client-bundle-plugin.js @@ -0,0 +1,163 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import rollup from 'rollup'; + +const prefix = 'client-bundle:'; +const entryPathPlaceholder = 'CLIENT_BUNDLE_PLUGIN_ENTRY_PATH'; +const importsPlaceholder = 'CLIENT_BUNDLE_PLUGIN_IMPORTS'; + +export function getDependencies(clientOutput, item) { + const crawlDependencies = new Set([item.fileName]); + + for (const fileName of crawlDependencies) { + const chunk = clientOutput.find((v) => v.fileName === fileName); + + for (const dep of chunk.imports) { + crawlDependencies.add(dep); + } + } + + // Don't add self as dependency + crawlDependencies.delete(item.fileName); + + return [...crawlDependencies]; +} + +export default function (inputOptions, outputOptions, resolveFileUrl) { + let cache; + let entryPointPlaceholderMap; + let exportCounter; + let clientBundle; + let clientOutput; + + return { + name: 'client-bundle', + buildStart() { + entryPointPlaceholderMap = new Map(); + exportCounter = 0; + }, + async resolveId(id, importer) { + if (!id.startsWith(prefix)) return null; + + const realId = id.slice(prefix.length); + const resolveResult = await this.resolve(realId, importer); + // Add an additional .js to the end so it ends up with .js at the end in the _virtual folder. + if (resolveResult) return prefix + resolveResult.id + '.js'; + // This Rollup couldn't resolve it, but maybe the inner one can. + return id + '.js'; + }, + load(id) { + if (!id.startsWith(prefix)) return; + + const realId = id.slice(prefix.length, -'.js'.length); + + exportCounter++; + + entryPointPlaceholderMap.set(exportCounter, realId); + + return [ + `export default import.meta.${entryPathPlaceholder + exportCounter};`, + `export const imports = import.meta.${ + importsPlaceholder + exportCounter + };`, + ].join('\n'); + }, + async buildEnd(error) { + const entryPoints = [...entryPointPlaceholderMap.values()]; + // The static-build is done, so now we can perform our client build. + // Exit early if there's nothing to build. + if (error || entryPoints.length === 0) return; + + clientBundle = await rollup.rollup({ + ...inputOptions, + cache, + input: entryPoints, + }); + + cache = clientBundle.cache; + }, + async renderStart(staticBuildOutputOpts) { + // The static-build has started generating output, so we can do the same for our client build. + // Exit early if there's nothing to build. + if (!clientBundle) return; + const copiedOutputOptions = { + assetFileNames: staticBuildOutputOpts.assetFileNames, + }; + clientOutput = ( + await clientBundle.generate({ + ...copiedOutputOptions, + ...outputOptions, + }) + ).output; + }, + resolveImportMeta(property, { moduleId, format }) { + // Pick up the placeholder exports we created earlier, and fill in the correct details. + let num = undefined; + + if (property.startsWith(entryPathPlaceholder)) { + num = Number(property.slice(entryPathPlaceholder.length)); + } else if (property.startsWith(importsPlaceholder)) { + num = Number(property.slice(importsPlaceholder.length)); + } else { + // This isn't one of our placeholders. + return; + } + + const id = entryPointPlaceholderMap.get(num); + const clientEntry = clientOutput.find( + (item) => item.facadeModuleId === id, + ); + + if (property.startsWith(entryPathPlaceholder)) { + return resolveFileUrl({ + fileName: clientEntry.fileName, + moduleId, + format, + }); + } + + const dependencies = getDependencies(clientOutput, clientEntry); + + return ( + '[' + + dependencies + .map((item) => { + const entry = clientOutput.find((v) => v.fileName === item); + + return resolveFileUrl({ + fileName: entry.fileName, + moduleId, + format: outputOptions.format, + }); + }) + .join(',') + + ']' + ); + }, + async generateBundle(options, bundle) { + // Exit early if there's nothing to build. + if (!clientOutput) return; + // Copy everything from the client bundle into the main bundle. + for (const clientEntry of clientOutput) { + // Skip if the file already exists + if (clientEntry.fileName in bundle) continue; + + this.emitFile({ + type: 'asset', + source: clientEntry.code || clientEntry.source, + fileName: clientEntry.fileName, + }); + } + }, + }; +} diff --git a/lib/css-plugin.js b/lib/css-plugin.js new file mode 100644 index 00000000..8e2f9082 --- /dev/null +++ b/lib/css-plugin.js @@ -0,0 +1,195 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { promises as fsp, readFileSync } from 'fs'; +import { createHash } from 'crypto'; +import { promisify } from 'util'; +import { parse as parsePath, resolve as resolvePath, dirname } from 'path'; + +import postcss from 'postcss'; +import postCSSNested from 'postcss-nested'; +import postCSSUrl from 'postcss-url'; +import postCSSModules from 'postcss-modules'; +import postCSSImport from 'postcss-import'; +import postCSSSimpleVars from 'postcss-simple-vars'; +import cssNano from 'cssnano'; +import camelCase from 'lodash.camelcase'; +import glob from 'glob'; + +const globP = promisify(glob); + +const moduleSuffix = '.css'; +const prefix = 'css-bundle:'; +const assetRe = new RegExp('/fake/path/to/asset/([^/]+)/', 'g'); + +export default function (resolveFileUrl) { + /** @type {string[]} */ + let emittedCSSIds; + /** @type {Map} */ + let hashToId; + /** @type {Map} */ + let pathToResult; + + async function loadBundledCSS(path, rollupContext) { + const parsedPath = parsePath(path); + + if (!pathToResult.has(path)) { + throw Error(`Cannot find ${path} in pathToResult`); + } + + const file = pathToResult.get(path).css; + + const cssResult = await postcss([ + postCSSImport({ + path: ['./', 'static-build/'], + load(path) { + if (!pathToResult.has(path)) { + throw Error(`Cannot find ${path} in pathToResult`); + } + return pathToResult.get(path).css; + }, + }), + postCSSUrl({ + url: ({ relativePath, url }) => { + if (/^https?:\/\//.test(url)) return url; + const parsedPath = parsePath(relativePath); + const source = readFileSync(resolvePath(dirname(path), relativePath)); + const fileId = rollupContext.emitFile({ + type: 'asset', + name: parsedPath.base, + source, + }); + const hash = createHash('md5'); + hash.update(source); + const md5 = hash.digest('hex'); + hashToId.set(md5, fileId); + return `/fake/path/to/asset/${md5}/`; + }, + }), + cssNano, + ]).process(file, { + from: path, + }); + + const fileId = rollupContext.emitFile({ + type: 'asset', + source: cssResult.css, + name: parsedPath.base, + }); + + emittedCSSIds.push(fileId); + + return [ + `export default import.meta.ROLLUP_FILE_URL_${fileId}`, + `export const inline = ${JSON.stringify(cssResult.css)}`, + ].join('\n'); + } + + return { + name: 'css', + async buildStart() { + emittedCSSIds = []; + hashToId = new Map(); + pathToResult = new Map(); + + const cssPaths = await globP('src/static-build/**/*.css', { + nodir: true, + absolute: true, + }); + + await Promise.all( + cssPaths.map(async (path) => { + this.addWatchFile(path); + const file = await fsp.readFile(path); + let moduleJSON; + + const cssResult = await postcss([ + postCSSNested, + postCSSSimpleVars(), + postCSSModules({ + getJSON(_, json) { + moduleJSON = json; + }, + }), + ]).process(file, { + from: undefined, + }); + + const cssClassExports = Object.entries(moduleJSON).map( + ([key, val]) => + `export const $${camelCase(key)} = ${JSON.stringify(val)};`, + ); + + const defs = Object.keys(moduleJSON) + .map((key) => `export const $${camelCase(key)}: string;`) + .join('\n'); + + const defPath = path + '.d.ts'; + const currentDefFileContent = await fsp + .readFile(defPath, { encoding: 'utf8' }) + .catch(() => undefined); + + // Only write the file if contents have changed, otherwise it causes a loop with + // TypeScript's file watcher. + if (defs !== currentDefFileContent) { + await fsp.writeFile(defPath, defs); + } + + pathToResult.set(path, { + module: cssClassExports.join('\n'), + css: cssResult.css, + }); + }), + ); + }, + async resolveId(id, importer) { + if (!id.startsWith(prefix)) return; + const resolved = await this.resolve(id.slice(prefix.length), importer); + if (!resolved) throw Error(`Couldn't resolve ${id} from ${importer}`); + return prefix + resolved.id; + }, + async load(id) { + if (id.startsWith(prefix)) { + return loadBundledCSS(id.slice(prefix.length), this); + } + if (id.endsWith(moduleSuffix)) { + if (!pathToResult.has(id)) { + throw Error(`Cannot find ${id} in pathToResult`); + } + + return pathToResult.get(id).module; + } + }, + async generateBundle(options, bundle) { + const cssAssets = emittedCSSIds.map((id) => this.getFileName(id)); + + for (const cssAsset of cssAssets) { + bundle[cssAsset].source = bundle[cssAsset].source.replace( + assetRe, + (_, p1) => + resolveFileUrl({ + fileName: this.getFileName(hashToId.get(p1)), + }), + ); + } + + for (const item of Object.values(bundle)) { + if (item.type === 'asset') continue; + item.code = item.code.replace(assetRe, (match, p1) => + resolveFileUrl({ + fileName: this.getFileName(hashToId.get(p1)), + }), + ); + } + }, + }; +} diff --git a/lib/emit-files-plugin.js b/lib/emit-files-plugin.js new file mode 100644 index 00000000..90a42a87 --- /dev/null +++ b/lib/emit-files-plugin.js @@ -0,0 +1,37 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import * as path from 'path'; +import { promises as fs } from 'fs'; +import glob from 'glob'; +import { promisify } from 'util'; + +const globP = promisify(glob); + +export default function emitFiles({ root, include }) { + return { + name: 'emit-files-plugin', + async buildStart() { + const paths = await globP(include, { nodir: true, cwd: root }); + + await Promise.all( + paths.map(async (filePath) => { + return this.emitFile({ + type: 'asset', + source: await fs.readFile(path.join(root, filePath)), + fileName: 'static/' + filePath, + }); + }), + ); + }, + }; +} diff --git a/lib/image-worker-plugin.js b/lib/image-worker-plugin.js new file mode 100644 index 00000000..b6499392 --- /dev/null +++ b/lib/image-worker-plugin.js @@ -0,0 +1,55 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { promisify } from 'util'; +import * as path from 'path'; +import { promises as fsp } from 'fs'; + +import glob from 'glob'; + +const globP = promisify(glob); + +export default function () { + return { + name: 'image-worker-plugin', + async buildStart() { + const base = path.join(process.cwd(), 'src', 'image-worker'); + const dirs = ( + await globP('*/', { + cwd: base, + }) + ).map((dir) => dir.slice(0, -1)); + + const file = [ + `// This file is autogenerated by lib/image-worker-plugin.js`, + `import { expose } from 'comlink';`, + `import { timed } from './util';`, + dirs.map((dir) => `import ${dir} from './${dir}';`), + `const exports = {`, + dirs.map((dir) => [ + ` ${dir}(`, + ` ...args: Parameters`, + ` ): ReturnType {`, + ` return timed('${dir}', () => ${dir}(...args));`, + ` },`, + ]), + `};`, + `export type ProcessorWorkerApi = typeof exports;`, + `expose(exports, self);`, + ] + .flat(Infinity) + .join('\n'); + + await fsp.writeFile(path.join(base, 'index.ts'), file); + }, + }; +} diff --git a/lib/move-output.js b/lib/move-output.js new file mode 100644 index 00000000..c789fa28 --- /dev/null +++ b/lib/move-output.js @@ -0,0 +1,19 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Move .tmp/build/static to docs/ +const fs = require('fs'); +const del = require('del'); +const path = require('path'); + +del.sync('build'); +fs.renameSync(path.join('.tmp', 'build', 'static'), 'build'); diff --git a/lib/node-external-plugin.js b/lib/node-external-plugin.js new file mode 100644 index 00000000..c0e6d92e --- /dev/null +++ b/lib/node-external-plugin.js @@ -0,0 +1,24 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Check that a node module exists, but treat it as external. +export default function () { + return { + name: 'node-external', + resolveId(id) { + try { + require.resolve(id); + return { id, external: true }; + } catch (err) {} + }, + }; +} diff --git a/lib/omt.ejs b/lib/omt.ejs new file mode 100644 index 00000000..77639fc4 --- /dev/null +++ b/lib/omt.ejs @@ -0,0 +1,84 @@ +/** + * Copyright 2018 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// If the loader is already loaded, just stop. +if (!self.<%- amdFunctionName %>) { + const singleRequire = async name => { + if (name === 'require') return require; + const url = '/c/' + name.slice(2) + '.js'; + name = './static' + url; + if (registry[name]) return registry[name]; + + if (!registry[name]) { + <% if (useEval) { %> + const text = await fetch(url).then(resp => resp.text()); + eval(text); + <% } else { %> + if ("document" in self) { + await new Promise(resolve => { + const script = document.createElement("script"); + script.src = url; + document.head.appendChild(script); + script.onload = resolve; + }); + } else { + importScripts(url); + } + <% } %> + } + if (!registry[name]) { + throw new Error(`Module ${name} didn’t register its module`); + } + return registry[name]; + }; + + const require = (names, resolve) => { + Promise.all(names.map(singleRequire)) + .then(modules => resolve(modules.length === 1 ? modules[0] : modules)); + }; + + const registry = { + require: Promise.resolve(require) + }; + + self.<%- amdFunctionName %> = (moduleName, depsNames, factory) => { + if (registry[moduleName]) { + // Module is already loading or loaded. + return; + } + registry[moduleName] = Promise.resolve().then(() => { + let exports = {}; + const module = { + uri: location.origin + moduleName.slice(1) + }; + return Promise.all( + depsNames.map(depName => { + switch(depName) { + case "exports": + return exports; + case "module": + return module; + default: + return singleRequire(depName); + } + }) + ).then(deps => { + const facValue = factory(...deps); + if(!exports.default) { + exports.default = facValue; + } + return exports; + }); + }); + }; +} diff --git a/lib/resolve-dirs-plugin.js b/lib/resolve-dirs-plugin.js new file mode 100644 index 00000000..24354741 --- /dev/null +++ b/lib/resolve-dirs-plugin.js @@ -0,0 +1,36 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { posix as pathUtils } from 'path'; + +export default function resolveDirs(paths) { + const pathBaseDir = paths.map((path) => [ + pathUtils.basename(path), + pathUtils.dirname(path), + ]); + + return { + name: 'resolve-dirs', + async resolveId(id) { + const match = pathBaseDir.find( + ([pathId]) => id === pathId || id.startsWith(pathId + '/'), + ); + if (!match) return; + const pathDir = match[1]; + const resolveResult = await this.resolve(`./${pathDir}/${id}`, './'); + if (!resolveResult) { + throw new Error(`Couldn't find ${'./' + id}`); + } + return pathUtils.resolve(resolveResult.id); + }, + }; +} diff --git a/lib/run-script.js b/lib/run-script.js new file mode 100644 index 00000000..fefd9f75 --- /dev/null +++ b/lib/run-script.js @@ -0,0 +1,34 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { fork } from 'child_process'; + +export default function runScript(path) { + return { + name: 'run-script', + writeBundle() { + return new Promise((resolve, reject) => { + const proc = fork(path, { + stdio: 'inherit', + }); + + proc.on('exit', (code) => { + if (code !== 0) { + reject(Error('Static build failed')); + return; + } + resolve(); + }); + }); + }, + }; +} diff --git a/lib/simple-ts.js b/lib/simple-ts.js new file mode 100644 index 00000000..e5589698 --- /dev/null +++ b/lib/simple-ts.js @@ -0,0 +1,130 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { spawn } from 'child_process'; +import { relative, join } from 'path'; +import { promises as fsp } from 'fs'; +import { promisify } from 'util'; + +import * as ts from 'typescript'; +import glob from 'glob'; + +const globP = promisify(glob); + +const extRe = /\.tsx?$/; + +function loadConfig(mainPath) { + const fileName = ts.findConfigFile(mainPath, ts.sys.fileExists); + if (!fileName) throw Error('tsconfig not found'); + const text = ts.sys.readFile(fileName); + const loadedConfig = ts.parseConfigFileTextToJson(fileName, text).config; + const parsedTsConfig = ts.parseJsonConfigFileContent( + loadedConfig, + ts.sys, + process.cwd(), + undefined, + fileName, + ); + return parsedTsConfig; +} + +export default function simpleTS(mainPath, { noBuild, watch } = {}) { + const config = loadConfig(mainPath); + const args = ['-b', mainPath]; + + let tsBuildDone; + + async function watchBuiltFiles(rollupContext) { + const matches = await globP(config.options.outDir + '/**/*.js'); + for (const match of matches) rollupContext.addWatchFile(match); + } + + async function tsBuild(rollupContext) { + if (tsBuildDone) { + // Watch lists are cleared on each build, so we need to rewatch all the JS files. + await watchBuiltFiles(rollupContext); + return tsBuildDone; + } + if (noBuild) { + return (tsBuildDone = Promise.resolve()); + } + tsBuildDone = Promise.resolve().then(async () => { + await new Promise((resolve) => { + const proc = spawn('tsc', args, { + stdio: 'inherit', + }); + + proc.on('exit', (code) => { + if (code !== 0) { + throw Error('TypeScript build failed'); + } + resolve(); + }); + }); + + await watchBuiltFiles(rollupContext); + + if (watch) { + tsBuildDone.then(() => { + spawn('tsc', [...args, '--watch', '--preserveWatchOutput'], { + stdio: 'inherit', + }); + }); + } + }); + + return tsBuildDone; + } + + return { + name: 'simple-ts', + resolveId(id, importer) { + // If there isn't an importer, it's an entry point, so we don't need to resolve it relative + // to something. + if (!importer) return null; + + const tsResolve = ts.resolveModuleName( + id, + importer, + config.options, + ts.sys, + ); + + if ( + // It didn't find anything + !tsResolve.resolvedModule || + // Or if it's linking to a definition file, it's something in node_modules, + // or something local like css.d.ts + tsResolve.resolvedModule.extension === '.d.ts' + ) { + return null; + } + return tsResolve.resolvedModule.resolvedFileName; + }, + async load(id) { + if (!extRe.test(id)) return null; + + // TypeScript building is deferred until the first TS file load. + // This allows prerequisites to happen first, + // such as css.d.ts generation in css-plugin. + await tsBuild(this); + + // Look for the JS equivalent in the tmp folder + const newId = join( + config.options.outDir, + relative(process.cwd(), id), + ).replace(extRe, '.js'); + + return fsp.readFile(newId, { encoding: 'utf8' }); + }, + }; +} diff --git a/missing-types.d.ts b/missing-types.d.ts new file mode 100644 index 00000000..27f3ea7d --- /dev/null +++ b/missing-types.d.ts @@ -0,0 +1,23 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/// + +declare module 'url:*' { + const value: string; + export default value; +} + +declare module 'omt:*' { + const value: string; + export default value; +} diff --git a/package-lock.json b/package-lock.json index 6d425c06..6b0a5589 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,1336 +1,193 @@ { "name": "squoosh", - "version": "1.12.0", + "version": "2.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", "dev": true, "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.10.4" } }, - "@babel/core": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.5.tgz", - "integrity": "sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helpers": "^7.4.4", - "@babel/parser": "^7.4.5", - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.5", - "@babel/types": "^7.4.4", - "convert-source-map": "^1.1.0", - "debug": "^4.1.0", - "json5": "^2.1.0", - "lodash": "^4.17.11", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "json5": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", - "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", - "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", - "dev": true, - "requires": { - "@babel/types": "^7.4.4", - "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-call-delegate": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", - "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.4.tgz", - "integrity": "sha512-UbBHIa2qeAGgyiNR9RszVF7bUHEdgS4JAUNT8SiqrAN6YJVxlOxeLr5pBzb5kan302dejJ9nla4RyKcR1XT6XA==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.4.4", - "@babel/helper-split-export-declaration": "^7.4.4" - } - }, - "@babel/helper-define-map": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz", - "integrity": "sha512-IX3Ln8gLhZpSuqHJSnTNBWGDE9kdkTEWl21A/K7PQ00tseBwbqCHTvNLHSBd9M0R5rER4h5Rsvj9vw0R5SieBg==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.4.4", - "lodash": "^4.17.11" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", - "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", - "dev": true, - "requires": { - "@babel/types": "^7.4.4" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", - "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz", - "integrity": "sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/template": "^7.4.4", - "@babel/types": "^7.4.4", - "lodash": "^4.17.11" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", "dev": true }, - "@babel/helper-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.4.tgz", - "integrity": "sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-replace-supers": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz", - "integrity": "sha512-04xGEnd+s01nY1l15EuMS1rfKktNF+1CkKmHoErDppjAAZL+IUBZpzT748x262HF7fibaQPhbvWUl5HeSt1EXg==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, - "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", - "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", - "dev": true, - "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", - "dev": true, - "requires": { - "@babel/types": "^7.4.4" - } - }, - "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", - "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" - } - }, - "@babel/helpers": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", - "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", - "dev": true, - "requires": { - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.10.4", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" }, "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } - } - }, - "@babel/parser": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", - "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", - "dev": true - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.4.4.tgz", - "integrity": "sha512-WjKTI8g8d5w1Bc9zgwSz2nfrsNQsXcCf9J9cdCvrJV6RF56yztwm4TmJC0MgJ9tvwO9gUA/mcYe89bLdGfiXFg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", - "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.2.0" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz", - "integrity": "sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz", - "integrity": "sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-flow": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.2.0.tgz", - "integrity": "sha512-r6YMuZDWLtLlu0kqIim5o/3TNRAlWb073HwT3e2nKf9I8IIvOggPrnILYPsrrKilmn/mYEMCf/Z07w3yQJF6dg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", - "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.3.3.tgz", - "integrity": "sha512-dGwbSMA1YhVS8+31CnPR7LB4pcbrzcV99wQzby4uAfrkZPYZlQ7ImwdpzLqi6Z6IL02b8IAL379CaMwo0x5Lag==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", - "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.4.tgz", - "integrity": "sha512-YiqW2Li8TXmzgbXw+STsSqPBPFnGviiaSp6CYOq55X8GQ2SGVLrXB6pNid8HkqkZAzOH6knbai3snhP7v0fNwA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", - "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz", - "integrity": "sha512-jkTUyWZcTrwxu5DD4rWz6rDB5Cjdmgz6z7M7RLXOJyCUkFBawssDGcGh8M/0FTSB87avyJI1HsTwUXp9nKA1PA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "lodash": "^4.17.11" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz", - "integrity": "sha512-/e44eFLImEGIpL9qPxSRat13I5QNRgBLu2hOQJCF7VLy/otSM/sypV1+XaIw5+502RX/+6YaSAPmldk+nhHDPw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.4.4", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.4.4", - "@babel/helper-split-export-declaration": "^7.4.4", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", - "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.4.tgz", - "integrity": "sha512-/aOx+nW0w8eHiEHm+BTERB2oJn5D127iye/SUQl7NjHy0lf+j7h4MKMMSOwdazGq9OxgiNADncE+SRJkCxjZpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", - "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz", - "integrity": "sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", - "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-flow-strip-types": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.4.4.tgz", - "integrity": "sha512-WyVedfeEIILYEaWGAUWzVNyqG4sfsNooMhXWsu/YzOvVGcsnPb5PguysjJqI3t3qiaYj0BR8T2f5njdjTGe44Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-flow": "^7.2.0" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", - "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", - "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", - "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", - "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz", - "integrity": "sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz", - "integrity": "sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.4.4.tgz", - "integrity": "sha512-MSiModfILQc3/oqnG7NrP1jHaSPryO6tA2kOMmAQApz5dayPxWiHqmq4sWH2xF5LcQK56LlbKByCd8Aah/OIkQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", - "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz", - "integrity": "sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg==", - "dev": true, - "requires": { - "regexp-tree": "^0.1.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", - "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz", - "integrity": "sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", - "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", - "dev": true, - "requires": { - "@babel/helper-call-delegate": "^7.4.4", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", - "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", - "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", - "dev": true, - "requires": { - "regenerator-transform": "^0.14.0" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", - "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", - "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", - "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", - "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", - "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", - "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.4.5.tgz", - "integrity": "sha512-RPB/YeGr4ZrFKNwfuQRlMf2lxoCUaU01MTw39/OFE/RiL8HDjtn68BwEPft1P7JN4akyEmjGWAMNldOV7o9V2g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-typescript": "^7.2.0" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", - "integrity": "sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" - } - }, - "@babel/preset-env": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.4.5.tgz", - "integrity": "sha512-f2yNVXM+FsR5V8UwcFeIHzHWgnhXg3NpRmy0ADvALpnhB0SLbCvrCRr4BLOUYbQNLS+Z0Yer46x9dJXpXewI7w==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.2.0", - "@babel/plugin-proposal-json-strings": "^7.2.0", - "@babel/plugin-proposal-object-rest-spread": "^7.4.4", - "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-syntax-async-generators": "^7.2.0", - "@babel/plugin-syntax-json-strings": "^7.2.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-arrow-functions": "^7.2.0", - "@babel/plugin-transform-async-to-generator": "^7.4.4", - "@babel/plugin-transform-block-scoped-functions": "^7.2.0", - "@babel/plugin-transform-block-scoping": "^7.4.4", - "@babel/plugin-transform-classes": "^7.4.4", - "@babel/plugin-transform-computed-properties": "^7.2.0", - "@babel/plugin-transform-destructuring": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/plugin-transform-duplicate-keys": "^7.2.0", - "@babel/plugin-transform-exponentiation-operator": "^7.2.0", - "@babel/plugin-transform-for-of": "^7.4.4", - "@babel/plugin-transform-function-name": "^7.4.4", - "@babel/plugin-transform-literals": "^7.2.0", - "@babel/plugin-transform-member-expression-literals": "^7.2.0", - "@babel/plugin-transform-modules-amd": "^7.2.0", - "@babel/plugin-transform-modules-commonjs": "^7.4.4", - "@babel/plugin-transform-modules-systemjs": "^7.4.4", - "@babel/plugin-transform-modules-umd": "^7.2.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.4.5", - "@babel/plugin-transform-new-target": "^7.4.4", - "@babel/plugin-transform-object-super": "^7.2.0", - "@babel/plugin-transform-parameters": "^7.4.4", - "@babel/plugin-transform-property-literals": "^7.2.0", - "@babel/plugin-transform-regenerator": "^7.4.5", - "@babel/plugin-transform-reserved-words": "^7.2.0", - "@babel/plugin-transform-shorthand-properties": "^7.2.0", - "@babel/plugin-transform-spread": "^7.2.0", - "@babel/plugin-transform-sticky-regex": "^7.2.0", - "@babel/plugin-transform-template-literals": "^7.4.4", - "@babel/plugin-transform-typeof-symbol": "^7.2.0", - "@babel/plugin-transform-unicode-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "browserslist": "^4.6.0", - "core-js-compat": "^3.1.1", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.5.0" - } - }, - "@babel/preset-flow": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.0.0.tgz", - "integrity": "sha512-bJOHrYOPqJZCkPVbG1Lot2r5OSsB+iUOaxiHdlOeB1yPWS6evswVHwvkDLZ54WTaTRIk89ds0iHmGZSnxlPejQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-flow-strip-types": "^7.0.0" - } - }, - "@babel/preset-typescript": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz", - "integrity": "sha512-mzMVuIP4lqtn4du2ynEfdO0+RYcslwrZiJHXu4MGaC1ctJiW2fyaeDrtjJGs7R/KebZ1sgowcIoWf4uRpEfKEg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-typescript": "^7.3.2" - } - }, - "@babel/register": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.4.4.tgz", - "integrity": "sha512-sn51H88GRa00+ZoMqCVgOphmswG4b7mhf9VOB0LUBAieykq2GnRFerlN+JQkO/ntT7wz4jaHNSRPg9IdMPEUkA==", - "dev": true, - "requires": { - "core-js": "^3.0.0", - "find-cache-dir": "^2.0.0", - "lodash": "^4.17.11", - "mkdirp": "^0.5.1", - "pirates": "^4.0.0", - "source-map-support": "^0.5.9" - } - }, - "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", - "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, - "@babel/traverse": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", - "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.4.5", - "@babel/types": "^7.4.4", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.11" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "ms": "^2.1.1" + "color-convert": "^1.9.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", - "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", - "to-fast-properties": "^2.0.0" - } - }, - "@cnakazawa/watch": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz", - "integrity": "sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==", - "dev": true, - "requires": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "@fimbul/bifrost": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@fimbul/bifrost/-/bifrost-0.15.0.tgz", - "integrity": "sha512-sHTwnwA9YhxcVEJkBlfKH1KLmGQGnNYPxk+09w5NnkXelYiiP8a5f351weYfxG0CUPLt1Fgkha20Y/9+jhjn/Q==", - "dev": true, - "requires": { - "@fimbul/ymir": "^0.15.0", - "get-caller-file": "^2.0.0", - "tslib": "^1.8.1", - "tsutils": "^3.1.0" - }, - "dependencies": { - "get-caller-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.1.tgz", - "integrity": "sha512-SpOZHfz845AH0wJYVuZk2jWDqFmu7Xubsx+ldIpwzy5pDUpu7OJHK7QYNSA2NPlDSKQwM1GFaAkciOWjjW92Sg==", - "dev": true - }, - "tsutils": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.5.2.tgz", - "integrity": "sha512-qIlklNuI/1Dzfm+G+kJV5gg3gimZIX5haYtIVQe7qGyKd7eu8T1t1DY6pz4Sc2CGXAj9s1izycctm9Zfl9sRuQ==", + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { - "tslib": "^1.8.1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" } } } }, - "@fimbul/ymir": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@fimbul/ymir/-/ymir-0.15.0.tgz", - "integrity": "sha512-Ow0TfxxQ65vIktHcZyXHeDsGKuzJ9Vt6y77R/aOrXQXLMdYHG+XdbiUWzQbtaGOmNzYVkQfINiFnIdvn5Bn24g==", + "@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", "dev": true, "requires": { - "inversify": "^5.0.0", - "reflect-metadata": "^0.1.12", - "tslib": "^1.8.1" - } - }, - "@jest/console": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.7.1.tgz", - "integrity": "sha512-iNhtIy2M8bXlAOULWVTUxmnelTLFneTNEkHCgPmgd+zNwy9zVddJ6oS5rZ9iwoscNdT5mMwUd0C51v/fSlzItg==", - "dev": true, - "requires": { - "@jest/source-map": "^24.3.0", - "chalk": "^2.0.1", - "slash": "^2.0.0" - }, - "dependencies": { - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - } - } - }, - "@jest/core": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.8.0.tgz", - "integrity": "sha512-R9rhAJwCBQzaRnrRgAdVfnglUuATXdwTRsYqs6NMdVcAl5euG8LtWDe+fVkN27YfKVBW61IojVsXKaOmSnqd/A==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/reporters": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "graceful-fs": "^4.1.15", - "jest-changed-files": "^24.8.0", - "jest-config": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve-dependencies": "^24.8.0", - "jest-runner": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "jest-watcher": "^24.8.0", - "micromatch": "^3.1.10", - "p-each-series": "^1.0.0", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "rimraf": "^2.5.4", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "@jest/environment": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.8.0.tgz", - "integrity": "sha512-vlGt2HLg7qM+vtBrSkjDxk9K0YtRBi7HfRFaDxoRtyi+DyVChzhF20duvpdAnKVBV6W5tym8jm0U9EfXbDk1tw==", - "dev": true, - "requires": { - "@jest/fake-timers": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0" - } - }, - "@jest/fake-timers": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.8.0.tgz", - "integrity": "sha512-2M4d5MufVXwi6VzZhJ9f5S/wU4ud2ck0kxPof1Iz3zWx6Y+V2eJrES9jEktB6O3o/oEyk+il/uNu9PvASjWXQw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-mock": "^24.8.0" - } - }, - "@jest/reporters": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.8.0.tgz", - "integrity": "sha512-eZ9TyUYpyIIXfYCrw0UHUWUvE35vx5I92HGMgS93Pv7du+GHIzl+/vh8Qj9MCWFK/4TqyttVBPakWMOfZRIfxw==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "glob": "^7.1.2", - "istanbul-lib-coverage": "^2.0.2", - "istanbul-lib-instrument": "^3.0.1", - "istanbul-lib-report": "^2.0.4", - "istanbul-lib-source-maps": "^3.0.1", - "istanbul-reports": "^2.1.1", - "jest-haste-map": "^24.8.0", - "jest-resolve": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "node-notifier": "^5.2.1", - "slash": "^2.0.0", - "source-map": "^0.6.0", - "string-length": "^2.0.0" - }, - "dependencies": { - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@jest/source-map": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.3.0.tgz", - "integrity": "sha512-zALZt1t2ou8le/crCeeiRYzvdnTzaIlpOWaet45lNSqNJUnXbppUUFR4ZUAlzgDmKee4Q5P/tKXypI1RiHwgag==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.1.15", - "source-map": "^0.6.0" - }, - "dependencies": { - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@jest/test-result": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.8.0.tgz", - "integrity": "sha512-+YdLlxwizlfqkFDh7Mc7ONPQAhA4YylU1s529vVM1rsf67vGZH/2GGm5uO8QzPeVyaVMobCQ7FTxl38QrKRlng==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/types": "^24.8.0", - "@types/istanbul-lib-coverage": "^2.0.0" - } - }, - "@jest/test-sequencer": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.8.0.tgz", - "integrity": "sha512-OzL/2yHyPdCHXEzhoBuq37CE99nkme15eHkAzXRVqthreWZamEMA0WoetwstsQBCXABhczpK03JNbc4L01vvLg==", - "dev": true, - "requires": { - "@jest/test-result": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-runner": "^24.8.0", - "jest-runtime": "^24.8.0" - } - }, - "@jest/transform": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.8.0.tgz", - "integrity": "sha512-xBMfFUP7TortCs0O+Xtez2W7Zu1PLH9bvJgtraN1CDST6LBM/eTOZ9SfwS/lvV8yOfcDpFmwf9bq5cYbXvqsvA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^24.8.0", - "babel-plugin-istanbul": "^5.1.0", - "chalk": "^2.0.1", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.1.15", - "jest-haste-map": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-util": "^24.8.0", - "micromatch": "^3.1.10", - "realpath-native": "^1.1.0", - "slash": "^2.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "2.4.1" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@jest/types": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.8.0.tgz", - "integrity": "sha512-g17UxVr2YfBtaMUxn9u/4+siG1ptg9IGYAYwvpwn61nBg779RXnjE/m7CxYcIzEt0AbHZZAHSEZNhkE2WxURVg==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^12.0.9" - } - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", "dev": true }, - "@sindresorhus/is": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" + } + }, + "@rollup/plugin-commonjs": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-15.0.0.tgz", + "integrity": "sha512-8uAdikHqVyrT32w1zB9VhW6uGwGjhKgnDNP4pQJsjdnyF4FgCj6/bmv24c7v2CuKhq32CcyCwRzMPEElaKkn0w==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "dependencies": { + "estree-walker": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.1.tgz", + "integrity": "sha512-tF0hv+Yi2Ot1cwj9eYHtxC0jB9bmjacjQs6ZBTj82H8JwUywFuc+7E83NWfNMwHXZc11mjfFcVXPe9gEP4B8dg==", + "dev": true + } + } + }, + "@rollup/plugin-node-resolve": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-9.0.0.tgz", + "integrity": "sha512-gPz+utFHLRrd41WMP13Jq5mqqzHL3OXrfj3/MkSyB6UBIcuNt9j60GCbarzMzdf1VHFpOxfQh/ez7wyadLMqkg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.17.0" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "@surma/rollup-plugin-off-main-thread": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-1.4.1.tgz", + "integrity": "sha512-ZPBWYQDdO4JZiTmTP3DABsHhIPA7bEJk9Znk7tZsrbPGanoGo8YxMv//WLx5Cvb+lRgS42+6yiOIYYHCKDmkpQ==", + "dev": true, + "requires": { + "ejs": "^2.6.1", + "magic-string": "^0.25.0" + } + }, + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, - "@types/babel__core": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.2.tgz", - "integrity": "sha512-cfCCrFmiGY/yq0NuKNxIQvZFy9kY/1immpSpTngOnyIbD4+eJOG5mxphhHDv3CHL9GltO4GcKr54kGBg3RNdbg==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.0.2.tgz", - "integrity": "sha512-NHcOfab3Zw4q5sEE2COkpfXjoE7o+PmqD9DQW4koUT3roNxwziUdXGnRndMat/LJNUtePwn1TlP4do3uoe3KZQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", - "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.6.tgz", - "integrity": "sha512-XYVgHF2sQ0YblLRMLNPB3CkFMewzFmlDsH/TneZFHUXDlABQgh88uOxuez7ZcXxayLFrqLwtDH1t+FmlFwNZxw==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true }, "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", "dev": true, "requires": { - "@types/events": "*", "@types/minimatch": "*", "@types/node": "*" } }, - "@types/istanbul-lib-coverage": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", - "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz", - "integrity": "sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", - "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" - } - }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", @@ -1338,307 +195,36 @@ "dev": true }, "@types/node": { - "version": "10.14.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.15.tgz", - "integrity": "sha512-CBR5avlLcu0YCILJiDIXeU2pTw7UK/NIxfC63m7d7CVamho1qDEzXKkOtEauQRPMy6MI8mLozth+JJkas7HY6g==", + "version": "14.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.10.1.tgz", + "integrity": "sha512-aYNbO+FZ/3KGeQCEkNhHFRIzBOUgc7QvcVNKXbfnhDkSfwUv91JsQQa10rDgKSTSLkXZ1UIyPe4FJJNVgw1xWQ==", "dev": true }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", - "dev": true - }, - "@types/pretty-bytes": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@types/pretty-bytes/-/pretty-bytes-5.1.0.tgz", - "integrity": "sha512-rc7x/HkZyguytBsCUVvcdARplUf0DsrRXqv3yO0v0CIgXuuwNlgYZRfYGCFHxr1CTnKHjCIJ13tB9t49ZixOIw==", + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, "@types/q": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", - "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", + "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", "dev": true }, - "@types/stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", - "dev": true - }, - "@types/webassembly-js-api": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@types/webassembly-js-api/-/webassembly-js-api-0.0.3.tgz", - "integrity": "sha512-9c8QN9vJKF8PYeMeh459PbCfNJVF7rJN9F7AAv7zrLvkmFC8/9OhUTEDZnFl8JzyHDArqbEWaNh72EpmzBKo9Q==", - "dev": true - }, - "@types/yargs": { - "version": "12.0.12", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.12.tgz", - "integrity": "sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw==", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "@types/node": "*" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" - } - }, - "@webcomponents/custom-elements": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@webcomponents/custom-elements/-/custom-elements-1.2.4.tgz", - "integrity": "sha512-WiTlgz6/kuwajYIcgyq64rSlCtb2AvbxwwrExP3wr6rKbJ72I3hi/sb4KdGUumfC+isDn2F0btZGk4MnWpyO1Q==", - "dev": true - }, - "@webpack-cli/serve": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-0.1.8.tgz", - "integrity": "sha512-gZUEX/12h3DL0+FAxkCbuVCK3LH0+p7jmpu2MFCi2g4FZWs37ZrBEtG06h5OZpx3yAaKzOtBe6vYP+0D7b3tlA==", - "dev": true, - "requires": { - "@webpack-cli/utils": "^0.2.2", - "@webpack-cli/webpack-scaffold": "^0.1.8", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "inquirer": "^6.2.0" - } - }, - "@webpack-cli/utils": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/utils/-/utils-0.2.2.tgz", - "integrity": "sha512-tzyRLHdZIO0GfTz8/LHUv5PBaYbaT3ekKG2nzXkiNnkLWBo9JYBhR6N94+9ahqSCGwZ+Q+3igM/frdesQP43Sg==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "findup-sync": "^3.0.0", - "global-modules": "^1.0.0", - "got": "8.x.x", - "jest": "^24.8.0", - "jscodeshift": "^0.6.4", - "log-symbols": "^2.2.0", - "p-each-series": "^1.0.0", - "prettier": "^1.17.0", - "yeoman-environment": "^2.3.4", - "yeoman-generator": "^3.1.1" - }, - "dependencies": { - "findup-sync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", - "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - } - } - }, - "@webpack-cli/webpack-scaffold": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@webpack-cli/webpack-scaffold/-/webpack-scaffold-0.1.8.tgz", - "integrity": "sha512-sXL7VC7HQwaa0ppVT272kk060IqjrQxMge5WVo+Ls7F8cRklTdjkxPXhgWG0Q72/xeLOlu7hgCh5v2p86ULTng==", - "dev": true, - "requires": { - "jscodeshift": "^0.6.4" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "abab": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", - "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "@zeit/schemas": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz", + "integrity": "sha512-uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==", "dev": true }, "accepts": { @@ -1649,55 +235,18 @@ "requires": { "mime-types": "~2.1.24", "negotiator": "0.6.2" - }, - "dependencies": { - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, - "requires": { - "mime-db": "1.40.0" - } - } } }, - "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", - "dev": true - }, - "acorn-globals": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.0.tgz", - "integrity": "sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw==", + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", "dev": true, "requires": { - "acorn": "^6.0.1", - "acorn-walk": "^6.0.1" - }, - "dependencies": { - "acorn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.2.tgz", - "integrity": "sha512-GXmKIvbrN3TV7aVqAzVFaMW8F8wzVX7voEBRO3bDA64+EX37YSayggRJP5Xig6HYHBkWKpFg9W5gg6orklubhg==", - "dev": true - } + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, - "acorn-walk": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.1.0.tgz", - "integrity": "sha512-ugTb7Lq7u4GfWSqqpwE0bGyoBZNMTok/zDBXxfEG0QM50jNlGhIWjRC1pPN7bvV1anhF+bs+/gNcRw+o55Evbg==", - "dev": true - }, "ajv": { "version": "6.5.3", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.3.tgz", @@ -1710,100 +259,97 @@ "uri-js": "^4.2.2" } }, - "ajv-errors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz", - "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=", - "dev": true - }, - "ajv-keywords": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", - "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", - "dev": true - }, "alphanum-sort": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", "dev": true }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { + "ansi-align": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", "dev": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" + "string-width": "^2.0.0" }, "dependencies": { - "normalize-path": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "remove-trailing-separator": "^1.0.1" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" } } } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", "dev": true, "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "type-fest": "^0.11.0" } }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "arch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.1.2.tgz", + "integrity": "sha512-NTBIIbAfkJeIletyABbVtdPgeKfDafR+1mZV/AyyfC1UkVkp9iUjV+wwmqtUgphHYajbI86jejBJp5e+jkGTiQ==", + "dev": true + }, + "arg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz", + "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -1813,592 +359,134 @@ "sprintf-js": "~1.0.2" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assets-webpack-plugin": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/assets-webpack-plugin/-/assets-webpack-plugin-3.9.10.tgz", - "integrity": "sha512-aWmIi46fRhicSScuZ0n1Gk5c5vJehCihHm2L7nd7NdBqXWi5JRM+mREz/hmMay67fSRgXk5JEKFGAF1gE33z0Q==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "escape-string-regexp": "^1.0.3", - "lodash": "^4.17.10", - "mkdirp": "^0.5.1" - }, - "dependencies": { - "camelcase": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz", - "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "ast-types": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.7.tgz", - "integrity": "sha512-2mP3TwtkY/aTv5X3ZsMpNAbOnyoC/aMJwJSoaELPkHId0nSQgFcnU4dRW3isxiz7+zBexk0ym3WNVjMiQBnJSw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true }, "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "async-foreach": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", - "dev": true - }, - "async-limiter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "dev": true - }, - "babel-jest": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.8.0.tgz", - "integrity": "sha512-+5/kaZt4I9efoXzPlZASyK/lN9qdRKmmUav9smVc0ruPQD7IsfucQ87gpOE8mn2jbDuS6M/YOW6n3v9ZoIfgnw==", - "dev": true, - "requires": { - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/babel__core": "^7.1.0", - "babel-plugin-istanbul": "^5.1.0", - "babel-preset-jest": "^24.6.0", - "chalk": "^2.4.2", - "slash": "^2.0.0" - }, - "dependencies": { - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - } - } - }, - "babel-plugin-istanbul": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.4.tgz", - "integrity": "sha512-dySz4VJMH+dpndj0wjJ8JPs/7i1TdSPb1nRrn56/92pKOF9VKC1FMFJmMXjzlGGusnCAqujP6PBCiKq0sVA+YQ==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "istanbul-lib-instrument": "^3.3.0", - "test-exclude": "^5.2.3" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - } - } - }, - "babel-plugin-jest-hoist": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.6.0.tgz", - "integrity": "sha512-3pKNH6hMt9SbOv0F3WVmy5CWQ4uogS3k0GY5XLyQHJ9EGpAT9XWkFd2ZiXXtkwFHdAHa5j7w7kfxSP5lAIwu7w==", - "dev": true, - "requires": { - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-preset-jest": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.6.0.tgz", - "integrity": "sha512-pdZqLEdmy1ZK5kyRUfvBb2IfTPb2BUvIJczlPspS8fWmBQslNNDBqVfh7BW5leOVJMDZKzjD8XEyABTk6gQ5yw==", - "dev": true, - "requires": { - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "babel-plugin-jest-hoist": "^24.6.0" - } - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bfj": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz", - "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "check-types": "^8.0.3", - "hoopy": "^0.1.4", - "tryer": "^1.0.1" - } - }, "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, - "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", - "dev": true - }, - "binaryextensions": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.1.2.tgz", - "integrity": "sha512-xVNN69YGDghOqCCtA6FI7avYrr02mTJjOgB0/f1VPD3pJC8QEvjTKWc4epDx8AqxxA75NI0QpVM2gPJXUbE4Tg==", - "dev": true - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", - "dev": true - }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "dev": true, - "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" - }, - "dependencies": { - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - } - } - }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", "dev": true }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2410,215 +498,36 @@ } }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", - "dev": true - }, - "browser-resolve": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", - "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", - "dev": true, - "requires": { - "resolve": "1.1.7" - }, - "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - } - } - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, - "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "requires": { - "pako": "~1.0.5" + "fill-range": "^7.0.1" } }, "browserslist": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.6.0.tgz", - "integrity": "sha512-Jk0YFwXBuMOOol8n6FhgkDzn3mY9PYLYGk29zybF05SbRTsMgPqmTNeQQhOghCxq5oFqAXE3u4sYddr4C0uRhg==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.0.tgz", + "integrity": "sha512-pUsXKAF2lVwhmtpeA3LJrZ76jXuusrNyhduuQs7CDFf9foT4Y38aQOserd2lMe5DSSrjf3fx34oHwryuvxAUgQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000967", - "electron-to-chromium": "^1.3.133", - "node-releases": "^1.1.19" + "caniuse-lite": "^1.0.30001111", + "electron-to-chromium": "^1.3.523", + "escalade": "^3.0.2", + "node-releases": "^1.1.60" } }, - "bser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.0.0.tgz", - "integrity": "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", - "dev": true - }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", + "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", "dev": true }, "bytes": { @@ -2627,127 +536,6 @@ "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", "dev": true }, - "cacache": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.2.tgz", - "integrity": "sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - }, - "dependencies": { - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", - "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", - "dev": true - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true - } - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "cacheable-request": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", - "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", - "dev": true, - "requires": { - "clone-response": "1.0.2", - "get-stream": "3.0.0", - "http-cache-semantics": "3.8.1", - "keyv": "3.0.0", - "lowercase-keys": "1.0.0", - "normalize-url": "2.0.1", - "responselike": "1.0.2" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", - "dev": true - } - } - }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, "caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -2755,6 +543,14 @@ "dev": true, "requires": { "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + } } }, "caller-path": { @@ -2767,37 +563,17 @@ } }, "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, - "camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", - "dev": true, - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" - } - }, "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", "dev": true }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, "caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", @@ -2811,162 +587,19 @@ } }, "caniuse-lite": { - "version": "1.0.30000969", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000969.tgz", - "integrity": "sha512-Kus0yxkoAJgVc0bax7S4gLSlFifCa7MnSZL9p9VuS/HIKEL4seaqh28KIQAAO50cD/rJ5CiJkJFapkdDAlhFxQ==", - "dev": true - }, - "capture-exit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", - "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", - "dev": true, - "requires": { - "rsvp": "^4.8.4" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "version": "1.0.30001116", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001116.tgz", + "integrity": "sha512-f2lcYnmAI5Mst9+g0nkMIznFGsArRmZ0qU+dnq8l91hymdc2J3SFbiPhOJEeDqC1vtE8nc1qNQyklzB8veJefQ==", "dev": true }, "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "check-types": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz", - "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==", - "dev": true - }, - "chokidar": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.2.tgz", - "integrity": "sha512-c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA==", - "dev": true, - "requires": { - "anymatch": "^3.0.1", - "braces": "^3.0.2", - "fsevents": "^2.0.6", - "glob-parent": "^5.0.0", - "is-binary-path": "^2.1.0", - "is-glob": "^4.0.1", - "normalize-path": "^3.0.0", - "readdirp": "^3.1.1" - }, - "dependencies": { - "anymatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.0.3.tgz", - "integrity": "sha512-c6IvoeBECQlMVuYUjSwimnhmztImpErfxJzWZhIQinIvQWoGOnB0dLIgifbPHQt5heS6mNlaZG16f06H3C8t1g==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.7.tgz", - "integrity": "sha512-a7YT0SV3RB+DjYcppwVDLtn13UQnmg0SWZS7ezZD0UjnLwXmy8Zm21GMVGLaFGimIqcvyMQaOJBrop8MyOp1kQ==", - "dev": true, - "optional": true - }, - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, "ci-info": { @@ -2975,169 +608,126 @@ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "restore-cursor": "^3.1.0" } }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", "dev": true, "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "clipboardy": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.3.tgz", + "integrity": "sha512-2WNImOvCRe6r63Gk9pShfkwXsVtKCroMAevIbiae021mS850UkWPbevxsBz3tnvjZIEGvlwaqCPsw+4ulzNgJA==", + "dev": true, + "requires": { + "arch": "^2.1.0", + "execa": "^0.8.0" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", + "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", + "dev": true, + "requires": { + "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" + } + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" } } } }, - "classnames": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", - "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==", - "dev": true - }, - "clean-css": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", - "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "clean-webpack-plugin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-1.0.1.tgz", - "integrity": "sha512-gvwfMsqu3HBgTVvaBa1H3AZKO03CHpr5uP92SPIktP3827EovAitwW+1xoqXyTxCuXnLYpMHG5ytS4AoukHDWA==", - "dev": true, - "requires": { - "rimraf": "^2.6.1" - } - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-table": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz", - "integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=", - "dev": true, - "requires": { - "colors": "1.0.3" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", - "dev": true - }, - "cloneable-readable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", - "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "process-nextick-args": "^2.0.0", - "readable-stream": "^2.3.5" - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, "coa": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", @@ -3147,47 +737,100 @@ "@types/q": "^1.5.1", "chalk": "^2.4.1", "q": "^1.1.2" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "color": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.1.1.tgz", - "integrity": "sha512-PvUltIXRjehRKPSy89VnDWFKY58xyhTLyxIg21vwQBI6qLwZNPmC8k3C1uytIgFKEpOIzN4y32iPm8231zFHIg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/color/-/color-3.1.2.tgz", + "integrity": "sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==", "dev": true, "requires": { "color-convert": "^1.9.1", "color-string": "^1.5.2" + }, + "dependencies": { + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + } } }, "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "color-name": "1.1.3" + "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "color-string": { @@ -3200,31 +843,16 @@ "simple-swizzle": "^0.2.2" } }, - "colors": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", - "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", - "dev": true - }, - "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, "comlink": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/comlink/-/comlink-3.1.1.tgz", - "integrity": "sha512-8H9/mrssKE9B4ZMLcN/2bZd1cukP61SrOjm8vhxpRSN8oCw7MSroNNm3Y7/vPUhK5a2AO55vb20rXm3840l3Pw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/comlink/-/comlink-4.3.0.tgz", + "integrity": "sha512-mu4KKKNuW8TvkfpW/H88HBPeILubBS6T94BdD1VWBXNXfiyqVtwUCVNO1GeNOBTsIswzsMjWlycYr+77F5b84g==", "dev": true }, "commander": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.1.0.tgz", + "integrity": "sha512-wl7PNrYWd2y5mp1OK/LhTlv8Ff4kQJQRXXAvF+uU/TPNiVJUxZLRYGj/B0y/lPGAVcSbJqH2Za/cvHmrPMC8mA==", "dev": true }, "commondir": { @@ -3233,42 +861,57 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", "dev": true }, "compressible": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz", - "integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, "requires": { - "mime-db": ">= 1.40.0 < 2" - }, - "dependencies": { - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - } + "mime-db": ">= 1.43.0 < 2" } }, "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", "dev": true, "requires": { "accepts": "~1.3.5", "bytes": "3.0.0", - "compressible": "~2.0.16", + "compressible": "~2.0.14", "debug": "2.6.9", - "on-headers": "~1.0.2", + "on-headers": "~1.0.1", "safe-buffer": "5.1.2", "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "concat-map": { @@ -3277,421 +920,34 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true - }, - "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "dev": true, - "requires": { - "safe-buffer": "5.1.2" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "copy-webpack-plugin": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz", - "integrity": "sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg==", - "dev": true, - "requires": { - "cacache": "^11.3.3", - "find-cache-dir": "^2.1.0", - "glob-parent": "^3.1.0", - "globby": "^7.1.1", - "is-glob": "^4.0.1", - "loader-utils": "^1.2.3", - "minimatch": "^3.0.4", - "normalize-path": "^3.0.0", - "p-limit": "^2.2.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^1.7.0", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", - "dev": true - }, - "cacache": { - "version": "11.3.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.3.tgz", - "integrity": "sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", - "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true - } - } - }, - "core-js": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.1.3.tgz", - "integrity": "sha512-PWZ+ZfuaKf178BIAg+CRsljwjIMRV8MY00CbZczkR6Zk5LfkSkjGoaab3+bqRQWVITNZxQB7TFYz+CFcyuamvA==", - "dev": true - }, - "core-js-compat": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.1.3.tgz", - "integrity": "sha512-EP018pVhgwsKHz3YoN1hTq49aRe+h017Kjz0NQz3nXV0cCRMvH3fLQl+vEPGr4r4J5sk4sU3tUC7U1aqTCeJeA==", - "dev": true, - "requires": { - "browserslist": "^4.6.0", - "core-js-pure": "3.1.3", - "semver": "^6.1.0" - }, - "dependencies": { - "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", - "dev": true - } - } - }, - "core-js-pure": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.1.3.tgz", - "integrity": "sha512-k3JWTrcQBKqjkjI0bkfXS0lbpWPxYuHWfMMjC1VDmzU4Q58IwSbuXSo99YO/hUHlw/EB4AlfA2PVxOGkrIq6dA==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", "dev": true }, "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", "dev": true, "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - } - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "critters-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/critters-webpack-plugin/-/critters-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-CFzD4g693aEzmtCE3IORvqk5FwvSofBscaQkVQvXWuStwhSuNsFMG2xrrxCghy8L1Pt6t2CG3G/tIPaiYD1WQw==", - "dev": true, - "requires": { - "css": "^2.2.1", - "cssnano": "^4.1.7", - "jsdom": "^12.0.0", - "parse5": "^4.0.0", - "postcss": "^7.0.5", - "pretty-bytes": "^4.0.2", - "webpack-log": "^2.0.0", - "webpack-sources": "^1.3.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.17", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", - "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "pretty-bytes": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-4.0.2.tgz", - "integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "webpack-sources": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", - "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - } + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" } }, "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" } }, "css-color-names": { @@ -3708,150 +964,18 @@ "requires": { "postcss": "^7.0.1", "timsort": "^0.3.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "css-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz", - "integrity": "sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash": "^4.17.11", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" - } - }, - "css-modules-loader-core": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz", - "integrity": "sha1-WQhmgpShvs0mGuCkziGwtVHyHRY=", - "dev": true, - "requires": { - "icss-replace-symbols": "1.1.0", - "postcss": "6.0.1", - "postcss-modules-extract-imports": "1.1.0", - "postcss-modules-local-by-default": "1.2.0", - "postcss-modules-scope": "1.1.0", - "postcss-modules-values": "1.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "postcss": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.1.tgz", - "integrity": "sha1-AA29H47vIXqjaLmiEsX8QLKo8/I=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "source-map": "^0.5.6", - "supports-color": "^3.2.3" - } - }, - "postcss-modules-extract-imports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz", - "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", - "dev": true, - "requires": { - "postcss": "^6.0.1" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } } }, "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", "dev": true, "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" } }, "css-select-base-adapter": { @@ -3860,62 +984,26 @@ "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", "dev": true }, - "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", - "dev": true, - "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" - }, - "dependencies": { - "regexpu-core": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - } - } - }, "css-tree": { - "version": "1.0.0-alpha.28", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.28.tgz", - "integrity": "sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w==", + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", "dev": true, "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" + "mdn-data": "2.0.4", + "source-map": "^0.6.1" } }, - "css-unit-converter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/css-unit-converter/-/css-unit-converter-1.1.1.tgz", - "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", - "dev": true - }, - "css-url-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/css-url-regex/-/css-url-regex-1.1.0.tgz", - "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", - "dev": true - }, "css-what": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", - "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.3.0.tgz", + "integrity": "sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==", "dev": true }, "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true }, "cssnano": { @@ -3930,31 +1018,43 @@ "postcss": "^7.0.0" }, "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } } } }, @@ -3994,34 +1094,6 @@ "postcss-reduce-transforms": "^4.0.2", "postcss-svgo": "^4.0.2", "postcss-unique-selectors": "^4.0.1" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "cssnano-util-get-arguments": { @@ -4043,34 +1115,6 @@ "dev": true, "requires": { "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "cssnano-util-same-parent": { @@ -4080,128 +1124,51 @@ "dev": true }, "csso": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/csso/-/csso-3.5.1.tgz", - "integrity": "sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", + "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", "dev": true, "requires": { - "css-tree": "1.0.0-alpha.29" + "css-tree": "1.0.0-alpha.39" }, "dependencies": { "css-tree": { - "version": "1.0.0-alpha.29", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.29.tgz", - "integrity": "sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg==", + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", + "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", "dev": true, "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" + "mdn-data": "2.0.6", + "source-map": "^0.6.1" } + }, + "mdn-data": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", + "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", + "dev": true } } }, - "cssom": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.4.tgz", - "integrity": "sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog==", - "dev": true - }, - "cssstyle": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.1.1.tgz", - "integrity": "sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog==", - "dev": true, - "requires": { - "cssom": "0.3.x" - } - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cyclist": { + "cuint": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", - "dev": true - }, - "dargs": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-6.1.0.tgz", - "integrity": "sha512-5dVBvpBLBnPwSsYXqfybFyehMmC/EenKEcf23AhCTgTf48JFBbmJKqoZBsERDnjL0FyiVTYWdFsRfTLHxLyKdQ==", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-urls": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.0.1.tgz", - "integrity": "sha512-0HdcMZzK6ubMUnsMmQmG0AcLQPvbvb47R0+7CCZQCYgcd8OUWG91CG7sM6GoXgjz+WLl4ArFzHtBMy/QqSF4eg==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "whatwg-mimetype": "^2.1.0", - "whatwg-url": "^7.0.0" - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", "dev": true }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", "dev": true }, "deep-extend": { @@ -4210,22 +1177,12 @@ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "dev": true }, - "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" - } - }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -4235,309 +1192,59 @@ "object-keys": "^1.0.12" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", + "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", "dev": true, "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - }, - "dependencies": { - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true - }, - "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detect-conflict": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/detect-conflict/-/detect-conflict-1.0.1.tgz", - "integrity": "sha1-CIZXpmqWHAUBnbfEIwiDsca0F24=", - "dev": true - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "detect-newline": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", - "dev": true - }, - "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diff-sequences": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.3.0.tgz", - "integrity": "sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "globby": "^10.0.1", + "graceful-fs": "^4.2.2", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.1", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0" } }, "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true - }, - "dns-packet": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", - "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", - "dev": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, - "requires": { - "buffer-indexof": "^1.0.0" - } - }, - "doctrine": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-0.7.2.tgz", - "integrity": "sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM=", - "dev": true, - "requires": { - "esutils": "^1.1.6", - "isarray": "0.0.1" - }, - "dependencies": { - "esutils": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz", - "integrity": "sha1-wBzKqa5LiXxtDD4hCuUvPHqEQ3U=", - "dev": true - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "dom-converter": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz", - "integrity": "sha1-pF71cnuJDJv/5tfIduexnLDhfzs=", - "dev": true, - "requires": { - "utila": "~0.3" - }, - "dependencies": { - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } + "path-type": "^4.0.0" } }, "dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", "dev": true, "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" + "domelementtype": "^2.0.1", + "entities": "^2.0.0" }, "dependencies": { "domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==", "dev": true } } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, "domelementtype": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, - "domexception": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", - "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", - "dev": true, - "requires": { - "webidl-conversions": "^4.0.2" - } - }, - "domhandler": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", - "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", "dev": true, "requires": { "dom-serializer": "0", @@ -4545,166 +1252,70 @@ } }, "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", "dev": true, "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", - "dev": true - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "duplexify": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", - "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "optional": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "editions": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/editions/-/editions-2.1.3.tgz", - "integrity": "sha512-xDZyVm0A4nLgMNWVVLJvcwMjI80ShiH/27RyLiCnW1L273TcJIA25C4pwJ33AWV01OX6UriP35Xu+lH4S7HWQw==", - "dev": true, - "requires": { - "errlop": "^1.1.1", - "semver": "^5.6.0" + "is-obj": "^2.0.0" }, "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true } } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, "ejs": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.2.tgz", - "integrity": "sha512-PcW2a0tyTuPHz3tWyYqtK6r1fZ3gp+3Sop8Ph+ZYN81Ob5rwmbHEzaqs10N3BEsaGTkh/ooniXK+WwszGlc2+Q==", + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", + "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", "dev": true }, "electron-to-chromium": { - "version": "1.3.135", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.135.tgz", - "integrity": "sha512-xXLNstRdVsisPF3pL3H9TVZo2XkMILfqtD6RiWIUmDK2sFX1Bjwqmd8LBp0Kuo2FgKO63JXPoEVGm8WyYdwP0Q==", + "version": "1.3.538", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.538.tgz", + "integrity": "sha512-rlyYXLlOoZkJuvY4AJXUpP7CHRVtwZz311HPVoEO1UHo/kqDCsP1pNas0A9paZuPEiYGdLwrjllF2hs69NEaTw==", "dev": true }, - "elliptic": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz", - "integrity": "sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "requires": { "once": "^1.4.0" } }, - "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "ansi-colors": "^4.1.1" } }, "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", "dev": true }, - "errlop": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-1.1.1.tgz", - "integrity": "sha512-WX7QjiPHhsny7/PQvrhS5VMizXXKoKCS3udaBp8gjlARdbn+XmK300eKBAAN0hGyRaTCtRpOaxK+xFVPUJ3zkw==", - "dev": true, - "requires": { - "editions": "^2.1.2" - } - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", - "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", - "dev": true, - "requires": { - "string-template": "~0.2.1", - "xtend": "~4.0.0" - } - }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -4715,461 +1326,76 @@ } }, "es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", "dev": true, "requires": { - "es-to-primitive": "^1.1.1", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { - "is-callable": "^1.1.1", + "is-callable": "^1.1.4", "is-date-object": "^1.0.1", - "is-symbol": "^1.0.1" + "is-symbol": "^1.0.2" } }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "escalade": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", + "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", "dev": true }, "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, - "escodegen": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", - "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", - "dev": true, - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true - }, - "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", - "dev": true - }, - "events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", - "dev": true - }, - "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", - "dev": true, - "requires": { - "original": "^1.0.0" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "exec-sh": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz", - "integrity": "sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg==", + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", "dev": true }, "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz", + "integrity": "sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==", "dev": true, "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.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" + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "expect": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-24.8.0.tgz", - "integrity": "sha512-/zYvP8iMDrzaaxHVa724eJBCKqSHmO0FA7EDkBiRHxg6OipmMn1fN+C8T9L9K8yr7UONkOifu6+LLH+z76CnaA==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "ansi-styles": "^3.2.0", - "jest-get-type": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-regex-util": "^24.3.0" - } - }, - "exports-loader": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/exports-loader/-/exports-loader-0.7.0.tgz", - "integrity": "sha512-RKwCrO4A6IiKm0pG3c9V46JxIHcDplwwGJn6+JJ1RcVnh/WSGJa0xkmk5cRVtgOPzCAtTMGj2F7nluh9L0vpSA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "source-map": "0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.0.tgz", - "integrity": "sha1-D+llA6yGpa213mP05BKuSHLNvoY=", - "dev": true - } - } - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, - "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, - "requires": { - "mime-db": "1.40.0" - } - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", @@ -5177,409 +1403,86 @@ "dev": true }, "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", "dev": true, "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" + "@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": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", "dev": true, "requires": { - "websocket-driver": ">=0.5.1" + "punycode": "^1.3.2" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } } }, - "fb-watchman": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", - "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", + "fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", "dev": true, "requires": { - "bser": "^2.0.0" + "reusify": "^1.0.4" } }, - "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", - "dev": true - }, "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } } }, - "file-drop-element": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/file-drop-element/-/file-drop-element-0.2.0.tgz", - "integrity": "sha512-BGDdaJ4U2Cz0qhv6YGLnuhVtKcN8fp7F/4dS7lGSL1Fbe8m4cbGk+8awwHW0xcFqutMojxGchMVuWYQpEpP/Qg==", - "dev": true - }, - "file-loader": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.2.0.tgz", - "integrity": "sha512-+xZnaK5R8kBJrHK0/6HRlrKNamvVS5rjyuju+rnyxRGuwUJwpAMsVzUl5dz6rK8brkzjV6JpcFNjp6NqV0g1OQ==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.1.0.tgz", - "integrity": "sha512-g6SViEZAfGNrToD82ZPUjq52KUPDYc+fN5+g6Euo5mLokl/9Yx14z0Cu4RR1m55HtBXejO0sBt+qw79axN+Fiw==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "dev": true - }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } + "to-regex-range": "^5.0.1" } }, "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^2.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "find-versions": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", + "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", "dev": true, "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "flow-parser": { - "version": "0.100.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.100.0.tgz", - "integrity": "sha512-4dpz6vfe0rCizZ8czLxrUhAascJspkKDUqINLiKEKCgua91A8hf4f22augPosu1mq9d1hquI+siM8VfDTw+8CA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", - "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.4" - } - }, - "follow-redirects": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", - "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", - "dev": true, - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "1.0.6", - "mime-types": "^2.1.12" - }, - "dependencies": { - "combined-stream": { - "version": "1.0.6", - "resolved": "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - } - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "semver-regex": "^2.0.0" } }, "fs.realpath": { @@ -5589,564 +1492,11 @@ "dev": true }, "fsevents": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", - "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", "dev": true, - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } + "optional": true }, "function-bind": { "version": "1.1.1", @@ -6154,162 +1504,34 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "generic-names": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generic-names/-/generic-names-2.0.1.tgz", + "integrity": "sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ==", "dev": true, "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "loader-utils": "^1.1.0" } }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "get-stdin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", - "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", "dev": true }, "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, "requires": { "pump": "^3.0.0" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "gh-got": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gh-got/-/gh-got-6.0.0.tgz", - "integrity": "sha512-F/mS+fsWQMo1zfgG9MD8KWvTWPPzzhuVwY++fhQ5Ggd+0P+CAMHtzMZhNxG+TqGfHDChJKsbh6otfMGqO2AKBw==", - "dev": true, - "requires": { - "got": "^7.0.0", - "is-plain-obj": "^1.1.0" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "dev": true, - "requires": { - "decompress-response": "^3.2.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-plain-obj": "^1.1.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "p-cancelable": "^0.3.0", - "p-timeout": "^1.1.1", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "url-parse-lax": "^1.0.0", - "url-to-options": "^1.0.1" - } - }, - "p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", - "dev": true - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "dev": true, - "requires": { - "p-finally": "^1.0.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - } - } - }, - "github-username": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/github-username/-/github-username-4.1.0.tgz", - "integrity": "sha1-y+KABBiDIG2kISrp5LXxacML9Bc=", - "dev": true, - "requires": { - "gh-got": "^6.0.0" } }, "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -6321,241 +1543,36 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "dev": true, "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.1" } }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", "dev": true, "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "globule": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.1.tgz", - "integrity": "sha512-OVyWOHgw29yosRHCHo7NncwR1hW5ew0W/UrvtwvjefVJeQ26q4/8r8FmPsSF1hJ93IgWkyv16pCTz6WblMzm/g==", - "dev": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.12", - "minimatch": "~3.0.2" - }, - "dependencies": { - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - } - } - }, - "got": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", - "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.7.0", - "cacheable-request": "^2.1.1", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "into-stream": "^3.1.0", - "is-retry-allowed": "^1.1.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "mimic-response": "^1.0.0", - "p-cancelable": "^0.4.0", - "p-timeout": "^2.0.1", - "pify": "^3.0.0", - "safe-buffer": "^5.1.1", - "timed-out": "^4.0.1", - "url-parse-lax": "^3.0.0", - "url-to-options": "^1.0.1" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - } + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" } }, "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", "dev": true }, - "grouped-queue": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/grouped-queue/-/grouped-queue-0.3.3.tgz", - "integrity": "sha1-wWfSpTGcWg4JZO9qJbfC34mWyFw=", - "dev": true, - "requires": { - "lodash": "^4.17.2" - } - }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "dev": true - }, - "gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", - "dev": true, - "requires": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", - "dev": true - }, - "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", - "dev": true, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "dev": true, - "requires": { - "ajv": "^5.1.0", - "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true - } - } - }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -6565,104 +1582,16 @@ "function-bind": "^1.1.1" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, - "has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "dev": true, - "requires": { - "has-symbol-support-x": "^1.4.1" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", "dev": true }, "hex-color-regex": { @@ -6671,50 +1600,6 @@ "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", "dev": true }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "homedir-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hoopy": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", - "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", - "dev": true - }, - "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", - "dev": true - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, "hsl-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", @@ -6733,216 +1618,28 @@ "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", "dev": true }, - "html-encoding-sniffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.1" - } - }, - "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", - "dev": true - }, - "html-minifier": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.20.tgz", - "integrity": "sha512-ZmgNLaTp54+HFKkONyLFEfs5dd/ZOtlquKaTnqIWFmx3Av5zG6ZPcV2d0o9XM2fXOTxxIf6eDcwzFFotke/5zA==", - "dev": true, - "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.1.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" - } - }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, - "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", - "util.promisify": "1.0.0" - }, - "dependencies": { - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - } - } - }, - "htmlparser2": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", - "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", - "dev": true, - "requires": { - "domelementtype": "1", - "domhandler": "2.1", - "domutils": "1.1", - "readable-stream": "1.0" - }, - "dependencies": { - "domutils": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", - "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - } - } - }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", - "dev": true - }, - "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", - "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", - "dev": true, - "requires": { - "eventemitter3": "^3.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", - "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", "dev": true }, "husky": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/husky/-/husky-3.0.4.tgz", - "integrity": "sha512-7Rnt8aJfy+MlV28snmYK7O7vWwtOfeVxV6KhLpUFXlmx5ukQ1nQmNUB7QsAwSgdySB5X+bm7q7JIRgazqBUzKA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.0.tgz", + "integrity": "sha512-tTMeLCLqSBqnflBZnlVDhpaIMucSGaYyX6855jM4AguGeWCeSzNdb1mfyWduTZ3pe3SJVvVWGL0jO1iKZVPfTA==", "dev": true, "requires": { - "chalk": "^2.4.2", - "cosmiconfig": "^5.2.1", - "execa": "^1.0.0", - "get-stdin": "^7.0.0", - "is-ci": "^2.0.0", + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^7.0.0", + "find-versions": "^3.2.0", "opencollective-postinstall": "^2.0.2", "pkg-dir": "^4.2.0", "please-upgrade-node": "^3.2.0", - "read-pkg": "^5.1.1", - "run-node": "^1.0.0", - "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" } }, "icss-replace-symbols": { @@ -6952,132 +1649,35 @@ "dev": true }, "icss-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", - "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", "dev": true, "requires": { - "postcss": "^6.0.1" + "postcss": "^7.0.14" } }, - "idb-keyval": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/idb-keyval/-/idb-keyval-3.2.0.tgz", - "integrity": "sha512-slx8Q6oywCCSfKgPgL0sEsXtPVnSbTLWpyiDcu6msHOyKOLari1TD1qocXVCft80umnkk3/Qqh3lwoFt8T/BPQ==", - "dev": true - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", "dev": true, "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" } }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", - "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "in-publish": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", - "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", - "dev": true - }, "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true }, "indexes-of": { "version": "1.0.1", @@ -7085,12 +1685,6 @@ "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", "dev": true }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -7102,9 +1696,9 @@ } }, "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "ini": { @@ -7113,215 +1707,24 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, - "inquirer": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", - "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.11", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - } - } - }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", - "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" - } - }, - "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", - "dev": true - }, - "into-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", - "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", - "dev": true, - "requires": { - "from2": "^2.1.1", - "p-is-promise": "^1.1.0" - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "inversify": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/inversify/-/inversify-5.0.1.tgz", - "integrity": "sha512-Ieh06s48WnEYGcqHepdsJUIJUXpwH5o5vodAX+DK2JA/gjy4EbEcQZxw+uFfzysmKjiLXGYwNG3qDZsKVMcINQ==", - "dev": true - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true - }, - "ipaddr.js": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", - "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==", - "dev": true - }, "is-absolute-url": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", "dev": true }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } - }, "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", "dev": true }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, "is-color-stop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", @@ -7336,118 +1739,50 @@ "rgba-regex": "^1.0.0" } }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, "is-directory": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", "dev": true }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true - }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" } }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true }, "is-obj": { "version": "1.0.1", @@ -7455,91 +1790,52 @@ "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, - "is-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", - "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=", - "dev": true - }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", "dev": true }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "dev": true, - "requires": { - "is-path-inside": "^2.1.0" - } - }, "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", "dev": true }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", "dev": true, "requires": { - "isobject": "^3.0.1" + "@types/estree": "*" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", "dev": true, "requires": { - "has": "^1.0.1" + "has-symbols": "^1.0.1" } }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true + }, "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", "dev": true }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, - "is-scoped": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-scoped/-/is-scoped-1.0.0.tgz", - "integrity": "sha1-RJypgpnnEwOCViieyytUDcQ3yzA=", - "dev": true, - "requires": { - "scoped-regex": "^1.0.0" - } - }, "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, "is-svg": { @@ -7552,54 +1848,12 @@ } }, "is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true - }, - "is-there": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/is-there/-/is-there-4.4.4.tgz", - "integrity": "sha512-WbEGbR5i/vSLJ/cc72kVCoM0RvKWmtmPpRXriNlhsredolym2aSTHZA02IzvDR5ewmwD0V6e9S3s9aHs6Ygw5A==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "dev": true, "requires": { - "buffer-alloc": "^1.2.0" + "has-symbols": "^1.0.1" } }, "isexe": { @@ -7608,1222 +1862,43 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, - "dependencies": { - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", - "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", - "dev": true, - "requires": { - "handlebars": "^4.1.2" - } - }, - "istextorbinary": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.5.1.tgz", - "integrity": "sha512-pv/JNPWnfpwGjPx7JrtWTwsWsxkrK3fNzcEVnt92YKEIErps4Fsk49+qzCe9iQF2hjqK8Naqf8P9kzoeCuQI1g==", - "dev": true, - "requires": { - "binaryextensions": "^2.1.2", - "editions": "^2.1.3", - "textextensions": "^2.4.0" - } - }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "dev": true, - "requires": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" - } - }, - "jest": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-24.8.0.tgz", - "integrity": "sha512-o0HM90RKFRNWmAWvlyV8i5jGZ97pFwkeVoGvPW1EtLTgJc2+jcuqcbbqcSZLE/3f2S5pt0y2ZBETuhpWNl1Reg==", - "dev": true, - "requires": { - "import-local": "^2.0.0", - "jest-cli": "^24.8.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "jest-cli": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.8.0.tgz", - "integrity": "sha512-+p6J00jSMPQ116ZLlHJJvdf8wbjNbZdeSX9ptfHX06/MSNaXmKihQzx5vQcw0q2G6JsdVkUIdWbOWtSnaYs3yA==", - "dev": true, - "requires": { - "@jest/core": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "import-local": "^2.0.0", - "is-ci": "^2.0.0", - "jest-config": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "prompts": "^2.0.1", - "realpath-native": "^1.1.0", - "yargs": "^12.0.2" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "jest-changed-files": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.8.0.tgz", - "integrity": "sha512-qgANC1Yrivsq+UrLXsvJefBKVoCsKB0Hv+mBb6NMjjZ90wwxCDmU3hsCXBya30cH+LnPYjwgcU65i6yJ5Nfuug==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "execa": "^1.0.0", - "throat": "^4.0.0" - } - }, - "jest-config": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.8.0.tgz", - "integrity": "sha512-Czl3Nn2uEzVGsOeaewGWoDPD8GStxCpAe0zOYs2x2l0fZAgPbCr3uwUkgNKV3LwE13VXythM946cd5rdGkkBZw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^24.8.0", - "@jest/types": "^24.8.0", - "babel-jest": "^24.8.0", - "chalk": "^2.0.1", - "glob": "^7.1.1", - "jest-environment-jsdom": "^24.8.0", - "jest-environment-node": "^24.8.0", - "jest-get-type": "^24.8.0", - "jest-jasmine2": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "micromatch": "^3.1.10", - "pretty-format": "^24.8.0", - "realpath-native": "^1.1.0" - } - }, - "jest-diff": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.8.0.tgz", - "integrity": "sha512-wxetCEl49zUpJ/bvUmIFjd/o52J+yWcoc5ZyPq4/W1LUKGEhRYDIbP1KcF6t+PvqNrGAFk4/JhtxDq/Nnzs66g==", - "dev": true, - "requires": { - "chalk": "^2.0.1", - "diff-sequences": "^24.3.0", - "jest-get-type": "^24.8.0", - "pretty-format": "^24.8.0" - } - }, - "jest-docblock": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.3.0.tgz", - "integrity": "sha512-nlANmF9Yq1dufhFlKG9rasfQlrY7wINJbo3q01tu56Jv5eBU5jirylhF2O5ZBnLxzOVBGRDz/9NAwNyBtG4Nyg==", - "dev": true, - "requires": { - "detect-newline": "^2.1.0" - } - }, - "jest-each": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.8.0.tgz", - "integrity": "sha512-NrwK9gaL5+XgrgoCsd9svsoWdVkK4gnvyhcpzd6m487tXHqIdYeykgq3MKI1u4I+5Zf0tofr70at9dWJDeb+BA==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "jest-get-type": "^24.8.0", - "jest-util": "^24.8.0", - "pretty-format": "^24.8.0" - } - }, - "jest-environment-jsdom": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.8.0.tgz", - "integrity": "sha512-qbvgLmR7PpwjoFjM/sbuqHJt/NCkviuq9vus9NBn/76hhSidO+Z6Bn9tU8friecegbJL8gzZQEMZBQlFWDCwAQ==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/fake-timers": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-util": "^24.8.0", - "jsdom": "^11.5.1" - }, - "dependencies": { - "jsdom": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", - "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "acorn": "^5.5.3", - "acorn-globals": "^4.1.0", - "array-equal": "^1.0.0", - "cssom": ">= 0.3.2 < 0.4.0", - "cssstyle": "^1.0.0", - "data-urls": "^1.0.0", - "domexception": "^1.0.1", - "escodegen": "^1.9.1", - "html-encoding-sniffer": "^1.0.2", - "left-pad": "^1.3.0", - "nwsapi": "^2.0.7", - "parse5": "4.0.0", - "pn": "^1.1.0", - "request": "^2.87.0", - "request-promise-native": "^1.0.5", - "sax": "^1.2.4", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.3.4", - "w3c-hr-time": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.3", - "whatwg-mimetype": "^2.1.0", - "whatwg-url": "^6.4.1", - "ws": "^5.2.0", - "xml-name-validator": "^3.0.0" - } - }, - "whatwg-url": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", - "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "ws": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", - "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - } - } - }, - "jest-environment-node": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.8.0.tgz", - "integrity": "sha512-vIGUEScd1cdDgR6sqn2M08sJTRLQp6Dk/eIkCeO4PFHxZMOgy+uYLPMC4ix3PEfM5Au/x3uQ/5Tl0DpXXZsJ/Q==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/fake-timers": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-util": "^24.8.0" - } - }, - "jest-get-type": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.8.0.tgz", - "integrity": "sha512-RR4fo8jEmMD9zSz2nLbs2j0zvPpk/KCEz3a62jJWbd2ayNo0cb+KFRxPHVhE4ZmgGJEQp0fosmNz84IfqM8cMQ==", - "dev": true - }, - "jest-haste-map": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.8.0.tgz", - "integrity": "sha512-ZBPRGHdPt1rHajWelXdqygIDpJx8u3xOoLyUBWRW28r3tagrgoepPrzAozW7kW9HrQfhvmiv1tncsxqHJO1onQ==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "anymatch": "^2.0.0", - "fb-watchman": "^2.0.0", - "fsevents": "^1.2.7", - "graceful-fs": "^4.1.15", - "invariant": "^2.2.4", - "jest-serializer": "^24.4.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "micromatch": "^3.1.10", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "jest-jasmine2": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.8.0.tgz", - "integrity": "sha512-cEky88npEE5LKd5jPpTdDCLvKkdyklnaRycBXL6GNmpxe41F0WN44+i7lpQKa/hcbXaQ+rc9RMaM4dsebrYong==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "co": "^4.6.0", - "expect": "^24.8.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "pretty-format": "^24.8.0", - "throat": "^4.0.0" - } - }, - "jest-leak-detector": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.8.0.tgz", - "integrity": "sha512-cG0yRSK8A831LN8lIHxI3AblB40uhv0z+SsQdW3GoMMVcK+sJwrIIyax5tu3eHHNJ8Fu6IMDpnLda2jhn2pD/g==", - "dev": true, - "requires": { - "pretty-format": "^24.8.0" - } - }, - "jest-matcher-utils": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.8.0.tgz", - "integrity": "sha512-lex1yASY51FvUuHgm0GOVj7DCYEouWSlIYmCW7APSqB9v8mXmKSn5+sWVF0MhuASG0bnYY106/49JU1FZNl5hw==", - "dev": true, - "requires": { - "chalk": "^2.0.1", - "jest-diff": "^24.8.0", - "jest-get-type": "^24.8.0", - "pretty-format": "^24.8.0" - } - }, - "jest-message-util": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.8.0.tgz", - "integrity": "sha512-p2k71rf/b6ns8btdB0uVdljWo9h0ovpnEe05ZKWceQGfXYr4KkzgKo3PBi8wdnd9OtNh46VpNIJynUn/3MKm1g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^2.0.1", - "micromatch": "^3.1.10", - "slash": "^2.0.0", - "stack-utils": "^1.0.1" - }, - "dependencies": { - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - } - } - }, - "jest-mock": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.8.0.tgz", - "integrity": "sha512-6kWugwjGjJw+ZkK4mDa0Df3sDlUTsV47MSrT0nGQ0RBWJbpODDQ8MHDVtGtUYBne3IwZUhtB7elxHspU79WH3A==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0" - } - }, - "jest-pnp-resolver": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", - "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", - "dev": true - }, - "jest-regex-util": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.3.0.tgz", - "integrity": "sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg==", - "dev": true - }, - "jest-resolve": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.8.0.tgz", - "integrity": "sha512-+hjSzi1PoRvnuOICoYd5V/KpIQmkAsfjFO71458hQ2Whi/yf1GDeBOFj8Gxw4LrApHsVJvn5fmjcPdmoUHaVKw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "browser-resolve": "^1.11.3", - "chalk": "^2.0.1", - "jest-pnp-resolver": "^1.2.1", - "realpath-native": "^1.1.0" - } - }, - "jest-resolve-dependencies": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.8.0.tgz", - "integrity": "sha512-hyK1qfIf/krV+fSNyhyJeq3elVMhK9Eijlwy+j5jqmZ9QsxwKBiP6qukQxaHtK8k6zql/KYWwCTQ+fDGTIJauw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-snapshot": "^24.8.0" - } - }, - "jest-runner": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.8.0.tgz", - "integrity": "sha512-utFqC5BaA3JmznbissSs95X1ZF+d+4WuOWwpM9+Ak356YtMhHE/GXUondZdcyAAOTBEsRGAgH/0TwLzfI9h7ow==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.4.2", - "exit": "^0.1.2", - "graceful-fs": "^4.1.15", - "jest-config": "^24.8.0", - "jest-docblock": "^24.3.0", - "jest-haste-map": "^24.8.0", - "jest-jasmine2": "^24.8.0", - "jest-leak-detector": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-resolve": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "source-map-support": "^0.5.6", - "throat": "^4.0.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, - "jest-runtime": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.8.0.tgz", - "integrity": "sha512-Mq0aIXhvO/3bX44ccT+czU1/57IgOMyy80oM0XR/nyD5zgBcesF84BPabZi39pJVA6UXw+fY2Q1N+4BiVUBWOA==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/environment": "^24.8.0", - "@jest/source-map": "^24.3.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/yargs": "^12.0.2", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.1.15", - "jest-config": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "realpath-native": "^1.1.0", - "slash": "^2.0.0", - "strip-bom": "^3.0.0", - "yargs": "^12.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "jest-serializer": { - "version": "24.4.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.4.0.tgz", - "integrity": "sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q==", - "dev": true - }, - "jest-snapshot": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.8.0.tgz", - "integrity": "sha512-5ehtWoc8oU9/cAPe6fez6QofVJLBKyqkY2+TlKTOf0VllBB/mqUNdARdcjlZrs9F1Cv+/HKoCS/BknT0+tmfPg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "expect": "^24.8.0", - "jest-diff": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-resolve": "^24.8.0", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^24.8.0", - "semver": "^5.5.0" - } - }, - "jest-util": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.8.0.tgz", - "integrity": "sha512-DYZeE+XyAnbNt0BG1OQqKy/4GVLPtzwGx5tsnDrFcax36rVE3lTA5fbvgmbVPUZf9w77AJ8otqR4VBbfFJkUZA==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/fake-timers": "^24.8.0", - "@jest/source-map": "^24.3.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "callsites": "^3.0.0", - "chalk": "^2.0.1", - "graceful-fs": "^4.1.15", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1", - "slash": "^2.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "jest-validate": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.8.0.tgz", - "integrity": "sha512-+/N7VOEMW1Vzsrk3UWBDYTExTPwf68tavEPKDnJzrC6UlHtUDU/fuEdXqFoHzv9XnQ+zW6X3qMZhJ3YexfeLDA==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "camelcase": "^5.0.0", - "chalk": "^2.0.1", - "jest-get-type": "^24.8.0", - "leven": "^2.1.0", - "pretty-format": "^24.8.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - }, - "jest-watcher": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.8.0.tgz", - "integrity": "sha512-SBjwHt5NedQoVu54M5GEx7cl7IGEFFznvd/HNT8ier7cCAx/Qgu9ZMlaTQkvK22G1YOpcWBLQPFSImmxdn3DAw==", - "dev": true, - "requires": { - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/yargs": "^12.0.9", - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "jest-util": "^24.8.0", - "string-length": "^2.0.0" - } - }, "jest-worker": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.6.0.tgz", - "integrity": "sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ==", + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.3.0.tgz", + "integrity": "sha512-Vmpn2F6IASefL+DVBhPzI2J9/GJUsqzomdeN+P+dK8/jKxbh8R3BtFnx3FIta7wYlPU62cpJMJQo4kuOowcMnw==", "dev": true, "requires": { - "merge-stream": "^1.0.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" } }, - "js-base64": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", - "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", - "dev": true - }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "dev": true - }, "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, - "optional": true - }, - "jscodeshift": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.6.4.tgz", - "integrity": "sha512-+NF/tlNbc2WEhXUuc4WEJLsJumF84tnaMUZW2hyJw3jThKKRvsPX4sPJVgO1lPE28z0gNL+gwniLG9d8mYvQCQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.6", - "@babel/parser": "^7.1.6", - "@babel/plugin-proposal-class-properties": "^7.1.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/preset-env": "^7.1.6", - "@babel/preset-flow": "^7.0.0", - "@babel/preset-typescript": "^7.1.0", - "@babel/register": "^7.0.0", - "babel-core": "^7.0.0-bridge.0", - "colors": "^1.1.2", - "flow-parser": "0.*", - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "neo-async": "^2.5.0", - "node-dir": "^0.1.17", - "recast": "^0.16.1", - "temp": "^0.8.1", - "write-file-atomic": "^2.3.0" - } - }, - "jsdom": { - "version": "12.2.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-12.2.0.tgz", - "integrity": "sha512-QPOggIJ8fquWPLaYYMoh+zqUmdphDtu1ju0QGTitZT1Yd8I5qenPpXM1etzUegu3MjVp8XPzgZxdn8Yj7e40ig==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "acorn": "^6.0.2", - "acorn-globals": "^4.3.0", - "array-equal": "^1.0.0", - "cssom": "^0.3.4", - "cssstyle": "^1.1.1", - "data-urls": "^1.0.1", - "domexception": "^1.0.1", - "escodegen": "^1.11.0", - "html-encoding-sniffer": "^1.0.2", - "nwsapi": "^2.0.9", - "parse5": "5.1.0", - "pn": "^1.1.0", - "request": "^2.88.0", - "request-promise-native": "^1.0.5", - "saxes": "^3.1.3", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.4.3", - "w3c-hr-time": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.2.0", - "whatwg-url": "^7.0.0", - "ws": "^6.1.0", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", - "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", - "dev": true - }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "parse5": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", - "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==", - "dev": true - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - } - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } - } - } - } - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", - "dev": true - }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true }, "json-schema-traverse": { @@ -8832,102 +1907,13 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true - }, "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "keyv": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", - "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" - } - }, - "killable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - }, - "last-call-webpack-plugin": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", - "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { - "lodash": "^4.17.5", - "webpack-sources": "^1.1.0" - } - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "left-pad": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", - "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", - "dev": true - }, - "leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "minimist": "^1.2.0" } }, "lines-and-columns": { @@ -8936,96 +1922,80 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "linkstate": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/linkstate/-/linkstate-1.1.1.tgz", - "integrity": "sha512-5SICdxQG9FpWk44wSEoM2WOCUNuYfClp10t51XAIV5E7vUILF/dTYxf0vJw6bW2dUd2wcQon+LkNtRijpNLrig==", - "dev": true - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "lint-staged": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.3.0.tgz", + "integrity": "sha512-an3VgjHqmJk0TORB/sdQl0CTkRg4E5ybYCXTTCSJ5h9jFwZbcgKIx5oVma5e7wp/uKt17s1QYFmYqT9MGVosGw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "commander": "^6.0.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.1.1", + "dedent": "^0.7.0", + "enquirer": "^2.3.6", + "execa": "^4.0.3", + "listr2": "^2.6.0", + "log-symbols": "^4.0.0", + "micromatch": "^4.0.2", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "^3.3.0" + } + }, + "listr2": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-2.6.2.tgz", + "integrity": "sha512-6x6pKEMs8DSIpA/tixiYY2m/GcbgMplMVmhQAaLFxEtNSKLeWTGjtmU57xvv6QCm2XcqzyNXL/cTSVf4IChCRA==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "figures": "^3.2.0", + "indent-string": "^4.0.0", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rxjs": "^6.6.2", + "through": "^2.3.8" }, "dependencies": { - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "requires": { - "error-ex": "^1.2.0" + "aggregate-error": "^3.0.0" } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true } } }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true - }, "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", "dev": true, "requires": { "big.js": "^5.2.2", - "emojis-list": "^2.0.0", + "emojis-list": "^3.0.0", "json5": "^1.0.1" - }, - "dependencies": { - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", "dev": true }, "lodash.memoize": { @@ -9034,12 +2004,6 @@ "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", "dev": true }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", @@ -9047,431 +2011,111 @@ "dev": true }, "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", "dev": true, "requires": { - "chalk": "^2.0.1" + "chalk": "^4.0.0" } }, - "loglevel": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.3.tgz", - "integrity": "sha512-LoEDv5pgpvWgPF4kNYuIp0qqSJVWak/dML0RY74xlzMZiT9w77teNAwKYKWBTYjlokMirg+o3jBwp+vlLrcfAA==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", "dev": true, "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + } } }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lower-case": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", - "dev": true - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, "requires": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "dev": true, - "requires": { - "tmpl": "1.0.x" - } - }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, - "map-age-cleaner": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", - "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "sourcemap-codec": "^1.4.4" } }, "mdn-data": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-1.1.4.tgz", - "integrity": "sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA==", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, - "mem": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", - "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^1.1.0" - } - }, - "mem-fs": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/mem-fs/-/mem-fs-1.1.3.tgz", - "integrity": "sha1-uK6NLj/Lb10/kWXBLUVRoGXZicw=", - "dev": true, - "requires": { - "through2": "^2.0.0", - "vinyl": "^1.1.0", - "vinyl-file": "^2.0.0" - } - }, - "mem-fs-editor": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-5.1.0.tgz", - "integrity": "sha512-2Yt2GCYEbcotYbIJagmow4gEtHDqzpq5XN94+yAx/NT5+bGqIjkXnm3KCUQfE6kRfScGp9IZknScoGRKu8L78w==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "deep-extend": "^0.6.0", - "ejs": "^2.5.9", - "glob": "^7.0.3", - "globby": "^8.0.1", - "isbinaryfile": "^3.0.2", - "mkdirp": "^0.5.0", - "multimatch": "^2.0.0", - "rimraf": "^2.2.8", - "through2": "^2.0.0", - "vinyl": "^2.0.1" - }, - "dependencies": { - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - } - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", "dev": true }, "merge-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - } - }, - "merge2": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", - "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "dev": true, "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", "dev": true }, "mime-db": { - "version": "1.36.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", - "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", "dev": true }, "mime-types": { - "version": "2.1.20", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", - "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "dev": true, "requires": { - "mime-db": "~1.36.0" + "mime-db": "1.44.0" } }, "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz", - "integrity": "sha512-MNpRGbNA52q6U92i0qbVpQNsgk7LExy41MdAlG84FeytfDOtRIf/mCHdEgG8rpTKOaNKiqUnZdlptF469hxqOw==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "dev": true, - "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, "minimatch": { @@ -9484,155 +2128,24 @@ } }, "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { - "minimist": "0.0.8" - } - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" + "minimist": "^1.2.5" } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", - "dev": true, - "requires": { - "dns-packet": "^1.3.1", - "thunky": "^1.0.2" - } - }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz", - "integrity": "sha512-F4miItu2rGnV2ySkXOQoA8FKz/SR2Q2sWP0sbTxNxz/tuokeC8WxOhPMcwi0qIyGtVn/rrSeLbvVkznqCdwYnw==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "negotiator": { @@ -9641,327 +2154,11 @@ "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", "dev": true }, - "neo-async": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.2.tgz", - "integrity": "sha512-vdqTKI9GBIYcAEbFAcpKPErKINfPF5zIuz3/niBfq8WUZjpT2tytLlFVrBgWdOtqI4uaA/Rb6No0hux39XXDuw==", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "no-case": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", - "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", - "dev": true, - "requires": { - "lower-case": "^1.1.1" - } - }, - "node-dir": { - "version": "0.1.17", - "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz", - "integrity": "sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU=", - "dev": true, - "requires": { - "minimatch": "^3.0.2" - } - }, - "node-fetch": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", - "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", - "dev": true - }, - "node-forge": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", - "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", - "dev": true - }, - "node-gyp": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", - "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", - "dev": true, - "requires": { - "fstream": "^1.0.0", - "glob": "^7.0.3", - "graceful-fs": "^4.1.2", - "mkdirp": "^0.5.0", - "nopt": "2 || 3", - "npmlog": "0 || 1 || 2 || 3 || 4", - "osenv": "0", - "request": "^2.87.0", - "rimraf": "2", - "semver": "~5.3.0", - "tar": "^2.0.0", - "which": "1" - }, - "dependencies": { - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", - "dev": true - } - } - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, - "node-notifier": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.0.tgz", - "integrity": "sha512-SUDEb+o71XR5lXSTyivXd9J7fCloE3SyP4lSgt3lU2oSANiox+SxlNRGPjDKrwU1YN3ix2KN/VGGCg0t01rttQ==", - "dev": true, - "requires": { - "growly": "^1.3.0", - "is-wsl": "^1.1.0", - "semver": "^5.5.0", - "shellwords": "^0.1.1", - "which": "^1.3.0" - } - }, "node-releases": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.19.tgz", - "integrity": "sha512-SH/B4WwovHbulIALsQllAVwqZZD1kPmKCqrhGfR29dXjLAVZMHvBjD3S6nL9D/J9QkmZ1R92/0wCMDKXUUvyyA==", - "dev": true, - "requires": { - "semver": "^5.3.0" - } - }, - "node-sass": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.13.0.tgz", - "integrity": "sha512-W1XBrvoJ1dy7VsvTAS5q1V45lREbTlZQqFbiHb3R3OTTCma0XBtuG6xZ6Z4506nR4lmHPTqVRwxT6KgtWC97CA==", - "dev": true, - "requires": { - "async-foreach": "^0.1.3", - "chalk": "^1.1.1", - "cross-spawn": "^3.0.0", - "gaze": "^1.0.0", - "get-stdin": "^4.0.1", - "glob": "^7.0.3", - "in-publish": "^2.0.0", - "lodash": "^4.17.15", - "meow": "^3.7.0", - "mkdirp": "^0.5.1", - "nan": "^2.13.2", - "node-gyp": "^3.8.0", - "npmlog": "^4.0.0", - "request": "^2.88.0", - "sass-graph": "^2.2.4", - "stdout-stream": "^1.4.0", - "true-case-path": "^1.0.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cross-spawn": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - } - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } + "version": "1.1.60", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", + "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "dev": true }, "normalize-path": { "version": "3.0.0", @@ -9970,116 +2167,41 @@ "dev": true }, "normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", - "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" - } + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "dev": true }, "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "path-key": "^3.0.0" } }, "nth-check": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", - "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", "dev": true, "requires": { "boolbase": "~1.0.0" } }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "object-inspect": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", "dev": true }, - "nwsapi": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.0.9.tgz", - "integrity": "sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ==", - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", @@ -10093,49 +2215,25 @@ } }, "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "object.values": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.0.tgz", - "integrity": "sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", + "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", "dev": true, "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", - "function-bind": "^1.1.1", - "has": "^1.0.3" + "es-abstract": "^1.17.0-next.1" } }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "object.values": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", + "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", "dev": true, "requires": { - "ee-first": "1.1.1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "has": "^1.0.3" } }, "on-headers": { @@ -10154,300 +2252,84 @@ } }, "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "mimic-fn": "^2.1.0" } }, "opencollective-postinstall": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", - "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", "dev": true }, - "opener": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz", - "integrity": "sha512-goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA==", - "dev": true - }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, - "optimize-css-assets-webpack-plugin": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz", - "integrity": "sha512-Rqm6sSjWtx9FchdP0uzTQDc7GXDKnwVEGoSxjezPkzMewx7gEWE9IMUYKmigTRC4U3RaNSwYVnUDLuIdtTpm0A==", - "dev": true, - "requires": { - "cssnano": "^4.1.0", - "last-call-webpack-plugin": "^3.0.0" - } - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "original": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", - "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", - "dev": true, - "requires": { - "url-parse": "^1.4.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-cancelable": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", - "dev": true - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-each-series": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", - "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", - "dev": true, - "requires": { - "p-reduce": "^1.0.0" - } - }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, - "p-is-promise": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", - "dev": true - }, "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { - "p-try": "^1.0.0" + "p-try": "^2.0.0" } }, "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.2.0" } }, "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, - "p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", - "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", - "dev": true - }, - "p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", "dev": true, "requires": { - "retry": "^0.12.0" - } - }, - "p-timeout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", - "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", - "dev": true, - "requires": { - "p-finally": "^1.0.0" + "aggregate-error": "^3.0.0" } }, "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", - "dev": true - }, - "parallel-transform": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "param-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", - "dev": true, - "requires": { - "no-case": "^2.2.0" - } - }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", - "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "callsites": "^3.0.0" } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", + "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", "dev": true, "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" } }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "path-is-absolute": { @@ -10463,9 +2345,9 @@ "dev": true }, "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { @@ -10475,75 +2357,29 @@ "dev": true }, "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==", "dev": true }, "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, "picomatch": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.6.tgz", - "integrity": "sha512-Btng9qVvFsW6FkXYQQK5nEI5i8xdXFDmlKxC7Q8S2Bu5HGWnbQf7ts2kOoxJIrZn5hmw61RZIayAg2zBuJDtyQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", "dev": true }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } - }, "pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", @@ -10551,57 +2387,6 @@ "dev": true, "requires": { "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } } }, "please-upgrade-node": { @@ -10613,52 +2398,916 @@ "semver-compare": "^1.0.0" } }, - "pn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", - "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", - "dev": true - }, - "pointer-tracker": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pointer-tracker/-/pointer-tracker-2.0.3.tgz", - "integrity": "sha512-PURBF4oc45JPECuguX6oPL3pJU5AlF0Nb/4sZdmqzPNAkV4LGL9MJMqb0smWDtmQ0F0KpbxEJn4/Lf5ugN1keQ==", - "dev": true - }, - "portfinder": { - "version": "1.0.21", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.21.tgz", - "integrity": "sha512-ESabpDCzmBS3ekHbmpAIiESq3udRsCBGiBZLsC+HgBKv2ezb0R4oG+7RnYEVZ/ZCfhel5Tx3UzdNWA0Lox2QCA==", + "postcss": { + "version": "7.0.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", + "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", "dev": true, "requires": { - "async": "^1.5.2", - "debug": "^2.2.0", - "mkdirp": "0.5.x" + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" }, "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-calc": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.3.tgz", + "integrity": "sha512-IB/EAEmZhIMEIhG7Ov4x+l47UaXOS1n2f4FBUk/aKllQhtSCxWhTzn0nJgkqN7fo/jcWySvWTSB6Syk9L+31bA==", + "dev": true, + "requires": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "dev": true } } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", "dev": true, "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-import": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", + "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", + "dev": true, + "requires": { + "postcss": "^7.0.1", + "postcss-value-parser": "^3.2.3", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "dev": true, + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-modules": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-3.2.2.tgz", + "integrity": "sha512-JQ8IAqHELxC0N6tyCg2UF40pACY5oiL6UpiqqcIFRWqgDYO8B0jnxzoQ0EOpPrWXvcpu6BSbQU/3vSiq7w8Nhw==", + "dev": true, + "requires": { + "generic-names": "^2.0.1", + "icss-replace-symbols": "^1.1.0", + "lodash.camelcase": "^4.3.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "string-hash": "^1.1.1" + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "postcss-nested": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-4.2.3.tgz", + "integrity": "sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw==", + "dev": true, + "requires": { + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2" + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "dev": true, + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "dev": true, + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-selector-parser": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-simple-vars": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-simple-vars/-/postcss-simple-vars-5.0.2.tgz", + "integrity": "sha512-xWIufxBoINJv6JiLb7jl5oElgp+6puJwvT5zZHliUSydoLz4DADRB3NDDsYgfKVwojn4TDLiseoC65MuS8oGGg==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, + "postcss-svgo": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.2.tgz", + "integrity": "sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==", + "dev": true, + "requires": { + "is-svg": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + } + }, + "postcss-url": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-8.0.0.tgz", + "integrity": "sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw==", + "dev": true, + "requires": { + "mime": "^2.3.1", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.0", + "postcss": "^7.0.2", + "xxhashjs": "^0.2.1" + } + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "preact": { + "version": "10.4.8", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.4.8.tgz", + "integrity": "sha512-uVLeEAyRsCkUEFhVHlOu17OxcrwC7+hTGZ08kBoLBiGHiZooUZuibQnphgMKftw/rqYntNMyhVCPqQhcyAGHag==", + "dev": true + }, + "preact-render-to-string": { + "version": "5.1.10", + "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-5.1.10.tgz", + "integrity": "sha512-40svy7NDe5Qe0ymdsIC11f0hZb05MeTSUqqIaWJ5DEFCh/sF86KcpRW0kN/ymGYDVVUCfv9qFrVuLCXR7aQxgQ==", + "dev": true, + "requires": { + "pretty-format": "^3.8.0" + } + }, + "prettier": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.1.1.tgz", + "integrity": "sha512-9bY+5ZWCfqj3ghYBLxApy2zf6m+NJo5GzmLTpr9FsApsfjriNnS2dahWReHMi7qNPhhHl9SYHJs2cHZLgexNIw==", + "dev": true + }, + "pretty-format": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz", + "integrity": "sha1-v77VbV6ad2ZF9LH/eqGjrE+jw4U=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", + "dev": true + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rollup": { + "version": "2.26.11", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.26.11.tgz", + "integrity": "sha512-xyfxxhsE6hW57xhfL1I+ixH8l2bdoIMaAecdQiWF3N7IgJEMu99JG+daBiSZQjnBpzFxa0/xZm+3pbCdAQehHw==", + "dev": true, + "requires": { + "fsevents": "~2.1.2" + } + }, + "rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + } + }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, + "semver-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", + "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", + "dev": true + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/serve/-/serve-11.3.2.tgz", + "integrity": "sha512-yKWQfI3xbj/f7X1lTBg91fXBP0FqjJ4TEi+ilES5yzH0iKJpN5LjNb1YzIfQg9Rqn4ECUS2SOf2+Kmepogoa5w==", + "dev": true, + "requires": { + "@zeit/schemas": "2.6.0", + "ajv": "6.5.3", + "arg": "2.0.0", + "boxen": "1.3.0", + "chalk": "2.4.1", + "clipboardy": "1.2.3", + "compression": "1.7.3", + "serve-handler": "6.1.3", + "update-check": "1.5.2" }, "dependencies": { "ansi-styles": { @@ -10679,20 +3328,27 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { @@ -10706,2525 +3362,58 @@ } } }, - "postcss-calc": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.1.tgz", - "integrity": "sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ==", + "serve-handler": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.3.tgz", + "integrity": "sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==", "dev": true, "requires": { - "css-unit-converter": "^1.1.1", - "postcss": "^7.0.5", - "postcss-selector-parser": "^5.0.0-rc.4", - "postcss-value-parser": "^3.3.1" + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.0.4", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" }, "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "mime-db": "~1.33.0" } } } }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", - "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-convert-values": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", - "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-comments": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", - "dev": true, - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", - "dev": true, - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", - "dev": true, - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", - "dev": true, - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", - "dev": true, - "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "dev": true, - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-params": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", - "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "dev": true, - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", - "dev": true, - "requires": { - "postcss": "^6.0.1" - } - }, - "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "dev": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "dev": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "dev": true, - "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" - } - }, - "postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", - "dev": true, - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-string": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", - "dev": true, - "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", - "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", - "dev": true - }, - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "dev": true - } - } - }, - "postcss-svgo": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.2.tgz", - "integrity": "sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==", - "dev": true, - "requires": { - "is-svg": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-value-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", - "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", - "dev": true - }, - "preact": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/preact/-/preact-8.4.2.tgz", - "integrity": "sha512-TsINETWiisfB6RTk0wh3/mvxbGRvx+ljeBccZ4Z6MPFKgu/KFGyf2Bmw3Z/jlXhL5JlNKY6QAbA9PVyzIy9//A==", - "dev": true - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "dev": true - }, - "prerender-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/prerender-loader/-/prerender-loader-1.3.0.tgz", - "integrity": "sha512-j5a7vl7QjLiNL2+7ATHiTHIcV18xf8hDJUbkl66svHfuCMd7QV/0Iwu1Yp8JcRNt7UEKSxgJQ35WZSOaRCQhZQ==", - "dev": true, - "requires": { - "jsdom": "^11.11.0", - "loader-utils": "^1.1.0" - }, - "dependencies": { - "jsdom": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", - "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "acorn": "^5.5.3", - "acorn-globals": "^4.1.0", - "array-equal": "^1.0.0", - "cssom": ">= 0.3.2 < 0.4.0", - "cssstyle": "^1.0.0", - "data-urls": "^1.0.0", - "domexception": "^1.0.1", - "escodegen": "^1.9.1", - "html-encoding-sniffer": "^1.0.2", - "left-pad": "^1.3.0", - "nwsapi": "^2.0.7", - "parse5": "4.0.0", - "pn": "^1.1.0", - "request": "^2.87.0", - "request-promise-native": "^1.0.5", - "sax": "^1.2.4", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.3.4", - "w3c-hr-time": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.3", - "whatwg-mimetype": "^2.1.0", - "whatwg-url": "^6.4.1", - "ws": "^5.2.0", - "xml-name-validator": "^3.0.0" - } - }, - "whatwg-url": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", - "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "ws": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", - "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - } - } - }, - "prettier": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.0.tgz", - "integrity": "sha512-YsdAD29M0+WY2xXZk3i0PA16olY9qZss+AuODxglXcJ+2ZBwFv+6k5tE8GS8/HKAthaajlS/WqhdgcjumOrPlg==", - "dev": true - }, - "pretty-bytes": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.3.0.tgz", - "integrity": "sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg==", - "dev": true - }, - "pretty-error": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", - "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "dev": true, - "requires": { - "renderkid": "^2.0.1", - "utila": "~0.4" - } - }, - "pretty-format": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.8.0.tgz", - "integrity": "sha512-P952T7dkrDEplsR+TuY7q3VXDae5Sr7zmQb12JU/NDQa/3CH7/QW0yvqLcGN6jL+zQFKaoJcPc+yJxMTGmosqw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "ansi-regex": "^4.0.0", - "ansi-styles": "^3.2.0", - "react-is": "^16.8.4" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true - }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true - }, - "progress-bar-webpack-plugin": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/progress-bar-webpack-plugin/-/progress-bar-webpack-plugin-1.12.1.tgz", - "integrity": "sha512-tVbPB5xBbqNwdH3mwcxzjL1r1Vrm/xGu93OsqVSAbCaXGoKFvfWIh0gpMDpn2kYsPVRSAIK0pBkP9Vfs+JJibQ==", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "object.assign": "^4.0.1", - "progress": "^1.1.8" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "prompts": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.1.0.tgz", - "integrity": "sha512-+x5TozgqYdOwWsQFZizE/Tra3fKvAoy037kOyU6cgz84n8f6zxngLOV4O32kTwt9FcLCxAqw0P/c8rOr9y+Gfg==", - "dev": true, - "requires": { - "kleur": "^3.0.2", - "sisteransi": "^1.0.0" - } - }, - "proxy-addr": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", - "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", - "dev": true, - "requires": { - "forwarded": "~0.1.2", - "ipaddr.js": "1.9.0" - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.1.29", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", - "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "query-string": { - "version": "5.1.1", - "resolved": "http://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", - "dev": true, - "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "querystringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "raw-loader": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-3.1.0.tgz", - "integrity": "sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^2.0.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.0.1.tgz", - "integrity": "sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "react-is": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==", - "dev": true - }, - "read-chunk": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/read-chunk/-/read-chunk-3.2.0.tgz", - "integrity": "sha512-CEjy9LCzhmD7nUpJ1oVOE6s/hBkejlcJEgLQHVnQznOSilOPb+kpKktlLfFDK3/WP43+F80xkUTM2VOkYoSYvQ==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "with-open-file": "^0.1.6" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - } - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.2.tgz", - "integrity": "sha512-8rhl0xs2cxfVsqzreYCvs8EwBfn/DhVdqtoLmw19uI3SC5avYX9teCurlErfpPXGmYtMHReGaP2RsLnFvz/lnw==", - "dev": true, - "requires": { - "picomatch": "^2.0.4" - } - }, - "realpath-native": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", - "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", - "dev": true, - "requires": { - "util.promisify": "^1.0.0" - } - }, - "recast": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.16.2.tgz", - "integrity": "sha512-O/7qXi51DPjRVdbrpNzoBQH5dnAPQNbfoOFyRiUwreTMJfIHYOEBzwuH+c0+/BTSJ3CQyKs6ILSWXhESH6Op3A==", - "dev": true, - "requires": { - "ast-types": "0.11.7", - "esprima": "~4.0.0", - "private": "~0.1.5", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "reflect-metadata": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", - "integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==", - "dev": true - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", - "dev": true, - "requires": { - "regenerate": "^1.4.0" - } - }, - "regenerator-transform": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.0.tgz", - "integrity": "sha512-rtOelq4Cawlbmq9xuMR5gdFmv7ku/sFoB7sRiywx7aq53bc52b4j6zvH7Te1Vt/X2YveDKnCGUbioieU7FEL3w==", - "dev": true, - "requires": { - "private": "^0.1.6" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp-tree": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.10.tgz", - "integrity": "sha512-K1qVSbcedffwuIslMwpe6vGlj+ZXRnGkvjAtFHfDZZZuEdA/h0dxljAPu9vhUo6Rrx2U2AwJ+nSQ6hK+lrP5MQ==", - "dev": true - }, - "regexpu-core": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", - "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.0.2", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" - }, - "dependencies": { - "regjsgen": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", - "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", - "dev": true - }, - "regjsparser": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", - "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - } - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "renderkid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz", - "integrity": "sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk=", - "dev": true, - "requires": { - "css-select": "^1.1.0", - "dom-converter": "~0.1", - "htmlparser2": "~3.3.0", - "strip-ansi": "^3.0.0", - "utila": "~0.3" - }, - "dependencies": { - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } - } - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", - "dev": true - }, - "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", - "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", - "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - } - }, - "request-promise-core": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", - "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", - "dev": true, - "requires": { - "lodash": "^4.13.1" - } - }, - "request-promise-native": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.5.tgz", - "integrity": "sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU=", - "dev": true, - "requires": { - "request-promise-core": "1.1.1", - "stealthy-require": "^1.1.0", - "tough-cookie": ">=2.3.3" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, - "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", - "dev": true, - "requires": { - "path-parse": "^1.0.5" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", - "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", - "dev": true - }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", - "dev": true - }, - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, - "requires": { - "glob": "^7.0.5" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "run-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz", - "integrity": "sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==", - "dev": true - }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "rxjs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", - "integrity": "sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sane": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", - "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", - "dev": true, - "requires": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "lodash": "^4.0.0", - "scss-tokenizer": "^0.2.3", - "yargs": "^7.0.0" - } - }, - "sass-loader": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.3.1.tgz", - "integrity": "sha512-tuU7+zm0pTCynKYHpdqaPpe+MMTQ76I9TPZ7i4/5dZsigE350shQWe5EZNl5dBidM49TPET75tNqRbcsUZWeNA==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.0.1", - "neo-async": "^2.5.0", - "pify": "^4.0.1", - "semver": "^6.3.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "saxes": { - "version": "3.1.11", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", - "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", - "dev": true, - "requires": { - "xmlchars": "^2.1.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "scoped-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/scoped-regex/-/scoped-regex-1.0.0.tgz", - "integrity": "sha1-o0a7Gs1CB65wvXwMfKnlZra63bg=", - "dev": true - }, - "script-ext-html-webpack-plugin": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.4.tgz", - "integrity": "sha512-7MAv3paAMfh9y2Rg+yQKp9jEGC5cEcmdge4EomRqri10qoczmliYEVPVNz0/5e9QQ202e05qDll9B8zZlY9N1g==", - "dev": true, - "requires": { - "debug": "^4.1.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "scss-tokenizer": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", - "dev": true, - "requires": { - "js-base64": "^2.1.8", - "source-map": "^0.4.2" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true - }, - "selfsigned": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", - "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", - "dev": true, - "requires": { - "node-forge": "0.7.5" - } - }, - "semver": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", - "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", - "dev": true - }, - "semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", - "dev": true - }, - "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.7.2", - "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", - "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", - "dev": true - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - } - }, - "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.1" - }, - "dependencies": { - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - } - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "shebang-regex": "^3.0.0" } }, "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "shelljs": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", - "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "simple-swizzle": { @@ -13244,566 +3433,118 @@ } } }, - "sisteransi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.0.tgz", - "integrity": "sha512-N+z4pHB4AmUv0SjveWRd6q1Nj5w62m5jodv+GD8lvmbY/83T/rpbJGZOnK5T149OldDj4Db07BSv9xY4K6NTPQ==", - "dev": true - }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", "dev": true, "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sockjs": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", - "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", - "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" - } - }, - "sockjs-client": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz", - "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==", - "dev": true, - "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "faye-websocket": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", - "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-list-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", - "dev": true - }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, - "source-map-loader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", - "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", - "dev": true, - "requires": { - "async": "^2.5.0", - "loader-utils": "^1.1.0" - } - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "dev": true, - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, - "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz", - "integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==", - "dev": true - }, - "spdy": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", - "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, - "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, "stable": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", "dev": true }, - "stack-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", "dev": true }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - }, - "stdout-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", - "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - } - }, - "stealthy-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", - "dev": true - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true - }, - "string-length": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", - "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", - "dev": true, - "requires": { - "astral-regex": "^1.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=", "dev": true }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-bom-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz", - "integrity": "sha1-+H217yYT9paKpUWr/h7HKLaoKco=", - "dev": true, - "requires": { - "first-chunk-stream": "^2.0.0", - "strip-bom": "^2.0.0" + "ansi-regex": "^5.0.0" } }, "strip-eof": { @@ -13812,44 +3553,17 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - }, - "dependencies": { - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - } - } + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true }, - "style-loader": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.0.0.tgz", - "integrity": "sha512-B0dOCFwv7/eY31a5PCieNwMgMhVGFe9w+rh7s/Bx8kfFkrth9zfTZquoYvdw8URgiqxObQKcpW51Ugz1HjfdZw==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.0.1.tgz", - "integrity": "sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true }, "stylehacks": { "version": "4.0.3", @@ -13862,67 +3576,40 @@ "postcss-selector-parser": "^3.0.0" }, "dependencies": { - "postcss": { - "version": "7.0.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.16.tgz", - "integrity": "sha512-MOo8zNSlIqh22Uaa3drkdIAgUGEL+AD1ESiSdmElLUmE2uVDo1QloiT/IfW9qRw8Gw+Y/w69UVMGwbufMSftxA==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", "dev": true, "requires": { - "dot-prop": "^4.1.1", + "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } } } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" } }, "svgo": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.2.2.tgz", - "integrity": "sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", "dev": true, "requires": { "chalk": "^2.4.1", "coa": "^2.0.2", "css-select": "^2.0.0", "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.28", - "css-url-regex": "^1.1.0", - "csso": "^3.5.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", "js-yaml": "^3.13.1", "mkdirp": "~0.5.1", "object.values": "^1.1.0", @@ -13932,793 +3619,67 @@ "util.promisify": "~1.0.0" }, "dependencies": { - "css-select": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.0.2.tgz", - "integrity": "sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ==", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "boolbase": "^1.0.0", - "css-what": "^2.1.2", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "color-convert": "^1.9.0" } }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true - }, - "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { - "boolbase": "~1.0.0" + "color-name": "1.1.3" } - } - } - }, - "symbol-tree": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz", - "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=", - "dev": true - }, - "tapable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz", - "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "temp": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", - "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", - "dev": true, - "requires": { - "os-tmpdir": "^1.0.0", - "rimraf": "~2.2.6" - }, - "dependencies": { - "rimraf": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", - "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", - "dev": true - } - } - }, - "terser": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.2.tgz", - "integrity": "sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz", - "integrity": "sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^1.7.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "webpack-sources": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.0.tgz", - "integrity": "sha512-1e4Cxgqfl8vnDhXMMpegX7JWWP7HwV8Kp8/Oefs6EG52bRtOR9vuOXM1Gl1vy6NwHfUxHeuR6ElD4HamuRPO0A==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - } - } - }, - "test-exclude": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", - "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", - "dev": true, - "requires": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "dependencies": { - "find-up": { + "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "textextensions": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.4.0.tgz", - "integrity": "sha512-qftQXnX1DzpSV8EddtHIT0eDDEiBF8ywhFYR2lI9xrGtxqKN+CvLXhACeCIGbCpQfxxERbrkZEFb8cZcDKbVZA==", - "dev": true - }, - "throat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", - "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "thunky": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", - "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "tmpl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" + "has-flag": "^3.0.0" } } } }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", "dev": true, "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true - }, - "toposort": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dev": true, - "requires": { - "punycode": "^1.4.1" + "execa": "^0.7.0" }, "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "travis-size-report": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/travis-size-report/-/travis-size-report-1.1.0.tgz", - "integrity": "sha512-mAMeCPZ1TvUEXDvweVCAG/ek6KgPeVsmQYXtv6I85UoIUIFAI/mCXnN7vyvTSCjIa8B0+cYn5slvqNn9Jo0U0g==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "escape-string-regexp": "^2.0.0", - "glob": "^7.1.3", - "gzip-size": "^5.1.0", - "minimist": "^1.2.0", - "node-fetch": "^2.3.0", - "pretty-bytes": "^5.1.0", - "typescript": "^3.4.4" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "true-case-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", - "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", - "dev": true, - "requires": { - "glob": "^7.1.2" - } - }, - "tryer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", - "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", - "dev": true - }, - "ts-loader": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-6.0.3.tgz", - "integrity": "sha512-iICBD4PryhnGNdtaDva49UGODHFVcuK7p4+G8CP1TVcUhTC4hkcy4MC2dzWwALSnpOzfUfA/4u8B2F64wsMgjQ==", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "enhanced-resolve": "^4.0.0", - "loader-utils": "^1.0.2", - "micromatch": "^4.0.0", - "semver": "^6.0.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true - }, - "tslint": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.19.0.tgz", - "integrity": "sha512-1LwwtBxfRJZnUvoS9c0uj8XQtAnyhWr9KlNvDIdB+oXyT+VpsOAaEhEgKi1HrZ8rq0ki/AAnbGSv4KM6/AfVZw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - } - }, - "tslint-config-airbnb": { - "version": "5.11.1", - "resolved": "https://registry.npmjs.org/tslint-config-airbnb/-/tslint-config-airbnb-5.11.1.tgz", - "integrity": "sha512-hkaittm2607vVMe8eotANGN1CimD5tor7uoY3ypg2VTtEcDB/KGWYbJOz58t8LI4cWSyWtgqYQ5F0HwKxxhlkQ==", - "dev": true, - "requires": { - "tslint-consistent-codestyle": "^1.14.1", - "tslint-eslint-rules": "^5.4.0", - "tslint-microsoft-contrib": "~5.2.1" - } - }, - "tslint-config-semistandard": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/tslint-config-semistandard/-/tslint-config-semistandard-8.0.1.tgz", - "integrity": "sha512-iiBzHGchSnU7qgncqqrmE4AYbzpH1Zap8uEnLimRqzJJQaAUUYA4qKApPpjuAQwIrNMaCaM5YaWPFtketD6kpA==", - "dev": true, - "requires": { - "tslint-config-standard": "^8.0.1" - } - }, - "tslint-config-standard": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/tslint-config-standard/-/tslint-config-standard-8.0.1.tgz", - "integrity": "sha512-OWG+NblgjQlVuUS/Dmq3ax2v5QDZwRx4L0kEuDi7qFY9UI6RJhhNfoCV1qI4el8Fw1c5a5BTrjQJP0/jhGXY/Q==", - "dev": true, - "requires": { - "tslint-eslint-rules": "^5.3.1" - } - }, - "tslint-consistent-codestyle": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslint-consistent-codestyle/-/tslint-consistent-codestyle-1.14.1.tgz", - "integrity": "sha512-UxGRX2fF5LpZtqYpuPFaIva+2D7ASX3pTVw41yis6Hmw7PPA3cBnFEX1jqRsnyxGrca6mHxz7xDnwCHtOjWJMQ==", - "dev": true, - "requires": { - "@fimbul/bifrost": "^0.15.0", - "tslib": "^1.7.1", - "tsutils": "^2.29.0" - } - }, - "tslint-eslint-rules": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/tslint-eslint-rules/-/tslint-eslint-rules-5.4.0.tgz", - "integrity": "sha512-WlSXE+J2vY/VPgIcqQuijMQiel+UtmXS+4nvK4ZzlDiqBfXse8FAvkNnTcYhnQyOTW5KFM+uRRGXxYhFpuBc6w==", - "dev": true, - "requires": { - "doctrine": "0.7.2", - "tslib": "1.9.0", - "tsutils": "^3.0.0" - }, - "dependencies": { - "tslib": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz", - "integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ==", - "dev": true - }, - "tsutils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.0.0.tgz", - "integrity": "sha512-LjHBWR0vWAUHWdIAoTjoqi56Kz+FDKBgVEuL+gVPG/Pv7QW5IdaDDeK9Txlr6U0Cmckp5EgCIq1T25qe3J6hyw==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "tslint-microsoft-contrib": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/tslint-microsoft-contrib/-/tslint-microsoft-contrib-5.2.1.tgz", - "integrity": "sha512-PDYjvpo0gN9IfMULwKk0KpVOPMhU6cNoT9VwCOLeDl/QS8v8W2yspRpFFuUS7/c5EIH/n8ApMi8TxJAz1tfFUA==", - "dev": true, - "requires": { - "tsutils": "^2.27.2 <2.29.0" - }, - "dependencies": { - "tsutils": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.28.0.tgz", - "integrity": "sha512-bh5nAtW0tuhvOJnx1GLRn5ScraRLICGyJV5wJhtRWOLsxW70Kk5tZtpK3O/hW6LDnqKS9mlUMPZj9fEMJ0gxqA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "tslint-react": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tslint-react/-/tslint-react-4.0.0.tgz", - "integrity": "sha512-9fNE0fm9zNDx1+b6hgy8rgDN2WsQLRiIrn3+fbqm0tazBVF6jiaCFAITxmU+WSFWYE03Xhp1joCircXOe1WVAQ==", - "dev": true, - "requires": { - "tsutils": "^3.9.1" - }, - "dependencies": { - "tsutils": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.9.1.tgz", - "integrity": "sha512-hrxVtLtPqQr//p8/msPT1X1UYXUjizqSit5d9AQ5k38TcV38NyecL5xODNxa73cLe/5sdiJ+w1FqzDhRBA/anA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, - "optional": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "dependencies": { - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, - "requires": { - "mime-db": "1.40.0" - } - } - } - }, - "typed-css-modules": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/typed-css-modules/-/typed-css-modules-0.4.2.tgz", - "integrity": "sha512-8L6efZplgnraEw1RWz1Nc6swfLm6PAawivvdwFhzkFa3CJu+cPbK9712i4CAAf+JA0/Ufe19iDTPIk1WSpoz/w==", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "chalk": "^2.1.0", - "chokidar": "^2.1.2", - "css-modules-loader-core": "^1.1.0", - "glob": "^7.1.2", - "is-there": "^4.4.2", - "mkdirp": "^0.5.1", - "yargs": "^8.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "chokidar": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.5.tgz", - "integrity": "sha512-i0TprVWp+Kj4WRPtInjexJ8Q+BqTE909VpH8xVhXrJkoc5QC8VO9TryGOqTr+2hljzc1sC62t22h5tZePodM/A==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -14747,281 +3708,115 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", "dev": true }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "mem": { + "is-stream": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, - "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "path-key": "^2.0.0" } }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "dev": true }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "shebang-regex": "^1.0.0" } }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "yargs": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", - "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "camelcase": "^4.1.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "read-pkg-up": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^7.0.0" - } - }, - "yargs-parser": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", - "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", - "dev": true, - "requires": { - "camelcase": "^4.1.0" + "isexe": "^2.0.0" } } } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "terser": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.1.tgz", + "integrity": "sha512-yD80f4hdwCWTH5mojzxe1q8bN1oJbsK/vfJGLcPZM/fl+/jItIVNKhFIHqqR71OipFWMLgj3Kc+GIp6CeIqfnA==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", "dev": true }, "typescript": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.3.tgz", - "integrity": "sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.2.tgz", + "integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==", "dev": true }, - "uglify-js": { - "version": "3.4.9", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", - "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", - "dev": true, - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", - "dev": true - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, "uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", @@ -15034,94 +3829,22 @@ "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", "dev": true }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz", - "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, "unquote": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", "dev": true }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "update-check": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz", + "integrity": "sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==", "dev": true, "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0" } }, - "untildify": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-3.0.3.tgz", - "integrity": "sha512-iSk/J8efr8uPT/Z4eSUywnqyrQU7DSdMfdqK4iWEaUVVmcP5JcnpRqmVMwcwcnmI1ATFNgC5V90u09tBynNFKA==", - "dev": true - }, - "upath": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", - "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", - "dev": true - }, - "upper-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", - "dev": true - }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -15131,147 +3854,16 @@ "punycode": "^2.1.0" } }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, - "url-loader": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-2.1.0.tgz", - "integrity": "sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "mime": "^2.4.4", - "schema-utils": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - }, - "schema-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.0.1.tgz", - "integrity": "sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "url-parse": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", - "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - } - }, - "url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", - "dev": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, - "utils-merge": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true - }, - "v8-compile-cache": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", - "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", "dev": true, "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" } }, "vary": { @@ -15281,309 +3873,33 @@ "dev": true }, "vendors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.3.tgz", - "integrity": "sha512-fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", "dev": true }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "isexe": "^2.0.0" } }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "dev": true, - "requires": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - } - }, - "vinyl-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-2.0.0.tgz", - "integrity": "sha1-p+v1/779obfRjRQPyweyI++2dRo=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.3.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0", - "strip-bom-stream": "^2.0.0", - "vinyl": "^1.1.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "vm-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", - "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", + "which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", "dev": true }, - "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", "dev": true, "requires": { - "browser-process-hrtime": "^0.1.2" - } - }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", - "dev": true, - "requires": { - "makeerror": "1.0.x" - } - }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", - "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - }, - "dependencies": { - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - } - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "webpack": { - "version": "4.39.3", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.39.3.tgz", - "integrity": "sha512-BXSI9M211JyCVc3JxHWDpze85CvjC842EvpRsVTc/d15YJGlox7GIDd38kJgWrb3ZluyvIjgenbLDMBQPDcxYQ==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.1", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", - "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", - "dev": true - }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", - "dev": true - }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - } - } - }, - "webpack-bundle-analyzer": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.4.1.tgz", - "integrity": "sha512-Bs8D/1zF+17lhqj2OYmzi7HEVYqEVxu7lCO9Ff8BwajenOU0vAwEoV8e4ICCPNZAcqR1PCR/7o2SkW+cnCmF0A==", - "dev": true, - "requires": { - "acorn": "^6.0.7", - "acorn-walk": "^6.1.1", - "bfj": "^6.1.1", - "chalk": "^2.4.1", - "commander": "^2.18.0", - "ejs": "^2.6.1", - "express": "^4.16.3", - "filesize": "^3.6.1", - "gzip-size": "^5.0.0", - "lodash": "^4.17.15", - "mkdirp": "^0.5.1", - "opener": "^1.5.1", - "ws": "^6.0.0" - }, - "dependencies": { - "acorn": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", - "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", - "dev": true - }, - "acorn-walk": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", - "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", - "dev": true - }, - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true - }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - } - } - }, - "webpack-cli": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.4.tgz", - "integrity": "sha512-ubJGQEKMtBSpT+LiL5hXvn2GIOWiRWItR1DGUqJRhwRBeGhpRXjvF5f0erqdRJLErkfqS5/Ldkkedh4AL5Q1ZQ==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "enhanced-resolve": "^4.1.0", - "findup-sync": "^2.0.0", - "global-modules": "^1.0.0", - "import-local": "^2.0.0", - "interpret": "^1.1.0", - "loader-utils": "^1.1.0", - "prettier": "^1.17.0", - "supports-color": "^5.5.0", - "v8-compile-cache": "^2.0.2", - "yargs": "^12.0.5" + "string-width": "^2.1.1" }, "dependencies": { "ansi-regex": { @@ -15592,98 +3908,12 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -15702,534 +3932,18 @@ "requires": { "ansi-regex": "^3.0.0" } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, - "webpack-dev-middleware": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.0.tgz", - "integrity": "sha512-qvDesR1QZRIAZHOE3iQ4CXLZZSQ1lAUsSpnQmlB1PBfoN/xdRjmge3Dok0W4IdaVLJOGJy3sGI4sZHwjRU0PCA==", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.2", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - } - } - }, - "webpack-dev-server": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.8.0.tgz", - "integrity": "sha512-Hs8K9yI6pyMvGkaPTeTonhD6JXVsigXDApYk9JLW4M7viVBspQvb1WdAcWxqtmttxNW4zf2UFLsLNe0y87pIGQ==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.6", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", - "express": "^4.17.1", - "html-entities": "^1.2.1", - "http-proxy-middleware": "^0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", - "ip": "^1.1.5", - "is-absolute-url": "^3.0.0", - "killable": "^1.0.1", - "loglevel": "^1.6.3", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.21", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.4", - "semver": "^6.3.0", - "serve-index": "^1.9.1", - "sockjs": "0.3.19", - "sockjs-client": "1.3.0", - "spdy": "^4.0.1", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.0", - "webpack-log": "^2.0.0", - "ws": "^6.2.1", - "yargs": "12.0.5" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chokidar": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", - "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "is-absolute-url": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.0.tgz", - "integrity": "sha512-3OkP8XrM2Xq4/IxsJnClfMp3OaM3TAatLPLKPeWcxLBTrpe6hihwtX+XZfJTcXg/FTRi4qjy0y/C5qiyNxY24g==", - "dev": true - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - } - }, - "webpack-sources": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz", - "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "websocket-driver": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", - "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", - "dev": true - }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "requires": { - "iconv-lite": "0.4.24" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "whatwg-mimetype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.2.0.tgz", - "integrity": "sha512-5YSO1nMd5D1hY3WzAQV3PzZL83W3YeyR1yW9PcH26Weh1t+Vzh9B6XkDh7aXm83HBZ4nSMvkjvN2H2ySWIvBgw==", - "dev": true - }, - "whatwg-url": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "with-open-file": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/with-open-file/-/with-open-file-0.1.6.tgz", - "integrity": "sha512-SQS05JekbtwQSgCYlBsZn/+m2gpn4zWsqpCYIrCHva0+ojXcnmUEPsBN6Ipoz3vmY/81k5PvYEWSxER2g4BTqA==", - "dev": true, - "requires": { - "p-finally": "^1.0.0", - "p-try": "^2.1.0", - "pify": "^4.0.1" - }, - "dependencies": { - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "worker-plugin": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-3.1.0.tgz", - "integrity": "sha512-iQ9KTTmmN5fhfc2KMR7CcDblvcrg1QQ4pXymqZ3cRZF8L0890YLBcEqlIsGPdxoFwghyN8RA1pCEhCKuTF4Lkw==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0" - } - }, "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } }, "wrappy": { @@ -16238,339 +3952,26 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "write-file-atomic": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", - "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", + "xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "cuint": "^0.2.2" } }, - "ws": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.0.tgz", - "integrity": "sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "xmlchars": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.1.1.tgz", - "integrity": "sha512-7hew1RPJ1iIuje/Y01bGD/mXokXxegAgVS+e+E0wSi2ILHQkYAH1+JXARwTjZSM4Z4Z+c73aKspEcqj+zPPL/w==", - "dev": true - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "dev": true }, - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - } - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - } - } - }, - "yeoman-environment": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.3.4.tgz", - "integrity": "sha512-KLxE5ft/74Qj7h3AsQZv8G6MEEHYJwmD5F99nfOVaep3rBzCtbrJKkdqWc7bDV141Nr8UZZsIXmzc3IcCm6E2w==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "debug": "^3.1.0", - "diff": "^3.5.0", - "escape-string-regexp": "^1.0.2", - "globby": "^8.0.1", - "grouped-queue": "^0.3.3", - "inquirer": "^6.0.0", - "is-scoped": "^1.0.0", - "lodash": "^4.17.10", - "log-symbols": "^2.2.0", - "mem-fs": "^1.1.0", - "strip-ansi": "^4.0.0", - "text-table": "^0.2.0", - "untildify": "^3.0.3" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "yeoman-generator": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-3.2.0.tgz", - "integrity": "sha512-iR/qb2je3GdXtSfxgvOXxUW0Cp8+C6LaZaNlK2BAICzFNzwHtM10t/QBwz5Ea9nk6xVDQNj4Q889TjCXGuIv8w==", - "dev": true, - "requires": { - "async": "^2.6.0", - "chalk": "^2.3.0", - "cli-table": "^0.3.1", - "cross-spawn": "^6.0.5", - "dargs": "^6.0.0", - "dateformat": "^3.0.3", - "debug": "^4.1.0", - "detect-conflict": "^1.0.0", - "error": "^7.0.2", - "find-up": "^3.0.0", - "github-username": "^4.0.0", - "istextorbinary": "^2.2.1", - "lodash": "^4.17.10", - "make-dir": "^1.1.0", - "mem-fs-editor": "^5.0.0", - "minimist": "^1.2.0", - "pretty-bytes": "^5.1.0", - "read-chunk": "^3.0.0", - "read-pkg-up": "^4.0.0", - "rimraf": "^2.6.2", - "run-async": "^2.0.0", - "shelljs": "^0.8.0", - "text-table": "^0.2.0", - "through2": "^3.0.0", - "yeoman-environment": "^2.0.5" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "requires": { - "readable-stream": "2 || 3" - } - } - } + "yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true } } } diff --git a/package.json b/package.json index 47bd1b53..c4d09428 100644 --- a/package.json +++ b/package.json @@ -1,77 +1,46 @@ { "private": true, "name": "squoosh", - "version": "1.12.0", + "version": "2.0.0", "license": "apache-2.0", "scripts": { - "start": "webpack-dev-server --host 0.0.0.0 --hot", - "build": "webpack -p", - "lint": "tslint -c tslint.json -p tsconfig.json -t verbose", - "lintfix": "tslint -c tslint.json -p tsconfig.json -t verbose --fix 'src/**/*.{ts,tsx,js,jsx}'", - "sizereport": "sizereport --config" + "build": "rollup -c && node lib/move-output.js", + "dev": "rollup -cw & npm run serve", + "serve": "serve --config server.json .tmp/build/static" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^15.0.0", + "@rollup/plugin-node-resolve": "^9.0.0", + "@surma/rollup-plugin-off-main-thread": "^1.4.1", + "@types/node": "^14.10.1", + "comlink": "^4.3.0", + "cssnano": "^4.1.10", + "del": "^5.1.0", + "husky": "^4.3.0", + "lint-staged": "^10.3.0", + "lodash.camelcase": "^4.3.0", + "postcss": "^7.0.32", + "postcss-import": "^12.0.1", + "postcss-modules": "^3.2.2", + "postcss-nested": "^4.2.3", + "postcss-simple-vars": "^5.0.2", + "postcss-url": "^8.0.0", + "preact": "^10.4.8", + "preact-render-to-string": "^5.1.10", + "prettier": "^2.1.1", + "rollup": "^2.26.11", + "rollup-plugin-terser": "^7.0.2", + "serve": "^11.3.2", + "typescript": "^4.0.2" }, "husky": { "hooks": { - "pre-commit": "npm run lint" + "pre-commit": "lint-staged" } }, - "devDependencies": { - "@types/node": "10.14.15", - "@types/pretty-bytes": "5.1.0", - "@types/webassembly-js-api": "0.0.3", - "@webcomponents/custom-elements": "1.2.4", - "@webpack-cli/serve": "0.1.8", - "assets-webpack-plugin": "3.9.10", - "chalk": "2.4.2", - "chokidar": "3.0.2", - "classnames": "2.2.6", - "clean-webpack-plugin": "1.0.1", - "comlink": "3.1.1", - "copy-webpack-plugin": "5.0.4", - "critters-webpack-plugin": "2.4.0", - "css-loader": "1.0.1", - "ejs": "2.6.2", - "escape-string-regexp": "2.0.0", - "exports-loader": "0.7.0", - "file-drop-element": "0.2.0", - "file-loader": "4.2.0", - "gzip-size": "5.1.1", - "html-webpack-plugin": "3.2.0", - "husky": "3.0.4", - "idb-keyval": "3.2.0", - "linkstate": "1.1.1", - "loader-utils": "1.2.3", - "mini-css-extract-plugin": "0.8.0", - "minimatch": "3.0.4", - "node-fetch": "2.6.0", - "node-sass": "4.13.0", - "normalize-path": "^3.0.0", - "optimize-css-assets-webpack-plugin": "5.0.1", - "pointer-tracker": "2.0.3", - "preact": "8.4.2", - "prerender-loader": "1.3.0", - "pretty-bytes": "5.3.0", - "progress-bar-webpack-plugin": "1.12.1", - "raw-loader": "3.1.0", - "readdirp": "3.1.2", - "sass-loader": "7.3.1", - "script-ext-html-webpack-plugin": "2.1.4", - "source-map-loader": "0.2.4", - "style-loader": "1.0.0", - "terser-webpack-plugin": "1.4.1", - "travis-size-report": "1.1.0", - "ts-loader": "6.0.3", - "tslint": "5.19.0", - "tslint-config-airbnb": "5.11.1", - "tslint-config-semistandard": "8.0.1", - "tslint-react": "4.0.0", - "typed-css-modules": "0.4.2", - "typescript": "3.5.3", - "url-loader": "2.1.0", - "webpack": "4.39.3", - "webpack-bundle-analyzer": "3.4.1", - "webpack-cli": "3.3.4", - "webpack-dev-server": "3.8.0", - "worker-plugin": "3.1.0" + "lint-staged": { + "*.{js,css,json,md,ts,tsx}": [ + "prettier --write" + ] } } diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 00000000..e1c61146 --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,106 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import * as path from 'path'; +import { promises as fsp } from 'fs'; +import del from 'del'; +import resolve from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; +import { terser } from 'rollup-plugin-terser'; +import OMT from '@surma/rollup-plugin-off-main-thread'; + +import simpleTS from './lib/simple-ts'; +import clientBundlePlugin from './lib/client-bundle-plugin'; +import nodeExternalPlugin from './lib/node-external-plugin'; +import cssPlugin from './lib/css-plugin'; +import assetPlugin from './lib/asset-plugin'; +import resolveDirsPlugin from './lib/resolve-dirs-plugin'; +import runScript from './lib/run-script'; +import emitFiles from './lib/emit-files-plugin'; +import imageWorkerPlugin from './lib/image-worker-plugin'; + +function resolveFileUrl({ fileName }) { + return JSON.stringify(fileName.replace(/^static\//, '/')); +} + +// With AMD output, Rollup always uses document.baseURI, which breaks in workers. +// This fixes it: +function resolveImportMeta(property, { chunkId }) { + if (property !== 'url') return; + return `new URL(${resolveFileUrl({ fileName: chunkId })}, location).href`; +} + +export default async function ({ watch }) { + const omtLoaderPromise = fsp.readFile( + path.join(__dirname, 'lib', 'omt.ejs'), + 'utf-8', + ); + await del('.tmp/build'); + + const tsPluginInstance = simpleTS('.', { + watch, + }); + const commonPlugins = () => [ + tsPluginInstance, + resolveDirsPlugin([ + 'src/static-build', + 'src/client', + 'src/image-worker', + 'src/worker-main-shared', + 'codecs', + ]), + assetPlugin(), + cssPlugin(resolveFileUrl), + ]; + const dir = '.tmp/build'; + const staticPath = 'static/c/[name]-[hash][extname]'; + + return { + input: 'src/static-build/index.tsx', + output: { + dir, + format: 'cjs', + assetFileNames: staticPath, + exports: 'named', + }, + // Don't watch the ts files. Instead we watch the output from the ts compiler. + watch: { clearScreen: false, exclude: ['**/*.ts', '**/*.tsx'] }, + preserveModules: true, + plugins: [ + { resolveFileUrl, resolveImportMeta }, + clientBundlePlugin( + { + plugins: [ + { resolveFileUrl, resolveImportMeta }, + OMT({ loader: await omtLoaderPromise }), + ...commonPlugins(), + commonjs(), + resolve(), + terser({ module: true }), + ], + }, + { + dir, + format: 'amd', + chunkFileNames: staticPath.replace('[extname]', '.js'), + entryFileNames: staticPath.replace('[extname]', '.js'), + }, + resolveFileUrl, + ), + ...commonPlugins(), + emitFiles({ include: '**/*', root: path.join(__dirname, 'src', 'copy') }), + nodeExternalPlugin(), + imageWorkerPlugin(), + runScript(dir + '/index.js'), + ], + }; +} diff --git a/serve.json b/serve.json new file mode 100644 index 00000000..283758dc --- /dev/null +++ b/serve.json @@ -0,0 +1,13 @@ +{ + "headers": [ + { + "source": "**/*", + "headers": [ + { + "key": "Cache-Control", + "value": "no-cache" + } + ] + } + ] +} diff --git a/sizereport.config.js b/sizereport.config.js deleted file mode 100644 index 7b7546b7..00000000 --- a/sizereport.config.js +++ /dev/null @@ -1,14 +0,0 @@ -const escapeRE = require("escape-string-regexp"); - -module.exports = { - repo: "GoogleChromeLabs/squoosh", - path: "build/**/!(*.map)", - branch: "dev", - findRenamed(path, newPaths) { - const nameParts = /^(.+\.)[a-f0-9]+(\..+)$/.exec(path); - if (!nameParts) return; - - const matchRe = new RegExp(`^${escapeRE(nameParts[1])}[a-f0-9]+${escapeRE(nameParts[2])}$`); - return newPaths.find(newPath => matchRe.test(newPath)); - } -}; diff --git a/src/client/index.tsx b/src/client/index.tsx new file mode 100644 index 00000000..5f5b9068 --- /dev/null +++ b/src/client/index.tsx @@ -0,0 +1,59 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { wrap } from 'comlink'; +import workerURL from 'omt:image-worker'; +import imgURL from 'url:./tmp.png'; + +import type { ProcessorWorkerApi } from 'image-worker/index'; +const worker = new Worker(workerURL); +const api = wrap(worker); + +async function demo() { + const img = document.createElement('img'); + img.src = imgURL; + await img.decode(); + // Make canvas same size as image + const canvas = document.createElement('canvas'); + canvas.width = img.width; + canvas.height = img.height; + const ctx = canvas.getContext('2d')!; + ctx.drawImage(img, 0, 0); + const data = ctx.getImageData(0, 0, img.width, img.height); + const result = await api.mozjpegEncode(data, { + quality: 75, + baseline: false, + arithmetic: false, + progressive: true, + optimize_coding: true, + smoothing: 0, + color_space: 3, + quant_table: 3, + trellis_multipass: false, + trellis_opt_zero: false, + trellis_opt_table: false, + trellis_loops: 1, + auto_subsample: true, + chroma_subsample: 2, + separate_chroma_quality: false, + chroma_quality: 75, + }); + + { + const resultUrl = URL.createObjectURL(new Blob([result])); + const img = new Image(); + img.src = resultUrl; + document.body.append(img); + } +} + +demo(); diff --git a/src/client/missing-types.d.ts b/src/client/missing-types.d.ts new file mode 100644 index 00000000..27b1d41c --- /dev/null +++ b/src/client/missing-types.d.ts @@ -0,0 +1,13 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/// diff --git a/src/client/tmp.png b/src/client/tmp.png new file mode 100644 index 0000000000000000000000000000000000000000..cdc60432cd73e03bfbaaf97439ad376f99c3a6ef GIT binary patch literal 92167 zcmZVk1ymhNur>@MfndSi-Q6L$yX(f?-95OwThNWWySoMm?(Xgo;3Mapd*8eMf7a^V zJzZ5#bywF+SM{E71v&9=FxW64ARyl)B}9}!K)?W>r3ec0vnLsrF$@F*X4XPjSV2-) zm{7sd&eX!%1O!APJUR8Nit;jg$aE)1b`W}7(yvUyY!D?O1kpJ7eB=ZHA!sI|u&{4f zxV^Qx!~rHEA;d5-F+ZXpkOup5^{Y`tRDK`o3#uq=K;RpgZg^f+HZQJlZLTbv<@ijs z9aepS30#{%2V>O`gQN#oD~kN!prhyW5AlNu69C=vrw5^J(ink4KmaY7jPh%YZ3boK z+NjB>xWD}PP**;%AG8L^6-i3uGIS*$J1^lkf)!l`A#^ccv-fDSPiR+EL(2P>Pn*5> z+v1&ZbW}NtNM>I|^eMOE8;JjeVYm_~VP>8K0RB5#r7*n6vRKbHtiqJ&a^R$qgMzK7 zhpnmU0x7@fGTbBvm;h0MjQqRuGj=#N?QpBAH?8Fw zX!X+0>9nNNkm$z`O}~un>|{wSuUX%1XJzBifA42iQ+R?4G}lKs`$3QkF0KzQz|O(p z<%q(k*@s5#OU;luBw&Y~I)qwNc{qD!efBGB)a&~jWz=*|TP$Lg6}y@?v;g9X!m~AP z7?^+#H;9y;nGvMgkqF~<Aa#kElJG_Sfbfa6*W{ zEi_C>f?muog6?5pibS#!2+Se0MBl^UJp_Cepin^vg(VfJNq>+k@HOC5`%C4)9D%4H zyuoD$O$nyv=^o+#M))RpnajWkmS}*c@s-{Gu-7>a^lQK3l_4jZF63cv@Rex`ZdCw6 z|Kt_d6SX&NN?-LB(icLqjQ(lna5(jF_1N{$%KoMOtVY~S9E@*i1``~#5arR018s)sOPto!u3Sw} zS|OFaKYMh0Hu~TV`FHF&*|MmnurR_Rhk@H_JM7yJI~n%pExKzUwqIh0t#;_HFP<2A zU~{4w`YwkEhH?fUx4&NJKskQl4Z!Qoi4#CXgn=>%5)NVs;_Gwj!&HnnmvJTwLE;)f z8=xDoG{m{ac8KE?QzA}JSd&yNWS!+!;wp`I_P>j})0LB(5||RT&BN8Rt<-K^Q*4!X zd~?hh9W#clL*R<1C9)%5OjsR#9J!=Ijes7EOb{3?vM&0qJf)1U%r~mMU%8)tgZs>O zlYBFI<8xz&8U`~20~bsN;{js=GmKV6)uBd8ok96RS%<1lqelHxrK5l|UqrP|6-IeX zWu?$r;<#=W)}*5@ye@}Xyj9^j_r_x%lv;?b@I_(y_x*3n6Nr;s7`Z`};L?O5rF=&b zpty;Ks^+{Pn;4sVqtbmtnaVds7Db~nlM)-n??tX!=aFqO+``%AU5cHGo$@{^Mlm6& zkm>~*1(LfdLm09dMLDKz2kevRli~nOI@ro!zh0ZTeUU8F{RosWH9j@VnwZ)J| zx(1R4bxVTZ7Yq0^GxN~DkWS7PxTavT{9I|eq7g*~=yk$Q_@%8LNH#9p_SyizE zQv_*>U1me>8}GsI$zHzRdEE`e$$ZQI1_PG?hmVy2cN{_$@*VCwTxj%Nlu-0dGryMd6NFRw!A32y7E^^|1$M@#pVP{ zMk=G-YDbmFrZuh&vvrvb{u1>ndJaU@zU#Rb*){a->Lp_kIT}b z{bKwH=1EI$ZU1$7VtwLB>5Rq5@(90XLegTC!1URxLcSt%(=XX zIGDICbXV}op`)e?ETMr}foc#gkcojLfiwX*K^j3}LMuYszjA+_=OJKVG9c2LLxUSk z)SMf{_R03A27k06HZyt~?Dv@=H6cAC>BRpY0mg?C^NV?i+k|@}+Mv^gUxX=!Nk)~% zVnyFa(?ur_O-5>=xv}Ze{3O`S_#q!ASt5z4xz}udnBOZhJdi)I8Yzo$NZ-{VVkJ40 zFeilMwD-5l85LveIbC~&bz-gv;2)dZP2ky#!l3F0_ligvwXtwJ{s zSR+BHbI@jeSZAPEQz8ZzjuELG{c1sGO6FxE-sSt=_UBzSO7*LnaCxG-TLqK0a*L_GP0vc3OQFm0sV_|p6(!wM z4WFxzR-WAUN}vBFSeF%L0s}JI`tnwj!N+6T<@4sFb;D+h*KV_++;uW?WX0&G2n)?U#X&V=y6wm_*zAD_zahZEgxp8f9IGde1jyv{n zNqnAgmXH#f)O^9d(&_T(4pF_M26Qu-!$0T6d5pT)KRaJNY^-+Zo_bGs)AQZ?aDNo& z@jswWEUOD_3FP{kqdKhO_9pUC+9g(ARCr)jnX3lCP+Zi!)YkKpc>R?E*&;a0=*)S2 zbx+bI4#26zMqn*vOU8u|Cll9u&$_!kH|ibcj+u+)csKkr{uAXl%HX8JZN$Mgx^83x zTUXq-(r4FYbtIE^=CR~rkiV_&eHpf_DQRM3=j`tYB;-l zxwWSLQ0OXH8sm-O=cS=@cITe&@o$sGaf<3+)eYJ%Z7XZ%OFlas!<%w-(Nsmwz@`e17^I+CFWxxF>qto>W3Kd)kR_c6m`;$K25$UPO9fJ#K7FxAH&ep9`P$ z?}$glj^SJJSG}zNc_c4QymRih^LtDjp+JCK0MQsBjD>wZ;vbUx57d&#!B=xhJ+_ zxOQeoJ|pLZZ;s#1C;aWk+xnT)x8qOw^J0@-?vQKq*1M|LF$<0SUDL`SKr++-Lpwiu){oW&W+f6GA|~e%>K}7WZ7R|KSD$mxHuisUKzQ7_Kbtlt&IW|;HrBRI-0r-@|8Q`Bw*PiB5EK5x;%voB ztRbsFC~W6wLdZtXO3z5l2SZ3m$m3{i%B>_K_MiCY9WSxDv$H)n1B08J8@(F~y`7^O z0}~e)7Xu?R12Z$-CkLIAhpn@LJDsf)$-f}~gCk<%WaMaJ?`&abOZXSpz|hXcnU|RO zucH6G{vD@@yT$+0Wb5?bv_2=u@R!2CM9;|Zzu2FmJb!z+6)fCMtTjX|Y(8!Fse_N5 zk(uWo{{KJ9|I_%dq^gsNqp+RLr=T<6|19O3nYHl7sXAs{B8c|0H=B z{?7dWSmIwZ|I_Mp<2n5f|c@ zFQ9^-apso;Fn?AefD>r_no$)JVm{kq*!bIjq#Ytc5gL4IrIZ^es2Qnesw7Y-uz(+g zHH3(W`Hh4{ijYW=KM*T5MD{d3aXw}A`92A31SR9VW_X}PfO`1awZ9tvQm{V}G9V?C z$nHN`l0BWsdC~vrCn6>ku_Br(i-Hzv*dzLHP!f<|g3QVKX(b3uaX)cb;7eI4q5e^A z5A%t`4e@I)VNYBjOzmbm{!Zbq2LHhypCcJ$9FMe*5^6x-E*y`8_&Yrbp}$Dmg%YW9 z1fNL7v3U)I{~^8nMe>0I29t_>A|cB~I7|M6BpUXKB+7XlX)yAM)K5E(`7e_1U!)IQ zNd$S&zepe%+Qk1NG4B4In}Yc5McX7m?;Y0I&_^{2+F%8 zX3D6a4JvMjS(|@!pksbQp)UoE**kxVjwb$Rq&T?GsY!)s#_>&XelnQiDp~wvZcxE3 z)X#Nvfyo^u8;$)O_FfLjao*?bpui&kS|`#V1!EgC*qp9UGL;DSug}BVJI zqfzMqNX-|}$Hl*-^fodYNKS(c`~`w${-2|M@rMZcfk-EJG%)aGE$|J~v6b=6HBsBc zzu{LqKixNrKZ>hC)O$rA3)47<4UUyR75TrVyMA|cbd1||Cg$K^Sc_R0A^rn|O0hD> z#GgJQ#_fdD{LgWjh-*s1Q@rd!zR)X@=(Kf{7ChU#b2EApi;S~KN<~H z%cg=ylhqK3l|4JJ8UgdHd;9w&-MMjvH0r9lDyvsv7~u5HQ*vC6;;!g*XY2rQ7WbqO zLc#efU6qm%{eN5x@e4XPSY(WOX{v{v`q!7X_9N`VeW_;mG{tp@eGRO^@9NNIy{Iw3g&s=BP_ zks9L!g?Q`IHgcM@XWtByC^TkTbkx+O+=hnV-kyTzRw)&NfVvj6z3&!-btJiitC#hEQ|s54 zS}FOR;@DgGUykXdrDlS6$5s5!QNi;6XE*^pl0-H7;c9yF7%Lf>n7dU0YrA%WfZ8F- zZTmmJzMFHmd@aC7z*2yWadX~rcZwtzj5C=QF{na;AQfDO+fW-Am4g0iQaVQHG1f3U zn`~5^JYJ^Rg6RO;BAR5MYak6)r)2z4nE9X4Sb}>3NCB0@*jQ&9Tx4P=z{^|s z0*`4N^R;^Lz`($jzWxng3~q~XEUfFEbQ^K^Qyp3}YIW9WmB0RTTuu#;7IwlyZF!(H12a z7O<^kw((G$0&baSfsq6zXd5aq1^1 zFOCD*!aOy`S-}Tsi{R0^f{6ZQE;(7MStS__Bfp~~s~nmR^WFi%&>k0bvxZ(HBVH~t zC3;U{P(zlG#V5;{<}3S<4Hv9*oQ_iL*$y}MIPJD?Fdbkl30Nti@;#5>zE{@5e*X7w z1u!DVY+v$czsI|8_Ns@N5wNf=#EIpMWDmU06tbTG?Q@@d3N2^| z{=P|DR#E@!wmLwaVvQU#b$>9gd9$Yr&o6X%UV3&}yy>d7XiL~|RSA=MSX&!8i zn|&CQhO7G@EPD@dQa$`A=EXc@%0>rO19mbPDd`ABC2g?rFFH|tMQ3@c(kA>9xezj~ zqt;C_bXQtPg*+$LXh}(Ph$-P?z;XpZa|Y-=wJwcu6LBWOoRB=ppCcO4(sLG5uTg# z#bN@MUmf4HP`;-ZEu^y(923^G&(KLfjO)4W^>t?YPpB@SEeYUlT7+go3UFbYw_iFE z!@Z5m^*1bPu!K;ZJ!XnxWT%qAD5%qxH8##K>`AIW)V$w2^?n%EGu*gNAHWAGk;#IeV%5h`8=MA(2uWSfwS)<< z{~K6+#-+8yadjf)m70>AjPPMvv@;RB?Bt8`CQrf*rsqrVZtk7B$Yh~KK0u{Y`)Hy% z^ZBt|>i(O2C4gbX7U44X!&jz}pb^{ms2A{z$l1XLo=zEw^J@>xoc-c)##|&iv_rN5 z_gV)uC;5bZvo}^tOA93gQk$tP>nx9VFZ%~C`n*9}>G~&3pGZX7Kc81yR)^ z)V)NV7s0R;rurMIe~nv{h9n`GKfgH_y+SM9((dw5W?Q%}wHdkwyig9gVl$FPr zdxi4|NoV!=q1NC~UJumKE%#_d>Ks^_Z9PV`WPT zvQ%k8>O+x7y54e-X@VzR5`(IBqLV6o@%uS z_S~0e*wHXTv6j+QX~mSRIcwmX|K;iOj%B5wsu&`}jEm!h2B4ablgl3@3jx%4#r0mG zkZK!sf$&(DM@p7ytz^uco`{RfQ$Vf-sw5KhLg_?pF!2vb#5H7v!5OEF{V zZuKE(2lm}yLr#@zhegO9Yc;4!Yc||D4%ScHtCVuij=1VG^={w85JOBnEB?RS*V!CR0+NH>=53s&gwA@?c4ipO%VT3ifPlM&IR0W zI86_h0l!5x8?K=NacJ48+sjqHYZH}(Equ`lDvKs$%L^b??Ak_hPxtoJ&qd(PwmCYx z5MT*c|9;6dq#9w{#M_hWP6K`bTN3kA(n>AvqCX_L++iDSF~6`(mjrO|E*6%eR;E?| z+dV0Ge9H*?ROzr(Kz=#At&RJQaMTxeMyd`v{^FnPh!AQ57K}=?0rJK3*O(s%SW_BNYVB-OP&s59d0VX0D{lLHv14u%N<1o~|83{DY zDkm#m;2zd9%|~mpE=`17W~R0@i3i{3)~+=aEhLnD_{;}KMI<=>%Rvs%{F8_Pyl{M% z<~Bqc+zt_BYPG|rD)U@_=i~F$?|m+ZE!YjM;is7T)(UXkp;yx^x2@v~dqgzgOpdyP zg+B5{oth)Bj@x2^Otc|MRl44KCVIp>bgU0ph@aFrG5y1x07%XgHRt&Fm>UWDD*K0O zqSkP71!$j?l zW1=}qezHg+k1HMVuI(~(s zG}&tTijb9uPA1!)fWU=HjR2(s=81z7fk@Folj~4pX%2EKURub?xdhRgdwt`Q9MEfg$X*u2E=q*n3fzWv@$1L+P$o+U{eIEZyo!kM zqT`g`Es3ry^F}_(BGSc4Jf`@f+2*Cljn#9EK6(f(dX1K7k^R=RzsLUgeCFN!XZutC zy>vzc1*8xwH>%{EaqZM9BqOII$keZ6(DtEF&>H1WRlQanI_^R-wu-duqA~!~ z#!kr!@j$*HJF}zEaFRZ|BggT|gP(+^GMVM1v=C1Uq(Y-Oga9pDJ z&8^4YfBOcI8+>v(Xu7jEiWF-|VW`Ym#Tj4!-%|rpA;RPEh3ldM%tA7$TC6|`tQ;6| zqs^zN&`Jln_$Ge7N4SmUH~3k}sFSfVhwTujTH8r%PAuW%si2vZ30kzfAcryb65}~R zW|crugVEYNVs{4GOafgWd1XRHHYISPdZg|6U(f>hg}Igi!lSl7eO@mnUYq5?>O88T+EjCzaZfVQNl7G2sPW4Z8ytZsIpZ|4zN6c6JoPK zPu>sD%%lPPcsf&dH(UIkmRoWZqH1;Z4$H6;(eJ2Xk-mf1Fdw2TCDF3>rXY3W15ST; ze{U2e31p$-1c*ASX-={728-6jSyKVsMH>Q0xxuUWaJgLJ#8&|6DP~Z2FwAy_^rxx0 z9c7T88Da+Y+wJOxNPjCS07JL$j)(e?$fZpptB6<~8*7)dftzSN#b9fe3*#7lJ3NiPjI6RUD%BYgD#2W#zyy@@V>pyRHYw&L2kZn?tZyU2dH?t#XjPiD;#`!56)PcM9h|VUmU7Vj-pB^RO5Y z62qmCb_H6sqznX&CW9qFg_7hdL9)l(J-i{zocXETH*neLBW&EAGErDZM?976W)cP( z@E9J7GHmQEZ0ufw=FXTGr;Wh+4IiQkDOA-~@_Ew%i}VUrPX`%)HLkmHeJxT?%ks)< zaa~>AqrEj>%oJLaK_w9yswM{l&()WnBW{~|H1&MW?^K@b9NA%5-HE%?+56X*e%p%P zcT+j$yX`MA;tq@VhyDRnpN9}sfj|6~U|(p`&`4pI>;F6^sN{a>G+*|BB3aO;)mj8u zficbm{gRMj-q?&Qtml?0R>o?TXsBVy!nYGg*C_;tq?|%Hq{;=E9+h#e+3mN_aD?l; zeG|D62|LY;uq@Na(mNjlid?jDVe3o1trU7Q>TplEk1e+5toLA$+e~oGT7`CakViNy zM}xUYsSl;%kh$V*`MgQrrLjBWnPbm_|PTE_|{+Z5~H`xu}CqU?{7bBYGF1te909yZTEuNlrePs3)XHYfmzxA3cqqajN=mmebVWN%H8^*X`kl zSG(ce$-L2JdlFyAxsYG}-dXTqlCll(=gSbuA^;?qX!GFkVC=f7ru>Ko!<57Z5s9!e zseDnc(1vEWK7c|P-q(likFGcNjrL>S7X3HRX!Gc~^8*}M!yiG^63zKJ7yU@p2yYFx z_bx6y{aIl~QFC>x^(EwbV^38|sOrD=)A+<9C0SP5+8ip%F?=>ahDz!Axw!-CvaF5G z;%1rkfF#6INtX8$ooq{ETi)vo4~F?GwU zK8DD0n_TSwq3if~dG(9!+xBj77t7)9r6<-YeK!frLc4G0w~rbnYk*?zNU!mimZcH? zvH7*NiV1}8b~xb+{iJ|))vsd={jpsRgOVtfZ`1FX2z=cP*NE0u_KTf4y|Zfrst4~; z7z}>9dROIBzp^EnyX6zoRUmnXxU3vAYOb&(@w~KVkt;!F*5u=r8V4x=Fa7%DDhEDq z)<+!SYLGg94+XLk&bE)m4VSg0&I4hP&7{I9sE=olayz73Z?uy*IXVf{9|X(LmCG;^Q?M$J=t zO8(mgull2y!a5e9mTI*9?!H`YvCaABldU6FI#uyPovDRV5rovUE>ha#HI|^|i&gvf zN%?PQb~;hRCvrPIk6aYk^$5?B>joFYn~~yEUAVEqUab)Fc77nzL1w{7@!3yM&OBZO zUGLtht~YHA@837N9e<9bq?@C~nXmgfiku!LK5loV-Z=~qlq$C2Zu%aftB`(6%o9E3 zx0u->_G{eNxsv2@-t~MVr1DLK+K?pX%;i=N@xpI|ZIldL{|!P$Hv==yO{s+*t&$-s zty$|Vj4lpLEl=Fe7cnxygWau$X?u-}KP4r>@Ap06g#*miW(l6GjPbX@2S(LnoA50B zx?&t^$zbG+&x061cyu9}+#O0A28Y#&7+=hezIpLnsz1M@gEy*iK!`b8jl9SMVRnMi zZ!{yx=GKaV!)M{9oZAtX(}k~-reQK3?YEa_IJ>usQv=|g)J|305xR;twWN=vY%|NS z@^or9Ta>=Ngpk=EOuefEjhl?IG$wgx7%#GLb8eY^^%!*hY&defhsb{V;HPjVg2Nt* zI+FalKJ$w+Z?w#oQO)1Cdne)Z`nWa7P1Uuh*z55Mdnluj>FS8Xe862t>nj-YwmFa2VryG6%)M!wU?p z5_W5L#Dh-=lg%w`0-gUhuJ6PhCzu}E5YF_}2A_91qT3=ix0O92^y6M)F3vo=X-sWYVU@K5#Uzb+g1U93uNvg&Dyipoff$W4HMgd!akiWDy>MTyI8tC3mJ}d=DspP%_UC&Ott4;c!o{%NaR2uPM$g~O zL&rZkndCaF-%<762CERY=bs)Py8|Nj3|Wi6C)Yc7=7^j=AkLHx@eWk7i`q*ABGpc7 z#UOL$(29}ZvW+o~`=3XPG~jo6~A(JHteXt-yLKFq|P6)MxernajbY5jMti9O0fnau6D7sa^-Mu*B zeS&PV-HaYeac!BGJqppCt${yu5*$2Pc{0r$T3`LeIg$owykPP}W3Mg`s&0m6csn-1 zm<)?w3W1-oUt(JwG$W@+%uJgv*N*WOp# z1+9+KnfJWFHg6$6*v+!@1?jAAY^6a%v5@T1uLj*WvNt$bGrYNQcw&7(X@T?k-i9hp zyf>fwg1>$(B^nO#P9I$AZ~!(DtX8q7G;^jf!V5@ZU6VeXE~*W6k~c+*4EsV7H{)6h zdBw6T*8m(9>k2^|rN`v{&}FBD!dJQ4+Fs16|GbXq81tmnTK^GbK-BN^=Vr*u#JHeE zu3P-FSBG=9u-RaeuD_0D!Ja7kcyi0Fz~sZAq509`QPJf@tx7;t5jTKo^?VrQ*uttW zo@99I=A^I}pfGvO5PQ*mjEzwFPM;b&El5vY7U3R($&9W#99OFzbyuoU3t1lScXn`W z9c+bb?t9?n?%nL$9j)#Ish*QQuA%wfE++%xX`{fcr#!pX6fG|%j}T3D zuJ*v`dbU@X(=qF|zlPBYJty{MUjs1QHRpl}AHq+yn1{hI+jy@v*_a%;O3;B(?qtYa z2_Goy{^YbdXVh~9)*eY;1Dtd5pL}rI+ICtieK&oYaJo);_TbOvQtMwhNWX=aR@~v* zDI4C{&Az(zs6ltyXza$|_k3=Kio}^-f8G5hghRvUaB8C=yQZ?f)K&IcdhYxa>D(?i zeYz-f8l&BYE@S6Xxm%}iQ&PGC`*;Nh%P}-OMX&^}JjEf)-k6CZ>4y;hdZ;U8I|4#W zyrNnN5rG9lrMibR1;B>=-AJY!-ES5(K0hfir8}-1o&vJ~m>?=IQ-emHjc=9>-Cp+t z$b|Wm7yEp^0TsOiknkBazellHTau3CdI3hj2Jf%X78UuW zjg;~>r~`nmswX)L@nUr?1XNJjTRz_|OjN%49PGt`(CVNobF+k&8jdoHWrmq!9$MV= zxpDY@;YYwI$zHv>$>cCE6vTUO+vxFWUXLn%XRn^fe^!u}ySg|4Y9;faBC#nIA9bXmc8m6XX%X5?6ZbC}+?$6CoD|<6o-+qmX zdG?rR&ls+#dGZwg2}kAi-oU4eL4wHMHD}$`^#B4MCkFP!U)jG8F8da8-oEg!##4%s zV-UQq(Jj^4-oWa`2fj`7^%9!)uP{DO;V`r!5wyGZ7lLf3P+Sgi=*>#5&wt!WZXM_B zP@Mht<1DZ^95>E>!7%pHm!2l9$c=4Zu0#x>cB0& zER#ELqq%y{q!+FYXP{ow?MVI-=#5h{RM~7hM1#POM2uWE(U5F6z}u`ByTS;{q-RxT zwldj%gwEsqb|VpSEg(2Kq1drDE;##5HKeaic)*ZYX?3(!-=r2lq~YCY6! zrxSbFbq&S(byE_FPX8k@cB|Rzx06DQyx(~uG_9&Fa$UP{(Al20e*GJ+$mf@t-MeG+ zkjEU;bE8wWeGAT=bPjQy-Pac05B};6qfpcBhm2j%K=EJs$wMD5E-HGOht5CayL_IO z14*5s-yv^K=!ev8J5LG?PZLti@%AG6nT!SvM#_K^DPlE3Uxd$bs@U*+U5Fq7Ecy-=z}JH#N*vBD^8nuYO}(_B*Y> z@+;xm*^TqB2gi1f%QXF2x_-)jG8j2Wxy-O%9xJ~pV9>=i!D1Q42tFlST5d7mYP#gi z+N#jSUF}}B)oZspboD;Qksl!QQ_QB@ioEf?wPbZVlTn%c^7ZsOo4|+pE-F*E2ih`J zujS-V!(kda@T<9E#2+Th%2x!w*y;B}0+cl>xob(}N=`Z%dhCr*yN&lpJ!GcJ6pjhr+WNN;UKNkAa?6|{iG}h4=#ZmqoH@jiC!FaLll7?o zVtzxLp@ypC-FZOHWA{~8cVj-Lj}mHadiUG3ymUz2UHF1NzU}Ro@NI>JN+z*e znAGmZs;mXcZ#F?s<#AlEFP&;0fBoIHVto}?IxqlG=oZ(%v4fbCy;RuC_Y< zxC5@oZqx+v$p1jqQQic_OJ}#Uh~UFJ=7^bIEisL9e*Q7I?tZ1ZURHQw-LdDX?Q`u3 zr~p;p<>Ps**GuaHinY6HfB)H&ioa-$3Ak-MrSIqWaVMdMsXO*HAB-{c!!RLR^?uWN z8W4pP`0)$@e5}UiSob7hryUPIeB$G|XS~D{2ASvBo!)GLXauS~*kSnI=aADVOu+g! zt$uyETC3dbQ{Lt)d)JF~8B0dL%k_9=alaZ31KO>tHg7LnIoW!Kp9Fq2S8cmTQ8!pl z5YlL6_8Ok!@7=8yqgBwdC7tOM7@oc?I!$7zc$4>z6;aRWrsKGI<_oM6?gFc56*a(6 zyTjFTxWCWoJ^1GAFw;D@+Jg7-)_+KnQg%Z_IccvMgm??_r+#|f>}577^3=8i31?cN zN|&G8wd-@ksAbDAADRec>X>_8`xx+XzhWSwJ*gUuy;#FN-i5~gd4AZl_6{AsAUWZH zI+Fo5*CG;`=6)0&ket%f-i`4>Y%(b8wh`{q5H;I6;bueMDb4L(d>eK4F?jxmL*x)I z_sj6PUK{?nbj;Ii`1EeA^!Io2d{IYKBF&IZ zS|N!E@Mv*~vyQ?E+eKPM-)X3}G{CStakBg*I*w5lGu3)-g+>w)5RqzfDr)ft;X%LU znUXseH_uoYn|ewk^v?-3WS{a@QqZ@t`6H*foq7M-UU=#e1QwfEgmXL+%25VW1y8;+ zRC-zY;)ssmPHHL>YkAO+(vI(zOcQknKTlt=TbV;jA|$FBK9&Z;NeO2yM87+&YbN6G z4koBH7-I=XlVJ}3dpcJ0Gz+4nw@6 zg?(p<@5$+uGEV7IoJ%Zo`sP+`hmc9g1FOcx`L2<8Oo^2;OYiRk;}%jcx9l7?_<8g# z30giDtG6PO<6~YjbcdoB*9?fQ35MqE67FgcYIoJY*>pWC^4uMV0bch`{q5duajJCD z9ajg*00cvRyiPb%IjEWF-w(|5?_Z2KwsHvAAlsooL?h>)0D$H~aRFw|bcoTGvBL}F@Tqv4>-`J(0mm@pMEw+pW-;0C3t2b5uxOVT0qyEH zRJ|9wK-zD>-W}l^dUB<{XD5)VWGr$vC>c`KaJ~=e zKyy$%-#fRbr=gIvjUf1E-jH#(;>P>;{o$t*6e53#gfxQqfurihqw%+Bt?T;DlGI8J zG%eeK{%D$Wh}Omx~SQ=-VY zJo2L|O1QMhQGpkVkMYIor~l13*|#}axA}^Nsd=ZK9`lmuQty69Yhdx;c#BW>mg17J z%|yUa3e`;nkvj5S|J)&ll-$;j7ge0~22=zT@ZCjumZn1NG3KtDP6~)Y>V%*VnRtL* zJ+%H>Ukl4_cgv3yd@fh35?!C&hjVsgM#%pf8jCN8p)Lxr07{uT9)ni3VPPKaoM6Jj zWG`bD2dE_izOfh#KBLWR=&Fker=X!zj}<$yi840hjwm7JU8^IBjihY&vGqw{eV_ce zr|U4H2A|^g3RK)~;EVpvEt%YXMJmRcZa$#f5iYohFaX^aLk8DVeCdaJS>E7)B)Zfs zBwg~Ydj0dH&d`!wXvApX&n&3lV9c34A`Me3EO#J=KR&p` z?X_UZ@m4;n+<@FGj0}+Ki(|)Q?-8Kt|BtgoPp|uzU$7@?Z#d4QuifO)aayfQ(UzLf zOC3r=_SA>J$^Wu>!dO2~N}~)4#c14Jej}}fYXh2=VYIYSo`{+`ex~63L+V{viNEX3ZHu=<@m^fFVHa^zYKVn=wR)lDjFOOTd8*rbo9N-6QMc4d_ zQcD1$kA&(orG6`h9Q^95K12;G^i$&tJVQsR9UE~TF&s3DyPD2)CvveP*|T(49k(C5 zJS85%ppzo5=Mk7W+P8^fe{ro>y$96}*`GZ&kf=cGio$gT{JUc8mjA>lRK!8?^j zl>JLSrI1M*Um4GdWfuMn_oSJK3()Rs*K^}j@0G`da;rzbn03e2+7mMEjBq%&6d=FR zY#0Z#*fn`baD?@@-;00Ul?Y4XlF==ci=)ts!49bkzGz$>d}lVCL}8UU{%$3COW({8 z>C7|PGo}+lL2&`B-I+HmUXp8?KCPOG2U;B#Wwq@&a8vCP&Ve6!1;bb8Hp0W2Gvyy;bKN zq)J=IwLjBa^3O!}tPMq>5N)`rt#WkZ8hzy%bTDSiJtpIh6rst7;S()3l*dv6Q#6W- z@r&&Ia&i9j8&CddP&qC@a&eGGALPBd1^HpW1}UrRIP@rkPg7Z~>0_0)g(1Q2ef51 z*rK5ySPqQsWA|ms@c1-zehcK~9hn*xhG=Ytadb-BjW36;-@?N+z7Q@tKE4!2mqZ6P z{#uZfUV1kjvYEk?tW_d-{ji03tE?z0|0T8WKK6Z&mJ6KBg%t4nLa9&^i9AqSG?s!V zKypusM9We;o_d=XXSmk$9BX?weMM5V4o#X6*}&oB66^cCzN_Y70_l+Y+aEWB|=OY1N^h$t1c+%2w7p8 zIh6ak4CNq0G7zgSx3$!U(qNPpPFXhj8fmxvZ0%931tUO=7kV+8%;`3TI}TO5aX!u-6SFDHrV{p z7f7$yUmkxrlQI5`^Qr`y4qJ2U#1Fql zV40&Y%u5sd>k)Z{Od;=?dp^bZFu>GRWUu$Af1h(_)XZ*CRm+GY^a~!4aC0B^Y!Gh* zcnNRUtB$|F7PMZgI3uLxPhjftJuPI#KZtA6_$p0t*$xt{_fpyxq3`CfQ6XqLispWn z!65e)k$A!_Lw|LOnqlsWHvKIOY9MUmog?Y&B-`~9Cm9SOthR}ru7TIs@}CzJmGhA| zLT@;K7}w~8+?c8jvB?rKT^kl4u5qgL9UnG!FvEr@Y-=1G2d1A?Fm#w{<@b})(|>pC zlDf}B81+si9Xe$#XMHAfl_~r?A_%hwipd);`wQLzS_pyzH$0BNn4j=7=&n8qXzlDU z3G8uh#hu>dByjuxjC|>@T6l^g-qz|6ORbjibSfS#Hjp4nngh&ExkJ7R7@#H&3fy)} zb^snjISbu)2F5G;zDiaoKo7llky+nvkhYcr6GQ~6&~&S;N98t@m$Z_lx#ye^YPznG z>S;h(ZG#!L7OYK3vzxZKFKL+~*8!I*qhbiG3Xrai((RJz^qyIEVp1Ylk}{n?np{X? zJoRmCM$58O@{2NR)70~YB z@3OV$%6_#$3t%=)Zf`bO-EEQFc0x3ZJBuA4YU+9suojeHC(-naRE21fPsKa%*@k)n zJ#^HnVGVgmNBk*twHfc-e~4aXcxMt-hJ2}os0b>xMr$p)=s z&!*#!Ez9O1f|XvtXR5hj0hmf_y$wInFoX~!col9F&7O*0W9%5E0Evn|0<@x5ad$%1 z;E%UyU)Ok{NBkJq0!cAZe5izugNKaZpp@$5H+4{w?o|^v5Th>D)ng;`1y7Z>;Olb-Y1rdt|Jus)8ja@fE6s%u8cT3p-Ii zPz=T-UtLU57n&Bg($FwnNr3^rsdlL@#!)xJJHT$qLD0Ga4~P8^*qsR)eLLcCD0D_< z7@n@kP$Cp=9A;j{G*&RzYMdfkO&5a!jv4DQ1-U&LxuxBaL&_}EAT9I^&ow;9ta}v| zr6i6*)=eD_`PhSc5%6}#@&;ITM_W;$qG_0K#4p#a7V=%;i|$ORCv~C9?6X#NV+Tk5 zl%fbG1-Gn1Nu27mRX1$E+?hMZdg~tlDhKzO*f##eM)^--=2_;Bd&OMKK}4eN8_t)# zF>+@NgyTZR|Tn{#GU!<*}S@Mtj9!~PL; zo(2k$Cim6-H_Y=m)Qm`tKd}RS8AkpQXMZG>gd4}_!i(fPoYQztV~>&-i-!A)5QsyuuCU0X(m$y_1RScTEP*JHFjn=wajb8_8 zXDXg^N3k-t+bC~9J_PhLYr?M{HsG?2j&!^_@yjtv{ZjsV89q0*{(${Ld&A|vT6M1) zNnSe0FNn8|!b!{&UcvQ!_E^M-FgLys-opyD^=w(hq;2?4R9v^ey z{LMM-3rP}J_B=CVq@(U@qv)xJ1@cozM`;yDq^cCs9K8`Z9|dvy6ZFMgZ&0It%x0Db zU7acHE@3(h3pcN1nJ#hX>nlzXF_&=SAjXV(BJsTMiXrqg@-@W@hd-+BpDThzhi9r% zTKhqrb5AZm&i)()36CnWlY%#)D(&f^oZIh)?i*(jh1HNa6 zTYfKcINT?bq(fwJ?$p%h0iVNl!r!v4NODi8^XRWd zv|iT5^)~W5@-J_bBF%I0Z7#f@^=tB|3~MK@Tdxx=?iCuLT1INoYwJSjShO5ZO^uCwS-eZlr%5CTlwFbkT6lI0X22<&(^D2f#qqOJ@ zy?wp3A=M0s>DYPvn0h`#CkT>%;Zy6P&j>sSo0(c7w5s{B`t2yXid1Kp>s9;ZC_VH* zkqi;2ek!@dhYF0u!k|c4a$sp@-yyYsl&nNLOu79f+tp|kd^4p!txokm0K)~S2Rq=Y zXZn_7y2qWWe0|l~e%op{2E7w=zg;CH7?)`-hvsHpE`)U z36aC5zh2tkB#u#2B!;x#f8RUuC9F{MlLUlB;i|_})R_JVo*gF;4jM(hyR<0w6XR69 zc%W3c;P#BABm|=6G=laj4nqWF2@R1I;r#Hb#UweV^W!ff^Jsr_UOJ6q=k)M z-LSDr(h>6f7!}v1+%WMSSj$&w?2v40cZ_~Se#HTRl?!koV;kIk%JO-G0v%)xjsVPI zSDCRyN0>_r#rRfC{BEU6qIZ3ZzTNM!HvjrY@O?zFxtJUUF8A^WztdURg*Jxfo;rW@ z>=UC|6JZu%W+G5@ut{$0yQGTOR5W2S>!q z2Tyhr5!NL%9&qlF&rypeiJen;)ghgA?llt`i3W}>vTSa?I1_01$tEezOnJH~Ro>dE zGISX?=R!DFn%x{NW~6Uhb~U?;RaRAmRe9Tz0Y=034)*{?;`ti6Bb ze)fMPQh6SCdwOLW(jG6M6(=TV0III8+}|NZtICp!(vOpi5r;qOmj)9NMogS^B@hfOF?u13CA0x})go~e4XXQpCh2jui%Zkh7MmG{10;TpTDLbTP@J3m zjY2_y^Lc_7cRV3I`{x+g19&rTkFgQglBdB1OR`O{OeH2MJ}I!=N;_~&&;?PGEhg?L z?kQp^nf2Am?ng0>uFufZ^!MEzMkVX|*(=sLpWJEBU;kqPJj7o3Z^`o1{*}_98kMkg zVkwVWPFK5_kMkiE;_^BWt*TzTF}wQP4hToeQW<-kar}oh(nUU+oK<`l{dlEdz{b=*nPv>FT{-o*cZ@>HHeRscF2hA&5!)*0R_;Ga`?RNu~T+WIFD%IpO z_f4UT+Y&tw9e}ZMgBQgT9^3M%)X>)8TUySLeQtE~hSk1pTk93X{MKt)P27(W+Cg{P zF(F^&*~l}uLW474)ipPiTuVhCb(D5tYIhP3&HFPf|2zSy>ZM_8SBKFifl$opCZ>-h zzUC2uK`32~4FB+jo5^!hcmK8@iyrsvEx~#d*Vd6-`pxs3o@>YjO+5mRTeNrPK9i~^ zpvy{6a$)kj5DX#HYkK)p`yex~qFv}-`hvarUtsR3vLDP|%v@Q8U{IVvDkjpW@EUKW zv4u0CEiEPfxYgpeILZ*uj*^$?)<^purbn(?zUH{^EqQqJJ{Pp#+l)Pum#6s?-Jd}- zDc#Ii<>T^g@`zMHdA592iip@CbgK)szRj}z-2NYJH zk@;fKZQANB+WH5_d*oCDqV`UXEc{|$wFCnyRLyjw&nSeiJka`r;w!d94mE& z_ZrkshsUrt>=3!Af+uuReR9LP9lEtj1r^P4{YVbiI;IyI#`JtO8HMI=meJ+7#2}(o zsHiU(TCu!^qx7f=w7nCccp=QN0J*Z_mh`&;H*j#oRS<3hmnbUN&yA=Us2WvYCGTdg z$nPbJ@$wQlyC0BJ*6`Ag!NV9y&MCOr1YZ~!Ml;Aio|xbKJ(AI4T7u02zq{~hxT`bU zT=uv#m#)L0zno~F`=`(NpUgM-_}+=?Pk&jkg&uu0cW7`wFYZBqIz6YmY4NDP{&o{z z2Ygcz%zatT84YkAo%pni(yCiyY|fV=)c+s)~0yD{Wo2_kn-acakAdU>3oZo$T98Br~^7) zZYZAv?SZR}3U#M`lSz5jP%CXzP`h@oN;ErhuQSstY)$7Q)=Q&P3>%glO=TRLvEi&5 zixT>q%FfOnSr}H8w;m-0>4QR~2NHw)AVeYq7sU26?)7ew`hfIryy5|c2CKvJ%F3Z4 zb{1Bn1Y9gR@#1lJvQ&6d7U3=zS=MXQ@#Er zxs&sKNR8n>j6^J+J2kB;|D`eGKBoTA`)D5bbP~i$B>kfj>r{eiHjD&lI;8f!?}O)F zDF)xb^^>UICbOz%y^YO2>rEiVX0%>-V6D@MFBUno90B8rGop)S`S!%m6E_0aHsT+O4;taCH-J!|BcPy`?d#!w;7%PSt zteiuw=cu@l-Ts$xLK7@Jh0cJz>L_)04vSu;4akpm-Bt>&CGRtu%{ErG^pOh^pd$XH z2RjPa#@JW@OGa3=;AJdi`1D+{u@cBfTqhjjA9yN3U=c`4|Z(rc6e8%vuTt|2M%Zz?EPugO-6|H;tyA~lyhc!T7zET?^RTg9RHwMM z8f!2df7{pyCp_=kE0EVW=zB``G1l{Z|B_mDfg`;{IZdwtpdg=;DlsUYufP6f^EYdG zHk34c+n2!pcq&{|VfF;BWT>kRg_!AQbF~mT5A|gAn7+ zEbB&MFMpNND}2wg7Ba_>NIe+2K!(NuI+e~%fHzV;_&j0w7Xw9y+r1LP&*pmj>8D^& zD2GkcoAYP&q>_pRxLc9LY8Faq#8RJTV*4oCIUcQ6T~}KHSqmLRLGK2u6Hv~7bK=$` z?0Bvuc2VU2XaLN|p9>*@s$Z?<@%_U5DMuR7%SjPnO^i=j?mf^MVRx)>)rkhufyHGrTS}3$WiioM_ExM1YzVI}ha$ zas=3FYLXvMXCsMM*=W7HK+kO(1&erCj7G42+)z9 ztR&ZXa!-a=9dx6SOUu1iPHk}{f@wWcNnpZEuF(`KXGr~8p7+W&A*e;C#D3Sti2eVd zdJ<6sl1X&oT4U$18i{NW%(yeYhbRrMla7oQ8irAn1Usth{I0h!4HnfJElRUe=ufya znMwTyTulqz3zA})^9+UstXkUGTLex?64(ibu8DAkmih*m|_zm(pb{uQ9IquN5J zAn_-uPN%7rsTs3=q0BKh$=Ktt?`F#NaPu{Y+&Iz(4@Z4=22cs0eQVt>QxBix|HRaS z`CqbtG%ciRs3pzJkM1@?!BI*aNV32}yF*}>8>vm2(^#3=ZNc3%n{#}IR>ag7s#Pyd zcbWR9u;C4O`8@V@=rjuihSdV?`FOdp3}mk#XCY>_m>Kc}C*KtN|E>|;Tr|w@PF3pI z!I9ElvHf+YH;)0F$Ia1O3u5mVL<(U_@RWY-z%pEy<}`jWas1457Yc67pVZ)2S^20t8Di z{8mh8V?`?0tPrkQ|0n!L>K|T45Jj2>FuS}e^GQt&fMGtn>37MwYpC|5mBA^?!VTAi z84Bg0gBO8Yyj1r^cN8$gb0AjTANj?C@{ZVTx;-T}wEnxxZR_PQ%P_ z9EuTVXNs*2lv&e^Z3q1}WDbA?rrD64`4p{2{LiXE3rscEFT=8O7&5@OAx-}7eeO}M z>=?hd6DnZOY(V5|%wy1RocoQcY?wMH4TuqStd&OJ*%?g}V+ZZ1TUr{1jY!GdJweqa>IG1T<55iq@-sj$FIt%u#ce{t_4UZ66BEN=Ro8|T$%u~b5m z%c0T_$vSG}uj>3xMhJ01UwRZHbQ@BOiH^0YQ;emrCNGq;a~M#v(FCLL;N(un@H}V1 zuCJ#rHFfZo+b2Of;Q`lEB8y~(q%#QmWNq$2bDbBi>CdYx0{64Hj*vp$dSa(sEG0DT zsi--cgmQ@g;P|W`KTNN-X)vZ~-!S}M-w8F9(N0KxLbsh#pMkM-X6)b*8ly=c8O3U6 z?Oy>GCexUVDfg;<$a?b#eqc)CX(Bi%?ct**B!h1IwP|n>2amA-l8A{G4wt}wLfCAX zBy;&GVfRpSP8i*LwJH+|-UUC=wvO24)76qZJd|7t2c2zJwV?T*BPls8;X|YhU$PJVULZYqI|JONX07d@Rrq(%Uv78FzGdbB1dd*3x^pxSvd^p|7 zLl1Otk%`K#H=gNU%>MP@?Z{S+N4Pgr<>nHkRT{&VZK}7l=}oH&U*;BeP4f6xL;256 z?g3s77;?BPxZuF%m%PR{O&z#0S#WD7LvK7#f}1M4nb zoLa$T%$c0Bkdjj{Eyc$&j)l!_5mx~ta`iJWpMk2>zbXIaj4q%`>i~)<&nDMa*%8bq z>(!#=p%Y9&OSHA#ZS4v4X1+6^l^aXcu+Q}S;| zzOrIb{IQ=dlg*4bKohNv=ffwjFwr6dD-UhgHA?mw?EX!ct?{O@c!l|mx>UoNIo0f( zGuiV6NCHl@{yQRdEljc)mT$6iy&M~Rv|`8xk(kkl_yrx#;BZBem;N>^)Rv;w%ZJwp6;fS@2BZaL+TAt2;Ijo_U7{aML5K2>{JdqM^D|Np$nNL<) ztrxksXZV%a4<0I2rJdTgHld7W-sDLfOt2Up&*ZHCmmp}MoQ&S$u-FzLZY3Bj8qBoQ zN;S_CIrFeQcj?{yEh*y5sk@|4%`{d3Re{WdgntEhRSM+j)uvDEE@qsW^wHK<2lFCY z&XZtVLR46hfW;(HI|^T~EQ-B-nS*Nm z?Gd_x5^}zYMSBwAsiGqP04)K7vBIP13>*Qp0x`qeVs7X0l6jF=4e4oh*w^K4($P3hjZc!3dapGxr&MT}4A$#fn->+FHfb@}I{&03POzGe0Bww`H5E=Z784eJ?KiZxEMhA$ zJhKEJ)Xs$HmH9j?Dw@a&6LcsQKM2Nf{J{L{ zI{Q3GJ-o0I4AVotDQPkE1!(xkwp5e2OX#G%CKtH!H$9{YPZ& zdVpcWHysGOYFUK5(n9}{@?nn4sTX~|kt}!$3J(kh!Z~_N%;?$Cadl5)atoKZ;wegT zx|DBnPqhDy9L#zjjH)6qRhcwCYSwaTEx{_?NOIRH+M-J7(WZqZ!O|+}%9_7Y-OF)` zqkQVDoODreXI`;4Q}xMmbl5>VxFxQQL4}noA~c^Zdv9W-;x_$q{1DBo9ueHB;PDR! zDUV6j6CHT!8)z8v>2 z(~a^uqK1WMOEg%Q$%aI+2V~7c75k4)PZDVMgbmx%6 z-W3{jK1|*ILLTMuMxzq*o(%>J&dl4Q83g zcq!b}`H>T;02T6BO&e-*DODSuxP%?pW2_5p*ZmhRCK#weDDp5ybxjP@;5u^y13Pt1 z%!E806-@(M1e#sJ5X+*KWSOvkG^=l)0-$6XF%%hFwB+KPYs-+|jCtp3z65NI4v58c zDf1xHjX6#JoehELmt6~}mMk9kxXwnRFM<>ksg9{Y4Vyf@GVw4+dZM156iakD(Z*-^ zN|vmT)0>&~iC*bgI7halA47=K9JpoO!;Z#{H?v_P+@V@9QK}m;rI2R*=~2gutaj2? zTQw_+2(1IQ9d~RrvdO((9<&N&_Ldq3J4)qHcIU9iD)u_d!~k%(X^&<9n?59B2SCX+ zV(iG~T01yE^4Km7w+F{6K`w*;7j%>WgmFoJfDE3Q~J?(#D(wRWQiX(`)y*Q%1YgS15}G@;FE zVkf~h4KgOQt6@(Br-mQs@HOYLCr|f>s7KTouhBT2HH`N!w->JG6y2X_n2$c262dNC zv6fG(nTne4!9q?mXC^=#^XM@j$ceSF`8#S=P;zHxi%~qw)8Um3YRCaVr_AY%n9)Nh zMlwj2dM>|$93mS*S5@oZY9jwjEj5T5$|LR~JMsSBDk-?V6QV5r~l@G~*M`o;+loe-(12%r^5j~~Y6?6>_j~PYOCb~JoB!oT` zHt_~(a-u(yAJMDEo6;p&)Q2337L_%O;Q1hSHAGKBT48~@;SIEAX#ZVSa_c~1Q2<$m z@%CtiM!)5!@#@lA`ogN+U?{`>>axLE9d~Z6fHN=6J z)zN>Bk%F_mcrF4$%BwVJaA%ru^BYi^t--V@JkLQ`(G{j&b`bg}2R3D?B8i`BS&CQIM`2US&}k*+x?{YYtl~0R-7)nP8RuH|r?- z00wgiI^AKQGJk9p^}*i=Nl5Ro{<|#k52fqO@)blF4ya!d`>&spEQ0P!Ibj2(--BW? z0G(>}KQLfnlysF3a4mJ#RC)ji=L!M)KMl0ULG)PN@dlwNGtjn2)Q0Tz|8@g|K=9e* zjPjYIQk1HhOs2!Ce-=I=0da+YI2hbifn4z>&L8X_(N_2aZ)?U(_krxi)Gku_Cn<&) zh};{gpk3~w6|Px6o_wSBuSaoyX!!GhajO|bv)vj=%l`+e3jQGOhKm09_Cfb$izsfS z`0tl z32G&=pbu)piq-!dK%4u+eB90%>SU;Z6!mG+?EkT!s6OgMzkq*j2H}675XK($JNfe#|AVBQ)!0& z6W2i%bb*(qweZU2LsNso!km9?Bq|Al6N~1odJuppY#xwCb`1Y)$PT(gHnU7yn-CSy zRJ*4pN%r3h4%QzVKa0p}GXiA7>$Hkf+6g{`Tabr#*h)roEl( zNjyQIF%kI!1kwLq*kA_<*rmIU0xg_O`A!Gf@lbq#k&x z6$PMd%l)y{#ZN7{=9+xvWAFeaO71J<+dLcPt~>_na#|5hxLZ4C58{PxX-(98qZ(mzhLgg&;M$(hcC6GJ0I~k1Pie!3I7^IRro}baPGJndVO!k7gS*T= zG4kREd447`s~ue5xQj2N9eV z+wA9GoV{oJ!DunYk(=&p@Qj>u7IM!})i!V5iCB-bZ^!F2q`GA<7!;1{A(k1G!{Xea zCZzm|HF&1~B9`;{_oA=I#Na|PTj=48OfXPBc>)sYS|Bu|hjei%9jTa&#f=KD1*Hm| zlzd+a79=6%La?Pt^DmlAWyPh{wudl&;D(-&FUI;~(3$Gbn1!M?oMo3G=4@>1FVWus zD}FCb4^!`t4RbSPLz{o@alV0veYG*;o%pNI-!Iyjcsim@@`?&D&-}eesT)AbPG~Kv zwhyM>DL{|VTB8?;=}J+X*>19S%J+A}dx+^P4{o8MWf)xNy4wZ{Zy5OZ{s_13djgC> z$n^@|FeDDZY|$`4y8&);a?(H4sif`j_b;mzHB<(-eMbV`wb);z&10Xmak;xq57E>c zj7l0jp1md)z8=*KM%1_C(UBZw_8KcwDYRtDvhj~T7wfvF8ThBTU;gpJ$UG5Z1@_IAOYvs5x{S@qC^ z`0yK#3Osrd^ruJz23Z@#ha%I!ZOfxsh_R}H%FJ{Qa`#lg@R0C3@?3CEk))tp{{DbY z0Edm{g)bG?Pb#)h%fzdiXkdNM>SB18!T@Qomfa&-R#W+2aFnd#UKgq+=9w4NKp7^)eGs7Ld&!*sc1=3jAKHz}`R4iQ zgt?z^0V*L1XCIPuJ570r*yA@&%K2t@D>h5gGTLs{yi#pdub}&nWmMH9XC4Q6*cA@u z(qVH`eq{=YN!X4#QS9WO3UIoLVN!{AVh?m_lv%zC4{ZPup}Of{b1#tMK=) z69pFwY|Gir@|Gj#Y>>rDc#=yr9=J!^@!HF<6^PFtjT2t^$jT3?4g8{w7D6U3aU6tA z6f#R(Mv1POlfETz_|h;Sisqsy{T8SzY~*2#X32^{u2+X)GMz1T?l znT(z$-V+kEQD=l4=KX47ijD}G$|C&ESJGd2&XdHqs{k0@9?D)P!xdDFhAA&}PqXSe zguEZmfuDa(a*gYjY5sYq+PEUC`OczdJk=9r3myAzPRQTDxdGRoVB(PWZg%<*HVm2`k#!1u>4P>dy_jIC%mp9;X;FD?%q zbif7!matp99SUakHWJqPl6-3dTKa;CZ^PgnX?AZS$Z8!|dAS#ifetME+MG~~4VwJq zp5yGTv>az8LjG&m24EI?yduaev}hHq8ppZ87H{9H5L^TChgT5Ao?qczdduF&Chq&K zpP+nz%pV|CWcJBpYtz#&^R+QDio8s&)WFpTK0i|9XuGrMPqtzHdI4Z@R(V5} z(-&R#kzNecgrRzBQ0Pu5_C<9Yn$l%uJ7OO8)~$!-7&z)3$fM7^dGOg0p0=R%A7nV2 zl(r3s!#I^&W(&m1&V8|vepo-d2&p z3xk=ZUoQkKUa%|;TGQ=)g;Qa9-ED}{9u4W|e%IPKjy^^{_=jUk$bFfZdJ$Vuk=IG3 z+Al9pqzZiF@6Xs30E`K2rV8YZQE^)_O(u-RtEIaBI15s#x!` z0hQ%{Sh#-QjF#?O;3Wsm_ipcy$Vv6vutg!@y%qQZ{$pCrn~wi3>U@}%fZJav9HLdC z#LIuq$_??V;9Lr-Agu`K;W&?wqQvCS;MocPB0CiE4ClPn?3DEgVyjd$2YTO0K$*6e z32UFvc30KzhfrK>y-O^|r@|ZGyt0{E^=dRz?dj%oK5bbquJ&q<9Yn%Z6A1)VNV#|^ zPpUmXIjLVE^gBml68>h8p!<~wh4N~N&VLnHL~tW%{%9zr!};j}O>0s1RHJ$A;$r(= zR0%LJJ)&oYuzrI&`hcl7G+N_o85q;;f%b!X32j#)p55h2jJZ9Y(Pm4mEG7>SN|*a; zAS3@HS;*0&N1q)rPt?=sFgcwQQ=*cnu6DEoOG{HSgO0AOG_K7 zjk6kxzGbn2Eu}77(=%tH4XQ7`v1I%V6JK_S_Z^K)B}IM{`uY(^{o66{uP85yI4+KG z@$UL=s9Nwm1SowjuTFrg2e2Aeg#{G~XaYEP0EBH%8kd4?uem-me1v5NIT2>Kr1zTj zTYmnxc9XR2H{BF9UAI5A5SUdllEy4~vJokOQ(rxk;iR}eNuMSr_fkX;8(6AHDV0OV z2}&aI>447pKcyFjgd#;FDt4w?_0fTM{MXc-mP@#Z+0jG55ZVIkoqa1%=A;}iP}=r) zVah0uCt^RWdwAEb%p%YAqoMm<6P~vVv?l@{{Py^%*r=X`^H}m;L-nEf`Jbp1-M5(G zAZdl^R@=0!sRI~U@cMc93wtgMnC@R&lW1NN9ypHg1g+JZ@4|uMuAymd`W7 z(nM1Xvyhe634)4{nP3XI_~=&D-+W!XZXHKkn4?;2Ts)%#Z5$#Ow!_wm)O3hrMa-oR zM9i0e(C4L>FLmd|T*b@dBTa$21FP<*cVbrXN=sB>iosBRrHw=+w5euNMLVUJPHkHo z*K({Dt4i4H1zr_T@8*ee&W+|xBC}-~dBg5bG=aIvB!#EvFvUsj*GOC9t+m92sU@ze zTKJUkNZ#j9H|@SS(RkVjU5rBvav@Xuh4L40hXPSKDpd>?j&c|Rka|j@yOH~UKCN4r zI%$z9sBcktep}-wu``mTs-LuXoZqN@tS9+1zfsQwA9P<8F44{xBLAB3?+C1+CDZgL_$ z`9+&MkTOFe`y=pFvTt)pI}8R&k0p*8Ih%>rzX5R$i@Qho#Lo?QDoWRKuw7*H=Puai z1*qbX-w|iJr1mj{ ztd~eKoNQbPU=~5ow*idSb~&pR69<-m%z5|yh|C>Q%auMP=+|kq-PZhV2Nty9Ix(Xh zioUH6Se-PY)wfo!{1?tsOhnwaf4Xb^H|w4A>eP;ADXz8Q(NyK18R!D9A4B=Nw1Mu zZPDt|H2%!vesGlah@UoqSK{ZP{l=$Qm~ZIkMD)&Q#vhRU+&bWv#W2kTH13{ZUr1Y$ z#gB!;P~#0%bs;D6PX21H^XZv}P8Y-R7ZT#f#5GyH4wjUa|Ma3Tl{;-9DSm3Z3EN*`WOXs$l?w zA%TmQ0L*X!vPlr`K>21IpKyll{0sYUKWUSAC3AB0Q?GrbW#MJn6Y-!(tm+H(BRYN( z+>2*TQNv<(nFOa7##aw!Cuo`N63e0`yTC1!WFNym*($l7uo*vN_aANu{MumA{{ugg+(&c*zWIkkZ*`Y|P-) zzJD(&v515?Wd6vL`sLu8;k%`OiN*=DKqf*UyS!gl~%mU(p0wj^5#e zQZ?uMV2J%7rSNxn0~dWv^2<-Va#udTdYNs^UGs^hb=r%(wdk3=7L0A?DT+Dh3?vc+ z6yy?xl*d)%KauJ4GzdV%B+r~hBkizh+6k{&dr&U4 z?MA^fqtGB`$}UIB0-dtZCgTMn`qOFbebK9g2w9QOI!HW%3NO_gMJ>5R938GD&uNhR z)(#^Daj4?Fg9n1GddC|LO}+~H>{Z3b`KX_XG-5f%h{!Xcig@kDm3@8Uu3A@m187?B z?`CjT)(NYJ`(dcn+!2E2d;j%>Q2vMa_>Zv|jMjB%BdMd_%&g9(gXG;aI?6eWjuEL$ z*F)wIRDCdZHae{d$Jja~GM4CdZOUpbKR z3PsbM?9`hNJQ!K(xe_jEF8a9~!!D3FU80P{T6*Q7#9Dhz#$=HD@`6wM5retQOws%1@=qA!M!`LwZd^m8n62%H zQj)qiQE}Yw8ThM<(#ohokr;Z|k|PxRq3iH=r{pBhR&I7*!IQ(l^A$N7^bkIiFlPGr zasjE1d-@SPj!gDf@8@ac8ustWoz3%~2euNCo&+X4&J*&#al>aSvJxo@1N+>?b2(oO zm=3}D?WA0@qIb5GnkC8Ge_spWINV8~Is7099coPo9?H9nd7(UKbDtScs6n9g+DzcT zDaGUkmPQXuc-KSqTb{6?Mj|4ch)A7I6Nr7o-V5fU%e|F5yvV$$Y&I7{Kr)7oq}(6FrRiA?s{+^p}&FIgSj!BO-@LL5Gh?MZWY zQQG(GDQI}Y8FnsO8m3tfZmb;x zZB-w)?nJs{W2s8}y)dIv;?o>*Xv~2P-f-?K0Wz&&^Xi_%0n@i0OSBt}P6w&k;sDh_ zulC4Eh=OY&QNVT7{n_c<-@$&C;!HZEsWP(K#v2bdc7JW3p8>$l7+XvGwVSEa_fAS0 zzJLh{eIjQ2+A9H!DwL&|l{?F1U*aMC8h(!lIEchlpno9_4o<&=wjf6CR_|uipP>F* z9McAtP@EXgxLX1#so3EYWmNI};>%5D1AtG~=(=$UR}P9}jko9k7nR9aJ%zGWCrmIV1~yd0^Zy(fczRaf!?ttpzdo37U2zw*LW}vc~*2(SZ}X{^WDu=t~uy zYJ~XnLSA}tfTk4yRo#;lKaVdN{q`y6d;wFDi!cbe*)~8xif{}EuXWaq#LedrqIyjr zbm(&E4jFptMWEUf_tUT||5X%BPx$%m;Jv%U`S5do;s$x3#8LpY!cA#On)^(_Ith;Z zp-`V2(=*Y{x%t5E6BQaD;L^(K)=Q7E`Yqp}pi~-EjCjtFX5tTofm_}>jDtoyl zXeJaFkBEI@wO6x|n$)Mz0{fQV*;`9-B)y4|Yu^;@TkCR7%{6*!h>_X-Ykt$xK&sL+ z6l~BzBLxL$-HM*am?_`x-y0*>-ASsN;gqL z_3B9Fvl8&milxq{K8LRxTkKuXFD&S3AjuyP0@XV4(|I(xW+mZd8*#_NVfRSr_o&9( zts7v~piZUKW>C30Vr3VzzdvpT*9(j*g+u1-PO(zdtJC77AWB;Fu%2$nC^O(P?Zk)9 zqoX;d8L8+__8_0%T`7<}sJ5i8i{5;(WX-M=P3nl8$aAOcij@fYY7}#5?&%SswIa8! z-W_XV$&0%uBR%_hlLke|Ef+k&o4CYQkAQ2Yt!U(yg{+}mm&K-{PPm3g__>6iyu{K( z!SM++Z*k(==!pN=od8?(M99hLT8UnxulXFW&XVS0jF|ukqf1U_8@4goE}k!B(yYjP z5uEQMYE5&_C(73G)FqA zW<|9}8@|T5nGs#1-iNdmVA1{S!W4(sn>#0CewhsnkUi(B@}72D>$&|GN2%vUFvxhc zaC7poYk!kPAkk+Mle+{Qb!~I-b~(SCl#^V-mq~xH)s-9J#7y2-ld)Xdqw4Rh8OGc2 zAL^Gcxt&nqYZe`E$erO9G(!V~{Uf#;lX@mM%I7FJ7Wmfrri9H21xSC&VRy&cU#Yhl ze*bJ>wYZ$DSZ8jvk*|ynx}Y4*BeIwwo2C_7v*#zu`ZWa`XPAlZb(3iLDMplt?m2lG z(N5vK$C;GNcgH<>hz+I0dw4$|_s6R*jk>nt7gN_uN2eV$-h`6{U0D1>+7ca+eR!|_ zi(I6zO~DGAksHVI!UH<)9KbLI_f+3_r7fv}c9(Md1b3%u#8NK1j$zjiMvFGQ zB%jZxV-0496f?8WlFLFb1_d5_V+3|`Z6V_A=3RW5{b@SHz>!{hqcueQiCd$Qe3x)} zGEEb|&vC0`>*AK=L)8O~7O~|zZI_SEO8@nNOC7W(hQm~3j7Bwv#0h8=>rn&B^2ze0 zl4v&aV!c;ZWn)%VVluD|eP#xa_KyXl)9u9r2fa9Ksl$HhiPQ}AcXX2U2i?nx0E*3l zu+f-R#@vqOkf5m;ok$Ni4_OcBM%>Vz#ci*A7oaA0kPEz2+%vei*90?`7-<@2m9p`U z=n5!c>`Dfo<9_;2QBJ6!qMTHYPJ7tsbWg!pwR%4)2P2EW1N|=L?#rk=xDIeszKvxT z^yNqSn;(+2x;t4>f||`y4W!6_3j)&yZfQ=)}i#0hAsfqPD zLFb>S(zqavRYT+9l|eP7!eRRU$J`)|Z9WRJL9?gw1r_vv*n7wJ%C;t4IO^DT(y?vZ zcE|3pW2b|TZFFqgw(X>2+eYJEYj^f@_VxaP^Wl6;#vC=O>aH4V%{A|;F)4Feao-ne zkN_;yfT?(hIvlQXI2KL)`L7GmNPva<`r~Cu0D|H@+p_QTGXOs&Dl;&?uCYvoYpm^# z7qS8Y?SVFh1R!P>oWT+;qtU>kU@FJ-?lK-Rz-2tYF>$b(yunIffd9c11n`-qBb*Mr znBFrM#PYrhHgJ{H9+n_oz$)S@a+L3@=l}zwlb7CaR-c#D-}iaxJ;F8spzCtCBbb0` zBFENB_im;f&`h}`-L(11aE&y$&{31WYAvt;0#;b5PSvP@%uqa>_%||i0L6pGeTpJN z06}D-eUkUcvk(GsV9^ge83jb>gc_?T{I3T&UjZ7+zuruJUj>93N0~MMJt+hLcpZQv zcFO<-d1?qswQunEiU<8j=n*drsbMigwIDi^C@o0;m9j+Ke~~5RIIfRMU4$ zfsbElouyiZ`~iaNi0=qtgMw%@v|u#A0Akk&Q=v=sZcZ=|h+r5x)e$psS_tV(a0^Sz zS-7$Bad0liKo+M$=x{x(f#{!&_<~?izn36BbTWnrY#g|e;TRNwg3%X8JtD3AzC*SA zvtp-RgV5uV%7`Gg?sy9!miG;-pjbzfYD5t{uP^@U1WoDJGAYQ0m#D+lrBM>DKDRU7 zagIYGM&KI%kG^zBIEdtoK#tXwA zx1$m*R;Hy2Yw~cMeRbK7t|-&Z`p^ruKFD9P8uffTw;R7QHO(Y0-dxPM9S4{ z5vQ@zsc8t{YsWs5Hxx} z8e{a5zh@*(PTf#~j@ZeAt6oL-%=`3#uHzKbeah5q=+5^WHMsZC8loXL!H_Z_S%t1! zmCQnDv?-s2w}iEE>JPB|J%)++s2wb+#e-Xe45&W(gAG zJafD}#)L1yt2HdE@r@)B|u z{-$vseJwWqwXIad1r`Jvh~t>2_&AUMu;oU*ojecDvyk*@#-Rd27pP z**@UrzxLzLkt5UL8fMFQqYtr;Fod#Y*WA`-sT(jgo|ekm^E##-xfTF^ zAGn<`36Uv&9X^C-0db=X()Hp4B6pH&v1mshl#7J3wj6QYf8NCLn<*mXGe=hn(`Fsg zmotKLWy-DSK2g98#&ykpJTy?hzbx}=RJgMLxB_jREed>_FG8-iE@H4e5naG8R=-|2 z2nY{}w3x6O!|h&jnv4D7Me=SFDn>J?BbY--@Pi9GyV7U8UAG{C&WQNO0cAwwSv33Y zYIY^xI_YY`Y8|_l!_)EH9&tN(hoc$c?U7=oUoR*#nb|XK6*=3e$4)P1%!EpPqGi7e zjGmP2Psn4h`l6BvdT;L&JwC`32T*xFt1o-QqRe~Ib%XFHFi3jdSyD^u%W4q|rszTr zigyZgIloYA&+ZurL3GaDc16)@6Y7WXY)CR?_TXFy-L@HgGczEx`5@WviJSvZ6D*OwuDJa3t8!*ylMPCfdH*A z*Tk6e$ggx6v)EnLmhjoBQF*enEKxi8*}m|L+1Pa<9aS@Tb0jTAN{w@sqzr#TY%5<) z3RsOF+Zi_Erbv$S?Hf=oWLuWis?%ZSHLzv3(Xzd9d|o=Mh&!n6`1Y3_!QNypie0zH z?@Ieg7+$$=18haNi+GQYzwYLIl5oSmtp+!KvjgkUdU*bYyB7rb5Ff^%$C<`{)lSQK z&FMjTgKRPrB8;fM%&vK=K4zWOAd2)dBw`*OP#RVy?DCdEPx>x)nJ~rK54+tSAu_<0$tPKdnT=)o^+F=` z*`!fZV}oe9ccRox=|WlYhTp8_P_uaj{C3LYSFYIb2k$1m+L~zxk`9liPp5LvIi6rE zuk$eXO`Z^)m6023sc9i{3;`eJ?ZT9OOi;@RxA%W8g?ljBmVQKXi~ltJCGcZ0XWwKI zs(jSW&N>QJt5riSODT(t1Y<3E{ZPLnQd`7uQePc+e(vY<5LN|z%IyaXIKv_+y}V3% zZG%%QDEjNM3vk2e)EM>q)QLuXVWb6=!dE?JTzor6JbX%7x4IVya_X^`FKaT1ac$G< z_vJ}UcGoc2raTN})fV!8@^+iBSB%(5a7io#khBKrNTRR@zpKFMf1|PJg|q18ez9h1 zf#BfhKnSm_l3z>F3-#VfHW&{JxL!9wGo2Po`*5bkS`6`}WnuAn2DuXgVfI1&v6t28 zpi-IYdt?0mK+F*MGvL{_Y$BFQ{1bU}eN#wrxq!^pHOtC}hm$WW;OgWtM zNTM;dCDFOh6_Qm3;SO4R7Bm-`81yNA&m8y=Jo>Zon(Re@bGP8Fii5y+@iXiVP|kOW zYuF>=aO(>!EV{uQJ?P44{;hajPs}K3i3?8`aGLernZ6~>GWj(+NIK1z1aPsg`Tn_Tp5Z_aIinD`C$I4!%yK})kVg+A2 z@3E>vKf=`>F7k)K` zEtFejJ3elZOEuT>+Z<^8QV7@xkufDlp{zZ+#D;|1;{=aA5PQDqO=}9mE+qYDyAn$) z4>=Di2i3fNf}g&GnB(tN^Su08FV%Q~u2ocG*bxJGRoX}xjkd7EKpx;I9nRTGW@~ub zzLYUnN%U+}_nY8|j$ADhDg-N}&$E&$Z~6+unct|xGry(E38Pm=Ju@3eN;X^#pclFm zKPj>bD{*^7SyJQ9JGn{-g$WIN5~Pu#RCo4~dy(^`TXU{#(gaHyi0RmPO;^m|TAZq~ zud1DGq%PvRs9E!g@khK`)*Gx8vU@L9uyb-+M`eF4Nm|=f?1Qt)a&1Y%JolCFG^0Zr zyQTL+s4iSGugvvK;aJO){qvBEx1~tGRYnk<4u!y;bB`E<-hOnL#8(Mbmu$P z?AS%yu(elLoqL#-b=Yw6_DkleCqc}is&eJ&1%^syn5P}bd9r0zgMEO83tbsI$8Ptu zRYRkb8KX*X%6`;>_K_inN4dnW?lO(I4wGc7H$m2#Ip>OIZd;IXx;2zq>?Pk)$+D7q z8~!nvHUF$;*Xkzsx`PjtJ}C358m_w^kMf3PKKfYd*n8zr0Jjety*Q5Kql|41a_y!n z9<%AQdgtR5T=a0s;^hXPs*Q0qOi@9UM$U5frb106{${6ex@k8Wi^Br}om%pVyX^(y zgfHwHN7G(@NR!M(?lovJJ$pn`sO4iKum0FU`x)D>7tQCXFV1yt4Hj7G%$e%LJK$A3 z;mKAA&OdW(f9#sws$67(yR6QdJgn}tg>G~u9FSw`JfVd*j`ynyZxxVpK^pnmN(kV_ zELxNo+@K7jwCc3d)?e)z(Tz3#w%Dp&RTbH@D7zql0gb@^Z3fXNMof=RKl*?Tr84(Y zrf5vF7Tm1-$kz_4BZv*7p%$kFZj=x-({PsLebyK9lm5YP-twzKlG4UVA;g7SiNJL_lC_)eBlFVRXK`xG_u~HLIQ8&3k6DMbvcIIkn=9Jy% zd)Ls|#3DgK6GoV(nng#(ZB#BBeQA1UsV&2jEa0Q`$Z#;QleYa0Hh7{wLFOy@QD*1h z+uq?ZW}TCtwuqn& z^l;?EdjaI|`WZ4Cn&{So;?}_$;=u~q;bL3XWije$+Fj8hwNja@UQ9wKKccNhjpTUM8Z^KM$<`{Y#Cgru%mDBaWETw z;Yrq9`ng>MKA@HjN;P6=vK$al+f_;3#A%PWcm3rvatbAD8<=Qwo0zn-8BDY21*n>S z=bF<*P(TpEu9zm$IDPAiSQ#VLX2LFneW4Ed9GN5~Ws0#Vr9kZ%v)7_V~u z2t_fu*-xrD@driT2pPUyw|3_pB@AAuabnAg3m(2{@QIX^i{y+>wa1}dR^RsUyyNSL zd3Ps&r&y2>QWO%&Pe3JB z)rPfc8KZ}UPxFT3Ojn#!dCY6>aQ!~^zRUI_bzAMV>1`pEiRWd8y+~XJ3Uv4GT*_xn z?U!Uj*p(P0L%}A#tNp;Xo3;ylWi~X|ZXQtBz+slSQr?K8PFbHUTP1YjonsafH%-4I z7>3?Eh?KMG(dV7z3Ie_)79ng zL+%vkJmG03cv8m%bcq3RtqJbzk&qGozBx#myyc`sBx%pLB6HKuYeAV0552a$-X zyN|oXpM^~WS;H*T^}pXAL8$6@+>Q|6m{2p5bxU#_m}t5quId+ZP_f89B<;qs(`V06ut4N7wvZI$^k+`Y$8;;hc4(@1jFy$D+>5e zOr+Cc!~4;fa=a9VbY&ae_#pJy?sHF!j0QL>s!5cEpkQ#3KT*Kz6xb{t42LpR=oNh;oIS zh}roHxjuscHOCdZ|J0LHqECyc@#9(cMq^ec9xMu*UfwZLVtN!twy!7r!M7hIo`^8e zZPN=}zclgJ5kVmyC2r&}$9yC&#iBUOZ3hKf5)!}gnuvXy9>j-(l-&?8f)WYzUitOIBQSMJ0HgW|sjgd}l((&A(#dW;6U7ft#_r9ffUyE~9BV)m8XR z9JjCrn#18Rh_>>p6vx-gFf*=>7HP*z%NGU#u-TMP;Tm}t8$)3>X1C;|$hcr9#`)yf zc};|72eP(a)Xg_#y?i%h89x)7o zJBB$jgTfdV$h(O(>2K7+?v%t2xYzQ6t(b56?6l^h9G=i#nh{mSBU%l8NNfDC4o3)j13iuKiw&~0s2zFY zXG&d&IqBIsCd6cX*5PZh3cjMl@3=AARa-%DW}=$>ly za|2d8%Eu2uG8+0~tFVh!emGm>G~=>64cl*J6RK%Vdq>FEj77iZ)Y;Kii1gNo8jl!ZQnd0d-+PuzPp~xq zMdw=%Ab~VN;BLUh-5p1LCs%o^v@G;(Ri{30jM^GB)ZcE@ek5GK@V)ySh*&mooXRVc zsvZ&S|5Y=ti6cEQ5XEwrS{oOplEgyoLAi9&2zRtRY3_KD=)*@gz4(q$;{{*zGeo6^ zV<>3lMCwWaXj&@a7kV>&9NLc*GzNiTLOee#V7f{=16yMF%_aHR|CHGJ|E79eA)uws zaL2N3EBevw_lS9y)qz%Zl8H3S7~R8*QNP1&ta;INM}lL*P|6>X9R+(3wfb#_)KP55 z#8(|s5aWoxiKEwlEUBhIq>1;oB4A}qOY9XVzxz+NMQB%_Ojwgq!smWQUuSm0Mzo-| zUsrt-#rW;a*v;5hM@UYn!|ma@h0x}715VqXZXr^W0#w<}bVK#=#=EvT5ejI7$81K+ z27!*=$X{A+QAgfzZ#><~#hwO=xBNZ{whkx|{IW;Tbz3HR({Bj)ptuzlasal_?hy=A zvo|Am?2#3h!DD!=cx}^e);-{~rF}!Z=f>G5l48_FS8RHsz>zKNB*PMYVz9zdY_f(Q z>b~1MW_`uT-r)_C#xlJhbQ`~lzzq{VEFa)YBme@-lj--=+_w6MfBZVdv>MGJ|?vBEIAjWduVCzKp(N0DB5F{9AJyHKr zl|WLwmAcVwVmdroDDIDlB=H71{pt^h`kN_&^)P*F@}gzjoTE9YL&kXSnrGn*H&FHO|e?TG@6CacWs1Dwgs(0=Z0`9R-=iCiXH z=_258;*wzCxvZ``$|M8s!%xr)srHf;H~q>d!1Fgcw4YQDr-R!(%-ZG-4u8nx|0Yim zq>-!-{|y1>!f4`R<%g=~UHl`QQU2lgt)+W(X^i3hK!DLfdW2!<+05r@A8A@4{6E)M z{oZEPfVVK3@jqhZjYxka(Y5`qVWd~w7oje3&e*FR3Fp3)`!%#t(IEc-g5b!4@GWi0 zNN@nj((&4J=JxABlCjrOrD)sG$a3z-Sbd$4k>rNXJride5}_E7+$KDI5cUYCc1%h z15;yFHMI)mTE;(exercTnao?{0;J^*W;8E{h3Y6rfhg%?QnU5K*ALAQ z7Z(7LE5*VsLyI~0ar6rV`!=Zl7Z!`U9_NKRlev-k$r5XG#S71sj#nIjIlVmS+&q1wZd8Fo!{$ zB_cJ@AeK)2+PH(8y!-MY&1;mfI9zdc6{k%YJPm`NxN5dComTz zPae|N!<^TT_`+-vTb|wN*KM}n zp-hy*rp6eKZ7?Loldc(&HWiNEJ}&smm@iVAa1BO+wov-sD>mtxq3J^MSoS22^54?L z)_7^PrTr#8?UKgUhiiCSaD8~E)ewQS8X`Vi-^Qd81Dq8Wei}RC1c(M zSu957L?WK*JAsMJ03i5+A}CYL0X#D%=ZC+fAb|TP?RUbnAO&c#A~kH)dglrwMf@}y zSY&j+i_+0*eQxjXQvh$07(usXR>ldG+2dXB#W#S!1(?&NdSAH4fgW69(JVjKP1%Yi* zAReUBGX4G@rsVe-ir-~tZj0Mf1NnSJO>zPyF)9YQ9^t;r8SIA_bJ6Ra@`DC;CgZHT z4wkK3dAGTEP-8JJ&{FAU%sLBvx?a$SzIUIb#A_y`J(3t^ z2mt{WXB%NS^UGR}$-M9K6h{fzN z{v^4Z$v)*s>6@(QI5lK&w z`Cx$2Jk)qj3tVpgdSd{2;D_YHdnNiKU zhq3Oby+k5|5{pS;@iUCL01SH0Z{E|;WYI#dG}zgs z)6;m%dNwH7J5WCFD_&k`PN3`J^*ziJWx}fo{mW^@TGmmzPKb{;pdcZ+GAV4#5C}w_ zX8NkaESQD=E2+WuACH;(Cvxukj;!8E{v)XvZy$)fBM?}I6NF^TXizY{INNc7_^DW^ zevp~uQovgvwmZO%oh)BzKY=;4rE%Y!a2hTtGK66SVi^GIGzJy1{ne016vW}|b*j5t zD>-pD`P5*)qC;kuR#_B&<2^Ei08~R~WZ=Gyy5-)nr3jiI79$+Dflc@q7Rp!ga***!%|c-uvFMy5tSWDDIV{QAHl;{? z!&_KU5Tn)v=<3{6Ql+Osm|ybx`fj?P;0|%f`QlCmO8wiU5)zxI3pW-!vcB|Hze4*g z9+3v8LOO{Ha6>~`4TcknY+j(Y9FF}yo-M%o{L>BbZo!ZsJ9}n+-voE(*HV4DF;R*s zTFMvheJo;wl>8%n`mLnlt0nCpqmt8rBS5_OaRyy6guMuRMg66_W3Ac8)PIWS(%w_k zecL6|;0vTXRXnB2`w4He(EPQ!E2a{A5pCB;w&9htN<&NC6I>5Z?? zt^E-tljQ0T{APaa^58C#)%^=33> zCuQplwhz#OQMNC;FC{d~@(NOwmi7}v*Apk&w#D<58S@n4!^?EvK36mWrYoSrVz+DR zxe_ZO5`QWeAAK)lJ1A-=06JuzEK*2=TAQ9obd-G$!43zB?C_tm08_bpwOQ?k-)0~` zVKZ7+u`~A1`wb70S+I9+WeNyCHR#gX-B;W7Oz@g}&9OR6$)q|w`3*GV&(1sm8MH%{ z@tGfGv#$j35lbn3wwg4$v-y(SND-L*Kf~QB2dWI>n&I!p5?Tk&?kt|_t-vNU(U}iU zqL}t5J3rp;NKmzwqnGIwMy%D|83cdWQAkSXvO0k=2AaadZr=HpL13JqIoG?=bDGmt^l$0Pn z6pqE#y=KjPyTgO+tcf#v<-m>8FTxiqqy?>3m(^~9O?RKBCdJNb-WKllg75v3xScc!TfEhdYMuFTc#}qxf@&$YKe_HgzBaC~(js#~Egx{B z=;3X~E#9B_`Nm`yimOT55j!~i+E@>TLi%AmS+RyOlI;}?nR_5|9`_G3n5|#W)@h9O zu0hjJb{~vIT)eXeb(2@iAo1NT_lwNw>+kN-e;PDG<^iQKtn*rypDog#mMo)+)7UGy z%hWHl=sSr%buEuZYO?u?(;wFU$t(EnvpPbq)0iK1=%swQ=GdAvd>-k*Sf(MLWI?0T zt!e!XJO0IX3D@e$DuPm{BXp~D^|z`*och`4*p87i(0%n-^4ldNeLU6)UI6FEo!5ce zGBv+h8f`I|+B}=7IZW`9)h=AlL&3xec)%gBeAhm<+)&b#yktN&R=u2-p5Az<3RaI1 z_~^3=sPREGxvA1VV=KQbJ?p$vCM5TW{|R{orUNHfP|ciou|+bk`Ro^&%@}5Iu_&Rv zGO=+evsz*6<2R;uto0Th0uCI8!KOY6!P(b_$>89DDs=)fSM zCTeX+2500O!h+)g?NBr?3}qQQZ#<+}P=^UCFI2QEOP}d5k6TD-quQ}b?JFt|f2e#3 zmXCWvYF#M`JQ}0Qmbc%3HL+5k1zce>Un?%s2-eRfY#rk2e59t+E@O}F&AcreDEpyo z?rdgSB{G`>8&v*t2wd&OTZX$C?Ih4TX!^Nsa$FAJ{zyLZ_S>A_PkH@H zcB;8qX-8D`L>*E<>7h2McsgPILYBKFO1vEAWnT4l+R_!f!VFto-lDGjP;k(#WU4-j zrCZ)K*BEM&n_%U+tt6;3^Z*i4p4gnvdBIIrp6w_8F88~GVv7rd1FGmCxMu2M4w~w| zR3s?7G)u3{`)~8nnfMfwuTbAvB}N?W$FZH7m#iZ$1lUB&>zoB?h@3La#m9xyt3||! z-!SMs>d!^BwLnoMg@*a=t|;Y-weg)-TgV2)lXARhcq{HwkyY_ zgc6yz)JYg}feD>n@b#EXR8tAxctKO0k&71DIcWa7*pRg)9e3NH@+$SE^KSTo zPI8cp1A5{dN0uCsvXeD`A=~{t)rAJ^FV4Dg%crmk^zaF>$4hnXPqVkUlvGhwY+U{+ zKhU_;3*b))e&n)9Y4%eK5)v7E!eraZrrFVOvRCz5%FR)?!2+M4XcQ}kjt1T1wVpIn0+>-a89;I>9C#ya9ia_{B ze{QL2tB^f@G3lA_4W5LIl_0W%()Oy(!pD*+fu~DJpvbDc>3lI-Vt@npBXO@R56+wX zqkjZO!*)~FO4@w03Q5a>m9O}C0_=fHeS`ez!ePPpGF^iEtd;%hC;njw`EXyUv)_)A z9}}A6@Og}@M*MKg?YT+`UiA_LMj18gE9l`UDO*X_T$pJU$-ckUwYmoImnL^!RH&`$ z47QN3Tz}8EuV_q~HJ?-#I2aYM5vTnwuzRT5mGYKsCH_fK@unE9TQ}8#a0Atfu(gnYWW{sv4?F7xz3F~x|4dw05 zINX&gJ7Ti9R7_VTk!<@C{;b9i*kgCwnE8y0)g-LpP-E)b7!O!^ZmR~!@pF;yqwZ1% z+nWLfM1pfIrP#$kus3ZthMsbXXJ&`47g)#AKc;9#x{2IHg@BgRW*6VoCr-7~b^o0G zYQ5d&g(Xe?iIX#m)_+G37oHQq+kC`Ej9sG5HYn(ic15azj(W9|Jsu&hw}6MKbvlzM zS!p8J^jw}sPQm_dtRbjRpO?wzsDIW8eSM0rBQ}@gz`}nxAbsV_4uP51JW%N^!W zZHvx8&h!QU6_hV(C+uTo9<*PA#f;zx+p#7#D(zipNN6wqz0E=le{JVV+IH)jZwape z{0j!*FP0lrEtQ|5{5D|@G5UIeoc11i%Az+~UHqmyBr|Ae)Os~_1$3|SJ>H3uAByOQ z1%sD4zXXlhS{oJ{Bt(zm75wJ1ERm#gvB_l%uo*DW^p_-^yt~DY79VxrwLPvJLoxUw z;H|t0W8OP-s%2Hsh5n}PxoZn=0AWJ8^=QJ4dmc`WCmfpJ z6)AU^;YQ0fX1>Cr)&Jm43Ge`dcJounCb&vRFP*0;QKFze*z^n6ES=DFPwfKhjA~gT zqMz0@>vZH}1XZwZ3!*3k#2aZivU%umIn}&0>5g+tv5kfCjxN#Ks%Y<^011Yb^LZHhK#l1!H-Kh^xexo zNuGNDhP?0mab1-5x7sv1#gc(adl93M$tr6$gh1L;7p1UQYG;WtgH;wDS1*`d~KL((9Id@gd%`woRYf z?rd`n8jdo_Gk6fRM~Rr%ydQzTq)q%_o2qbOZDt%!1-JOC#^f^wX)GHUL6=KtB5lf~ zo{nS~^Km_$0&IA92Lq~C3I?5EvL7L92-5i?jRyTY zy+*BE*J-2PKO9m^l>)CP-M7uO2kq9*{i{wFD%*s39(=z24h2*sx)Y5LOWin~2zb$p z){=sEf3OTCdrQ(1vjKM-6ORe~nLgqda=V2tX14Bc)Lw7))0$~ZEo*h7{q(}~Hj_VG z`{;3;H|=i+zRU)8x*U_cbqnko&$^t=66%)nT~tJK>y);E51Fo8t=3|#ITJKl+K9HO zZ%H-jh&Io%obbu)o7)my);7189PHkso&SMrCdrIzvHewYy(zyPvy_{hj`Ud2tu$fb zg{pI`&SlOvaFQ=6$l57{ma`$Vie0+=c(qwnsm-EzE3sfkp8=;^l%a;0974IlQP32l zL2$1bId79Mj>W_g*S=<=d}!qG;XE6;yD1PG*Xv?=uHW>Fz2!6 zBhJKle>Hd2e1zKov-iwJbp}g;Flr}dspLm#aS@o2F%@Kez~0?_J|G=xvQ5R0?;B0; z!^q_Fjx0s;!cLM!;}3SRN4idAv9eaj-aC*`rKt*wbLI}lskQYkIl{aVNt|opGZsHl zJFJB*a%(S2>LLuHjh*~Cd3DT#m7nhZw8*N=^D-~WpZ zfkWiJ$*EW?vR8+6x!R^nqW^vsHOFb~WC$bU#7zClqaV4ESbRRyjV=PzzCA&7X5J^v zq<-CS;fwTR`B9YYa|y}9Xv*|=xJpib^?+t3Ni*s4@N@tLiZ zu6Oj=e>e=^9T{b{={IS`hZ0SbU^kLwDKf&hO(*NTgka!D1Zf}xy(`k;d;c!wAHKNF`?@b`@K63fMs=)d}3eA zE#9a#q9s^6;F2aX4D-GkXU`sIk78*0?s)CqMD;Y^oIDyoON5)tND**sHeNd6AlGDg zaugzvTYIF{<`Pybhbnyzh!a}%61oNS@7ld=FZGyG`jI8!MdgzZLgt07FIQc3$H}5Q z*eHE+)SVKqpbu~x9mKH=|1>MIY&*QCWMes&5RO%yC`K8Tu`In8RVab3Sj(=I3kwnk zsHO)o>!<{2*U#W0lRNhda)qrtWv3MTrZ4zVQGgax3T>;=Kux2{uT_D;y--SVx#)vx zF}Fezw&9tlLne{tqdl?Azl5$kYt=5WJ6)sbm4ie5+jLh@4(wV%TYUYovSWDvQKY#y zlB~gp5#9o~+BIseLj|8});Cf>Of*%?^u#2*GS#RJii1iJz^xLe2fe~Zsfu*a7Bi9< zG|;c%e0{#{(J?J7@ABm1U*C28!yb#o-;E^VCV=a%);ShK#Nzsl!){>3y-m}a$5=LG z$q}rXHhI&phH`9S@~n39G{#6|rwqY*7~wS6CUO%4C8~JW(eMnJpXY3suRQ%z`JS)c zAD>*64HT2#n^yO3+P%hl9;>F_n3=A^emy_AGfc8f_jEAqC*SKwPu5NGPMnb5Z^c)E z0v6zU-GB5_UlN_v;Cdid94sjA(e*isZ}3OXMz~|e^NnWN_*k#kMs{ujY9OX{5~j(? zhE7vA5;R4!5+tV1$Zm#I3OxP@zV!!UD4c%$51q-wX~%%XOPTU&MVUpZWt>Gxr2_w5 zH{2}W|2B+qJ2U(TGa_6(C^I`E#UR}4(8I9kmm83E{wkI)eRudN9+^i{WA+9TfG&Zm z_5l11Q=HEEK*~*V(ihA9Fq5CMgk>??A7NJWV`5LyQ+{9cP6^#mLSE2^E~-P6?>ev= z4OOO`5n9G|Z*%9%>Pg&^Rja#t!^h{$()=Xk(?2tc*=s~+$#~k&w3oNDxiG*FvrHIc zWvcWxNi$80Jn#TCEUQo)>DJ|_`p=#WHV^x64@0!<_0RwqL=~8y>iJ&JB`udb?uQ!; ze0Nh0A^~l-SEj$|6TS2$ni(7v>@Ohiffx&)sVw zJXMNGi%}oc(J?0RLi0+cT;^MPuaiAin#dF_uNl6jhg)sad-Z6dv*Ax0>&Ewdifn*Z z19Xat*bpq0KPK{kjz@&_qS9tdj=-!!sck0Tcd92oBh<&tIGR-NH9*mV@7fVf&{4}C zm%ea$T2(cn()chZjt%V5B8Y2`SrQd zCc<&tXeq+?TbQO>q4fD#s>5pM#L!cu5H_^w(NeCzTz_ums?FNSs@7ET`0*6Wv-?9F zno$fV<1R?Kmww{{i}E&y&v}tFs-I7Z7`HbL$xHMd_Zh^EsP;{zy1f?SLy> zD_Fxx|D0kNuE*fF>5tCa_%?RuFxQ9RNvtp&F*#Yjhf=(&u5`8?=IX!@LmYr-M@R4_ z{h^-t1T%MX4IAb8L3DjW{!)?aV`4cIUceD%c%=|3lk#rdmqKWh*Cnc~UP?Q5T()S* zSF8A<>Auh`Td6hLgEUABwbks{wzw*Iv)+*9pTP;&GF6^m6+~3!*=5??WmCtI>H<0{p z9|{d}cisEU(#%%9#lE4Ryvj1VKZ<30rH@EZe68EBK9y?tq>S$?0edwKJ~eAlFea1| z;$}BvPTNsmS$k1q+#Zi9mx=K69I2AeIpYw6UI*#`(0w_wgh3CJ@8rI`3N{0iA~e9E z?e!H)1uh@70iuh)Bth3 zc9_BW<(?wyU;Lvf`Z@4gv+>9~={3kBFygdyH7yzIVm-36WAbdN))K@~C_T0hYYsXa z>tFBJjMbQX|7ogC1|CjT2>%f)_5#Sf0h=~i@coa&&}JM@Avzv(sVAE8qaaiIa<`%s zdL-c8#cBK3gjeII!!=gJgJEQ`AdWvpI-fD=9h>lA`|C=8ynTkrLTj53>doW4;aibK zTN~cTpvMaJ#zO=WeF3B?@q^GAZ(zw=4sdF)m{2*Ci~V8lDrU?K6S$s>$>*mJBK>j-r{0_X(xn^J#o87?3I zrdg&`T>zkmzD_iH;$NQJ3aA;^Cu0qG)+(Rh&hWdb+`w*FZt}}VlVps_$Nn^H<9E#l z076;D;D;%j86d6=&#CV3nt?}0(2^0iVgoyYP5GXq-_hm-^5>ifn}@mp{`?Tx>BGAM z96x{p9O42wvN%9{bt3Nk#5>v?z_>?Ir4*Ce-*^AU69PYW85LwDc^8WmngaH3Plb2c z;{2)JL*a6}#CuL5+}P>3o3dUTYjOT-4yXjNJW#RxhlCST@h(1?$w>pzC*M~@U3+2u zqWb>(_oiPaFlk_+fJ%)+kvp_lx`MFD{nhma16Gfq%Xmym#@7F)eF_7Z`-yrf`g2+1 z13v!S6&laSj;|{>w}!C)zx2r{c^FTKvVV1Et+qM{Z1^tyZV?8+uTrI*&$+}o)mH4= zWtg5su5SvO&%<_ZFon7dfq(JxLm2^9B8;I+n^9%@3c5fl{O&GM;HTBWp%J4eiz+1`9%WF@r+WfuS=0=>~mtq1l0z#f@;rPiP85wr@ zgmrS}_F>un(S|nT?GVqakX8vaBlLgfBLf#h7H0k)_R)~Q%JyKF6^owiIpy#59DYDl z{;9`U1)h<%ieOdsF8M$H|2yyigYUGwMHxU5e;W}%M%%yY;iH>*p)pbkq7)#c2Cr`#{lH zQAFyJxCWJLq9}23%iM#Q-GLN4|c(dP{x#^U~R# zK0$$pYwGrW8F>rIX+V&On;c*o+|za(W#Q6Ht!MZw>}a> zlp1I)2s$tmf4_0m%38l4mnIb`HDcBkD9vy6|6IZJ-$4cpaH*ZwImGypYw!I=T}AsV zga!sG+dwg3)ep)f%s{KR`m?9rjM z@?6k~f2a=;0WWo1o5!sDV~Cs>1l?>}sODl;0^MvKr$1ma&^}Xez%;Xd^_pR(U4SV2 zZtN<8Ho#`UdObw`0F!(nEFMXJ0FC?M8+DHI&o%#1KfwP9J2Z-YP7Pw#sQS)cWB(Wc zI31xzj24bDoWH;gC~`$8+Wz4m!wgZ}p8)GWTrxN4jEDeC8S9HMMjHKV8u0(LK&-DU z8Fl|GyXMsJ4?O=z?QayIu%w^4pz%8hq|t!&NfApo3^|Am!!$T_KX}2vgJ2kz+zCZN z25?M%WZX(|>>nkOyZ|M*ZYdLl*RueDrP&YF z{|w5x0wZ$n=Ev{*z9KLwB@h6PNg!yq8~taHf)|MMBX3XEe=*1p21F+xvT~#5zrYXx zfq5e^oZk8;BtWn*{gr_jCCTK-9}e{y6O;5X(nTc$#JdA@umLFMVmrN10`VkmiL`Nh*) zk_`DraEB1xn<6kDB!~)4V-IWDdJfyoiqBbk-Qf#DK`o35vQo)q{=$$W%>EPUTv$os{e1(L>fR)u+Og6JGJL^>RH*@#*a^m z@1NYbqx(^{&VAv+kbzT?W%(XEe3qR3ndSdu>MOX~P@An!DOTLwi@TQM5-9Ev910XK zP~4%oyGxMZ!HO3z?oOb1kw9^G`*Pm<-n+g(kd@4u%{Bpwv4%ff6gS zol&Ol4ZnTzfssV!(co|FEn@?|>j7YxGr4fV!Y-qGb4z(eK>nq#mPN=iEsnAATJ#`Z zbXL8dsgX)5KBn*C;bGd;UfSa6c9~k~S0JB%IA_NdtFaF(VyVoDZcVK(Pf5indsjB5~lKXGm3zrkO_8 zQx`?a*0BD5s*AMAy(kNVg_zM6y=7nH&FMz1gJFvu6Pn(8M7AJBn3=JbFn@7Xf~KC6 zQ~qiqZy-%1`>s}W+0dSDu%-oXmbSHLMp61bjhigP0J|DnZGrr0`(HHB>x&Z8@Uh#S z?MFo*xgt?QZ?LF#70sR_YPwD>mfRTU|Mril@L$C=1`>BCfQQjz)A^INc7E#~1d#s; z8i$Z$VRUp10md#X=o_HXX!IQ-0ou>`IVgg+9dxX=qx||%@Uw@LGpa6{z-THKpj<0J zG4@>CB36x+D9lT$-o?e`+=c-fm(+!?Gln^H@gO=nF~)b18LgzmOiN_D94m}!Qa9^3 zYK2oTFIBfYDT3_o@DSS89m`~I3P{o7ifTfn}QVdPNlKgVYzta_2AOy zsVqTbuup_=bS9WV$!+p+61s}SNBc=i)Ig(kjuRH~{zn9x9aRRw2Gy}EotvZ2z-EitPm&D86?9 zy)@}IZeHs`!%)~rz)wT3t?D3iuiA2t&AJN_m@L;=aAGYu*iT0XxLG*VDI3Kjx%30S z7O1OMdm|tqLg}F~8vAJ`x}F+PFZ|bzorOzR)kJ29Q%q`zA}|;&W=y?9RJ8@XuUA!` z3kHLei#o&gTl0#nphZ^a$iC&`OvjFdP=YBNnSmp;bVa2_u=q4z>|QKb zQ%6SV2V#9%zUiOTr(|ZsPn`!RCkwk1hV#?&1t)n_Hyc&_?nBHgSDzyVCF119o=h}! ziu{`KvGyv^lZp6NXfWJwR_`BHP5o5EWB{=(au%*^lo>o}1cbqqJ2O5TLn{o8L-zj# z5%0hM3Z*s3*;p>dZtg4OkY%cm3b?rdgh(#hIR$El5}>?aBrYvje&iEs(34P-8> zAow}+e7dC@zsBJfd=z-8F>d#;JM9u%Zt$$lUNQI$G`fz9yEtD$-C>FHA&k&&T{Vfl zFNwxYC5wQ%&kp<+_*`0>ty$fE(q-sgZnC{!=NVX3WUiB%RbObSzrDY_WYP3r;F<*Z zER9nwcn0*}oqCmt^KE90(}WG&QC+mEM}Dg*^H;r}KE@nYleEhH8OCfJYy~2~#ey-s z0l6=mhjqrT24Nu4YKR&4fAG45F5~Jd*=MwAG>HcNxS$0Lq*A;`3d1SF8wL*30vSWb z`h^jtX@{&~rG4D*Dh^H#rd1UqYCF%fZ;I0EbR3qN33WJXw(5Dy*y>hd?}Ns5)GB&< zVF0O^q#h_1PihB+lcw`cTBYyFbF3+P;6%TX8@??br^ zN6@tHOJ13$dt$~eowv=!L!b-mrMk4iTwPCi`L5fG2kLyzxG(C7E@rfLi{f%`_*nHF zj42sZ;(Lg-b=ga(lJ~S~m>D0KHz8>cqZ_Z}45Jt9ooV4z3pHXm98{Ji{d&LKHr2l! zvHkaVW%8rO+Jkk}68{pOO6aatKk`?T)oQ;H(pxXa|48;-zIDwp98fktGkKS>KqW0Z z@=MyCH%m3_UJ8aYYC`tT?)-=p!WqjfEe@SSmScceoy8$~LHA8e0L1C&bV1Ke*tw4#;E zt2@_N1hR{L@ICB;#n|>g^EVKJen-^1T=VWS?U&lmj!D{^DpPkHp@DoZs8>T0F1sAS(@ z;ovXf({e1XzyYkCx<;49>^*%AyoG)0Ds$ikYh_!1Qza5{xC6 zEDFvdH-)L^7f-LI;lBs_y|>WNb5Q*70#TZ-w(w!j7jG>yCG$uw22TjrdWoeq2=Y0A zB!h_6_?G1@`2Bp}`<(kh4PL%XLuTOm;#oW7b;r zYJr><8(O1{W0T!J|M>Y#t6UWTJFn`ark0^rN}EU0Mdxny@iMaMWwZA?|~ zpP=(m3*lF=^FX9Wr27@?LKxR5tsU6yuV!$~uVN+|ViOLhkJM>VqWQwWOk4Z2tzhHq)vk$)?8VQwT!V&l+x5ZNCpXl~@G_h1KV;}p1-u%C_ zbWqi&&#SoA9EKkb`z;c5xel}v@r>wqW>PQwCTiIhuOJAT>xB%7nI@4y>cN}!NltlS zZQJshO;7%XQW@APZU0JEtFfRa`ZuymQ~6?vyz8m`p=L+O*J>)>8jPOc@+{>___;^e z`M+olMr6LkT9B251u$vXXn)Y!TTA?4MULlUM_=`kH-iNUIm8c3wz9L6Fn@t>xzn1d zq!&vu>oL_7N8_DY*+kq#yjmq(AY5H7%YaW+gFKOIT)FQ)$7~8tOsXUts@fRSqfXI2 zrM26-sFWz{kaq^Ie};28Fv~g=%l~GqMeMJi?+vJ14-}to6R5PZFO0q;UO!RPmI8_F zsHm#5FGOX7`$hiD@XC}W6iz89y3OR3AKbR6!_`_cm8D?ijQmb**u5M5;KPm_DIeoq z*8&zpJ9ohlt)ABp`RH#5s#>KtD0S!Np||jIK>MVfiYJzeHR3LLEIkwa*;}KwBlXV6 zjkff!5x+C0`bPxSd(pOeC9ci_-E&(cee0EG4%XpQCIfQ8ukg&id0 z&KBuYb5-6A6ar%dtz^BHczY^XnM)oj6QY!X7Xuc4V-#yAgTXdgrEfzFb6xC%HymR7 zXN+^cnvU_;dEGmWMo3fqNg&4VUWxc0I;0jgmJNKJzwzqnztv_>_FGXHSUCL3i zp)}3@e6=FmM8BYerhhO_Fgm{FV~I#1f_oBbx4mxX&7vo>re=`^5y!kY6PI=(Nu;>) z{u}yg6W&HVV=?;d!TT*nLMn5@5z}m)zxt4bwx?$KJjP)w>%;;`?GhxoYXvR%*TWESN1bhEwG@ zF9E1OveMZhQ}~3JuzR6m;Rd)a;UN7;Om5qJIKpPOp9c}a22?4 zidjNjJ8w%qes`j3Mge|Xl-aQKa9Y;JHW`nc3T`@fYi5-K5b2AYljDnjg4jPN<4}=)i@nbPk!^w z$Y~iFB5z8g5SR38LPuGZ1RQ`MRyzpj*yr5Wo4G90QE~f~mydj6DteZbRkmWRbjSv$ z`sPM;UKGL7neWaY%?| z#zKAa{GOBr78XTz1|oG7tPqejcrIKKGXKOheVNpT0*Tp^tyrlKAaebT=+N-M{60CG3d$S4uboZRb8x?1!%Wd!e2B?3k2Tbf_Qe1hy^Xn_{hfaSY#c?W7LJ za9(okM=+AR0e5Zu1xQJxwhK4c>oe3hhn% zjJtpK*PP`gS{21L((}7bQX%X^H^32NMsY6AMm{6I_%2sI=qVPaP-rv2T~l_hE%d<) z)i^pbf+|vn57x(gi7D9Gl=LyeYLE20OxD@#sytQrGnJer+wj;-RcpiiFYC~eE=p+| zg6eM{mD7Qob-2tnsT7^`BfdiMNDb*WJ}Slwt10gl8e<_dvx<@I*h=;FyLburL0^)q z!P4fys%)X%#a}1WaERcwhZ>6xzJ9p{g$o|440RJ6^L4Rq5p!2WoZAz?!nE}%fR<+R zgh*0tSak(Oc{D&-e2a5V5?ePz3yl6&xEE9giZwv$0Fw_Ge|T)OIv`*L}Hc zgpxuU1Ws2a*%lYlB zYp4BM>*%9(3^#SY=%7Yo>lMZw2C~fHun@GEhZ_@rGa=4%9TDk%`)MCP9PV`hu~LM! zuLDqUDF^QyN5f=e73&j5VkFT)J*BZW7#B$$t0U;4Vy5hkp4YV7sx) zVIb_3=fd6W*?27-O!5^U#$?6H6;MgSs>^$~F<#Id_Rqg3RHIj;t?n_~@oCH%K#E6l_v zLEi)l&D}+25KBWd<%q$w)>QGfo6bt}Z}cArmNyE@vm8H(THs7njLTH9a=3~b*U3;w zhzI;=G$hXVjZ&mFUOM~TXvwt53ek6;+kkFbZz2av2z~HPG1=JWU3$n zFSTW2Z)1Lak)%0{TCkRQeD{1OC-E&(9wC^p$St$@aGKe`+wG1JhNS(bCtHE_DK*&$ zmQoZpTvVLFDLHCq#_DJF&5imJ`F$e`Rr}{W^VprJPsXWdV6TQYN`a9$O{i6`;@lf# zi6NFDZ)iyL)&#A=8!&9UEQa5U>HU}+Z89qvC$pxBMnx|J3{9#{bX-z7r`SuILy*zO zHFi+jih$#H?ly{j)yAQWNMkcuJyi9mUsXUrpir?eQ)+ZI6;P@Mf~>8y*dH7Tw<@7s zp$DtB|NV!X@y=*?J-AIjTUP`ya36LscuQ!#QmXAU-n;E~)WL9i?{BE~k3GNw{Xi=y zItFbWdY*}+Tl85^;Ly0|W1+Zcxm}hoT|}Ax|13Gaexj+2O6Td}GT;Z{nbZQpm8(L| zZA#ShK7J$Mptb|*HR;F-o1J42R2QuBD5CcZx#0@iDQ~A)hSANX?%Z;63|ta0!UZLs zVjAzfDw%0CC5j)p&@>bvA-G}}1?pLjfN>qM(!MwsGr?A4tK5VP0apx-SYx1e(LDD(>s=agx8w;x2+z68Q*p+oSK{-qn20Ua7cY}Kmm7>|GN`9 zl7mNPVLRbfyHeK_Ffv`Pmx`rQfnA>#e5J0T6~9q!ckx46Z{K??LB~5tO^m}=K4_!t zgLZ|<=+`vDl5&&Q=*`P4fO7Bp^&xb5x|Bp;S9Tx_4Y%lzw7cCY{X!7`Z7TdylXcUO z&wRYW{0y`#-GeW2`L68ZtOO+uA5AFy$|w@ZW7z>dAR|-*)of)OgekGnSbuTce8V^N zbzVTQ)GI|Hsq|f=7y9L*dN}*Th=-uB(&*TJ%;0dc-(z2fCxyrXhYQFS4bbuq6DWof@@V)ggCN2q~sZcjEUK`U?u z;1Vb84^U&ck7 zGzko{VXX98W2poxXnssZp$Gm7VlCbwTV9Q^$sd{uv>VhX)0IJmt#h;<#e+k!VA&RP zzW#~YM52Xpic4QNe))8vsKHXAJtI4kMhE!HT?+A2eWm-ioSU-$!TFeo_1QL{z@Ccb zdfTER8wT@13^k#|vN}=kd;1SZo@QtXHjWNilM>r{X|VP*>d%PSi0rjL;gcyH6Rb1j zS09Iyqb}2Wp|oOfxBm@N=Z`K@7uamCeygzKIr~IbgM1ujxe|y|pxMLzalI3##!;ZL znJ0~@a3Nk*b5$WJLSQ0aWPoQ&mpkVht0GYLnjc1#hWjch_}R9ERd2V5k9&fr6!n=` zW^AehkbU-|iBp|TOf-cO1OuUDR zi{12eH7nY-TsT1D`1wGN$9MQ+*+6uL{xuE`yW=D1(xn<%oG&bLg@Pm5(!(Zd0oN>l z-U+_&t>Eew^N#uTQ<}y;3izI?R7(wX>V}v-Td2_x`>reBri2tRj+8P1DCnFez{@4dgy!3PMoMjSx@zakgQ3syfJ8Y?_rmt;WpcJi3M2I0Zju zr8@nWfWxR>TlTIj*gGux&&p^aK_=q|1j-n{nwQW!#4qJ#m2VUDbEgC>yf#Wd;^OPX zu15iOO#EMvV1Qh!g$Z>t+JlAh{fB`C_Xij`7n{txd9|f_;TFl5QmEaBt{=9d{{3pd z*r9;3twH1VM#@#rk0;8!gMSf7LWXRT*yka@%YT{GJpJoM9;^s(UmgEpbkc zvpK1UK0YgirvfY|hAj6@ylA27S}tvq?SBzct4K+dbFk6e+{aRu zYMZ^wQXVScNg$SLgcA+63#kau^ay_9dI47-0exU>dC=FA6!BgqErV|N2ovvpB#sIW zUEFPlwwspZYG_fbD^YnyYxszK9KwAXvyBOpquFz~E_C*%Tol#9p<{?Pk14K`9yVpd z+<_H-MOvjTvyv7B0^*)v98K=boI&U5BX{+4WT35ZLuxBW&*q+|dEuTzCjmft-<0s| z@(k{O{JK;JU{MT+>U@+j*1$|9AeR1(ux9&wS5fAE#8f*YK6|=SK>^g(wFhEaD)F)* zZ2nUiCv|TmH5#9JSH$9;Ol7*U7@fdgMXEC=cO6cJo@}Z5uY{p9cH3hc9;y{3YwT4z z?tL7%KID3_16uX0>&MRx!2$-l&VEjdc-80r&qp(ch>Z9M`bv%BH)XniTlW^E8`T?8 z5BN3SF`lxjzT=5^*)dNv6PKw(yWp|+DY0X7(Me93y{a#;S^$=ZK2_jEr{kHqUwK^( z0wc$%^A@Yjxn%6qmxpH+N6e@?B1I33h6TfDhq!6KG#Irm%+e&o*v`zkv4-B*&&@pX5B}aSmBlK6Y*c7PMpc| z@eYkk#wKqN_71K$J2Wgu`k>C)-mR(yfGY?o(2E^JObQdeW?ejo{Hob&#)>sQf zcoWzwXx91vl6~^s{^t_hT<2hYl7L>dbyD$?YkeX?CgufO}RTqkYpnE&KBVB0TRUAU?SGQXN7koo7_9!5Ws zby4AA5ETs>9+vjLU_?IyC>(k;?#Jnx%<9KL_)}D6i8qTYLe*5pS+NLoSw^ZPJ;nRk zDO`|6hcYXOWSs3*TlK52MQAM%b2PJyBBp5#sZe!kd%#vd8mM_;gNY~LRBL3_y*W~n zU!l~)6B%p~xZ*hM{{qYY#`D}(8Wk}y5bO9k+rkgs6*%)>D}IytBqKqf4*pV<9e5&Z zM_=7#Ga?;Us;Yr)93yq{EBNW^T$$bi>y0I2B4A6CADv_)TVpI+Av<5t_at(o-$JE+ z{2jb~ZDlx1f1Spwe&HrR9~TDmb-XuTZJS}y-- zCR@;+EK75MRdxn4{+<|pRwuHT@O$~sN0&wixrl|+6X&)kVCO463_oXjWj4eG$pKAw z1cYK{?(rF+iTRU0XB6?6%AbmybJ54uQHWv)%xkUH~$r*2{<{HSnzs|pS>;V`$)xM z5h=KT#)b@{3m|Eam6X{r(e8gAp$Iw0FGsJV#`nlMpV4(+s(QSZXGq$E(7k9zu1@&#ng)i zky4lLq@n|2x88lDpql5~9=Rwm_jV<*q2x@b9^fDiR@Yc`O-c!)U=(cd7adpNhoq~Q z;8E^)yYufycm~S$lp=?*JTi>8au}CJYh~C^dY7@KM~n`(k|ggHxhBPwHrIGGHQ@?M zP1_L$a9{FGd=SCYaA5L&8ONnJI3*n6eZAHP3v9k(J`}0K6GZ~;!y_$xD*q!U`7h#G zi^coH9Z(vO01U1H;GcdT2F~J8(qZP#ZldZL2U4C%QL*=0|F>~X?_ zwCzHUf+6q3%AE(x2n&>dLw~9{k48v5JuGU+W$!vU=~4qK-lD5c^JJLREc2;pU1*MbWd->otuJszJca%k`TEbP#Tyy72 zySB74m3RznOI;|z&{1~jWQC&GX4}(+m*?YU;%iov>wN%mZlRutWq+r!;zM+ru2{my za9ffUS7_KQRMvKOg23jh`m*ezSzmM9#h^wPNyN5w>jp9SD~jz_8P8xl>FIXS9Cu>E z5IVz{Mq}^&U4?SI?k^Tf^9h$-3KzQAVP_$QGe_dk_}MQ`+X2r9C>y#%>D8>(d1jEx z6iurxRyAS3kf~qPEDYDZAW9%<`}#tu_VeUM(aEG^I=6Pt?EcfzrTf-wiZ%{QsP6+} z;QXf!2ex?qk9307aOEgM(b_QTzj{E_w{~zK^&cUmzH%ev-5c3Xu(DO#;lteK$gFu5 zDXW7Ob~txo2CwJ0{p5QCb=|@X)C1i|6WqiB45`6O?$o7~wQA#b@+&KU;x7>S43KNK z$^A1MMof4rQZ#fso>^NREUfukDLR@)lVtjSX=V))SKD3OnX{f4fz^Y0q4kmEvp8KB zSKE{53-?rFk(Kv8{}q_M72xdxsD~3^87c3HFL5xJc-JBPp);wxOKeNJ3aK2*&&LyX zYt1TZPiGpS#?OVj6QCldJTHV=J^3L}U|qEJ6rBVcBzzL+VE$ptDK7x%>v?SH8o<=y z#@c|DAadfxq3=f#Qgiv^yEimuwAuU6gG0pXCUTAclwqkpdLhzy@LdxvJY(izjZ7A} znbZGfj6ugwRSraN`0VfwO<+l1bt$o`oS-_A-Gu<;LcjrN+?}@7Bm4CCz*e1Rtqd=m zLyd*Dt*{|ZYR2K=Ih>N&z|8+H`F1~T&va%^t-G)nLK^*e*<>HcmxRiwW#6SLv`L`3 zVV_C*8zT6Q1T_q3i-X? z$qIlXsRFSsh><-;<0u4Psu1DlkfbRr4&$qrZ+c^*1)2-f?{!2x^KOQ~7X-wtwc)rD z#~jOQ`gI}ww`-3#`%QxD>hSIgE1pyXeE>8Ft=}sVrO2BOc~Qmpgk?!&FT^{DxIa1b zeYzU-uN_W@XO9ml)A%4}n2 z5)XrhlQZmGE-fw1?p(C(GSgEpIR(fJEd*24Li9~!v;la@v*9iKOS&Hlz9YFmM{sEg z&S18CdfKcF8XqX3G?fK;hnK@`Hof3)@jH}t{AkT0 zT7yBYPe2xkmQfymy6zgueK@#THI+*m(ZW=&rJI7}{Pw(z`fZzq(bM+>}7 zJjEbasjP+eJgUJ&8Is7YUDEL_R47crVW~~&@Pkt+V5&C3#3!7t@t=oCefg{6>p^?N z#`dlh+UYrHh6^7Pw~PXBFoGqr0N_Wm*w>K$IRa2D{Y)9AbMRNBzpVV*9?I$IEZ7ek zi>o*sB*Z)DO)*%#{5#BHYGX1|KWPoTwz8BWbz?aD9pzUOUN0X*)9b}C*dzRJr2o0q z>|OnN%`pn{o%ywuEmR_%7K=YRHKpqfCCE#x8m;)V6>^2deWf*8oHHBNGCr`{*HzQl z*1p_mbKa=Yema=^72de*GMtT^e&ba;``;h+z()eYe*xahIdykU_v7qw>eZRG5EVxo zCas}@G+^XV2EMCilN*rjC&xMEPB5F{W2WBqeIU`=F6_t{+aoEP%PZ~sp>VkFqeQEw zEcmn}%L?|(IEkvT9Wy!p-Dp}N8AO&9^&8ZCmZvl-GOEF2dmd$@y|0JzcmyQNPp3|4 zLxHhINyFUfDCq8*Vp;Mg0g9fCgzIr&7~c*$7qJB@AvTRh(gf^%@qES>(>WF=R##z` z4e~D0&0x{N5&U@HT0~sjb>{lUY~Gs4d??dcxecKut`0Eu^E?;O{aQOML(Te0?On;J zDBfNtjzlC;9=F!)m%=uAk!znVgN_0ZZKs_&Iz#vvd0UR@{%m!$Z5z|DF{ER?aP0?ClOU;BPk?nyiJ6+v-4SstU{_ zctkgW&o7Rh*SjC8{ci;Cn#kP8vL%wrillG@)hp5+9X2!*Sh`eweOB$_c-7n5=U6W9 z{S%1+N8o-ARP*q*ouO?3z0yO0XtE?UT5S&e^FQxGe>1H`;BckjsoB%D0y!D{il^RN zX4#-}$&AG$r-x57(73WF#@N=k{!xPKoGX`e4t2V%;luv9_wj0TnyWJR@N#9x(+@gk z6T-|t*2?*1$@O-!=XTy7Be)r6{p9sVzxI=B`YRFdQO{JhRTKsACH$wh%yVu3Tn&Q1 zlews03TZ}FR{XcNKn3URUwX6d>eL(6euwwtrvDQK~1oI%P!RBO`=(%`w zX4g18^BnRSi_E5*6eY@vECwkf;}_?}QSHSLV>C@i4-c_LE!#N|Gsu#g0&hL4 zeV;8myIwF;YgEM@n*TA|&Y*$lYiLxAj7y#VjEysT<@f<#||xgly?s za%0;mMXw|d^_Ec!D@J{JjMae_mD;?3OVIa?7Jbj)PRl4@x`{eMN=uEe7AQ}2LRM!8 zWCv$W6%yd71o!__6^4DBFUL%z6vno|A;4R);2ibp*y}Aq1Zm*%y&kYi8+7?)0|Sow zSo7-$rZgECeR^fiKMid8FE^WksGcV!?6DDdx7oOWsrujH$JnK}jFuM(p*6_8N^3#~ zlBH+`ID|Sth~KE2ca$~vTQ}k5Y#QHARZ##HD1xz@b>QZ$jL;n^73HU;X#9;oA$Q*A zUyxk-;swXxY%tT9@(Pa{u}Kx;P;NmAFB0vg)&mAE>E>=HvM|N%$?sj9>TB{v+rC{D zH^7JT995+vBU0$NyeT8$#+Y)Sk+`9VL$>P2fQnM6vKDP|ZDpmLi0AQwJN4_|%=O z8fhvLL;@8?oV&!D-CEd?>4yxH>ALBjTddFJvLqS-C}jPW(5qkxyu>c#zizHc9o+EAXQ@gFr71@addtpqx{{xG8L>=PZdAt3004{PG zad_C7WxF1q`P}ifq$}#8%P*c3@F9;%<9Vmlvh6JFE8PO^b!lIqA7|P>0(axr6^Lpx?&&z^xB1Fa9^fdS%0E8 zyTtZ)c&vhwdpxuy!d2yBkHq$UY$=zEoQI!I|If6VOVN(-fz`$wnE+il^-} z@Y8X>9=2&_jzf0n6MykUShnS8_|xvVsFBAki@~T-AFAb;o>OhkGVuO20XY1Ht+0Dxw5lC|epMEL3^L}9~?W@|Fo<~+NM z*2s1=(y_z9ahEZiM&E^@(X6lXZkSAG=4$5U19;;ut`V{L23H%(!*kO27{TANgi zrDoDSi)O+vj{({>NW~-hu7moJitk3|JHj6KELe5EwT{b4jD|~6jm65ES9MO}h26sT zADaplOmhO8PsaXv?ckDt_;QiP@38TsJKnl5D|EvrKLG+w+2F6q&jHTsUz)r-=Ahv(A+Xj6Ck z@ZiJYlo6Y!VcCa{HdV}HW2~O&qRf(2DMH=Ff-jqW*&mF>#KewLE@DXk!E8|4#63I; z{wq~LmssT&yZ=Viz~rI<&#O_opPl4-#4>OEBfrcT(#Qp`-}1N>e|56SXk>Utn5#0& z54kDP$5b+nre$A|NUOgK;@SUva9XQg0HVd-O$Xy}q%h})e|cb5YQvc6_1)dnmuWH6 z*ND;*7q#j^fN4bM@&tAT9gF$L(l3n?fuZMv?^Ewj{tmfAJADqhGN|LvU#$6k2eJ#t zG6JP)UoR~q0yp92b?!>FvvZTniyHApuKjSsCrm0>C8Y%P2>pSu`h7}g(JGLr=0g`@ zHTGXQu5}1$Uz)3L^L|fG&AhQailphM`(qQsfU#b~X{uz|KjpZ?KH%$1(>9XKpKfLuN z+;I1@i0RZbFEevW>DKTsVYG(j);JKF!jh`-*BmTa0`^hgVfEO3TIKoT{>$Yd7i#ez z+~JEh9lG6rGP9R+;5rTcB*qO4p4Cp@ZVx9%e$ooW^4Wo5E6r4ux6EEbsSNM$>geue zM`H-ezthYKHCWl6j0>mf=oHoyQe6*FPY?<^ERCq2F~7hc*4qg#NjJKo@))4=u!`-( z)Sv5m+Af)jx((lR?kQcHOjzS-?Y?i@#N}u+PyD%t?JQFF>M%byNa;KOMu4rl#wxRQ zzAlh$EsPwBx~IEoWb9|xEluR$FzeW67v^I)RHe2zW0roNrIPS>w)%t{Vie<2OP zO4B2w($nfrxl81eeC9YIUjvbQ!7>>rtUQz7^s8};2Kmj0OQ&M~?Z!)isoz?B)K;K4 z@+Nm(*FZpogc_gSUZR-SPu7+0=KxUk7dz;R$zv&K1({3+Iey?M^1LppUg(pvNt;$)d7^qJX#G=gwoa-SBw~#f|(PnA@>U zdbimxlDQOXBCqp{7O2i4zCECKx?6Uin*a-#%Nl;_Mf~)bFaCnxbcytLn_QrU-IM?W zI{zCYMt)P#kc7cCTr%?KLaJFBrx_tqo8=s9poGv*d;%5hRx@?@zg_??d6ulSPmNZC z<4J8?>(?IR#Ac?Z+5%dv8_?$ZaGUd~r@+8nnYFu^m$_Ez`~^~gpMi#0z)FzTFte#XOw>GLtuRhHIc_Z2vY3JS*d>$zVg&2I-}xQP~% zcMGVS@+<8XCO&6q41df^a21`(3`=aypmp{0{CeL*X8bLuVY_>;$rQH;cy;M*ASYHL%I3e?)>mosEzAKz{Y!7Dvvpvs4RrrWiOobJn=#0g5T zx+4SsQ}jv!E{hfwwe=c8!I$6quv`(UxwSoAO1-svhSrSwBL*$6BKOSHT^1oa4$Fna@Tz)lRFAnEo%Wg4fuogHMjE5njE7#j!+;*7k}T zHNf0v^*vC#5#Qc~vrF|;xq|oWcZ>lm3{;bG~0p7-)tk#rCV|FIg)CF!O|0@Zh8hUC-M{W z>o)JNWi!QO(D5#R6T9`8Uaw^7ZqGd^m#VR~>a?)8DZkoE`fX4eJZ3N$G;ax`%--kw z$V(V>(!X6Vf5A_7i|LEl-7joP_`CCl)@9nz67AO^pSbg%#kVpnDR-di{7%1?gBMgV z^zP}|;HK=B>i1Jp0BKF-x%^@Lz(rD9_u!Tu$RFd}=9w#cVFjl;0KrPWwyzmW>vY`<+QTlwQXqfXMmBc0mMCn) zn0p~cQGPUh-SaT^v6o;Gmd8Q4K_2n>2D@)N3>2f+?${{Ux~5K^zX~SGZ*L2HpRrM~ z=xCheeK(6U%Y-S1)AEwL-PZd0)6wsYrP@IB=XqgHeJwjeQP8iSGzNnN5|mTg_%9^{ zGBF1rfES(6&ZMN>g(wSDg@vZ00VvRn%Uc!#H$S!IyMbaSSkn5Y;T~Zh3zSqt2jdArLV1PrY34 zHB~!D&}q>{KNO*5@O&yG?Ow2=clR@JyrKL<;d+;w@eGqZh;3a@#S|imz1y*!$gUuF zd?8o9IGOn=_fqZuv2|C#gPwdphyrxBRt_qFhE#qM)|FR-PeAf-mP zaAdsR`Q9_4-AmcYBA{}&&bgU{TS(=t;fa^dBFJyzyIQQJ?m7l-hr0VXMx1$L;7L+@ z<1YC#BD%>iTGRS)qlGOp7;u@?^4@@)Dm3@G@0WsYjbrN` zurqMqEs}!urMaoi9=7pUH$+Y}bjR|%GMv50N^2)vm>9 z&7(gbj?`j)+0b!wMy9{{!{)hOVfb=TO95!rNW)2CF3}i$pS&g-!~Kch7j zCNZI%&r$|HS~7e%^2=j1wvqC@OCr;x50VUv(SSr|2}NywvJe?u#nB*=dfCcCxCHMnCG}V*+#4`6%tkTJRv2CD z2_S8dj{D~8}d`gAGoJ+wkq!PQ$uX8@ohq*1E{MoWfIm@Oe7!j8n~%weDu91hu(a-abxW7m%^#}ux%~I; zfpJR;6w-}d5pwqHpTkZQL;iXln}M1SsFBmH5(@xP3#<0mMS;d*v5S>j*a3g5-j2>d z+9RX%G<=6mgs)M*oG88R*sE`+nj_Y|%GmkvG^A3lqb7W4s&@Zvq7c@njAV;S>q8EP z-e=bcKU<)T=Aw*P44TzVGU@MS1<888-pPXanqCJg6B`q-5*ynCCoe8~rli0Nl3?Wf zoQ9A1d_-T&opR8TgBm1;aDtoxjTnp#hgLR+3l51yRDM0QIGbk4bZ6j$UJAk;T)XTe zGj-Q&8Fxi@cC}<{%Wx&8$4tH9qh7sw?3H%6iTk0$Syxp$r9%Pt7XC`+7Ijp^1Da30 zVfy^t-y7EP{g(5Z3(je`%Q#`}}kG-#cimM6MP6!0|purQI#Rgcxnp_$Tcyr@wo)cYH3wQ};seHe7zQXQUk?ch1rM@e0Ic z{mA*WVDQagl*M}VY|?HhG|JakAuMw#JR#Sk%bj3%oxDY#^78DA{HdXSorm$Wkhgc6 zg6lfziq9BDyn0OBE!7Z1F2WDRrw1Ip?N0grBksg|lG8+@Y5VE`)>_pQV*^^8wG5xa zx=qCFUdidIH%pfWqkHd&RvJY^XBXS!mU`f_!w$Sm-(B`X!(f3AH?H7raLaR9& zNhQptWCoLVhm+xN+t;mEGjux2T3E6D_tT*)A-_UdVvt&m zdX=vvV7HqvD7Y3|ySZIC#?i4)8=87I!UV{2yu)<55)X+V0r!12(1w>Fetsf~%x8!4 z;diMz#yHjEfcrItPC;xm5gs+e$WrsI$lmDoMt$bG(o*b?l#-OA0dmd9gU= zueVaRprsKS#Z@*9#4ZPFag6;O zq0I>6z(;>Z$j*l9UDvPNCsJ5^uzm-OQd}xC&E7xS;`?lLn5F)#?g-R-am6Fa8-p#l@|I*3*IPAP;O5;!L2uI4PTkuSo;{~>(FYxi zQ2M@`LB+kRZGC7WXUfXCp7)vPgNZHXV>#;Ud+lxpi;y)V108q?!exnBplxXK zY%Fc$X`wY?rz>8deQIim@D#09Hco8q8wnSojUhXvw@VR%9D|W@f+GH&Wj1ItpLoXH%Lpu$!c)X}W zS1|9FSKrN#AIaW!91Jay6btx#f z%jTs7xm3m(%Ht=9kICkVE#}Ya6&HWtK%=zMzyC}od6N4sHb?c0(}Y2+w3XiGXD%{r z^bhla2y0p-dQ{dm+LWd+y&m3tZ~7&dK7#Wy^Q@dHX$37_g;Wmkx+MXYL0sNew7&OE z*}b^?VpxWq4BrR4sfKo+hJiED+n(WulEzk}jl*E<#R(~IY%|hvV)khBDE*#|_D6EU zmUS^!lC0FE)C%X>r`FO4=P@Or#kowjcR;ts*OKS034=aw#rEF8&WFSObvr8%2^yYm z4VYiaaBux;l>- zZ3ufNBMqjdN*d*qt(P)0nw||h>3mC@e2rKdr~CH?xX5wg0*3x~sHjKk@o%mPgL=hb zZITj#jEa@^di@ShsB@i@6W{wm$&VJ_a>g?JwGfPhxk*ERE|Ps3Mp+*npk5!iZg!wh z(Rcg|k^Gsfwfeh=XmC9Mv>7P!Z8cT>*PS8IZ>Y69ldoZK(BPI&;HhP$1YsHghs>C% zav&xNak<cgv{B5x3swf056a21HOF+(7%H7xU`?`l3I3XNx?Jz$k zRJN_qA!oqx89h&l2*LUT$~X6nKK|}ec(Q4PSKvZdHka)+ixC~f$L%&s;Ovg1Vx*6aQimZJ;f{KG0Xz8Fd|t6~qQ^S)SVt>}1A#l6lC%ajRmV$Zv! zv8Y}69J6v~C1m3LDLyId_cBo|s+L1qEB79pVph|nE7PUM5t)U#qJn}OrhZJ_uzj2t zZUZAnSBZMQE2=;a*F1dOeM>S#nXieWLQUl>N=MgymhzlEf6VE$F&G@5=MHw<8^QB| z0BG;Cbsvx)&V(LtpUzv7B(Ds=*oJbthRQMrJ9bcNFYOw)Dg?5BR(|oaiJC#vN=_U; z0>6<`GLsOV4%&3x>h6-G<|bl6>U%OLH(c8TfTe!rSQXx&dXd zEJFp%)|t*;UMJm=GyiEWelU-G5xd* z5+U*_oyEc3+l#u6yYKbw-xYMO_SLEj(-Lpt>R9iNy|=SqExXh8#P>_L4`){DT;9RS znXV^0%S1;Gd(UOLcQ}4~TI3gg^1CT#kHfcDe2?X;Zx}odF){M>eWEnBTXXJw40YKM z<Rpf(%!du+_zolp%Y4s9*X zL!-r?e%W!|!q*sPd z!Z}7>ANLOMD>RGsv4Ri3qgYn+ZNP&}8mgecnC_=yM!irPV&ffNQDeGj2x<##k2x_? zq)x7B=SRC9a}vdJnNO;1JEavhsCo;JwLXT`h=|3NaFd z?oMPCVmQyneq?ju#D0$J2Z99*Vp?MR|L4aFLG zR15-tOF@F8*Ljc@+7#IdJ-*2t-iFM^!aWUj;SJlBvHv_YY2{!L+Z*gguOHb@Ol%js zT1Uj3iekqIHF(R-_DI{svWzpF?OYtp=CoAf!KHFFs|7o=D)i-~^R>%6w`eydNlA!( zqIu8zoU96JnKi#u0mpT-*b5i&C;*pQ0g);urBG~lOR_$XlFOZrx914z?U|1J4sHHs zO5$d46JE3!gk3s)xe_=2z8-xcEi)ieE;Dae6a)GRX>ZY#x5%x+2LU`mN!|6T?@#&U z5U;3!PAbye3IKKtXlEl0@b2npmU=t8pitfpXMIQIrB8*f&lb%hLy^_kf~YNCup5CR z&KDu!{M!d@dX)DPee7xxAQg|NcqU4cL{s0>{>{=%ovu$%W?J-iM5FrI>z2y~D_^S^ z-ja&s6g?H#7rAbDuJGcO zH?zqQ9q^C>dRqRrhiRqGCfn!useR=BXY7ZA-xY3^F_k?8(;D=MnnT@ji&m86I1io_Vur!c2OJUCGTki zkb-a>u?{e4=*+@#TX4E>K~17@*I@a|SzRIf(2IHD$vnRusWt(GPTFT&*}H1&!d|Jg zyO!$~62;yLr0Y-SH9U6vS5JU9JN++)V_;o}S~sG?D^Dk*!qX&WBa-_K za36c);v)np5&>>K3q%x4JYzF4Yry35{C zCk+4?sD)7NH1z!wN;X9@9mbnLaI#?KQ^HBX(j?evN6pysOo6CJ8g#HnDD|;aUT3Z= ziK4gN{zQBfQPsodYH*_S^{63ECsz0Hsu=0GGD{j=MYYf1e`eo0VH$;}Cd~adE4~`! z+TU)f9>!3eS$7gQLn4>@bvYbcx?e|;Y4LFIt{w9;=UJLybO|2UxCe-qASRpisFP@! ze>2$f-PQNDyEyHRUk}lCmcx&N)m}7+RxUV85*SlSuilwS{6xzp>SJAW=M=bN?V)*h z@6?#2Rlk+h=kx%5C^-(PV&^o~PZWsJ4d)EUAIE99l$1r2w9R_LXPEaULOVJp{ce)l zezVS3=e7G8)nrQsQ9x@%#fbE^F$w!Duac1yK3V*m?55m@B`Vg}NODNIruL;F)(;DK zWol1bI?+a^)`vaGyxn$aOH@cd=<$fZBA^qCKwcvgUOHv^9KvP#T;dEJ4`We)-Zts9 zCx9$WuHt4gN#@iUa=Xn!m_kNt`ATHzUj9h0v+?M@Mw>N6Dp&~_4;BL?PDWq!pt)c*O z*AD^&ZMOHQfH2zC0;X=JKUe_r4kAVTXnJ$`yucfG0dKRo%E!qodThHN#^TCxG3W99 z)31KZB(&hk-%igbDM?0-ZY9yFX(=GrX!)#>-#57{Oug#QSMW)Z{yJ(*2q8E23a{*j zgr$92axfk_<(Md^yadly-(e)-&U^IOq!?Hu~i2fhT33DbNq`L-4k(cpPMWgWNa0^jq%A&=&)C7NoBC zx7~GmA?WEjm&XZc6Ko<3xfc_3bD%2L8e-*yJuFc*r{ITUMAlsrWt1ebDx)gnB>a6S zu91h;(Yn%4Q-2_#U!bCSeSWm0b-Z;UZ~bw!p!vF8C)1cD=7|GFa$q|=`^toF`}kq} zWQV+DDFF5aGwbi?qap`&rwqLBUJ6uiP0A2Xha%=>-w5Sdr(PpU?0y`K%*D&^Aq<)C zxj|>a_dV0|`u&C10*aPP#5*mFuZgBz7IP@dk<&~j>P6ri=q`eQg0H5;o00q3r(^=F z{Ap#msZ&xr^X5q!i3kZ<8qHPdtCp=yMXpU(?zy5SLlBVLa=hZ#eC{B#b=@C?`O3zM zuXv?;bKfn6%2PCI(k|epMap{LHlobis=2Byej=N($6J5+RJ z@-g5jUcgx^LI1=U2z%W=BA);Go(`Jj&)I z%br2+guXEb%^)u~Hnq3=D^#Zk(<~#@WdU@Y`*fglCocF}qQ#&cdNo$J_u1L+8}^_n z*`t!njBM$&^JiE_2A8Qx2AvADZd9%IXB6c+Jp3VhZr2~}YP!!F-K4%7-C3Q_WnPWD zuVhI3`p#ln{34Jr_eyB|tNL|iY&=RMOm&ry?@^vrM|o+03dqZ1;Xh}!0p2*4-t6Gw zYl+x9?}*4+TfQ6NBEW1N%z-!|_o1z{tub;M{-B?lbIRD=-E}kaLL^;3aEm_ksu;DL zo0y&x{{4VTA5#Gg5|vQFhFRDANyA7;Z1tsJiz0>{`!ENudy-+tqxEkis}wDpZ^N_0 z*5d+dY3VrKLAq4_L+2N2518dFo*havA^89qi83(!;v;tIHcYaO9ib zz-XNpynbOFWyGk_=pUrPNNNbC-m{jW9tRujXQ=_}0TcRZzNiQ5T z<|ia-e)jSIyZQe*v;T}Z*3$D9SzSk9U?8C*&*XOiwNf;ae}aQS;6<)z(lZ3)U=SGY z42aMC3xS;TZyUSM5Mb5}eEkf8jb{jqqOsvnd~QWD43l|*|Ml5_ULak=pp|TwUhm5I z8a&-{AIJCnrJo-+(kGC69;ufm3KC$2i=F}g8SNBf=x|uTCBI-gJs9qH)38PUlaURR z@wCvWX^8}$W}J(o|0kpGSw^|=y$T5upab%L_vJqsxG)(4;E={IFqL}60}!7Dzkqv5 z^#Y8S^HafGof0x3{np+8uXb)pFv*%aG~I&;;G|Xb(6xZSUpI=p5E;aal|gD(r50Fd4hy zSXr(Se(54*;F2i8@^B>qOx(3sf5-R&E>#RR9|=IlfPvlQF`VweJB+MfIca&t|1_oe z4Ez0etv^HJaJH}nuhy6i(7yg>OTSNrIDRmWkbLIWdkLU$p3fT zu%WYH!G<#v?i;mPj^e$>_Lp4jG zN#U(kUI?Pmpz zHa$rQ9PMh~e&D>b_=hzt`)Aji83@!E=wzp1gb03g`ikMZjH5o8epHcIhHjwk`#K{| zV!R9epWG^#|DAfEnu2Z?ae&;m#fk7Pj~))e@t$pS&gwT%q;;)POy@1_9gj)(3HrB+? z;<^6}N+bc3+fB@*8jcE1q6Y*yeEoZIempEcF+g8`v_YzP!7W(&m(@~yh5?yf`A?5L z?5?&GV!(eQQe|KwRCPwyH-pDc-Clv+{(Wsh`2w7TKh!k{FT&_%6HWZj(Z!zgtJzmR zW|(mtUQ)&Xo2g%J&*NALTrP(hmwN%B;2%V#SYW!IpJK?_VgdavEYfItB0r)6&pTp&+ z>gPyM);6iJAcqA!dR+Cn9f{gYFmix?zi=9yp0xN(!blLPq4E(Mmi1r2dnv+#=au{- zAKp1+%(ASIHhDN7PY3XUK({`z-L-!fG_e!MY5zG?qyoFt4sEjQ>T1l&*F920s2JFS zKjGMdKRHJ@13&^q(2xAHT_^=)3{^#>vsNTReCFq%`NXb(M;$G5e&3@bWhPg71ZDd? zCN#`bV=TNcDl`H*9UjCvXZZW;n2fZm$X|TL*1&+sUJq^6v#&y_X!yWfcvLxFp_)>W ztJg4G=r5h)6}3Lfy=Kssb-Bd9gwKZ!R`@gv7jdYX#GA4?`yC9 z>{v($ZUI^N*p^O*oGkfl{Fh3meHjqx{oup-(_?QMLH!Q*=p_0i(~0BxfjP8(FlDm- zqk!4?Zr@I@ouWN|)EKU*K_TA6oC~smnqYbsy^fUPN0I(PZCPm3!ge3YWh5TS)qnVe zIbfOjJr*CvOBR%h*$+c`H+v9pN8RW{)K>Hi>I#10@Luxd#NCv;mRLfizVr(DJv%_} zjDNf*Nln=Yc_HX}@|q05zuj_9m95Zx>Ep3`%d&@z?Mws7pxO(5@=C_{_Rc4|+S$9B zbVp^vHWReZ(5+r$Yku-9oijRdeH9^OI+FS>d_6uyU}e)#u}@F;Uj%4;29tN8R2;IK z0;tYgijl@3SKFOL)Q4r+od)1l9buMU7Y=(LbOka1!!oR1cBd&kiBluH3{Me6y3|Fr zi<`e6cq5BH{S<}oQ=-9^qZeo77dSV`&w~P7&Ykgl#uexTTJ_ZE^hx!9?Cw(eG~3<6xr*n z*}$1cb1kJMD)=M@6E*)_6oNebfwM-D2#~<&RkKp|Q2|PYbgkJ$i%!LAvyNNiF|l*w z*e{9HGx46YqUAN|TbrMvdxX2Vg;C};Rw(XPR08J{G`FQ0l2wVSQ+5QXb%cWLQlx^; zQ+)#n=Km~U3(E=)2{aSz$Zm=tsLuKvd@z-g5zsAhyWUM#z8(~nfDdT-q#BfrESkks z5bnAyiH;a9Im4PSAfc(5yeUIpWK1`i{5mih9g+FjCn!jt%NJoDKX;fsBK(S=eUMYl zAxI66?hG0fUcf1nJypq-db&sniGDN{$h=~?a%7zrF*9)9vA#sL^NgG^D6GVva%2mk z%w*&3XivIQxkqeD$yHH6su%&U{-v_{sj#Gw=8s6tSA|^B_(Li+uRtL_0P(b?PH^w&Ip} zTRUw@gHyRTq~*ZWSySIdCt&@v{QZ=OD{an=sYjt>lZUt2Q@AaG04v7d-wO?P5vSv6 z%I#({*kP%X{%@-EbA7H&iU3~fI4mdt-eZ0~z(d?mciz#8=GinIYFo0!Gv2lfpE@rx zVkZXg3r1Xse8z98i+S=VrtHi==$MM>teMOo4SWj=%zXOrfFxAkLozdxD>%F7Y5Eqt zEG&faE40Kp3XiKzuCdxKQfMve*k|`9TCz4NWsUF1kN~(03eVW>G=^c9e}=+`KAJWN zzuWtOtln~|NIA>tz{6wz7Fwv@kA9hn42WxAau9bKd{;HbWiUb8r`e&f!sAQXwjeG{ z16XxnQ5m!$0G^O$o$9hK2TR#%9cYRF7Eg9V`|Ipu&+KanJ_MABdt5q3by?}d?Wwu) z`Hk<4ipTEO(L}!CPl~LQ98XDEDR~pg!gM*wLJdo7kCUtd$k<{hkQ8o1DJlfCP$&;R_FM+P2rILOWSBL zx}Ri-o=o3+0U3+OdUrmUR!;*qo#^3sKN^|~B zMAjS&d9tO&ppc;9G4;@AaXw{C0<`ATeEzl;8tepwSR-^IJUh()U!HMDfOtMi1WH~? z)%tL!h`bVMzH*lQ^j|{s`veD@TO7YYihkT*YTzUhR;&LfcU~q=-X;lZ0>W}hhkBMr~-i-p_Ipf+Ue)M_wS|6e5Te`Yzs_&;c1 z#X^~*8Y$^d$FrVB|9Ah!`Np4VA(QE@;2?FDnF7)}LnTO$8JIjBn^yca=X>ZMv}dIk z-^YsU- zg~NFkkCh(?U{gD6-6k;#DG|mjyumT`ii(OUr?1>)wziaCmS>g~;P;Yb1^9N#A_^da)juVt7zO>^OR38F_@4HOWg53g-66a7|#G|IsuqMwmn`rayz z)!bHFG!e(nW|wwrpYQTTozL7wog1nLTD}FAw2>B8WLk90 zcgk5d#@&my$8)}7JbEtVzx?d1&ROmEdgEe!&n=f>`C*DJa7>1D;ZxDRFW8hos`M8M zH>ZmCb)&T}W%aJYc>&_1mi)rw(eh3{G$9);AsZ=wzrT$tMWaz*Kuvh5*4z#8HP<;9A@~WYDtlB#4KDR;(`bGy4Kkdb@(Gc=5M^;T}aus4pU?S)>A+rG@T8D z@b`2OwZWv$0t|w1^E&4XhqV?$X0Mw}4dBBs%9Ii+o`1j}L0WX!luGmQh$fMEgS!!d ziU`zS&+E~E6qMCMTJF$9%33zCs#M_~-vDP?nTmel*uITco0Xxd`27m%*>KcnZ&)M% zkNI3BcY4Da5uP*%k;(ELT(F-|280*vAu9L7k>9-hAeJDIp3ca|L6339@h=sq0 zG2|z?NUQDvYS_ZWQy|x#rsA~WnkR*)00V3(_zwb{(bs#-4pq7eAOeEB8tW&y$cA!F zg)f_}E-e@^2f-Ehi1*75N?uBvrVPOns;bD7$`4ALKi%1#PTE2Ehw(P4KV3R9CBE4b zC_%Rq(!D_wRmt?lB%+~P4{wqPL>R?C2V|9J2PPZVvCmIg4CBmZlU8hkf4JP9Jz+03 z+=ODkk^E;Q*on6Xi#ffc;-daoTD^+DRqzW}9@w9fJGYE-syj*#P z>EN}uN4|t$YgudDvRl z79I334QIwE$ZFB!fdMg$Ns1E!R_3wyw zsNsw*Rtq-+Ob@$*L&2gSY@ixUqH08v6`{#599w?t9rfc%oO z1i+M)=o{^8+P^Dz`V_}^ldrqzZqC9_=4HFtxRo(HrG& zwdY__mm>;6EFjLS_P?f|Mb;82(}J-~?HV-Y=NrufbZymNh=$n4iSd4b^T7g&NQU_f zufGdQYRuEA30#~Q;oE^_4S(dn);flNDGEX-Dn|xTmTo+4w7S_S!YGF#CmzZ;>9en< zUE;vW66iM1eI46XU=b$yt0bvE9hiFC0;<7iOx5}&vDZ(W(YeAu5vC|N*c63HScaTg ztrtH~W3)x7e*+A;JjEf#-p%p0BP;AphpcL)I(+d>fqxho(E}&<&x>h34lPqPE92`f8Z$%rwHHgZi z_pShKUa5_xdCy-Y%_`{Rgd!i??`+I?8@R);2 zPn|jPwJ1nhoth{eAAnRbb>5_eY}4cke%qzy6f)Ffq4p_{NZ_E61U5*o{AHIluaK%$2Xr={!(wp!*FlAdv^Sb6tbQ~TpD?frC24=&>%lOqFB7YYOI$`=c@Hm&%-0MyKX#s+p2_JKT^q; z;cor~4rK|oh+^xT!YwyL&l8_R9@@!>**8#XP+`(jYfAlP4!>>DY(Vby2ZrZme0)4y z7>gLgjHeyT#!tjkekoaA`cZE4jw!;(47mc%<9xP2t@Kr~2lO4oLSny0&ZE;xl|o+s zZME%2CwAJGZF9X3cF_Hr^Bt1qsT84Af$WK(y;9>IsN$aQ7h?H-ZZfV(QtthN;WjEc zN6^d^+`wk;zGqePC4(xwICSb3>E*+(OuNbER}xJLLd}`_r_{&3ksxrv$S6CL_D|*Y zml4TNcR_ZrHo<0k;klSNyEG^%Lnyd@h$HEhvgo(1MK$U9`t_{NR42;HmM=H}!o1&o6rEXPOWUEe$d5*J3CgYH^kg-LMvl1tz=%npciCff^mR2g>$%*~|w_^H~jf7hX z;8i&ne^Tfeu~5?4+f328WDJyx;oMSJ%N=Y^oCbCSDUGxFDRH^7{by zK9~zHtYAsIeaYv8HImI;16W0>7e6?|fi6TQ;`f?I<89!sRCaW9cB`^Sn)zNCUGIx#(lF47JRX#Hz?Tl%opOUh#b>M-vz^f*qR7Nz9zh?I7#NWHmM@-dZE^kz4#{jj>^g z@J;<-UVL_h+;F|Aa$4~mp7??EoeTFUGj;*}^V-3ucj?Qp1@38%!*v$HD6((ULSV5U z_c$F&?qOvtje$5h8d+}beHm`dYr0J)RDjfP2}({2vhfvgI&%!4M=Xw*f-XLK<-K@8 zz9cOstd?fXxm}d~jcS~xkofIRxG8xm>@A`kKI6q@7_x;~B07}}kWCX@?VdBgnPYwm zo90-6?zuRk&GIqE(zyKKz%{#VLn^T4z#EFhRhuL~VqN7QnUySuMO74as8g3hCjGfLa~@M2 zbsXYeG(LY;(Y`dTv~gY1ZE>@2L~LM0(7&38uGZcZez=6ELz?W+n#8s?t;RL>uA?en z@|?$ydb?JtBf~KJmzklJHdQyeP2ymKt58#Rvf!xu&cS0zse1I(I{lkaRL`WJsX+dROFbgG_RRxdUweHyeU7HD)L(V zr7AtbScC=Cw?IyONBs=*uXUkhdcN#Q489ar7=adNmAs{vP}#|L6%me~#lAxaxS`Vo z8S3E}rHiVPe1f(G6UgG6Q6Y0vio@xM79)1&1j32xg#ipMWMITcZn-!mSQWj6l~%B2 z;2X)@xQTnip4|eXs`zGIKw4s#gP2uWn5jkflrflA26!igQtUTO3{A_FJkc4;6Iy`=&kxyN+{W zjr=eM5UvJN-sXW=UWlc!De?bNPk6d#7N2{XWnX%l#i*ZWiZZRE-=ZvAsG}?^eoxAM z*{&vy`hlLMUkQ83^{$^&8_zWQqnfIu=KZ;`Dr8H6Ojrj$3FH`+VR*4u%3W5x&z+1g zV)-^pvbU1!@SqSDvOLiQSo_jC>aW}@6`NGZCEY9Ez}bB_y>Z}APDyG-IYsGX_+?>g zY;iC&l7kg7?+v*x2sMuPbi(j#@cD$AW#(T7Nnjumk31o8Y%|lo2v-niLi*!wxfiV! zvsO^F*Z|ij7_o~Z_C|HR1hvQZv0=mF(Z9=QZ8FrwC-Gt;aJ*-%s ze${io=P-ECEnlXD7m>p*3J>ic*#xKH4U7%WMA=Oa=*=rB!}=knsAFX5D<$;zMp{*^ zgjDL&oa@`!mL-gi>OE1VnXQ(GhO&*Jp0c)CVw%x205pEKYm_WP-To_r>gvW3C#HG1 z2zTUrTkNjuNHXCCJ7%_^@xxPZ{?;Px_vI-(h=($un!OOj*QXmB=@d zo8l4X@lmD%X-^e32Sd2!pS};hJUTNoC9}-FLRXlk5aSDlgdO#XXxDLFL zl(`w^Q=lOFv*=ciT;6>meif9qv8}Y`p~WW#Te( z|5@{*bs5Lc2@+hm3^Wx~*bu|(D8vgq{mu1*aEa^d(kZAA>Q*zO<~4BEG-X%<=kZ6g zfKxyFtUevU7V#TLG#@yY8{+HeE_EU9Ej69-t`Nw$=gzeOxSWo)Bz3ViLS2+iqo|uN z^c0D3`^Avahl+*PrKKvb>RXEHi5uu)bd;^m&#zyI784O$-+zALteXtH3dZ* z@4_?Pe6g76+zN^e*{m&cleoP<>C~;T#rxUJB|k+0K9|+pbFT#O%R|Wc{l`u}=jBKp z!kVKFF$G#sP9MUm+qb_GlF#mbP5UAQpzffU=C&d`1b{cB6ed7 z?>u(e0YmIqE(?pzq+oQ&T_&qdRk1O-Xbmke1+WVK9yU{DhTTwD8t39Y_KEK%<-*{S zOMH}ILRp)|v3k% zQUXBHXkkE$D}gs4al#M?>aUTMy(C5JGsvmWdWWkPu&O z9!3`EZD)1Q6EqZMYoSN?AD;V`a$Bt~O6! zh?TJVz1Zpe1#y>9cn^y7Nq2FM$qPMj)oopGL`s%}P}5^)gy39Fd5yu&mVCAn!o|2= z87K*4Yh7eP5R*&P9L#m6(s0K4$L$POstmgbm*~R!cGI}Al)#JHFI(i@Vk+!UpB+Bm zp)x;4D0@ru1SS8f-7l?yn3Qsj(z@`>J&phLc1c0%mf30F3z^*T&qVDxe(56rrD!uP zxAt@{tCvoyl^|X~-y9!MS!EgJh%`#5J#YIvSkB#NbOsaXhLA%@YgJ?~%RJ1xpk+#s zhc+O~Tn^+!E`A0-P@qkr_L0e`aQ4pHq%)6przxK)yR zE>$zJ>lJ=h!ezPT2Rus1=o=Tj8huy1)eZK?du&LCW)ts{2;mniH@rU?Vj3@rvDfNw zS-#pc53uG|j}%J1RaBnco}~sr;&(CoQ2_}yt<9-;H4R}2bvQ$+FanxoiSg#A&2t-v z*0MJG*j`gE=68Z(VP-@mx~(c5BxCx|jZv*xbWTAnD&FdwZkhGSzFF$L-^LHE*qnn} z6~C^i?x|A2cEd((LpT1SJ9AkzMb2zb8*!86ZRe5u)@7sDg_BEx!`ms?(qz-pdtUFt zz@pCIWZ&aqlik>OsG+UaIFDkbjX?Cg`jgNGXL}ByuPoBOe~oqfevQDdty`xO_B}l2 zO;3V0mTy=uWUWlb`Nr_%C~M5Y*1|ab*NFE$c9ucCZMFuPHjSx@>-30>{sr*@LZCYH zUB^pC>MzNnsw4FI76wc?LZ|RaBg(jz1KnL52XERC~W>7y6vM!`=2JxIx4CzT;qbGl%#-24B>IHLz{;)ygB4Wfd=T$GA!$IhHX?|Iy zbECUk%nwl&v&kG>gAOh@9ZCN#eCv*7yt5CxC42SnNYJ}4Eu-#U$~krH&uwg;EMj7$ z_h&TC=WK@s9Ha{8@A)#S`xW>?OJqQ{`5kGvdJn|w1YWaZii4&axFV6%v>^x2hguZ> zaoef;O5xr0&-%m=N>S37MOFZ!+Wv$+Ramz3^}yKO$Y>Y*%gmQqJh3VQYF|3>3YXO zy(b3`8k+c^r)qxT#`lQHjOG$toV$XUMOGlaHrY0OblEl>ahk-@Ogpmci|68s1uDZl zd+j^-Q%BuJ*}wlt%>b&(AWy|epo~)B%vLS6twbilfDw?|Dh#6RMETmU` zK8@_PK|7Yn8lV3tAmnn9e;vj2DRWbS&p+IQfUH|jUuQzRO+(O9)_-pQb+-}b^+d4X0Nq&)c23-W#SI_DnTYrt`kR z?&-kUE&e_q885MDXom`JztUAX&8?{X``XWmp}+>Ww9HWCe0-x<D^~ zm^=2X>EFbyuReFGam=m3@u`0SPt*A#ke zZ-&m-KmjHBLHZb|TBMDtT@Q1R=_-y2turvK-zYkA8Y_z12cAFi+T7u;aB*yg1=$}`G?(}He3EYO_^Az3!+1Ogb^GlP zDeO^_Wqq`FBWq*bs1V~Ok*gWHr-e$yrAUgR zxmQQNTd{5CpB?&>GR5BXtSs$I3_05fQwD9zjIl*hZ_Nz_q?k=*_c2Z;L`si;r%T1u z6-E1kJh>Bp(|4szDM@LvqHk`faBOxp(+ZxbM1Z9;qyo#TNc{4e#=kKGC+SayBC|N9 znH!JGyiwu0eEUw~RCFAOXdea6CAuQoZ zoqT;1q;ID5UUa>(=`Lt8@Gc8izwUV0J(DnOSh|5=$JRN7Q8D6y=GRP=%6LNy0SF)$ zcI7#9NO$la0>{@Ez`+&5LOcxN-`5Ul#g^uNAuhR$ta;&cLVQ~Q} zY@Q0m5fIo(@>1!pivL1mMAm1;r}%{3l@L~H@fQlRKTO&KbjmATRHLm2fqWjdfzkmz z!3+r`#26$H_t3}W6wX4)SoJOYJi)KImUG&L9C7^uY*3k$CDdbnAeb7^^5 zN7p(;)}X)?i-nuCzeRZsuSZD0(!RBa2o}l#4p9|1(%chzdI-Gd0b|xrR*$DS3mw`6 z!3}4>i$AP8O)`}qJRy5oedWqU4pJh7tRIpC3jCmRX2E*@zwDFxug}!0T?%REYq_5_ zAr0>WurX1ev{s9U0(2J1M_x(mier!E_iC=JjF7KrhiytNN2s;)-d2Sff32K zP>@2Zz*mWRJ!}D<4M5?rVV(1W`hIG~Ml9zs^OHDbB7?JCufHE1DeAlFqA!guZTEg@ z&#3T7=%fVgPooYrd3=`^1C~9bZTh}q_D!!{VnvcjCrbRri^-33K->VRReR6UJ zKrr0?G!3!_PQ?5R+}(Lu^`L_*c1AsWD>5^ITbg>7uckrz9oSp$y2Nq z;Si41Q3$6%7*d|FBaUqrgaUg)ox!zct&v5u^WMrnYOxGKl~t9xw)$bGuGY}3xK%9o zT>$E8r|In7>M<&zTKc_~OTyinj)ql8GKwy$D!f21zDBj;9T0)kupIDBFLY*)2Tw_! z4Ai8|ClRc*SSzj$O^y2+T5J)6L5fyc?MR4b(v$Dt>8+4$TB=dZrtJ7|wKjzmc&mqy zZ<5ADPh{h`WC(T?RakMC$-Ca!t zk6-U`w@kGbJ9dgA+UM!D6EIe3grCvQq(&q@kCcDIJR&h28c0%zCb^%Sv^ViGnD%06 zA-F+c!Ky}p4pN)5Bj%k<#34?y^Giy+y&Ts0g_Zld>V9^PrU1@lBvFX-yP*i`rAqRW>@LT7^Jboezo};$jp5$-@e_*>L~;*-Q*IfD#)8X! z^D$a77|$1OrMEH}L0F3RV9i_W1oZy^YPoP^K_)t4F)hC$2VyQ%z^po)Td-2MDr7aD zZ1{7Y`C^H0VXw-op)ojWI#88bGxv%9<)D$w6NZc?6BhuSQR#S z@bK$@b*oA2M?FLC?JUffejWqDm@%QHq(E&}4Ql%+0qQix^qpaE$ed3UzbR>;*KB`7 zJM)YH&9CACny8F(I~&s~tmm%TOJ|rmnUlqP%0~S=Nao{9Lo~{x7IJ|5~e)fXD zv7pikOLh3F_eBbqyf;C7=V#N-)G6mbgVeA30iiqN5^>zyQbeiG`=x2Q9>~45cu+oj z4|vK~NVqF_wYDBs($NXz(?Rbh1}1{Nam*O;t;k6k4ys!yFdL4>Y`5t^=ViyqyPR(6 zXhw3e%enJ;NCz&`5b{z=J(JG#uK3Eq2v>BHNSvLxNhnVP3pFl5DW&8(EG4mzOp0Hq z3#wJokUm^W;!}?pe%38vNgYSQhT zs^f2F#Yhx3Af!6G${X?@Ddeh+F}(mM^S@Wson|!?Zjw0yC~IL!zfm_rc?KA-c$7fO z^}Y)j%?+R>ja_cCV-4VFP@0Q4U%`V8EQ&&n$7Nmi&O5k%tp) z4B*g#U1i}Mn#-GI@ZVaB!BMR5@uLu^A-mv^srZ2gKfC zjh9fZ6W}hK^5_0%KQ#lIzg)7|uusMR;lorqKnMc2BLib51-_B6MA?fFkN(d%r{H97 zm5b`U>_#a-**;_8p}7Tw8lc3hKHwirtU%VthEL||h0;Y|4#Vy?FmL3pWg0vJVMh7b zTiqlV9e%40v{snMG>c`&5>6czNM3dr?>JQop%nxAT?=fOm%Fze;Hbc8xJe|WGAZ;d z+zgw)yqp&f%mD2E4MAFB%xtBE%O#Obr3pycbdv2F0RQbFic%%K=o#Ar$w`ps_j>*C T0>9lWz)wwCOQ}@BD)fH; - -export async function process(data: ImageData, opts: QuantizeOptions): Promise { - if (!emscriptenModule) emscriptenModule = initEmscriptenModule(imagequant, wasmUrl); - - const module = await emscriptenModule; - - const result = opts.zx ? - module.zx_quantize(data.data, data.width, data.height, opts.dither) - : - module.quantize(data.data, data.width, data.height, opts.maxNumColors, opts.dither); - - return new ImageData(result, data.width, data.height); -} diff --git a/src/codecs/resize/processor.ts b/src/codecs/resize/processor.ts deleted file mode 100644 index afe2fc2b..00000000 --- a/src/codecs/resize/processor.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { WorkerResizeOptions } from './processor-meta'; -import { getContainOffsets } from './util'; -import { resize as codecResize } from '../../../codecs/resize/pkg'; - -function crop(data: ImageData, sx: number, sy: number, sw: number, sh: number): ImageData { - const inputPixels = new Uint32Array(data.data.buffer); - - // Copy within the same buffer for speed and memory efficiency. - for (let y = 0; y < sh; y += 1) { - const start = ((y + sy) * data.width) + sx; - inputPixels.copyWithin(y * sw, start, start + sw); - } - - return new ImageData( - new Uint8ClampedArray(inputPixels.buffer.slice(0, sw * sh * 4)), - sw, sh, - ); -} - -/** Resize methods by index */ -const resizeMethods: WorkerResizeOptions['method'][] = [ - 'triangle', 'catrom', 'mitchell', 'lanczos3', -]; - -export async function resize(data: ImageData, opts: WorkerResizeOptions): Promise { - let input = data; - - if (opts.fitMethod === 'contain') { - const { sx, sy, sw, sh } = getContainOffsets(data.width, data.height, opts.width, opts.height); - input = crop(input, Math.round(sx), Math.round(sy), Math.round(sw), Math.round(sh)); - } - - const result = codecResize( - new Uint8Array(input.data.buffer), input.width, input.height, opts.width, opts.height, - resizeMethods.indexOf(opts.method), opts.premultiply, opts.linearRGB, - ); - - return new ImageData(new Uint8ClampedArray(result.buffer), opts.width, opts.height); -} diff --git a/src/copy/_headers b/src/copy/_headers new file mode 100644 index 00000000..67bf37b4 --- /dev/null +++ b/src/copy/_headers @@ -0,0 +1,5 @@ +/* + Cache-Control: no-cache + +/c/* + Cache-Control: max-age=31536000 diff --git a/_redirects.ejs b/src/copy/_redirects similarity index 100% rename from _redirects.ejs rename to src/copy/_redirects diff --git a/src/image-worker/missing-types.d.ts b/src/image-worker/missing-types.d.ts new file mode 100644 index 00000000..27b1d41c --- /dev/null +++ b/src/image-worker/missing-types.d.ts @@ -0,0 +1,13 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/// diff --git a/src/image-worker/mozjpegEncode/index.ts b/src/image-worker/mozjpegEncode/index.ts new file mode 100644 index 00000000..953f76ee --- /dev/null +++ b/src/image-worker/mozjpegEncode/index.ts @@ -0,0 +1,56 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import mozjpeg_enc, { MozJPEGModule } from 'codecs/mozjpeg_enc/mozjpeg_enc'; +import wasmUrl from 'url:codecs/mozjpeg_enc/mozjpeg_enc.wasm'; +import { initEmscriptenModule } from '../util'; + +export const enum MozJpegColorSpace { + GRAYSCALE = 1, + RGB, + YCbCr, +} + +export interface EncodeOptions { + quality: number; + baseline: boolean; + arithmetic: boolean; + progressive: boolean; + optimize_coding: boolean; + smoothing: number; + color_space: MozJpegColorSpace; + quant_table: number; + trellis_multipass: boolean; + trellis_opt_zero: boolean; + trellis_opt_table: boolean; + trellis_loops: number; + auto_subsample: boolean; + chroma_subsample: number; + separate_chroma_quality: boolean; + chroma_quality: number; +} + +let emscriptenModule: Promise; + +export default async function encode( + data: ImageData, + options: EncodeOptions, +): Promise { + if (!emscriptenModule) { + emscriptenModule = initEmscriptenModule(mozjpeg_enc, wasmUrl); + } + + const module = await emscriptenModule; + const resultView = module.encode(data.data, data.width, data.height, options); + // wasm can’t run on SharedArrayBuffers, so we hard-cast to ArrayBuffer. + return resultView.buffer as ArrayBuffer; +} diff --git a/src/image-worker/quantize/index.ts b/src/image-worker/quantize/index.ts new file mode 100644 index 00000000..2418ace7 --- /dev/null +++ b/src/image-worker/quantize/index.ts @@ -0,0 +1,52 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import imagequant, { QuantizerModule } from 'codecs/imagequant/imagequant'; +import wasmUrl from 'url:codecs/imagequant/imagequant.wasm'; +import { initEmscriptenModule } from '../util'; + +export interface QuantizeOptions { + zx: number; + maxNumColors: number; + dither: number; +} + +export const defaultOptions: QuantizeOptions = { + zx: 0, + maxNumColors: 256, + dither: 1.0, +}; + +let emscriptenModule: Promise; + +export default async function process( + data: ImageData, + opts: QuantizeOptions, +): Promise { + if (!emscriptenModule) { + emscriptenModule = initEmscriptenModule(imagequant, wasmUrl); + } + + const module = await emscriptenModule; + + const result = opts.zx + ? module.zx_quantize(data.data, data.width, data.height, opts.dither) + : module.quantize( + data.data, + data.width, + data.height, + opts.maxNumColors, + opts.dither, + ); + + return new ImageData(result, data.width, data.height); +} diff --git a/src/image-worker/tsconfig.json b/src/image-worker/tsconfig.json new file mode 100644 index 00000000..efb17003 --- /dev/null +++ b/src/image-worker/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../generic-tsconfig.json", + "compilerOptions": { + "lib": ["webworker", "esnext"] + }, + "references": [] +} diff --git a/src/image-worker/util.ts b/src/image-worker/util.ts new file mode 100644 index 00000000..5c94f995 --- /dev/null +++ b/src/image-worker/util.ts @@ -0,0 +1,39 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export function initEmscriptenModule( + moduleFactory: EmscriptenWasm.ModuleFactory, + wasmUrl: string, +): Promise { + return moduleFactory({ + // Just to be safe, don't automatically invoke any wasm functions + noInitialRun: true, + locateFile: () => wasmUrl, + }); +} + +interface ClampOpts { + min?: number; + max?: number; +} + +export function clamp( + num: number, + { min = Number.MIN_VALUE, max = Number.MAX_VALUE }: ClampOpts, +): number { + return Math.min(Math.max(num, min), max); +} + +export function timed(name: string, func: () => Promise) { + console.time(name); + return func().finally(() => console.timeEnd(name)); +} diff --git a/src/image-worker/webpDecode/index.ts b/src/image-worker/webpDecode/index.ts new file mode 100644 index 00000000..eb990850 --- /dev/null +++ b/src/image-worker/webpDecode/index.ts @@ -0,0 +1,26 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import webpDecoder, { WebPModule } from 'codecs/webp/dec/webp_dec'; +import wasmUrl from 'url:codecs/webp/dec/webp_dec.wasm'; +import { initEmscriptenModule } from '../util'; + +let emscriptenModule: Promise; + +export default async function decode(data: ArrayBuffer): Promise { + if (!emscriptenModule) { + emscriptenModule = initEmscriptenModule(webpDecoder, wasmUrl); + } + + const module = await emscriptenModule; + return module.decode(data); +} diff --git a/src/image-worker/webpEncode/index.ts b/src/image-worker/webpEncode/index.ts new file mode 100644 index 00000000..4285454d --- /dev/null +++ b/src/image-worker/webpEncode/index.ts @@ -0,0 +1,61 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import webpEncoder, { WebPModule } from 'codecs/webp/enc/webp_enc'; +import wasmUrl from 'url:codecs/webp/enc/webp_enc.wasm'; +import { initEmscriptenModule } from '../util'; + +export interface EncodeOptions { + quality: number; + target_size: number; + target_PSNR: number; + method: number; + sns_strength: number; + filter_strength: number; + filter_sharpness: number; + filter_type: number; + partitions: number; + segments: number; + pass: number; + show_compressed: number; + preprocessing: number; + autofilter: number; + partition_limit: number; + alpha_compression: number; + alpha_filtering: number; + alpha_quality: number; + lossless: number; + exact: number; + image_hint: number; + emulate_jpeg_size: number; + thread_level: number; + low_memory: number; + near_lossless: number; + use_delta_palette: number; + use_sharp_yuv: number; +} + +let emscriptenModule: Promise; + +export default async function encode( + data: ImageData, + options: EncodeOptions, +): Promise { + if (!emscriptenModule) { + emscriptenModule = initEmscriptenModule(webpEncoder, wasmUrl); + } + + const module = await emscriptenModule; + const resultView = module.encode(data.data, data.width, data.height, options); + // wasm can’t run on SharedArrayBuffers, so we hard-cast to ArrayBuffer. + return resultView.buffer as ArrayBuffer; +} diff --git a/src/static-build/components/base/all.css b/src/static-build/components/base/all.css new file mode 100644 index 00000000..290cb123 --- /dev/null +++ b/src/static-build/components/base/all.css @@ -0,0 +1,3 @@ +html { + background: green; +} diff --git a/src/static-build/components/base/index.tsx b/src/static-build/components/base/index.tsx new file mode 100644 index 00000000..d0271db9 --- /dev/null +++ b/src/static-build/components/base/index.tsx @@ -0,0 +1,44 @@ +/** + * Copyright 2020 Google Inc. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { h, FunctionalComponent, RenderableProps } from 'preact'; +import styles from 'css-bundle:./all.css'; +import clientBundleURL, { imports } from 'client-bundle:client/index.tsx'; + +interface Props { + title?: string; +} + +const BasePage: FunctionalComponent = ({ + children, + title, +}: RenderableProps) => { + return ( + + + {title ? `${title} - ` : ''}Squoosh + + +